A surprising amount of my modern life has been trying to reclaim something I used to be able to do, before software or devices had it removed for not aligning with their business objectives or project priorities. Call it enshittification if you subscribe to Cory Doctorow’s view of things, or maybe it’s just another case of my rose-tinted electronic nostalgia. Maybe it’s a bit of both.
Recently I’d been missing (early) iTunes again. I loved Winamp growing up, but iTunes set the bar when it came to organising, listing to, and sharing large music collections. I could have the centralised “server” running on my Mac, and others in the family could access it on their local Windows, Mac, or Wine *nix desktops with iTunes.
I’ve been looking for a similar experience on modern kit f…
A surprising amount of my modern life has been trying to reclaim something I used to be able to do, before software or devices had it removed for not aligning with their business objectives or project priorities. Call it enshittification if you subscribe to Cory Doctorow’s view of things, or maybe it’s just another case of my rose-tinted electronic nostalgia. Maybe it’s a bit of both.
Recently I’d been missing (early) iTunes again. I loved Winamp growing up, but iTunes set the bar when it came to organising, listing to, and sharing large music collections. I could have the centralised “server” running on my Mac, and others in the family could access it on their local Windows, Mac, or Wine *nix desktops with iTunes.
I’ve been looking for a similar experience on modern kit for years. Apple doesn’t care about software anymore (let alone offline music), and we also have mobile phones in the family mix. But it was my sister wanting to access our childhood Xmas music that made me seriously look at alternatives. And I think I’ve found it.
Navidrome!
Navidrome is a web-based music server and player written in Go, with a UI that’s reminiscient of iTunes. I only planned to test it, but it was installed so quickly and ticked all my boxes that it might become a permanent fixture on the family network :).
As with everything on FreeBSD, I decided to run it in a jail. Once I’d configured that, I installed kbowling@’s port:
# pkg install navidrome
The config on FreeBSD sits where you’d expect:
# vi /usr/local/etc/navidrome/config.toml
I only changed two lines. The first was where the audio files themselves were to be stored. Currently this is just a dataset within the jail while I test it, but eventually this could even be a read-only nullfs mount to my primary music dataset on the host. Or maybe I even give it exclusive access.
#MusicFolder = "/usr/local/share/navidrome/music"
MusicFolder = "/var/music"
By default, Navidrome listens on port 4533 (there’s a pun in there somewhere about listening to music). So that was also easy to proxy through the family nginx gateway:
######
## ./conf.d/12-xmas.kiriben.lan.conf
##
server {
server_name xmas.kiriben.lan;
location / {
proxy_pass http://$XMAS_JAIL_IP:4533;
}
}
Then we copied some music over from the host, so we had a representative sample (if you’re about to email me saying you don’t like Xmas music, or are sick of it, or otherwise want to pass judgement, feel free to replace these with your own tunes on your own server):
$ tree -L 2 /jail/xmas/var/music
.
├── Bing Crosby
│ └── Merry Christmas
├── Compilations
│ ├── A Bear Cat Christmas
│ ├── Coffee Bean Christmas Album
│ └── Spirit of Christmas 94
├── John Pizzarelli
│ └── Let's Share Christmas
├── Michael Franks
│ └── Watching The Snow
├── Sailor Moon
│ └── Merry Christmas!
├── Tony Bennett
│ └── The Christmas Album - Snowfall
└── Tony O'Connor
└── Enchanted Christmas
I went to xmas.kiriben.net on our LAN, created an admin account for myself on the web UI, and boom!

(I suspect our mate Bing Crosby has been added a few times because of some borked ID3 metadata, which isn’t the fault of Navidrome. Some of these albums were ripped in the 1990s, and are long overdue for a re-rip or re-sourcing).
With the default configuration, I can add new music to the server and it appears within a minute. I was also able to create accounts for Clara, my sister, and my brother in law, and they were all listening to our cheesy tunes on their laptops and phones across Sydney.
I’m not going to mince words here: I’m shocked how simple this was to set up, how few system resources it takes, how it can stream MP3s, AAC, and FLAC without issue, and how pleasant the UI is. I’m the first to admit that I prefer desktop software to web views, but Navidrome makes sharing so easy that I’m happy to live with a web view.
Honestly, it reminds of what PleX used to be for video, and what Jellyfin almost is. This is what the late Songbird could have evolved into or supported.

Next steps
This has been such a wild success that I’m tempted to throw my entire music collection onto it and see how it works. This is ≈ 500 GiB of mostly 320 KB/s MP3s, AACs, FLACs, and some Vorbis for flavour.
Money is a bit tight during Xmas season, but this will be the first donation I’ll be making in 2026. What phenomenal software!