Halite BitTorrent Client

Hal­ite (named after the min­eral) is a C++ Bit­Tor­rent cli­ent based on the excel­lent lib­t­or­rent lib­rary from Ras­ter­bar Soft­ware. The pro­gram also relies heav­ily on the Boost lib­rar­ies.

Down­load it from SourceForge.net

The cur­rent release is v 0.3.3.0 revi­sion 1205 as of 16th August 2010.

Key Fea­tures.

While still at an early state of devel­op­ment Hal­ite is a func­tional Bit­Tor­rent cli­ent. So far its list of fea­tures is pretty stand­ard but that is because I want to ensure it does the basic stuff well. That said it supports:

  • File selec­tion and/or file pri­or­ity specifications.
  • Man­aged tor­rent queue system.
  • Disk cache support.
  • Track­er­less tor­rents (using the Main­line kadem­lia DHT pro­tocol).
  • Sup­ports Mag­net URI torrents.
  • Super-seeding.
  • µTor­rent style multi-tracker announ­cing.
  • IP fil­ter­ing with eMule style ipfilter.dat import.
  • Pro­tocol Encryp­tion support.
  • Trans­la­tions of the UI into a num­ber of lan­guages through the help of volun­teers.
    (if you wish to help with a trans­la­tion then please do)
  • Min­im­ize to tray with trans­fer rate summary.
  • Full Uni­code sup­port through UTF-8 and nat­ive Win­dows wide-char strings.
  • Login sup­port where tracker requires it.
  • Abil­ity to edit track­ers spe­cified in the torrent.
  • Abil­ity to cre­ate tor­rent files.
  • Port ran­dom­isa­tion and for­ward­ing (UnPlug and Play or NAT-PMP).
  • Trans­fer rate and con­nec­tion lim­its both global and per-torrent.
  • Shut­down scheduler.
  • Fully com­pat­ible with UAC.

Planned in near future.

  • Full proxy support.
  • for a more detailed list and to sug­gest fea­tures see this forum thread…

Don’t for­get to check­out the sup­port forum for more up to date information.

Import­ant note for people upgrading!

When installing through the MSI file down­load, Hal­ite will make a registry entry point­ing it to use the local Applic­a­tion Data dir­ect­ory for all con­fig­ur­a­tion files. Users should manu­ally copy any exist­ing files from an older Hal­ite ver­sion to that dir­ect­ory. The recom­men­ded files and folder to copy are:

Halite.xml
BitTorrent.xml
IPFilter.bin
DHTState.bin
resume/*
torrents/*

These changes were neces­sary to make Hal­ite fully com­pat­ible with User Account Con­trol. To revert to ‘port­able mode’ whereby all con­fig­ur­a­tion inform­a­tion will be saved along­side the execut­able simply delete that registry key- HKEY_CURRENT_USER/Software/Halite/path. If you only ever used the stan­dalone ‘zipped’ down­load then this will not be  necessary.

State of developent.

If you wish to keep up to date with the latest devel­op­ment work then you should check out the dev snap­shots. People are encour­aged to down­load and test it out but of course note they un-stable builds. Fea­ture requests, bug reports or com­ments can all addressed on the sup­port forum.

Source­code is avail­able under the Boost Soft­ware License from SourceForge.net. Or if you like using git a repos­it­ory can be found on Git­ori­ous at the address http://gitorious.org/halite/halite.

Latest Activ­ity

Source Code

The Build­ing with VS 2008 page con­tains the most com­plete details on com­pil­ing Hal­ite. Also see this post on the forum for addi­tional point­ers on com­pil­ing Hal­ite your­self and report any issues you run into there. In addi­tion you can check out the Trac site but I haven’t really done much with that… yet.

Screen­shots.

Screenshot of Halite version 0.3. Halite 0301 Halite 0301 Classic