Comment on What do you use for music library streaming?
nfreak@lemmy.ml 1 day ago
I’m in the middle of writing up a novel about my music stack since I’ve just about gotten it exactly where I want it. There’s no one-size-fits-all answer here and it’s difficult to really replicate the behavior of major streaming services.
The short version of what I have set up:
-
Backend: Navidrome
-
Frontends: Feishin (both desktop and hosted) and Symfonium
-
Remote access: Pangolin (this does involve keeping a Navidrome rest endpoint totally exposed so Tailscale/Netbird/Wireguard are fine too, but I wanted to be sure my wife can access it from her work PC in the office)
Library and metadata management: Lidarr, beets, and metadata-remote. Lidarr does the bulk (one instance per user/library), beets handles manual imports, and MDRM is for fine-tuning and really obscure stuff
Searching/Downloading: Lidarr + Tubifarry + slskd. Also support smaller artists as much as possible, bandcamp purchases and merch and whatever go a long way.
Discovery: Explo
Waphles@lemmy.world 23 hours ago
Could you explain how you use explo?
nfreak@lemmy.ml 23 hours ago
This is gonna get a bit into my particular setup but sure
Explo’s a super early in development “discover weekly” generator, relies on Listenbrainz scrobbling and runs on a cron job to download the playlist from your connected source (in my case slskd), put it in a folder, and create a Navidrome playlist out of it. I use the SLSKD_MIGRATE option (my feedback is actually the reason the dev even added it), so my files are downloaded to my slskd dir and explo moves them to a separate library.
I’m very particular about my library though so I don’t want it just throwing everything into the same folder as the rest of my music, and I have 2 users, so my directories are like:
/music/me /music/wife /discover/me /discover/wife
Keeping the discover folders for Explo completely outside the main library, but mounted in Navidrome as additional libraries, helps keep things very separate.
I run 2 Explo instances, 2 hours apart, and in between those runs I have another cron job that wipes out my slskd downloads directory for a clean slate.
One small catch I ran into: Explo needs a Navidrome admin account to kick off the library scan, but my users aren’t admins (since an admin automatically has access to every single library). So each week when it runs I need to log in as an admin and re-assign each playlist accordingly. Not a big deal, and the dev already has some ideas in mind to address this in the future.