I haven't used it for a while (I generally don't listen to music outside of my drive to work these days), but I remember it being a pleasant replacement for MusicBee when I first switched over to a Linux distro full-time, coming from Windows. The Elisa UI is nice too imo, though it's more of a "native UI" look compared to some of the others in the list, though which style is nicer is up to personal preference.
It may also be a plus to some that it is not using Electron , and uses Qt instead (Well, apparently it uses QML, so still kind-of using ECMAScript/Javascript. But only for the user interface, and not the main business logic.)
It's the typical problem of free software: bad UI.
I use Music on macOS (disable the music store and it's fine) and have used Rhythmbox on GNOME (passable). Still looking for something good on Linux.
List from the post, with the author's own criticism:
Amberol
This barely fits my criteria for features … no library management
Euphonica
you will also need to set up MPD … The UI chokes … wish it had a song search function … changing the volume requires using my scroll wheel on the volume knob
Feishin
You will need a music server … Electron app
Lollypop
the user experience is painful
Plattenalbum
you will need to bring your own MPD … cannot even see a list of all albums
Strawberry
less intuitive than I’d like it to be … giant translucent strawberry in the middle of my screen at all times
Tauon
“everything-is-a-playlist” approach … overwhelming and confusing … stretched icons … scroll bar is on the left of the window for some reason
You can disable the background image that in the options under Appearance. It's a holdover from Clementine's branding which I also find annoying. I also dislike the glow animation on currently playing track in the playlist which can also be disabled.
I'm using audacious on macOS installed via homebrew - it has a winamp-like skin. That was peak audioplayer design.
Most of my favourite mixes, like the Global Underground series aren't on there at all. And that's just stuff that came out on CD. Some of the best mixes are things like Radio 1 Essential Mixes or live events.
I've also noticed some artists "redoing" their own tracks on Spotify. If you look for Chicane's Behind the Sun on there you won't even find the original, only a redone version that's nothing like the one you remember.
So yeah, having a personal music collection is still very important.
I've been using it for ages. It's awesome. I think the only issue I've ever had with it is some Bluetooth weirdness. Honestly, the reason I keep using it is the ability to use custom genres from the metadata as search windows. I have a bunch of custom genres (like performer which removes all the ft. xyz nonsense in artist listings) that I always find hard to access easily on most other players.
That's because Gtk4 does "client side decoration". That has the advantage (or otherwise, depending on your point of view!) that the application can now place custom widgets in the title bar, and the disadvantage that when apps do that, the part of the title bar available for dragging windows around becomes significantly smaller.
My main objection to client-side decoration is that middle-clicking a window's title bar to push it to the back no longer works. (Plus, for those of us with eyes that aren't as young as they once were, it's now much harder to choose a window border style that clearly indicates which window has focus.)
Not just your library, but your listen history and your playlists. I was very annoyed that I had to pay a 3rd party company to export this data so that I could import it into listenbrainz and navidrome.
Not to mention there's a song that Spotify removed from my "Liked" playlist that to this day I can't quite remember, though I can remember just enough of it to drive me mad: https://www.reddit.com/r/tipofmytongue/comments/1hklstg/tomt...
Anyway, I manage a homelab (read: a scrapbox ubuntu machine with 64TB of spinning disk attached) with 25,000 songs in it, and upon exiting my last position, spent my therapist-mandated "burnout recovery time" finally using `beet` to organize the damn thing. I still don't really understand beet, but now I have a semi-decent flow for abandoning Tidal: Find new released music on Listenbrainz, download it in Nicotine (filtering for >320). Idly browse a given user's other folders shared in Nicotine while waiting for downloads to see if they have anything else I want. Once done, `beet import /mnt/media/downloads/music2`, go through its flow, add anything to musicbrainz that isn't already in there, wipe the download directory when finished to clear out any cruft, and happily play it on Feishin on desktop (connected to my Navidrome instance).
I'm still sorting the mobile version of this out a bit. "Tempus" on F-droid seems the best Subsonic client, however unfortunately "offlining" music on it doesn't expose those files to the Android system or other apps, so I can only play those files within Tempus itself. That's not such a big deal when I've got my IEMs plugged directly into the headphone jack on my phone (yeah that's right I found a phone in 2026 with a headphone jack: sony xperia), but when I have my usb DAC plugged in, I want to use "USB Audio Player PRO" to bypass the android audio stack, and that can only play audio files it can find in local directories, no subsonic compatibility (but it does have a Tidal integration...). So lately I've tried just downloading playlists and albums from the Navidrome web interface on my phone.
Music discovery is the one thing I cannot drop Spotify for. I want to make a playlist with 10 songs and then have an algorithm suggest 20 more - ideally songs I have never listened to before, or songs I haven't listened to in a long time.
Spotify is mediocre at that task, but I just can't find a replacement at all...
Then, logged in, I look here https://listenbrainz.org/explore/fresh-releases/ "for you" tab. Or here https://listenbrainz.org/explore/similar-users/
Then, when downloading in nicotine, you can click a user to see all their shares, so I just scroll through what other kind of stuff they have, and download anything that strikes my fancy.
It appears I'm an alien: almost none of the music players' authors care about this - they happily show albums from A to Z.
I use Clementine which can be set up to order albums by year. Any other options?
It's a simple option to implement. But most developers without UI skills don't seem to think about stuff like that.
10 years to realize it ? What took so long ?
Majority of GTK/Adwaita solutions are always so close but missing something critical, especially when using DLNA (e.g treated as secondary to local library, intermittent first load issues etc) That said, I got quite far with Gapless [1]
In the end, for me anyway, I'm only listening to music and I didn't really care too much about what the player looked like, not as much as I thought I would. Even VLC, not mentioned here, is a well functioning music player and will do the job just fine.
Ended up 80% vibe coding one in Qt (PySide6) in a couple of evenings that does everything I want, exactly how I want. Added lyric fetching via LIBLRC (saved to .lrc files - no proprietary databases) and register as a music player with DBUS so it can be controlled. Working really well.
It's 2026, anyone who is unhappy with their player can pretty quickly LLM their way into adding any missing functionality or tweak behaviour they don't like, or just make a whole new player.
It's crippled by its ridiculous refusal to see symbolic links. I want to use symlinks to create "playlists", without having to copy music files around, but now, to Amberol, it's as though sym-links don't exist.
I looked into it, and it's down to weird Gnome and Flatpak policies, which are bizarrely averse to sym-links, because they are a "security risk". Yes, that's kind of true if you are root, but who runs their music player as root???
For all my fellow terminal friends <3
I like the ability to build playlists with tracks from different sources, including subsonic-compatible servers (my "staging area" for new music is my local drive, and that then goes to a remote navidrome server once "curated").
Over time, I end up with a dozen "topical" playlists, and here again, strawberry is pretty good at keeping things approachable and high-level.
I also like that the grid control intro which the tracks are listed is so configurable.
I like moodbars <3
He also made a section of the site that allowed you to login via Spotify and it would aggregate your listening history and tell you how much it would cost to buy all of your most listened to albums. Annoyingly Spotify seems to restrict the oauth app creation process, so users have to be invited by email to access that.
The automatic lyrics fetching and playback sync in SwingMusic is pretty nice. My only complaint is that it doesn't let me do full-collection shuffle. Ideally it would also allow me to do something like "full collection shuffle but only of songs that I have never heard". Sometimes I'll pick up an album because it seems interesting but things happen and I forget that I added it and it might languish without listening to it for months or years.
I'm waiting a bit for this to mature before I try it out, but I've seen that there's a few ongoing projects to analyze your full music collection to do feature extraction and generate smart playlists using AI tools. I'm not sure if it'll pan out but it seems like a fun tool for exploring large music collections and possibly making unexpected connections.
Next stuff I want to add in it, is the automatic translation of lyrics (maybe with the deepl api).
MacOS however truly takes the cake. An OS that’s great for creative softwate, working with images, video, audio and so on, and every single music player is something designed by aliens and/or buggy and/or missing some basic features. I went through ~five different players just to find one that has a waveform seekbar, eventually finding it in quodlibet, which while somewhat functional fits in the designed by aliens part. Baffling.
Technically fooyin also builds on macOS, but it's not officially supported yet, there's some works here[1] and there[2].
[0]: https://github.com/fooyin/fooyin
Funny since there was quite a thread here yesterday or the day before about Mac users regretting the dumbification of their software, using aperture as a striking example.
Don't read me wrong, I'm not saying that MacOS doesn't have great software, I just no longer trust Apple to pander to their users. A stable, open and progressive OS like Linux+KDE with "specialty" software on top seems like the most productive combo, I hope more software editors will consider that.
[1] https://search.nixos.org/packages?channel=unstable&query=mus...
[2] https://search.nixos.org/packages?channel=unstable&query=med...
Myself, I am rather happily using mplayer - without any gui. Initially it was practicality of not leaking memory - like many gtk+ apps would do. Now, it is pure utility.
(Another bug was that the album art Strawberry displays is a severely downscaled, and then enlarged-with-obvious-pixelation, version of the art embedded in the file. It would be easier, and look better, to just display the embedded art.)
Shortly after I reported this, they decided they wanted to turn into a paid service.
https://forum.strawberrymusicplayer.org/topic/1848/pay-for-t...
I was not left with a very positive impression.
Do you know this feeling when you get towards the High Hopes on The Division Bell and there's this ugly crack in between tracks?
I use it with a winamp skin from https://archive.org/details/winampskins, to add to the options. Not sure about streaming support, I use it with local files.
It depends on the genre, I’d guess. For metal, there’s rarely continuous songs, mainly sometimes intro -> 1st proper song.
But Pink Floyds Dark Side of the Moon would be be completely destroyed by the breaks.
Also https://github.com/vicrodh/qbz for Qobuz supports gapless playback
I'm still looking for that perfect spotify replacement though
I added it on my RPi and it offers a really nice a home "Spotify" :)
Big downsides are that scaling is broken on Wine so the UI is tiny. Moreover, whenever I manually change tracks using the mouse, it lets out a massive fart before continuing normally. But I can live with that.
Hmmm, now that I think of it - I've never made any GUI app. Suppose I want to write my own music player, what's the best way to approach this?
It uses UI idioms and technologies (gtk 3) of its mileage, 2017.
The nicest looking one I could find was amberol, but that was a bit too minimalistic for me. I like minimal UIs but that doesn't have to translate to minimal feature sets as well.
But in the end I didn't find any simple but hackable players that I liked; in the end I just settled on audacious because it's just simple enough in terms of UI and good enough in terms of features. I do like the playlists as tabs idea though.
I need a waveform, a playhead, a good browser that can do both metadata based libraries and dumb folders fast and without lagging, a way to build/save/view/load playlists and a way to queue songs.
Most players are just too basic or make the wrong or to many assumptions about my collection. Or the interface is just too cute and dysfunctional for my actual daily use.
This means on Linux I currently use either mixxx or just VLC player, but I surely haven't tested every possible mediaplayer.
(1) SQLite/Django/Bootstrap5/Unpoly app. SQLite is used for all the data and the full text search. Huey is used for background tasks. Tinytags gets metadata from audio files. LastFM API provides similar artists functionality. YT-DLP is used to fetch music that is not easy (for me) to get (no bandcamp, only on streaming, old stuff not easy to find...). Bootstrap provides a clean look and the usual responsive stuff. Dropbox API is used to maintain a copy of the music files in my dropbox account. The app currently handles a collection of 70k files and runs on a raspberrypi behind the caddy web server.