Lidarr

This article will show you how to install Lidarr. Lidarr is a fork of Sonarr to work with music.

You'll need to execute some commands via SSH to use this software. There is a separate guide on how to connect to your slot via SSH. Commands are kept as simple as possible and in most cases will simply need to be copied and pasted into the terminal window (then executed by pressing the Enter key).

Table of contents

Installation

Install Lidarr by logging in via SSH, then copying and pasting the following:

wget -qO ~/Lidarr.tar.gz https://github.com/lidarr/Lidarr/releases/download/v0.6.2.883/Lidarr.develop.0.6.2.883.linux.tar.gz
tar xf ~/Lidarr.tar.gz
rm ~/Lidarr.tar.gz
mkdir -p ~/.config/Lidarr

Installation notes

By default, you will access the software in your browser by using the URL with a port number. If you consider the URL without a port number to be neater, you will need to configure a proxypass.

Configuring before starting Lidarr

A config.xml file needs to be created and tweaked before we can properly run Lidarr. To create it, use the following command:

nano ~/.config/Lidarr/config.xml

Then, copy and paste the following:

<Config>
  <Port>8686</Port>
  <UrlBase></UrlBase>
  <BindAddress>*</BindAddress>
  <SslPort>9898</SslPort>
  <EnableSsl>False</EnableSsl>
  <ApiKey></ApiKey>
  <AuthenticationMethod>None</AuthenticationMethod>
  <LogLevel>Info</LogLevel>
  <Branch>develop</Branch>
  <LaunchBrowser>False</LaunchBrowser>
  <SslCertHash></SslCertHash>
  <UpdateMechanism>BuiltIn</UpdateMechanism>
</Config>

Once you're done hold ctrl + x to save. Press y to confirm.

You then need to tweak the config slightly. You can do this by copying and pasting the following:

sed -i 's|<Port>8686</Port>|<Port>'$(shuf -i 10001-32001 -n 1)'</Port>|g' ~/.config/Lidarr/config.xml
sed -i 's|<UrlBase></UrlBase>|<UrlBase>/'"$(whoami)"'/Lidarr</UrlBase>|g' ~/.config/Lidarr/config.xml

Starting, stopping and restarting

This section covers the Lidarr process - starting it, stopping it and restarting it. It also covers checking if the process is running, in case that becomes necessary.

You can start Lidarr and print its URL with the following:

screen -dmS Lidarr /bin/bash -c 'export TMPDIR=~/tmp; mono --debug Lidarr/Lidarr.exe' && echo "http://$(hostname -f):$(sed -rn 's|(.*)<Port>(.*)</Port>|\2|p' ~/.config/Lidarr/config.xml)/$(whoami)/lidarr/"

If nothing happens or there is an error it could be that the port that was picked in the configuration step in use. Simply run these commands again to try with a different number (you'll need to edit the proxypass if you have one set up):

sed -i 's|<Port>.*</Port>|<Port>'$(shuf -i 10001-32001 -n 1)'</Port>|g' ~/.config/Lidarr/config.xml
screen -dmS Lidarr /bin/bash -c 'export TMPDIR=~/tmp; mono --debug Lidarr/Lidarr.exe' && echo "http://$(hostname -f):$(sed -rn 's|(.*)<Port>(.*)</Port>|\2|p' ~/.config/Lidarr/config.xml)/$(whoami)/lidarr/"

If you need to check that it's running, you can run the command below. If the process is running a list of relevant process ID numbers will be listed. If nothing is listed, the process is not running.

pgrep -fu "$(whoami)" "SCREEN -dmS Lidarr"

The Lidarr process is stopped by executing:

pkill -fu "$(whoami)" 'Lidarr'

If Lidarr needs to be restarted, copy and paste these commands:

pkill -fu "$(whoami)" 'Lidarr'
screen -dmS Lidarr /bin/bash -c 'export TMPDIR=~/tmp; mono --debug Lidarr/Lidarr.exe'
echo "http://$(hostname -f):$(sed -rn 's|(.*)<Port>(.*)</Port>|\2|p' ~/.config/Lidarr/config.xml)/$(whoami)/lidarr/"

Please note that if you want to stop the process for Lidarr, it's best to check it afterwards to make sure it has stopped. If the process has crashed and will not stop when requested, you can kill it with:

pkill -9 -fu "$(whoami)" 'Lidarr'

Automatically restarting Lidarr if it is not running

Cron jobs can be used to check if Lidarr is running and start it up if it is not. There is a separate page on configuring cron jobs.

Configuring

This section covers setting a password in Lidarr and connecting the Lidarr to different clients.

Setting a password in Lidarr

Within the Lidarr UI, click the Settings icon (the three gears at the top) and then click the General tab. Under Security, click the dropdown menu next to Authentication and select Forms (Login page). Two fields will appear and you'll be able to set a username and password for the web UI. Whilst it's not mandatory you do this, it is a sensible thing to do. You'll need to restart the program for the changes to take effect.

Configuring clients with Lidarr

In Lidarr's user interface click the Settings icon (the three gears at the top) and then click Download Client. Next, click the + button. You can choose the torrent client you want to configure from the menu.

rTorrent

First of all you need to create the rTorrent RPC and this is done by switching from apache to nginx.

Name
Your chosen name for the settings - you can pick what you like
Enable
Yes
Host
server.feralhosting.com
Port
443
Url Path
/username/rtorrent/rpc
Use SSL
Yes
Username
rutorrent (the word 'rutorrent', not your ruTorrent username)
Password
Your ruTorrent access password

In the above settings, server is replaced by the name of your server (e.g. zeus) and username is your username on the server.

Deluge

First make sure Advanced Settings have been set to Shown, in order for the necessary options to appear.

Name
Your chosen name for the settings - you can pick what you like
Enable
Yes
Host
server.feralhosting.com
Port
443
Url Base
/username/deluge
Password
Your Deluge web UI password
Use SSL
Yes

In the above settings, server is replaced by the name of your server (e.g. zeus) and username is your username on the server.

Transmission

First make sure Advanced Settings have been set to Shown, in order for the necessary options to appear.

Name
Your chosen name for the settings - you can pick what you like
Enable
Yes
Host
server.feralhosting.com
Port
443
Url Base
/username/transmission/
Username
Your Transmission username
Password
Your Transmission password
Use SSL
Yes

In the above settings, server is replaced by the name of your server (e.g. zeus) and username is your username on the server.

Uninstallation

pkill -fu "$(whoami)" 'Lidarr'
rm -rf ~/.config/Lidarr/ && ~/Lidarr