soularr

soularr

Docker app from JPDVM2014's Repository

Overview

A Python script that connects Lidarr with Soulseek! Soularr reads all of your "wanted" albums/artists from Lidarr and downloads them using Slskd. It uses the libraries: pyarr and slskd-api to make this happen. NOTE: Read through https://github.com/JPDVM2014/soularr before installing template!

Soularr on Unraid

Instructions for installing Soularr on Unraid. Please read through this fully before trying to use the Unraid template. All commands should be entered in your Unraid system's terminal. (The ">_" symbol in the upper right hand corner of the Unraid WebUI.)

Step 1

Make sure you go through the setup steps at https://soularr.net/ to make sure Lidarr and slskd are working. You will have to manually adjust your slskd.yml to add an API key for Soularr to use. You can see sample here.

Note for Lidarr:

If you use Trash's guides for media, and your lidarr root path starts with /data, you will need to add an extra volume mount to your lidarr template directly to your slskd downloads. For example, "/mnt/user/data/media/slskd/downloads : /slskd". Then in your Soularr config, your Lidarr directory should be set as ”/slskd".

Note for slskd:

If you installed slskd using the Unraid CA template, it will most likely be running as root. To make sure soularr will work, you need to adjust your slskd template.

First, go into your slskd template, and make sure "Advanced View" is on in the upper right hand corner. Then add "--user 99:100" without quotes in "Extra Parameters"

Second, you will need to update the ownership of any directories mounted into slskd. This will be appdata and downloads/incomplete if you mapped them somewhere other than the default.

In the Unraid terminal, run the below command. You will need to change it to match your appdata location.

chown -R 99:100 /mnt/user/appdata/slskd/

If you left the download and incomplete directories as default, the above command should be enough. If your download and incomplete directories are mapped somewhere else, run the same command for those directories.

After adding the extra parameters and adjusting folder ownership, restart slskd.

Step 2

Now you will need to create your Soularr appdata directory and create your Soularr config file. Enter the below command in your Unraid terminal.

Adjust to match your appdata directory structure.

mkdir /mnt/user/appdata/soularr/ && wget -P /mnt/user/appdata/soularr/ "https://raw.githubusercontent.com/mrusse/soularr/refs/heads/main/config.ini" && chown -R 99:100 /mnt/user/appdata/soularr/

Once the config is downloaded, you need to edit the values.

nano /mnt/user/appdata/soularr/config.ini

The main things to change are your Lidarr and slskd API keys and make sure the host_url for both entries are correct.

You will also need to adjust the download_dir for Lidarr and slskd. Lidarr should be the slskd download directory the way it looks from within Lidarr, not the Unraid share directory. For example, my slskd Unraid share is "mnt/user/data/media/slskd/downloads", but in Lidarr that directory is mounted at "/slskd". So, in the Soularr config, I set Lidarr's download_dir to /slskd.

If you are going to use the Unraid template as-is, you can set slskd's download_dir to /downloads. Then ctrl + o then enter to save. Ctrl + x to exit nano.

Step 3

Now you should be able to install Soularr using the template. It should connect to Lidarr and Slskd and start searching/downloading any missing music.

Install Soularr on Unraid in a few clicks.

Find Soularr in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for Soularr Review the template variables and paths Click Install

Requirements

Lidarr, Slskd

Download Statistics

580,571
Total Downloads
76,110
This Month
58,028
Avg / Month

Total Downloads Over Time

Loading chart...

Related apps

Explore more like this

Explore all

Details

Repository
mrusse08/soularr:latest
Last Updated2026-04-28
First Seen2024-12-26

Runtime arguments

Web UI
http://[IP]:[PORT:8265]/
Network
bridge
Shell
sh
Privileged
false
Extra Params
--user 99:100

Template configuration

WebUIPorttcp
Target
8265
Default
8265
Value
8265
TimezoneVariable
Target
TZ
Default
Etc/UTC
Value
America/New_York
Run IntervalVariable

Run interval in seconds

Target
SCRIPT_INTERVAL
Default
300
Value
300
SLSKD Download DirPathrw

Set to directory where Slskd downloads are stored.

Target
/downloads
Default
/mnt/user/slskd/downloads
AppdataPathrw
Target
/data
Value
/mnt/user/appdata/soularr