Wednesday, 27 January 2016 15:01

SickRage + Sabnzbd + Raspberry Pi = TVPi Part 2

Written by 
Rate this item
(0 votes)

Installing SickRage and Sabnzbd on your Raspberry Pi, PART 2 of 2

Easy Step-by-step illustrated guide to setting up a Raspberry Pi with SickRage and Sabnzbd

Part 2 of 2 of the SickRage & Sabnzbd installation tutorial on a Raspberry Pi.

 

Part 1 - SABnzbd Installation | Part 2

 

In Part 1, we installed the Raspbian image and got our Pi on to the network, we editted some configurations on the Pi, downloaded and installed, and configured Sabnzbd.  Here in Part 2 will will continue on and begin with installing SickRage.  I originally have been using Sickbeard, but I started running into some issues.  Searching around, I found that SickRage seems to have a more active community around it so I figured I'd give it a try.

 

Download and Install SickRage

There are a few different PVR (personal video recorder) applications out there.  I was a fan of SickBeard for a lomg time but recenetly made the switch to SickRage.  There is also one called Sonarr, which seems to have a decent following, but I have not used it yet.

 

SSH back into the Pi (via command line or putty) then update and install the necessary applications.

sudo apt-get update && sudo apt-get install git-core python-cheetah python-lxml python-pip python-dev git libssl-dev libxslt1-dev libxslt1.1 libxml2-dev libxml2 libssl-dev libffi-dev

Install pyopenssl (It was already installed on my Pi, but run it just in case)

sudo pip install pyopenssl

 

Before moving forward, as of this writing, there appears to be some disconnect among the developers of SickRage.  The official branch of SickRage was located here: https://github.com/SiCKRAGETV/SickRage.git.  When I initially cloned that, I was having issues starting it up.  The other branch is located here: https://github.com/SickRage/SickRage.git.  This is the one I will be using and the one I currently recommend.  (At least for now)

 

We will clone the sickrage installation from git and store it in directory ~/.sickrage.  We can clone it in any directory we wish, but in this example we will clone to our home directory /home/pi/.sickrage

git clone https://github.com/SickRage/SickRage.git ~/.sickrage 

 

Although we are using "SickRage" because it is a fork from "SickBeard", some file names are the same.

Test start SickRage (there is no "installation" other than cloning the git directory) from our cloned directory.

python ~/.sickrage/SickBeard.py

you will not see any activity in the terminal window at first.  After about 30 seconds you should be able to navigate to http://<your-pi-ip>:8081 , in my example it is http://tvpi:8081

Sickbeard Sabnzbd on Raspberry Pi 14

At this point, all we want to do is to make sure it starts and you can navigate to the webpage.

 

Configure Sickbeard to Autostart at Boot

Once you have manually started sickrage, press Ctrl+c in the terminal to stop running Sickrage.

We need to copy and modify the init script from the sickbeard directory

sudo cp ~/.sickrage/runscripts/init.ubuntu /etc/init.d/sickrage

Make the script executable

sudo chmod +x /etc/init.d/sickrage

Now we need to make the /etc/default/sickbeard file for sickrage to run properly.

sudo nano /etc/default/sickrage

the file will be empty, copy & paste the text below into the file.  If you followed along with the directories I cloned the installation to, you will not need to edit anything.  Hit Ctrl+x and y to exit and save the file

## /etc/default/sickrage

SR_USER=pi                         #$RUN_AS, username to run sickrage under, the default is sickrage
SR_HOME=/home/pi/.sickrage         #$APP_PATH, the location of SickBeard.py, the default is /opt/sickrage
SR_DATA=/home/pi/.sickrage         #$DATA_DIR, the location of sickbeard.db, cache, logs, the default is /opt/sickrage
## SR_PIDFILE=      #$PID_FILE, the location of sickrage.pid, the default is /var/run/sickrage/sickrage.pid
## PYTHON_BIN=      #$DAEMON, the location of the python binary, the default is /usr/bin/python2.7
## SR_OPTS=         #$EXTRA_DAEMON_OPTS, extra cli option for sickrage, i.e. " --config=/home/sickrage/config.ini"
## SSD_OPTS=        #$EXTRA_SSD_OPTS, extra start-stop-daemon option like " --group=users"
##
## EXAMPLE if want to run as different user
## add SR_USER=username to /etc/default/sickrage
## otherwise default sickrage is used

 

Update the boot sequence

sudo update-rc.d -f sickrage defaults

and reboot the pi

sudo reboot

Once the pi is booted up, SSH back in and check to see if sickbeard is running

sudo service sickrage status

You should see:

Sickbeard Sabnzbd on Raspberry Pi 15

You can manually stop Sickbeard with the command sudo service sickbeard stop or start sudo service sickbeard start

 

Configure SickRage to work with Sabnzbd

We'll go through basic configuration of SickRage as well as Sabnzbd that will enable them to work with each other.

 

Below are the changes I made to my installation in each category.  Navigate to your Sickrage interface with your browser (http://<your-pi-ip>:8081) and click on the Settings Icon

Click on Save Changes after you complete each section

- General Configuration

Misc
  • Launch Browser: uncheck
  • Show Root Directories: This is where SickRage will create sub-directories for specific shows (I used /mnt/Video2/TV Shows)

Sickbeard Sabnzbd on Raspberry Pi 17

- Backup/Restore

I left all settings as default

 

- Search Settings

Episode Search
  • Usenet Retention: change to 900 (This depends on your usenet provider, if unsure, leave default of 500)

Sickbeard Sabnzbd on Raspberry Pi 18

NZB Search
  • Search NZB's: Check
  • Send .nzb files to:   Sabnzbd
  • Sabnzb server URL:   http://localhost:9090
  • Sabnzb API Key:   (find this from the Sabnzbd web interface: Config > General > Sabnzb Web Server > API Key)

Click on Test then Save

Sickbeard Sabnzbd on Raspberry Pi 19

At this point we will make an add to the Sabnzb configuration by adding the "tv" catagory.  This new category will tell Sabnzb where to put the files that SickRage sends it, once they are downloaded.

Goto your Sabnzbd web interface (my case http://tvpi:9090) and click on Config > Catagories

and edit the last line to add a new category tv and Folder/Path (in my case /mnt/Video2/TV Shows).  Then click add/save.  When using this category, Sabnzb will put files in this directory instead of the default "completed" directory we set earlier.  This will be the directory SickRage "scans" on a regular basis to rename/move these files to their appropriate directory.

Sickbeard Sabnzbd on Raspberry Pi 20

 
Torrent Search
  • Search torrents: uncheck (I will set this up at a later time to see if the Pi can handle it)

 

- Search Providers

Provider Priorities
  • I checked the 2 open providers "Womble's" and "BinSearch" (You will need to register to use the others, which I recommend for the ability for backlog searches)

 

- Subtitle Settings

I left all settings as default

 

- Post Processing

I will probably be adding additional post processing scripts such as nzbToMedia at a later time, but for now, I will let SickRage handle basic moving/renaming files.  These settings can be tweak and set to your own preferences.  I suggest making only one or two changes at a time, and make sure you are satisfied with the results.

Post-Processing
  • Enable: Check
  • Post Processing Dir: Enter the directory where sabnzb puts your files after extraction using the tv category we made earlier (I used /mnt/Video2/TV Shows)
  • Processing Method: I chose Move
  • Rename Episodes: Check
  • Keep associated file extensions: I leave the field blank, as I do not need any other files (subtitle, etc)

Sickbeard Sabnzbd on Raspberry Pi 21

 
Episode Naming

I suggest tweaking the settings here what best fits your preferences.  Here are my settings

Sickbeard Sabnzbd on Raspberry Pi 22

 

Meta Data - only edit this if you are using one of the items listed in the tab (Kodi, WDTV, etc)
  • I selected WDTV and checked all available options for WDTV.  If you are using Kodi, Tivo, etc select the appropriate device here.

 

- Notifications

I left all settings as default

 

- Anime

I left all settings as default

 

Done!

 

Conclusion

I have been using this now for some time now, and although the interfaces do run slower, as well as the downloads compared to them on a PC with gigs and gigs of Ram, I am much happier not to have to run my VM Server full time as I did before.  I maybe adding torrent support in the future and additional post processing, but for now, I'd like to make sure the Pi is nice and stable.

 

References:

Raspberry Pi:   Pi 1 Model B+

OS:   Raspbian GNU/Linux 8 (jessie)

Python Version:   Python 2.7.9 (Although 2.7.10 is recommended, it seems fine on my system)

 

http://www.htpcguides.com/install-sickrage-raspberry-pi-usenet-torrent-tv/

http://posts.danharper.me/raspberry-pi-2-sickbeard/

https://github.com/SickRage/sickrage-issues/issues/3#issuecomment-173277859

https://github.com/clinton-hall/nzbToMedia/wiki/installation

 

 

Part 1 - SABnzbd Installation | Part 2

 

 

 

Read 8923 times Last modified on Wednesday, 27 January 2016 21:29
Algis Salys

Creator and owner of algissalys.com.  Linux enthusiast, electronics tinkerer, and likes to spend time in the workshop building and creating new projects.