mathr / blog / #

buildtorrent update

buildtorrent used to have its own page, but that part of this website has been dismantled, so here is the content that was previously available:


buildtorrent [OPTIONS] -a announceurl input output


buildtorrent is a torrent file creation program. Given an announce url and an input file or directory, buildtorrent generates an output .torrent file that can be used by torrent clients.


-a announce--announce=url
Announce URL (required).
-A announces--announcelist=announces
Additional announce URL list.
-l length--piecelength=length
Piece length in bytes (default 262144).
-c comment--comment=comment
User comment (omitted by default).
-p private--private=private
Private flag (either 0 or 1).
-D, --nodate
Omit the creation date field.
-C, --nocreator
Omit the created by field.
-m, --md5sum
Add an md5sum field for each file.
-s, --show
Show generated torrent structure.
-S, --showall
Show generated torrent structure, including piece data.
-q, --quiet
Quiet operation with reduced output.
-V, --version
Show the version string.
-h, --help
Show a help screen with brief usage information.

See also

The above is the manual page from the buildtorrent-0.7.2 source tarball, double-check your local buildtorrent package for the manual corresponding to the version you have.

Some new news now: progress on the 0.8 release of buildtorrent is very slow, as I have too many other things I prefer to spend my time on. The roadmap is roughly:

implement the already-documented file list feature
fix all remaining bugs
final release
go crazy with all kinds of freaky features

Hopefully 1.0 will get finished by the end of the decade. Jan Stępień sent me (a couple of months ago...) a patch for multi-threaded hashing, but I didn't have a multi-core machine at the time - expect that as an optional configure-time switch in Subversion as soon as I've had time to test it.

The freaky features I have in mind for 2.0 include distributed .torrent creation within a trusted swarm for later publication to an untrusted swarm. It should allow torrents to be created when not all the files are local without transferring large amounts of data.

You can get the development version of buildtorrent here:

svn co buildtorrent