[HOW-TO] Postęp ściągania rTorrent w Conky

Awatar użytkownika
zet120
Wytworny Kaczor
Wytworny Kaczor
Posty: 280
Rejestracja: 31 maja 2008, 07:35
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Openbox
Architektura: x86_64

[HOW-TO] Postęp ściągania rTorrent w Conky

Post autor: zet120 »

Do napisania tego poradnika skłonił mnie artykuł o podobnej treści znajdujący się na szwedzkim forum Ubuntu.
http://ubuntu-se.org/phpBB3/viewtopic.php?f=19&t=30454
Jako, że osobiście byłem zainteresowany tematem postanowiłem zbadać sprawę i oto wyniki.
Aby conky mógł wyświetlać na pulpicie poczynania rTorrenta ten ostatni musi być zainstalowany ze źródeł i to chyba najtrudnieszy moment tej operacji, ale do dzieła.
Jeżeli w systemie mamy zainstalowanego rTorrenta to należy go usunąć, a zatem w konsoli:

Kod: Zaznacz cały

apt-get remove rtorrent
Następnie należy zainstalować narzędzia niezbędne do dalszej pracy:

Kod: Zaznacz cały

sudo apt-get install build-essential libsigc++-2.0-dev pkg-config libcurl3-openssl-dev libidn11-dev libkadm55 libkrb5-dev libssl-dev zlib1g-dev libncurses5 libncurses5-dev libxmlrpc-c3-dev
Następnie udajemy się na stronkę twórcy rTorrenta
http://libtorrent.rakshasa.no/downloads/
i ściągamy najnowsze paczki.
Mój wybór padł na: libtorrent-0.12.4.tar.gz i rtorrent-0.8.4.tar.gz
Paczki należy rozpakować np. na Pulpit i w konsoli:

Kod: Zaznacz cały

cd libtorrent-0.12.4
./configure
make
sudo make install
i dalej:

Kod: Zaznacz cały

cd rtorrent-0.8.4
./configure --with-xmlrpc-c
make
sudo make install
Następny krokiem jest utworzenie w katalogu domowym folderu o nazwie rtorrent_rpc zatem:

Kod: Zaznacz cały

mkdir ~/rtorrent_rpc
następnie do pliku konfiguracyjnego rtorrenta czyli najczęściej ~/.rtorrent.rc w ostatniej linijce należy dopisać:

Kod: Zaznacz cały

scgi_local =~/rtorrent_rpc/rpc.socket
Kolejnym krokiem będzie wizyta na stronie autora skryptu:
http://libtorrent.rakshasa.no/wiki/UtilsXmlrpc2scgi
i pobranie dokładnie tego:
xmlrpc2scgi.py autorstwa glenn on 05/23/08 06:02:00.
Skrypt należy umieścić w utworzonym folderze, czyli ~/rtorrent_rpc i nadać mu prawo do wykonania bądź to graficznie bądź w konsoli.
Następny krok to instalacja paczki:

Kod: Zaznacz cały

sudo apt-get install xmlstarlet
Teraz kopiujemy ten skrypt:

Kod: Zaznacz cały

#!/bin/sh
test -S "$2" &&
"$@" d.multicall default \
   d.get_name= \
   d.get_up_rate= \
   d.get_down_rate= \
   d.get_completed_chunks= \
   d.get_size_chunks= \
   d.is_active= \
|
xmlstarlet sel -t -v / |
awk '/./ {
   if (++i%6 == 1) name=$0
   else if (i%6 == 2) up[name]=$0
   else if (i%6 == 3) down[name]=$0
   else if (i%6 == 4) done[name]=$0
   else if (i%6 == 5) size[name]=$0
   else if (i%6 == 0) active[name]=$0
} END {
   for(name in up) {
      if(active[name]) {
         up_sum += up[name]
         down_sum += down[name]
         #if(++j<=4)
         {
            printf("Namn: %s\n", name)
            printf("Klart: %d%%\n", 100 * done[name] / size[name])
            printf("Upp: %.1f kB/s\n", up[name] / 1024)
            printf("Ner: %.1f kB/s\n", down[name] / 1024)
            printf("\n\b")
         }
      }
   }
   printf("Upp totalt: %.1f kB/s\n", up_sum / 1024)
   printf("Ner totalt: %.1f kB/s\n", down_sum / 1024)
}' |
xargs -d'\b' -n1 printf '%s\0' |
sort -z |
xargs -0 -n1 printf '%s'
zapisujemy w folderze domowym, nadajemy prawo do wykonania jako programu.
W dowolnym miejscu pliku configuracyjnego ~/.conkyrc dopisujemy (pamiętając o ewentualnym dopasowaniu ścieżek)linię:

Kod: Zaznacz cały

${color }${exec ~/skriptet.sh ~/rtorrent_rpc/xmlrpc2scgi.py ~/rtorrent_rpc/rpc.socket}
I to w zasadzie tyle, po uruchomieniu rTorrenta i dodaniu zadania otrzymamy:

Obrazek

W komentarzach do oryginalnego artykułu znajdują się jeszcze dwa przykładowe skrypty, których analiza pozwoli zorientować się jak najlepiej przystosować skrypt do własnych potrzeb.

Pozdrawiam i powodzenia.
ODPOWIEDZ

Wróć do „Środowiska graficzne”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 76 gości