this post was submitted on 26 Feb 2025
201 points (97.2% liked)

Selfhosted

42983 readers
834 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Hello everyone I've been looking for a solution to replace Spotify, for me and my family. I already self-host some services, such as Jellyfin and Sonarr/Radarr For music however, my actual setup is the following :

  • synchronize my music folder on my phone with my NAS
  • download on the phone or on my computer However, I struggle with finding new music and having an easy way to add music.

From what I've read, Bandcamp could let me buy some music and add it to my collection (however all artists aren't on bandcamp) There also seem to be a consensus around Navidrome for a music server.

But how can I set it up so that each member of my family has a separate account (with different musics in it), still discover new songs and easily add them? I've looked into Lidarr (not a lot I have to admit) but it seems like it's mainly for downloading full albums, more than just songs. Is that the case?

TLDR: What self-hostable services can I use to replace Spotify, so that each member of my family has its own instance, recommendations and downloads?

Thank you in advance and sorry for my English

you are viewing a single comment's thread
view the rest of the comments
[–] i_uuuh_what 24 points 1 day ago* (last edited 1 day ago) (1 children)

Spotify replacement? Oh, hey, that's me.

I'm working on Tapesonic, a subsonic-compatible self-hostable streaming service. It won't stream your local library, but it can import stuff from YouTube and Bandcamp (and probably other sites yt-dlp supports, but I didn't bother testing) and stream those. Started making it because Lidarr can't download basically anything and also can't manage anything that's not in MusicBrainz even if you download it yourself.

As for discovery - Tapesonic can scrobble your listens to ListenBrainz and, since a couple of days ago, last.fm. Those in turn provide recommendation playlists.

  • ListenBrainz playlists are already incorporated, but Tapesonic can only match the songs you already have in your library - everything else is ignored; completely useless for actual discovery and the recommendations aren't great anyway to be honest
  • last.fm recommendations are pretty good and I'm actively working on importing those; last.fm provides a YouTube URL for each track and Tapesonic can import YouTube URLs - you see where this is going, yeah? I expect to push a somewhat working implementation in a couple of weeks as I already have a prototype that works surprisingly well

Caveats:

  • Tapesonic is still in it's "prototyping phase" (what do you mean it's been more than a year since I started it...) - everything gets changed all the time, only core features get implemented, UI sucks, all that jazz
  • breaking changes anytime - expect having to completely wipe everything and start anew at any moment
  • no multi-user support for now and I have no idea when it'll come; you can host multiple instances I guess

Want to give it a try?

  • docker run --rm -p 8080:8080 -e TAPESONIC_USERNAME=user -e TAPESONIC_PASSWORD=pass ghcr.io/sibwaf/tapesonic
  • http://localhost:8080, username/password from the previous command ("user"/"pass" in this case)
  • "New tape" -> paste any Bandcamp album URL -> "Import" -> "Add all" -> "Next" a couple of times
  • Connect a subsonic client (Feishin, Sonixd, Ultrasonic for desktop, Tempo for Android) to the same address, same credentials
  • Enjoy!

Any other configuration parameters, persistency, stuff like this - sorry, you'll have to study the code. No docs and no support for now.

[–] [email protected] 2 points 1 day ago (1 children)

Thing is: If it ain't on musicbrainz it wont work on listenbrainz (besides adding a play)

[–] i_uuuh_what 2 points 1 day ago

Yeah. That's why I'm also adding the last.fm integration.

And you still have an option to just import whatever you want whether any metadata aggregators have it or not unlike Lidarr.