Vous êtes ici : Accueil / Debian GNU/Linux / Système / Logiciels / Installer le client BitTorrent BTG sur Debian

Installer le client BitTorrent BTG sur Debian

Par Pierre-Yves Landuré Dernière modification 11/11/2017 10:30

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