среда, 11 января 2012 г.

Удобное добавление закачек в transmission

Для работы с torrent у меня используется transmission - простой и удобный сервер, который работает на домашнем сервере в режиме 24x7. Одно лишь неудобство, когда приходится добавлять новую закачку. Приходится либо скачивать torrent файл и добавлять его, либо копировать ссылку (если torrent файл доступен по прямому url) В любом случае не получается просто кликнуть на ссылку и добавить закачку на сервер.

Первым делом попробовал поискать дополнение для Firefox. Нашелся Autotrans, разработка которого похоже давно заброшена. К тому же в последнюю версию firefox дополнение не ставится.

Когда еще не было домашнего сервера, transmission стоял на компьютере и была возможность выбрать его, как обработчик torrent файлов в браузере. Такое поведение вполне устраивало, т.к. для добавления закачки достаточно скачать файл в браузере и открыть его. При открытии запускался transmission, который предлагал добавить новую закачку.

Сейчас так не получается, поскольку transmission стоит на другом компьютере и доступен только через web-интерфейс либо через rpc. Постепенно начала вырисовываться схема:
  • на всех компьютерах регистрируется дефолтный обработчик файлов torrent
  • этот обработчик вызывается каждый раз, когда открывается torrent файл (не важно из файлового менеджера или списка закачек в браузере - механизм открытия файлов примерно одинаков)
  • обработчик посредством RPC вызова добавляет закачку на сервер transmission

Для добавления новых закачек через RPC решил использовать transmission-remote-gui. Он доступен для всех основных платформ. Дополнительным плюсом является доступ к интерфейсу transmission, возможности которого превосходят встроенный web интерфейс.

В репозитарии Debian нет пакета с transmission-remote-gui, поэтому я установил его из архива в ~/bin/transmission-remote-gui. Осталось зарегистрировать его запускаемый файл как обработчик для torrent файлов.

В gnome ассоциации файлов задаются через desktop файлы, пользовательские настройки хранятся в ~/.local/share/applications. Сперва я создал файл ~/.local/share/applications/transmission-remote-gui.desktop, который регистрирует transmission-remote-gui в системе, как обработчик для MIME-type application/x-bittorrent.

~/.local/share/applications/transmission-remote-gui.desktop
[Desktop Entry]
Name=Transmission remote GUI
GenericName=BitTorrent Client
Comment=Download and share files over BitTorrent
Exec=/home/andrey/bin/transmission-remote-gui/transgui %F
Icon=/home/andrey/bin/transmission-remote-gui/transgui.png
Terminal=false
TryExec=/home/andrey/bin/transmission-remote-gui/transgui
Type=Application
MimeType=application/x-bittorrent;
Categories=Network;FileTransfer;P2P;

Затем я добавил в ~/.local/share/applications/mimeapps.list запись, которая делает transmission-remote-gui предпочтительным приложением при обработке файлов application/x-bittorrent.

~/.local/share/applications/mimeapps.list
application/x-bittorrent=transmission-remote-gui.desktop;

Теперь добавление закачек стало намного проще.

Hint: Чтобы не замусоривать систему закачанными torrent файлами, нужно выбрать их удаление после добавления закачки.

11 комментариев:

  1. Спасибо, статья очень помогла. Кстати, появился аддон для Firefox12, называется Autotrans Reloaded v3.1.

    ОтветитьУдалить
  2. Не подскажете, где он хранит файл настроек? Я первый раз запустил из под рута, и, теперь, при запуске из под обычного пользователя ругается при закрытии:
    "unable to write to INI file". До этого на предыдущей системе такого не было.

    ОтветитьУдалить
  3. А проблему с переименование файлов вы не побеждали ?

    ОтветитьУдалить
    Ответы
    1. Не сталкивался. А в чем заключается эта проблема?

      Удалить
    2. Проблема в том, что при сохранении файла, невозможно ему задать Нужное имя. То есть нету банального "Сохранить как..."

      Удалить
    3. А какой у вас браузер и версия? У меня этот пункт есть. Возможно вы выбрали действие по-умолчанию.

      http://www.tataranovich.com/tmp/trg-file-save-as.png

      Удалить
    4. У меня Chrome.
      Вы на скрине показываете как сохраняете файл Торрента. Я же имел ввиду, что при открытии файла Торрента в Transmission, невозможно указать Имя файла... Например. У вас на скрине, вы будите качать файл finnix-107.iso . Во время добавления этого Торрента, нельзя будет указать, что бы имя файла после закачки finix.iso

      Удалить
    5. Насколько я понимаю, сам transmission не позволяет переименовывать файлы внутри торрента. Можно только задать расположение куда качать или переместить позже.

      Удалить
    6. Должен начать позволять это делать с версии 2.80 . только когда она еще будет... Есть способ, но он устаревший... Там из исходников можно по другому собрать... Но для далекой версии... Думал может быть вы знаете способ)

      Удалить
  4. Вот спасибо так спасибо! Никак не получалось проассоциировать торрент-файлы с нормальным transgui, который даёт возможность сразу при добавлении закачки задать нужный путь и переименовать закачку как мне нужно - статья очень помогла в этом. Дело в том, что нормальная версия transgui ставится не из реп, а скачивается в виде простого архив. А та версия, которая есть в репах - глючная и неполнофункциональная.

    ОтветитьУдалить