GithubHelp home page GithubHelp logo

confiq / transmission-rss Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nning/transmission-rss

0.0 2.0 0.0 144 KB

Adds torrents from rss feeds to transmission web frontend.

License: GNU General Public License v3.0

Ruby 92.40% Shell 7.60%

transmission-rss's Introduction

transmission-rss

Gem Version Build Status Coverage Status Code Climate

transmission-rss is basically a workaround for transmission's lack of the ability to monitor RSS feeds and automatically add enclosed torrent links.

It works with transmission-daemon and transmission-gtk (if the web frontend is enabled in the settings dialog). Sites like showrss.karmorra.info and ezrss.it or self-hosted seriesly instances are suited well as feed sources.

A tool called transmission-add-file is also included for mass adding of torrent files.

As it's done with poems, I devote this very artful and romantic piece of code to the single most delightful human being: Ann.

The minimum supported Ruby version is 1.9.3.

Installation

Latest stable version from rubygems.org

gem install transmission-rss

From source

git clone https://github.com/nning/transmission-rss
cd transmission-rss
bundle
gem build transmission-rss.gemspec
gem install transmission-rss-*.gem

Configuration

A yaml formatted config file is expected at /etc/transmission-rss.conf. Users can override some options for their transmission-rss instances by providing a config at ~/.config/transmission-rss/config.yml (or in $XDG_CONFIG_HOME instead of ~/.config).

Minimal example

It should at least contain a list of feeds:

feeds:
  - url: http://example.com/feed1
  - url: http://example.com/feed2

Feed item titles can be filtered by a regular expression:

feeds:
  - url: http://example.com/feed1
    regexp: foo
  - url: http://example.com/feed2
    regexp: (foo|bar)

Feeds can also be configured to download files to specific directory:

feeds:
  - url: http://example.com/feed1
    download_path: /home/user/Downloads

All available options

The following configuration file example contains every existing option (although update_interval, add_paused, server, fork, and pid_file are default values and could be omitted). The default log_target is STDERR. privileges is not defined by default, so the script runs as current user/group. login is also not defined by default. It has to be defined, if transmission is configured for HTTP basic authentication.

feeds:
  - url: http://example.com/feed1
  - url: http://example.com/feed2
  - url: http://example.com/feed3
    regexp: match1
  - url: http://example.com/feed4
    regexp: (match1|match2)
  - url: http://example.com/feed4
    download_path: /home/user/Downloads
  - url: http://example.com/feed4
    regexp:
      - match1
      - match2
  - url: http://example.com/feed5
    regexp:
      - matcher: match1
	  	download_path: /home/user/match1
      - matcher: match2
	  	download_path: /home/user/match2

update_interval: 600

add_paused: false

server:
  host: localhost
  port: 9091

login:
  username: transmission
  password: transmission

log_target: /var/log/transmissiond-rss.log

privileges:
  user: nobody
  group: nobody

fork: false

pid_file: false

Daemonized Startup

The following content can be saved into /etc/systemd/system/transmission-rss.service to create a systemd unit. Remember checking the path in ExecStart.

[Unit]
Description=Transmission RSS daemon.
After=network.target transmission-daemon.service

[Service]
Type=forking
ExecStart=/usr/local/bin/transmission-rss -f
ExecReload=/bin/kill -s HUP $MAINPID

[Install]
WantedBy=multi-user.target

The unit files are reloaded by systemctl daemon-reload. You can then start transmission-rss by running systemctl start transmission-rss. Starting on boot, can be enabled systemctl enable transmission-rss.

transmission-rss's People

Contributors

andrewhood125 avatar andriusch avatar confiq avatar hamptonmakes avatar mikz avatar nning avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.