If dealing with Integration with Git, web feeds and multimedia goes relatively fast, then BitTorrent and huge files consumes much time. You can not wait for downloads finish, but want to queue them after.
aria2 multi-protocol download utility
could be used for solving that issue conveniently. It supports HTTP,
HTTPS, FTP, SFTP and BitTorrent protocols, together with
Metalink format. BitTorrent
support is fully-featured: UDP trackers, DHT, PEX, encryption, magnet
URIs, Web-seeding, selective downloads, LPD.
accelerate HTTP*/*FTP downloads by segmented multiple parallel
You can queue you files after they are completely downloaded. aria2-downloaded.sh contents:
#!/bin/sh TORRENTS_DIR=/storage/torrents REMOTE=stargrave.org if [ "$2" -eq 0 ]; then # downloaded .torrent/.metalink exit 0 fi if [ "$2" -gt 1 ]; then cd "$3" while [ "$(pwd)" != $TORRENTS_DIR ]; do name="$(basename "$(pwd)")" cd .. done tartmp=$(mktemp ./finished.XXXXXX) tar cf $tartmp "$name" nncp-file $tartmp $REMOTE:"$name".tar rm $tartmp else nncp-file "$3" $REMOTE: fi
Also you can prepare input file with the jobs you want to download:
$ cat jobs http://www.nncpgo.org/download/nncp-0.11.tar.xz out=nncp.txz http://www.nncpgo.org/download/nncp-0.11.tar.xz.sig out=nncp.txz.sig $ aria2c \ --on-download-complete aria2-downloaded.sh \ --input-file jobs
and all that downloaded (nncp.txz, nncp.txz.sig) files will be sent to remote.node when finished.