Sonarr: the TV shows organizer

Sonarr is part of the Servarr suite: it allows to automatically organize, search and download TV shows.

You will need Sonarr if you plan to organize and enrich your TV shows collection.

Installation

Sonarr is easily installed and managed within Gentoo linux since there is an ebuild for it. All you need to do is unmask it (at the time of writing this it's are masked for AMD64 at least):

echo www-apps/sonarr ~amd64 >> /etc/portage/package.accept_keywords/sonarr

then install it:

emerge -v sonarr

This step will create a dedicated sonarr user but you will want to add it to the group media, that you have created before, so that the it will be able to access and manage your media collection:

usermod -a -G media sonarr

Also, you want to move Sonarr home folder under /data/daemons/sonarr for consistency and to be protected on the RAID array, so:

usermod -m -d /data/daemons/sonarr sonarr

Reverse-Proxy configuration

Before you proceed, you should make Sonarr accessible via the reverse-proxy, so that access, configuration and usage will be simplified from the beginning. Add this file to /etc/nginx/folders:

sonarr.conf
# Sonarr - TV Shows
location ^~ /sonarr {
        proxy_pass http://127.0.0.1:8989;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_redirect off;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $http_connection;
}
# Allow the API External Access via NGINX
location ~ /sonarr/api {
        auth_basic off;
        proxy_pass http://127.0.0.1:8989;
}

Refer to The Reverse Proxy concept for more info on how to enable this config and reload the Reverse Proxy.

Startup

There are some configuration that must be perform before actually starting the service. You need to briefly start and stop it to let it create the main configuration file, this is required because you need to generate a new API key:

/etc/init.d/sonarr start
/etc/init.d/sonarr stop

Now edit the newly created xml config file /data/daemons/sonarr/.config/sonarr and edit the UrlBase to match the reverse-proxy setup. Only change the following lines in the file, do not edit anything else (unless you know what you are doing):

  <UrlBase>sonarr</UrlBase>
    <BindAddress>127.0.0.1</BindAddress>
  <AuthenticationMethod>Forms</AuthenticationMethod>
  <AuthenticationRequired>DisabledForLocalAddresses</AuthenticationRequired>

Add Sonarr to default runlevel, for autostart on reboot, and start it manually now:

rc-update add sonarr default
/etc/init.d/sonarr start

Sonarr will now be accessible as http://192.168.0.1/sonarr.

All set! Sonarr is running.

In order for Sonarr to benefit from Prowlarr automatic indexers management you need to open http://192.168.0.1/prowlarr in your browser, go to settingsapps and add Sonarr. From the popup window set:

Then go to the Prowlarr indexers page and click on the synchronize all indexers icon.

Usage

Before you can actually use Sonarr you need to perform some initial setup in settingsmedia management:

  • Add a new Root Folder. Use /data/Media/Tv as root folder.

Now enable “advanced settings” and:

  • Thick “Set permissions” to on
  • Set “chmod folder” to 775 (umask will be 0002)
  • set “chmod Group” to “media”
  • save and restart the daemon (from the user icon on top-right corner)

you can fine tune and configure many other aspects of Sonarr as you wish. A very common guide is The TRaSH Guides.

Please note that you will not yet be able to use Sonarr fully as you have not yet installed any downloader.