├── .travis.yml ├── README.md ├── autoinstall.sh ├── functions ├── couchpotato.sh ├── fix_locale.sh ├── functions.sh ├── install_jackett.sh ├── install_plexmediaserver.sh ├── install_radarr.sh ├── install_sickrage.sh ├── install_sonarr.sh ├── install_tautulli.sh ├── rtorrent_rutorrent.sh ├── show_result.sh ├── transmission.sh └── update_upgrade_system.sh └── seedbox.sh /.travis.yml: -------------------------------------------------------------------------------- 1 | language: bash 2 | 3 | script: 4 | - bash seedbox.sh 5 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Seedbox installer [![Build Status](https://travis-ci.org/Punk--Rock/Seedbox-installer.svg?branch=master)](https://travis-ci.org/Punk--Rock/Seedbox-installer) 2 | 3 | ## About 4 | 5 | Preparing and installing a fully seedbox server (Plex Media Server + Sonarr/Radarr or SickRage/CouchPotato + Transmission or rTorrent/ruTorrent + Jackett + Tautulli) 6 | 7 | ![Seedbox](https://i.imgur.com/lyVb4Uh.png) 8 | 9 | ## Compatibility 10 | 11 | Tested on 12 | 13 | * [x] Ubuntu Server 16.04.4 LTS Xenial Xerus 14 | * [x] Debian 9.4.0 Stretch 15 | 16 | ## Services 17 | 18 | Service | Installation | Version | Port 19 | ---------------------- | -------------- | ------------ | ------- 20 | Plex Media Server | Installed | [1.12.0.4829](https://www.plex.tv/downloads/) | 32400 21 | Sonarr | Optional | [latest](https://github.com/Sonarr/Sonarr/releases) | 8989 22 | Radarr | Optional | [latest](https://github.com/Radarr/Radarr/releases) | 7878 23 | SickRage | Optional | [latest](https://github.com/SickRage/SickRage/releases) | 8081 24 | CouchPotato | Optional | [latest](https://github.com/CouchPotato/CouchPotatoServer/releases) | 5050 25 | Transmission | Optional | [latest](https://transmissionbt.com/download/) | 9091 26 | rTorrent + ruTorrent | Optional | [latest](https://github.com/Novik/ruTorrent/releases) | 27 | Jackett | Installed | [0.8.749](https://github.com/Jackett/Jackett/releases) | 9117 28 | Tautulli | Installed | [latest](https://github.com/Tautulli/Tautulli) | 8181 29 | 30 | ## Installation 31 | 32 | ```shell 33 | wget https://raw.githubusercontent.com/Punk--Rock/Seedbox-installer/master/autoinstall.sh 34 | 35 | chmod +x autoinstall.sh 36 | 37 | ./autoinstall.sh 38 | ``` 39 | 40 | ## More 41 | 42 | If you want the same thing with Docker and Docker Compose you can check [this repository](https://github.com/bilyboy785/seedbox-compose) 43 | 44 | ## Contact me 45 | 46 | [![Twitter](https://cdn1.iconfinder.com/data/icons/logotypes/32/twitter-24.png)](https://twitter.com/Punk__R0ck) [@Punk__R0ck](https://twitter.com/Punk__R0ck) 47 | -------------------------------------------------------------------------------- /autoinstall.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | if [ $USER != "root" ] ; then 3 | echo "" 4 | echo " This script must be run as root !" 5 | echo "" 6 | 7 | exit 8 | fi 9 | 10 | if ! ping -c 1 google.com >> /dev/null 2>&1 ; then 11 | echo "" 12 | echo " You are not connected to internet please check your connection !" 13 | echo "" 14 | 15 | exit 16 | fi 17 | 18 | apt-get install -y git-core > /dev/null 2>&1 19 | 20 | mkdir Seedbox-installer 21 | 22 | git clone https://github.com/Punk--Rock/Seedbox-installer.git Seedbox-installer --quiet 23 | 24 | mv Seedbox-installer/* . 25 | 26 | rm -rf Seedbox-installer/ 27 | 28 | rm README.md 29 | 30 | chmod +x seedbox.sh 31 | 32 | clear 33 | 34 | dir=`echo "$PWD" | sed -e "s/\/root/~/g"` 35 | 36 | echo $USER"@"$(hostname)":"$dir"# ./seedbox.sh" 37 | 38 | ./seedbox.sh 39 | 40 | rm autoinstall.sh* 41 | -------------------------------------------------------------------------------- /functions/couchpotato.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | install_couchpotato () { 3 | echo "" 4 | echo " "$step". Installing CouchPotato..." 5 | echo "" 6 | 7 | echo "Running apt-get install python-pip ..." 8 | 9 | apt-get install -y python-pip > /dev/null 2>&1 10 | 11 | echo "Running pip install --upgrade pyopenssl ..." 12 | 13 | pip install --upgrade pyopenssl > /dev/null 2>&1 14 | 15 | echo "Running pip install --upgrade pip ..." 16 | 17 | pip install --upgrade pip > /dev/null 2>&1 18 | 19 | cd /opt/ 20 | 21 | echo "Running git clone https://github.com/CouchPotato/CouchPotatoServer.git ..." 22 | 23 | git clone https://github.com/CouchPotato/CouchPotatoServer.git --quiet 24 | 25 | step=$((step+1)) 26 | } 27 | 28 | configure_couchpotato () { 29 | echo "" 30 | echo " "$step". Configuring CouchPotato..." 31 | echo "" 32 | 33 | cp CouchPotatoServer/init/ubuntu /etc/init.d/couchpotato 34 | 35 | cp CouchPotatoServer/init/ubuntu.default /etc/default/couchpotato 36 | 37 | sed -i 's/CP_USER=couchpotato/CP_USER=root/g' /etc/default/couchpotato 38 | 39 | sed -i 's/CP_HOME=/CP_HOME=\/opt\/CouchPotatoServer/g' /etc/default/couchpotato 40 | 41 | chmod +x /etc/init.d/couchpotato 42 | 43 | update-rc.d couchpotato defaults 44 | 45 | service couchpotato start 46 | 47 | cd CouchPotatoServer/couchpotato/core/helpers/ 48 | 49 | wget https://raw.githubusercontent.com/Snipees/couchpotato.providers.french/master/namer_check.py --quiet 50 | 51 | cd /var/opt/couchpotato/ 52 | 53 | mkdir custom_plugins/ && cd custom_plugins/ 54 | 55 | mkdir cpasbien t411 torrent9 && cd cpasbien/ 56 | 57 | wget https://raw.githubusercontent.com/Snipees/couchpotato.providers.french/master/cpasbien/__init__.py --quiet 58 | 59 | wget https://raw.githubusercontent.com/Snipees/couchpotato.providers.french/master/cpasbien/main.py --quiet 60 | 61 | cd ../t411/ 62 | 63 | wget https://raw.githubusercontent.com/Punk--Rock/couchpotato.providers.french/master/t411/__init__.py --quiet 64 | 65 | wget https://raw.githubusercontent.com/Punk--Rock/couchpotato.providers.french/master/t411/main.py --quiet 66 | 67 | cd ../torrent9/ 68 | 69 | wget https://raw.githubusercontent.com/Punk--Rock/couchpotato.providers.french/master/torrent9/__init__.py --quiet 70 | 71 | wget https://raw.githubusercontent.com/Punk--Rock/couchpotato.providers.french/master/torrent9/main.py --quiet 72 | 73 | service couchpotato restart 74 | 75 | step=$((step+1)) 76 | } 77 | -------------------------------------------------------------------------------- /functions/fix_locale.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | fix_locale () { 3 | echo "" 4 | echo " "$step". Fixing default locale problems with LXC containers..." 5 | echo "" 6 | 7 | locale-gen en_US en_US.UTF-8 8 | 9 | step=$((step+1)) 10 | } -------------------------------------------------------------------------------- /functions/functions.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . functions/fix_locale.sh 3 | . functions/update_upgrade_system.sh 4 | . functions/install_plexmediaserver.sh 5 | . functions/install_sonarr.sh 6 | . functions/install_radarr.sh 7 | . functions/install_sickrage.sh 8 | . functions/couchpotato.sh 9 | . functions/rtorrent_rutorrent.sh 10 | . functions/transmission.sh 11 | . functions/install_jackett.sh 12 | . functions/install_tautulli.sh 13 | . functions/show_result.sh 14 | -------------------------------------------------------------------------------- /functions/install_jackett.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | install_jackett () { 3 | echo " "$step". Installing Jackett..." 4 | echo "" 5 | 6 | echo "Running apt-get install libcurl4-openssl-dev bzip2 mono-devel ..." 7 | 8 | apt-get install -y --allow-unauthenticated libcurl4-openssl-dev bzip2 mono-devel > /dev/null 2>&1 9 | 10 | cd /opt/ 11 | 12 | wget https://github.com/Jackett/Jackett/releases/download/v0.8.749/Jackett.Binaries.Mono.tar.gz --quiet 13 | 14 | tar -zxf Jackett.Binaries.Mono.tar.gz 15 | 16 | rm Jackett.Binaries.Mono.tar.gz 17 | 18 | chmod -R 755 Jackett/ 19 | 20 | cd /lib/systemd/system/ 21 | 22 | wget https://raw.githubusercontent.com/Punk--Rock/Configuration-files/master/jackett/jackett.service --quiet 23 | 24 | systemctl enable jackett 25 | 26 | systemctl start jackett 27 | 28 | step=$((step+1)) 29 | } 30 | -------------------------------------------------------------------------------- /functions/install_plexmediaserver.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | install_plexmediaserver () { 3 | echo "" 4 | echo " "$step". Installing Plex Media Server..." 5 | echo "" 6 | 7 | cd /tmp/ 8 | 9 | wget https://downloads.plex.tv/plex-media-server/1.12.0.4829-6de959918/plexmediaserver_1.12.0.4829-6de959918_amd64.deb --quiet 10 | 11 | # Little fix for containers/LXC running on Ubuntu Server 12 | mv /sbin/udevadm /sbin/udevadm.bak 13 | 14 | touch /sbin/udevadm 15 | 16 | chmod +x /sbin/udevadm 17 | # Little fix for containers/LXC running on Ubuntu Server 18 | 19 | dpkg -i plexmediaserver_1.12.0.4829-6de959918_amd64.deb 20 | 21 | # Little fix for containers/LXC running on Ubuntu Server 22 | rm /sbin/udevadm 23 | 24 | mv /sbin/udevadm.bak /sbin/udevadm 25 | # Little fix for containers/LXC running on Ubuntu Server 26 | 27 | step=$((step+1)) 28 | } 29 | -------------------------------------------------------------------------------- /functions/install_radarr.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | install_radarr () { 3 | echo "" 4 | echo " "$step". Installing Radarr..." 5 | echo "" 6 | 7 | cd /opt/ 8 | 9 | wget $(curl -s https://api.github.com/repos/Radarr/Radarr/releases | grep linux.tar.gz | grep browser_download_url | head -1 | cut -d \" -f 4 ) --quiet 10 | 11 | tar -zxf Radarr.develop.*.linux.tar.gz 12 | 13 | rm Radarr.develop.*.linux.tar.gz 14 | 15 | cd /lib/systemd/system/ 16 | 17 | wget https://raw.githubusercontent.com/Punk--Rock/Configuration-files/master/radarr/radarr.service --quiet 18 | 19 | systemctl enable radarr 20 | 21 | systemctl start radarr 22 | 23 | step=$((step+1)) 24 | } 25 | -------------------------------------------------------------------------------- /functions/install_sickrage.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | install_sickrage () { 3 | echo " "$step". Installing SickRage..." 4 | echo "" 5 | 6 | echo "Running apt-get install unrar-free openssl libssl-dev python2.7 ..." 7 | 8 | apt-get install -y unrar-free openssl libssl-dev python2.7 > /dev/null 2>&1 9 | 10 | addgroup --system sickrage 11 | 12 | adduser --disabled-password --system --home /var/lib/sickrage --gecos "SickRage" --ingroup sickrage sickrage 13 | 14 | mkdir /opt/sickrage 15 | 16 | chown sickrage:sickrage /opt/sickrage 17 | 18 | echo "Running git clone https://github.com/SickRage/SickRage.git ..." 19 | 20 | git clone https://github.com/SickRage/SickRage.git /opt/sickrage --quiet 21 | 22 | cp /opt/sickrage/runscripts/init.ubuntu /etc/init.d/sickrage 23 | 24 | chown root:root /etc/init.d/sickrage 25 | 26 | chmod 644 /etc/init.d/sickrage 27 | 28 | chmod +x /etc/init.d/sickrage 29 | 30 | update-rc.d sickrage defaults 31 | 32 | service sickrage start 33 | 34 | step=$((step+1)) 35 | } 36 | -------------------------------------------------------------------------------- /functions/install_sonarr.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | install_sonarr () { 3 | echo " "$step". Installing Sonarr..." 4 | echo "" 5 | 6 | apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF > /dev/null 2>&1 7 | 8 | echo "deb http://download.mono-project.com/repo/debian wheezy main" | tee /etc/apt/sources.list.d/mono-xamarin.list > /dev/null 2>&1 9 | 10 | apt-key adv –keyserver keyserver.ubuntu.com –recv-keys FDA5DFFC > /dev/null 2>&1 11 | 12 | echo "deb http://apt.sonarr.tv/ master main" | tee /etc/apt/sources.list.d/sonarr.list > /dev/null 2>&1 13 | 14 | echo "Running apt-get install libmono-cil-dev mediainfo nzbdrone ..." 15 | 16 | apt-get update -y > /dev/null 2>&1 17 | 18 | apt-get install -y --allow-unauthenticated libmono-cil-dev mediainfo > /dev/null 2>&1 19 | 20 | apt-get install -y --allow-unauthenticated nzbdrone > /dev/null 2>&1 21 | 22 | cd /lib/systemd/system/ 23 | 24 | wget https://raw.githubusercontent.com/Punk--Rock/Configuration-files/master/sonarr/sonarr.service --quiet 25 | 26 | systemctl enable sonarr 27 | 28 | systemctl start sonarr 29 | 30 | step=$((step+1)) 31 | } 32 | -------------------------------------------------------------------------------- /functions/install_tautulli.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | install_tautulli () { 3 | echo "" 4 | echo " "$step". Installing Tautulli..." 5 | echo "" 6 | 7 | echo "Running apt-get install python ..." 8 | 9 | apt-get install -y python > /dev/null 2>&1 10 | 11 | cd /opt/ 12 | 13 | echo "Running git clone https://github.com/Tautulli/Tautulli.git ..." 14 | 15 | git clone https://github.com/Tautulli/Tautulli.git --quiet 16 | 17 | adduser --system --no-create-home tautulli --quiet 18 | 19 | chown -R tautulli:nogroup Tautulli 20 | 21 | chmod +x Tautulli/init-scripts/init.ubuntu 22 | 23 | ln -s /opt/Tautulli/init-scripts/init.ubuntu /etc/init.d/tautulli 24 | 25 | update-rc.d tautulli defaults 26 | 27 | service tautulli start 28 | 29 | step=$((step+1)) 30 | } 31 | -------------------------------------------------------------------------------- /functions/rtorrent_rutorrent.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | install_rtorrent_rutorrent () { 3 | echo " "$step". Installing rTorrent/ruTorrent (with Nginx)..." 4 | echo "" 5 | 6 | echo "Running apt-get install automake libcppunit-dev libtool build-essential pkg-config libssl-dev libcurl4-openssl-dev libsigc++-2.0-dev libncurses5-dev screen subversion nginx apache2-utils php7.0 php7.0-fpm php7.0-cli php7.0-curl php-geoip php7.0-xmlrpc zip ffmpeg buildtorrent mediainfo python-libtorrent rtorrent ..." 7 | 8 | apt-get install -y automake libcppunit-dev libtool build-essential pkg-config libssl-dev libcurl4-openssl-dev libsigc++-2.0-dev libncurses5-dev screen subversion nginx apache2-utils php7.0 php7.0-fpm php7.0-cli php7.0-curl php-geoip php7.0-xmlrpc zip ffmpeg buildtorrent mediainfo python-libtorrent rtorrent > /dev/null 2>&1 9 | 10 | if [ -d "/var/www/html/" ] ; then 11 | cd /var/www/html/ 12 | else 13 | mkdir /var/www/ 14 | 15 | mkdir /var/www/html/ 16 | fi 17 | 18 | echo "Running git clone https://github.com/Novik/ruTorrent.git ..." 19 | 20 | git clone https://github.com/Novik/ruTorrent.git rutorrent --quiet 21 | 22 | cd rutorrent/plugins/ 23 | 24 | git clone https://github.com/xombiemp/rutorrentMobile.git mobile --quiet 25 | 26 | step=$((step+1)) 27 | } 28 | 29 | configure_rutorrent () { 30 | echo "" 31 | echo " "$step". Configuring ruTorrent..." 32 | echo "" 33 | 34 | sed -i 's/$useExternal = false/$useExternal = '\''buildtorrent'\''/g' /var/www/html/rutorrent/plugins/create/conf.php 35 | 36 | sed -i 's/$pathToCreatetorrent = '\'''\''/$pathToCreatetorrent = '\''\/usr\/bin\/buildtorrent'\''/g' /var/www/html/rutorrent/plugins/create/conf.php 37 | 38 | step=$((step+1)) 39 | } 40 | 41 | configure_nginx_rutorrent () { 42 | echo " "$step". Configuring Nginx and downloading server block for ruTorrent..." 43 | echo "" 44 | 45 | cd /etc/nginx/ 46 | 47 | mv nginx.conf nginx.conf.default 48 | 49 | wget https://raw.githubusercontent.com/Punk--Rock/Configuration-files/master/nginx/nginx.conf --quiet 50 | 51 | cd sites-available/ 52 | 53 | wget https://raw.githubusercontent.com/Punk--Rock/Configuration-files/master/nginx/sites-available/rutorrent.conf --quiet 54 | 55 | cd ../sites-enabled/ 56 | 57 | rm default 58 | 59 | ln -s /etc/nginx/sites-available/rutorrent.conf 60 | 61 | sed -i 's/;date.timezone =/date.timezone = Europe\/Paris/g' /etc/php/7.0/fpm/php.ini 62 | 63 | read -p " What will be the username to access to ruTorrent ? [rutorrent] " rutorrent_user_temp 64 | echo "" 65 | 66 | if [ -z "$rutorrent_user_temp" ] ; then 67 | rutorrent_user="rutorrent" 68 | else 69 | rutorrent_user=$(echo "$rutorrent_user_temp" | tr -s '[:upper:]' '[:lower:]') 70 | fi 71 | 72 | read -p " and the password ? [rutorrent] " rutorrent_password 73 | 74 | if [ -z "$rutorrent_password" ] ; then 75 | rutorrent_password="rutorrent" 76 | fi 77 | 78 | sed -i 's/rutorrent_user/'$rutorrent_user'/g' /etc/nginx/sites-available/rutorrent.conf 79 | 80 | htpasswd -b -c /var/www/html/rutorrent/.htpasswd $rutorrent_user $rutorrent_password > /dev/null 2>&1 81 | 82 | chmod 400 /var/www/html/rutorrent/.htpasswd 83 | 84 | chown www-data:www-data /var/www/html/rutorrent/.htpasswd 85 | 86 | service nginx restart && service php7.0-fpm restart 87 | 88 | step=$((step+1)) 89 | } 90 | 91 | configure_user_rtorrent_rutorrent () { 92 | echo "" 93 | echo " "$step". Configuring "$rutorrent_user" user for rTorrent and ruTorrent..." 94 | echo "" 95 | 96 | useradd $rutorrent_user 97 | 98 | cd /home/ 99 | 100 | mkdir $rutorrent_user/ && cd $rutorrent_user/ 101 | 102 | mkdir torrents watch .session 103 | 104 | touch .rtorrent.rc 105 | 106 | echo "scgi_port = 127.0.0.1:5001 107 | encoding_list = UTF-8 108 | port_range = 45000-65000 109 | port_random = no 110 | check_hash = no 111 | directory = /home/"$rutorrent_user"/torrents 112 | session = /home/"$rutorrent_user"/.session 113 | encryption = allow_incoming, try_outgoing, enable_retry 114 | schedule = watch_directory,1,1,\"load_start=/home/"$rutorrent_user"/watch/*.torrent\" 115 | schedule = untied_directory,5,5,\"stop_untied=/home/"$rutorrent_user"/watch/*.torrent\" 116 | use_udp_trackers = yes 117 | dht = off 118 | peer_exchange = no 119 | min_peers = 40 120 | max_peers = 100 121 | min_peers_seed = 10 122 | max_peers_seed = 50 123 | max_uploads = 15 124 | execute = {sh,-c,/usr/bin/php /var/www/html/rutorrent/php/initplugins.php "$rutorrent_user" &} 125 | schedule = espace_disque_insuffisant,1,30,close_low_diskspace=500M" > .rtorrent.rc 126 | 127 | chown -R $rutorrent_user:$rutorrent_user /home/$rutorrent_user/ 128 | 129 | chown root:root /home/$rutorrent_user/ 130 | 131 | chmod 755 /home/$rutorrent_user/ 132 | 133 | cd /var/www/html/rutorrent/conf/users/ 134 | 135 | mkdir $rutorrent_user/ && cd $rutorrent_user/ 136 | 137 | touch config.php 138 | 139 | echo " config.php 145 | 146 | chown -R www-data:www-data /var/www/html/ 147 | 148 | service nginx restart 149 | 150 | step=$((step+1)) 151 | } 152 | 153 | configure_rtorrent_service () { 154 | echo " "$step". Configuring rTorrent service..." 155 | echo "" 156 | 157 | cd /etc/init.d/ 158 | 159 | touch rtorrent 160 | 161 | echo "#!/usr/bin/env bash 162 | 163 | # Dépendance : screen, killall et rtorrent 164 | ### BEGIN INIT INFO 165 | # Provides: -rtorrent 166 | # Required-Start: \$syslog \$network 167 | # Required-Stop: \$syslog \$network 168 | # Default-Start: 2 3 4 5 169 | # Default-Stop: 0 1 6 170 | # Short-Description: Start daemon at boot time 171 | # Description: Start-Stop rtorrent user session 172 | ### END INIT INFO 173 | 174 | ## Début configuration ## 175 | user=\""$rutorrent_user"\" 176 | ## Fin configuration ## 177 | 178 | rt_start() { 179 | su --command=\"screen -dmS \${user}-rtorrent rtorrent\" \"\${user}\" 180 | } 181 | 182 | rt_stop() { 183 | killall --user \"\${user}\" screen 184 | } 185 | 186 | case \"\$1\" in 187 | start) echo \"Starting rtorrent...\"; rt_start 188 | ;; 189 | stop) echo \"Stopping rtorrent...\"; rt_stop 190 | ;; 191 | restart) echo \"Restart rtorrent...\"; rt_stop; sleep 1; rt_start 192 | ;; 193 | *) echo \"Usage: \$0 {start|stop|restart}\"; exit 1 194 | ;; 195 | esac 196 | exit 0" > $rutorrent_user-rtorrent 197 | 198 | chmod +x $rutorrent_user-rtorrent 199 | 200 | update-rc.d $rutorrent_user-rtorrent defaults 201 | 202 | service $rutorrent_user-rtorrent start 203 | 204 | if [ "$install_searchers" = "y" ] ; then 205 | service sickrage restart 206 | fi 207 | 208 | step=$((step+1)) 209 | } 210 | -------------------------------------------------------------------------------- /functions/show_result.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | show_result () { 3 | ip_address=`hostname -I | sed -e "s/ //g"` 4 | 5 | echo "" 6 | echo " That's okay !" 7 | echo "" 8 | echo " Plex Media Server : "${blue}"http://"$ip_address":32400/web/index.html"${nc} 9 | if [ "$install_searchers" = "y" ] ; then 10 | echo " SickRage : "${blue}"http://"$ip_address":8081/home/"${nc} 11 | echo " CouchPotato : "${blue}"http://"$ip_address":5050"${nc} 12 | else 13 | echo " Sonarr : "${blue}"http://"$ip_address":8989"${nc} 14 | echo " Radarr : "${blue}"http://"$ip_address":7878"${nc} 15 | fi 16 | if [ "$install_torrent" = "r" ] ; then 17 | echo " ruTorrent : "${blue}"http://"$ip_address"${nc} (username : "$rutorrent_user" / password : "$rutorrent_password")" 18 | else 19 | echo " Transmission : "${blue}"http://"$ip_address":9091/transmission/web/${nc} (username/password : transmission)" 20 | fi 21 | echo " Jackett : "${blue}"http://"$ip_address":9117/UI/Dashboard"${nc} 22 | echo " Tautulli : "${blue}"http://"$ip_address":8181"${nc} 23 | echo "" 24 | } 25 | -------------------------------------------------------------------------------- /functions/transmission.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | install_transmission () { 3 | echo " "$step". Installing Transmission..." 4 | echo "" 5 | 6 | echo "Running apt-get install transmission-daemon ..." 7 | 8 | apt-get install -y transmission-daemon > /dev/null 2>&1 9 | 10 | step=$((step+1)) 11 | } 12 | 13 | configure_transmission () { 14 | echo "" 15 | echo " "$step". Configuring Transmission..." 16 | echo "" 17 | 18 | sed -i 's/rpc-whitelist-enabled\": true/rpc-whitelist-enabled\": false/g' /etc/transmission-daemon/settings.json 19 | 20 | service transmission-daemon reload 21 | 22 | step=$((step+1)) 23 | } -------------------------------------------------------------------------------- /functions/update_upgrade_system.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | update_upgrade_system () { 3 | echo "" 4 | echo " "$step". Updating system..." 5 | echo "" 6 | 7 | echo "Running apt-get update && apt-get upgrade && apt-get dist-upgrade ..." 8 | 9 | apt-get update -y > /dev/null 2>&1 10 | 11 | apt-get upgrade -y > /dev/null 2>&1 12 | 13 | apt-get dist-upgrade -y > /dev/null 2>&1 14 | 15 | apt-get install -y curl git-core unzip > /dev/null 2>&1 16 | 17 | step=$((step+1)) 18 | } 19 | -------------------------------------------------------------------------------- /seedbox.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | if [ $USER != "root" ] ; then 3 | echo "" 4 | echo " This script must be run as root !" 5 | echo "" 6 | 7 | exit 8 | fi 9 | 10 | if ! ping -c 1 google.com >> /dev/null 2>&1 ; then 11 | echo "" 12 | echo " You are not connected to internet please check your connection !" 13 | echo "" 14 | 15 | exit 16 | fi 17 | 18 | . functions/functions.sh 19 | 20 | green="\033[1;32m" 21 | blue="\033[1;34m" 22 | orange="\033[0;33m" 23 | red="\033[1;31m" 24 | nc="\033[0m" 25 | 26 | step=1 27 | 28 | fix_locale 29 | 30 | update_upgrade_system 31 | 32 | install_plexmediaserver 33 | 34 | echo "" 35 | read -p " As default Sonarr and Radarr will be installed. Do you prefer install Sickrage and CouchPotato ? [y/N] " install_searchers 36 | echo "" 37 | 38 | if [ "$install_searchers" = "y" ] ; then 39 | install_sickrage 40 | 41 | install_couchpotato 42 | 43 | configure_couchpotato 44 | else 45 | install_sonarr 46 | 47 | install_radarr 48 | fi 49 | 50 | echo "" 51 | read -p " Would you like install rTorrent + ruTorrent or Transmission ? [r/T] " install_torrent 52 | echo "" 53 | 54 | if [ "$install_torrent" = "r" ] ; then 55 | install_rtorrent_rutorrent 56 | 57 | configure_rutorrent 58 | 59 | configure_nginx_rutorrent 60 | 61 | configure_user_rtorrent_rutorrent 62 | 63 | configure_rtorrent_service 64 | else 65 | install_transmission 66 | 67 | configure_transmission 68 | fi 69 | 70 | install_jackett 71 | 72 | install_tautulli 73 | 74 | show_result 75 | --------------------------------------------------------------------------------