I actually even made my own bullshit-Spotify. As in, I've got a server running on a single-board computer which reads my music folder and serves a small music player as a webpage.
I didn't want to install a music player client on my work laptop, but still wanted to listen to my own songs there.
Oh man are we sharing mpd scripts? I have this one that lets me search through music directory and add anything to the play queue (so I can add a single track or an entire album or whatever):
There's also this one that lets me save the currently playing song to a playlist of my choice. It's good if I'm listening to a new album or a new artist and suddenly think "yeah, this song really fits with the mood of X playlist":
The sleeps are to prevent Cantata (graphical mpd client) from shitting itself if I run this script while it's open. Also notice mpc shuffle instead of mpc random on. It shuffles the current playlist, but keeps the linear play order, so that I can add songs to play right after the current one.
Oooh those are nice! I'll have to try mpc shuffle out then, and even though I generate my playlists with beets, I'll definitely try out the save to playlist one!
Soulseek is better for more popular tracks and artists and in normally better quality.
Freyr can be fed a spotify/apple music link, find the highest quality version and pull the file from YouTube music or YouTube. Then it will automatically write the appropriate metadata and cover art to the songs.
If all else fails, yt-dlp to directly rip from YouTube.
Or buy it legally. In the past I've gotten songs by buying from Artists' website, bandcamp, and iTunes.