Lidarr is part of the Servarr suite: it allows to automatically organize, search and download music.
You will need Lidarr if you plan to organize and enrich your music collection. As a bonus point, i will show you how to use DeeMon to fetch low-quality MP3 from Deezer to start filling your collection while Lidarr will improve it over time with FLAC quality.
Lidarr 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/lidarr ~amd64 >> /etc/portage/package.accept_keywords/lidarr
then install it:
emerge -v lidarr
This step will create a dedicated lidarr 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 lidarr
Also, you want to move Lidarr home folder under /data/daemons/lidarr for consistency and to be protected on the RAID array, so:
usermod -m -d /data/daemons/lidarr lidarr
Before you proceed, you should make Lidarr accessible via the reverse-proxy, so that access, configuration and usage will be simplified from the beginning. Add this file to /etc/nginx/folders:
# Lidarr - Music location ^~ /lidarr { proxy_pass http://127.0.0.1:8686; 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 ~ /lidarr/api { auth_basic off; proxy_pass http://127.0.0.1:8686; }
Check The Reverse Proxy concept for more info on how to enable this config file and reload the Reverse Proxy.
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/lidarr start /etc/init.d/lidarr stop
Now edit the newly created xml config file /data/daemons/lidarr/.config/Lidarr 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>lidarr</UrlBase> <BindAddress>127.0.0.1</BindAddress> <AuthenticationMethod>Forms</AuthenticationMethod> <AuthenticationRequired>DisabledForLocalAddresses</AuthenticationRequired>
Add Radarr to default runlevel, for autostart on reboot, and start it manually now:
rc-update add lidarr default /etc/init.d/lidarr start
Lidarr will now be accessible as http://192.168.0.1/lidarr.
All set! Lidarr is running.
In order for Lidarr to benefit from Prowlarr automatic indexers management you need to open http://192.168.0.1/prowlarr in your browser, go to settings → apps and add Lidarr. From the popup window set:
Then go to the Prowlarr indexers page and click on the synchronize all indexers icon.
Before you can actually use Lidarr you need to perform some initial setup in settings → media management:
Now enable “advanced settings” and:
you can fine tune and configure many other aspects of Lidarr as you wish. A very common guide is The TRaSH Guides.
Please note that you will not yet be able to use Lidarr fully as you have not yet installed any downloader.
Lidarr is nice and good, but there is a very fast and practical way to start populating your music collection quickly, which is download 128Kb/sec MP3 files from a free Deezer account. Also, it seems that with a premium account you can also download high-res MP3 or even FLAC files.
DeeMon is a nice command-line tool that connects to your Deezer account and is able to easily fetch any music from it. DeeMon will use DeeMix internally. Of course, if you want FLAC or 320kbps MP3 files you also need a premium account. Please read carefully their license agreement and abide to it! There might be restrictions to fetching music and i am not responsible for DeeMon usage or such abuses to Deezer, if any.
In my experience, find music can be hard on the other ways, so this the best workaround i could come up with. I like that there is no need for another daemon, a Docker image or some other over complicated solution. DeeMon uses DeeMix internally to access your own Dezeer account and get the authors, albums or tracks you want. It's simple, it's easy, it's command-line based, and then Lidarr can easily pick it up from there and upgrade the tracks to FLAC when it finds them on you other indexers, but meanwhile you can quickly fill up your collection in a breeze. At this time i still haven't found a simple way to force Lidarr to import the tracks immediately or automatically, you still need to login on Lidarr web GUI and trigger an unmapped files import manually. But Jellyfin will pick the tracks up automatically without the need to do any manual steps, so there is that.
DeeMon can do much more, check the online documentation, like monitoring artists and automatically download new releases and so on.
You need to install manually DeeMon since it's not packaged for Gentoo, but it's really very easy. You want to create a DeeMon user, with it's default group the media group, so that any downloaded file will be created belonging to it for ease of access and management of the other apps:
useradd -d /data/daemons/deemon -m deemon -g media
as usual, you put it in the daemons folder for consistency. Installing it it's easily done with pip but using pip directly is discouraged on Gentoo because it can severily break your system. To use pip on Gentoo you need to explicitly enable it for the deemon user by creating the file /data/daemons/deemon/.config/pip/pip.conf with this content:
[global] break-system-packages = true user = true
(check this for more details on pip and Gentoo)
You need to do two things now:
So, edit your /data/daemons/deemon/.bashrc and append to the end the lines:
export PATH=$PATH:/opt/deemon/.local/bin umask 0002
Installing DeeMon itself now it's pretty easy, but you need to become user deemon first:
su - deemon pip install deemon deemon refresh mkdir temp
Running the refresh command is required to have DeeMon autogenerate empty configuration files that you need to edit to match DeeMon file naming scheme to match Lidarr one, and perform some extra configuration like the arl cookie from Deezer.
In order for DeeMon to work it requires the arl cookie from Deezer. Grabbing the cookie is not difficult but it's an operation that you might have to do again every few months, as it will expire:
Edit the file /data/daemons/deemon/.config/deemon/config.json and paste the string here:
"global": { "bitrate": "128", "alerts": false, "record_type": "all", "download_path": "/data/Music", "email": "" }, "deemix": { "path": "", "arl": "... very long random string of letters and numbers...", "check_account_status": true, "halt_download_on_error": false },
In the same config file, locate the download_path under “global” and make it point to the media music folder (/data/Music) because you want DeeMon to put all downloaded music straight into your media collection. Do not edit anything else from this file, unless you know what you are doing.
In order for Lidarr to properly (and with less fuss) detect and import all the albums and tracks you need to edit the DeeMix preferences because by default the downloaded tracks will have a slightly different naming scheme than Lidarr. Now, you could also change Lidarr naming scheme if you prefer, but i think it's more reasonable to fix DeeMix because Lidarr defaults just works for Jellyfin. To do so, edit the file /data/daemons/deemon/.config/deemix/config.json (note, this is DeeMix, not DeeMon config file).
You will need to adjust a few lines, the following seems to be working fine for me:
"downloadLocation": "/data/daemons/deemon/temp", "tracknameTemplate": "%artist% - %title%", "albumTracknameTemplate": "%artist% - %album% - %tracknumber% - %title%", "playlistTracknameTemplate": "%position% - %artist% - %title%", "artistNameTemplate": "%artist%", "albumNameTemplate": "%album% (%year%)",
(note that i have copied only the relevant lines, do not modify the others unless you know what you want to do)
This is actually all… To use it, just type as user deemon:
deemon download some_thing
where some_thing is an artist or an album or a Dezeer ID…. and it will directly be downloaded inside your music library to enjoy!
As you can see DeeMon is not really integrated with Lidarr. All you do is actually download music in the same music collection as Lidarr. If you want to allow Lidarr to automatically upgrade your music quality, head to Lidarr GUI and, using the “unmapped files” add the newly downloaded ones to the collection.