Installer le client BitTorrent BTG sur Debian
BTG est un client BitTorrent qui a la particularité de fonctionner comme un démon (service). De ce fait, il peut être controlé par des interfaces diverses et variées, dont une interface Web écrite en PHP. Ce guide vous aide à l'installer sur Debian.
Ce guide a été testé sur:
- Debian 5.0 Lenny
- Debian 6.0 Squeeze
Installation
Installez les dépendances de compilation:
command apt-get install wget build-essential libgnutls-dev \
libboost-iostreams-dev libboost-filesystem-dev \
libboost-date-time-dev libboost-thread-dev \
libboost-program-options-dev libssl-dev \
pkg-config libexpat1-dev dialog libncurses5-dev \
libboost-serialization-dev libboost-regex-dev \
autogen automake libtool
Installation de libTorrent Rasterbar
Récupérez la version de libTorrent supportée par BTG:
MAX_VERSION="$(command wget 'http://btg.berlios.de/' \
--quiet --output-document=- \
| command grep --max-count=1 --after-context=3 'btg/btg-.*.tar.gz' \
| command tail -n 1 \
| command sed -e 's|^.*/\([^/]*\)</td>.*$|\1|' \
| command cut --delimiter=. --fields=1-2)"
Récupérez l'URL de téléchargement de la version stable de la bibliothèque, et obtenez le numéro de version à partir de cette URL:
SOURCE_URL="$(command wget --quiet --output-document=- \ 'http://code.google.com/p/libtorrent/downloads/list' \ | command grep --max-count=1 "${MAX_VERSION}.*.tar.gz" \ | command sed -e 's|.*href="\([^"]*\)".*|http:\1|')" VERSION="$(echo "${SOURCE_URL}" \ | command sed -e 's/.*libtorrent-rasterbar-\(.*\).tar.gz.*/\1/g')"
Téléchargez l'archive contenant les sources:
command wget "${SOURCE_URL}" \ --output-document="/tmp/libtorrent-rasterbar-${VERSION}.tar.gz"
Décompressez l'archive ainsi obtenue:
command tar --directory "/tmp" -xzf "/tmp/libtorrent-rasterbar-${VERSION}.tar.gz"
Placez-vous dans le dossier ainsi créé:
command pushd "/tmp/libtorrent-rasterbar-${VERSION}"
Compilez la bibliothèque:
./configure command make
Installez la bibliothèque:
command make install
Supprimez les fichiers téléchargés:
command popd command rm -r "/tmp/libtorrent-rasterbar-${VERSION}" command rm "/tmp/libtorrent-rasterbar-${VERSION}.tar.gz"
Installation de BTG
Téléchargez les sources de la dernière version de l'outil à l'aide du script sf-downloader:
command wget 'https://raw.github.com/biapy/howto.biapy.com/master/various/sf-downloader' \
--quiet --no-check-certificate --output-document='/tmp/sf-downloader'
command chmod +x '/tmp/sf-downloader'
SOURCE="$(/tmp/sf-downloader --tgz "btg.berlios" btg-VERSION.tar.gz)"
Placez-vous dans le dossier ainsi créé:
command pushd "${SOURCE}"
Corrigez la dépendance à libgnutls et les erreurs de dépendances du code:
command sed -i -e 's/AM_PATH_LIBGNUTLS(/PKG_CHECK_MODULES(LIBGNUTLS, gnutls >= /' \
"${SOURCE}/configure.in"
command sed -i -e '/include <stdlib.h>/a\
# include <stdio.h>' "${SOURCE}/bcore/os/fileop.cpp"
command sed -i -e '/include <fcntl.h>/a\
#include <stdio.h>' "${SOURCE}/bcore/os/socket.cpp"
command sed -i -e 's/gnutls_fingerprint(SHA_DIGEST/gnutls_fingerprint(GNUTLS_DIG_SHA1/' \
"${SOURCE}/bcore/os/gnutlsif.cpp"
command sed -i -e '/include "logif.h"/a\
#include <stdio.h>' "${SOURCE}/bcore/logger/logger.cpp"
Configurez la compilation:
./autogen.sh
./configure --enable-www --enable-session-saving \
--enable-event-callback --enable-cli --enable-btg-config
Compilez l'outil:
command make
Installez l'outil:
command make install
Supprimez les fichiers téléchargés:
command popd command rm -r "${SOURCE}"
Utilisation
Configurez l'outil:
command btg-config
Lancez l'outil avec son interface utilisateur avec:
command btgncli
Lancez l'outil en ligne de commande avec:
command btgcli
Remerciements
- Merci aux développeurs de BTG.
- Merci à Rasterbar Software pour leur libtorrent.
- Merci à l'auteur du BTG Howto.