Navidrome

Revision as of 10:37, 12 March 2026 by Onny (talk | contribs) (Tips and tricks: Importing playlists)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Navidrome is a self-hosted music streaming server that allows users to manage and play their personal music collections from various devices. Designed with a user-friendly interface, it supports features like playlists, searching, and streaming, all while emphasizing privacy and data ownership.

Setup

Simply add to your system configuration and apply

services.navidrome.enable = true;

The service should be available add http://127.0.0.1:4533. Continue adding an admin login including setting a password. If you have your music library outside of the systemd unit profile path, you'll add to have it to BindReadOnlypaths

systemd.services.navidrome.serviceConfig = {
  BindReadOnlyPaths = [
    "/mnt/audio/music"
  ];
};

Tips and tricks

Import playlists

Place m3u or m3u8 playlist files in a specific folder, configure it in the Navidrome service and after a library scan it should get imported. In this example the playlist files are stored in /mnt/audio/playlists.

services.navidrome = {
  enable = true;
  settings.PlaylistsPath = "/mnt/audio/playlists";
};

Enable sharing

Single tracks, albums or playlists can be publicly shared. To enable the feature, add

services.navidrome = {
  enable = true;
  settings.EnableSharing = true;
};