BTG FAQ

Table of Contents

BTG FAQ

This is a FAQ for BTG.

What does BTG stand for?

BTG used to stand for BitTorrent GUI, but it evolved and currently the name has no meaning.

What is BTG?

Its all the following things:

  • Daemon (btgdaemon).
  • WWW bittorrent client (wwwBTG).
  • GUI bittorrent client (btgui).
  • Ncurses bittorrent client (btgcli).
  • SDL viewer application (btgvs).

BTG consists of a number of different applications. The clients communicate with the daemon.

Why do I have to read the documentation?

Some people expect software to just work, without any configuration. If you expect this, BTG is _not_ for you. Give up now.

Building and setting up BTG requires you to read the howto and possibly the man pages.

What is a BTG session?

When a client connects to a daemon for the first time, it creates a session.

It can detach from this session, and it will keep on working (downloading/seeding) in the daemon.

The client can attach to the session again, and continue using it.

Its possible to attach different clients to a BTG session. Its even possible to use all the provided clients at the same time with a BTG session.

A session belongs to an user - the user is not able to see other users sessions, unless it has an control flag set (see description in the howto).

Why is BTG so feature bloated?

Its not. Most features can be removed at compile time.

Using

# ./configure

only the daemon will be built.

One has to use one of the --enable-* flags to enable a feature.

Why does BTG require so many different libraries?

Because its pointless to create the required functionality from scratch.

Error while loading shared libraries

If you see errors like

btgpasswd: error while loading shared libraries: libtorrent-0.12.1.so:
cannot open shared object file: No such file or directory

You should really read the ld.so man page.

Feature X does not work, what now?

  • Read the howto/man pages. Maybe its described in the documentation.
  • File a bug rapport (or send a patch against trunk in SVN).

Libtorrent asserts

Rasterbar Libtorrent _will_ assert if its compiled with debug. Build a release, unless you want to test Rasterbar Libtorrent.

Kindly report Rasterbar Libtorrent bugs to the Rasterbar Libtorrent mailing list or bug tracker. The asserts, unless triggered by BTG will not be handled as BTG bugs.

Can I expect SVN trunk to work?

No. Trunk is being used for active development. Use a release or release candidate.

Is the project accepting donations?

Yes, use the following button to donate a small amount to BTG development using Paypal.

How about adding feature X?

BTG accepts patches. Make sure that its against the trunk of the SVN repository.

BTG accepts donations, using Paypal.

Making a donation that covers some of the time used adding a feature will improve the chances that your feature will be added to BTG.

How can I help?

  • The WWW frontend seems to require a lot of attention. If you know PHP/javascript and have time to spare, consider implementing one of the requested features.
  • Update/add documentation.
  • Review/refactor existing code.

Join the #libtorrent IRC channel on irc.freenode.net and let us know that you plan to help.