diff --git a/DockerEnv b/DockerEnv index 9f5c2336c..c598c7e5a 100644 --- a/DockerEnv +++ b/DockerEnv @@ -3,6 +3,7 @@ #OPENVPN_CONFIG= #OPENVPN_USERNAME= #OPENVPN_PASSWORD= +#RSS_URL= #LOCAL_NETWORK= #ENABLE_UFW=false #TRANSMISSION_ALT_SPEED_DOWN=50 diff --git a/Dockerfile b/Dockerfile index 2c6160ce2..7962f41ee 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,6 +11,8 @@ RUN apt-get update \ && add-apt-repository ppa:transmissionbt/ppa \ && wget -O - https://swupdate.openvpn.net/repos/repo-public.gpg | apt-key add - \ && echo "deb http://build.openvpn.net/debian/openvpn/stable xenial main" > /etc/apt/sources.list.d/openvpn-aptrepo.list \ + && apt-get install -y sudo transmission-cli transmission-common transmission-daemon curl rar unrar zip unzip wget gcc make ruby2.3-dev \ + && gem install transmission-rss \ && apt-get update \ && apt-get install -y sudo transmission-cli transmission-common transmission-daemon curl rar unrar zip unzip ufw iputils-ping openvpn \ && wget https://github.com/Secretmapper/combustion/archive/release.zip \ @@ -28,10 +30,12 @@ RUN apt-get update \ ADD openvpn/ /etc/openvpn/ ADD transmission/ /etc/transmission/ +ADD transmission/transmission-rss.conf /etc/transmission-rss.conf ENV OPENVPN_USERNAME=**None** \ OPENVPN_PASSWORD=**None** \ OPENVPN_PROVIDER=**None** \ + RSS_URL=**None** \ TRANSMISSION_ALT_SPEED_DOWN=50 \ TRANSMISSION_ALT_SPEED_ENABLED=false \ TRANSMISSION_ALT_SPEED_TIME_BEGIN=540 \ diff --git a/README.md b/README.md index 9514f4484..04e39f99b 100644 --- a/README.md +++ b/README.md @@ -109,6 +109,11 @@ If TRANSMISSION_PEER_PORT_RANDOM_ON_START is enabled then it allows traffic to t |----------|----------|-------| |`ENABLE_UFW` | Enables the firewall | `ENABLE_UFW=true`| +### RSS feed configuration options +| Variable | Function | Example | +|----------|----------|-------| +|`RSS_URL`|The RSS feed's URL |`RSS_URL=http://.../xxxxx.rss`| + ### Alternative web UIs You can override the default web UI by setting the ```TRANSMISSION_WEB_HOME``` environment variable. If set, Transmission will look there for the Web Interface files, such as the javascript, html, and graphics files. @@ -331,6 +336,7 @@ ExecStart=/usr/bin/docker run \ -e "OPENVPN_PASSWORD=hunter2" \ -e "OPENVPN_CONFIG=Netherlands" \ -e "OPENVPN_OPTS=--inactive 3600 --ping 10 --ping-exit 60" \ + -e "RSS_URL=http://.../xxxxx.rss" \ -e "TRANSMISSION_UMASK=0" \ -p 9091:9091 \ --dns 8.8.8.8 \ diff --git a/transmission/environment-variables.tmpl b/transmission/environment-variables.tmpl index 5ae9d6538..1c13cfa4e 100644 --- a/transmission/environment-variables.tmpl +++ b/transmission/environment-variables.tmpl @@ -73,6 +73,8 @@ export TRANSMISSION_WATCH_DIR_ENABLED={{ .Env.TRANSMISSION_WATCH_DIR_ENABLED }} # Transmission needs to know which VPN provider is used export OPENVPN_PROVIDER={{ .Env.OPENVPN_PROVIDER }} +export RSS_URL="{{ .Env.RSS_URL }}" + export ENABLE_UFW={{ .Env.ENABLE_UFW }} export TRANSMISSION_WEB_UI={{ .Env.TRANSMISSION_WEB_UI }} diff --git a/transmission/start.sh b/transmission/start.sh index e6e53134b..a32be491a 100755 --- a/transmission/start.sh +++ b/transmission/start.sh @@ -42,4 +42,12 @@ else echo "NO PORT UPDATER FOR THIS PROVIDER" fi +if [ -z "${RSS_URL}" ] || [ "${RSS_URL}" = "**None**" ] ; then + echo "NO RSS URL CONFIGURED, IGNORING" +else + echo "STARTING RSS PLUGIN" + sed -i "s#RSS_URL#$RSS_URL#" /etc/transmission-rss.conf + transmission-rss +fi + echo "Transmission startup script complete." diff --git a/transmission/transmission-rss.conf b/transmission/transmission-rss.conf new file mode 100644 index 000000000..5cb5265a4 --- /dev/null +++ b/transmission/transmission-rss.conf @@ -0,0 +1,7 @@ +feeds: + - url: RSS_URL + download_path: /var/lib/transmission-daemon/downloads +server: + host: 127.0.0.1 + port: 9091 + rpc_path: /transmission/rpc \ No newline at end of file