From 88067e2f8c84b3b0deba41a341c506866a1b0a18 Mon Sep 17 00:00:00 2001 From: Alexander Heldt Date: Sun, 26 Oct 2025 20:34:52 +0000 Subject: [PATCH] manatee: Add `navidrome` module --- hosts/manatee/modules/default.nix | 1 + hosts/manatee/modules/navidrome/default.nix | 33 +++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 hosts/manatee/modules/navidrome/default.nix diff --git a/hosts/manatee/modules/default.nix b/hosts/manatee/modules/default.nix index ac4f3c4..ea28e7c 100644 --- a/hosts/manatee/modules/default.nix +++ b/hosts/manatee/modules/default.nix @@ -20,6 +20,7 @@ in audiobookshelf.enable = true; jellyfin.enable = true; immich.enable = true; + navidrome.enable = true; }; }; } diff --git a/hosts/manatee/modules/navidrome/default.nix b/hosts/manatee/modules/navidrome/default.nix new file mode 100644 index 0000000..d93de23 --- /dev/null +++ b/hosts/manatee/modules/navidrome/default.nix @@ -0,0 +1,33 @@ +{ + lib, + pkgs, + config, + ... +}: +let + navidromeEnabled = config.mod.navidrome.enable; +in +{ + options = { + mod.navidrome = { + enable = lib.mkEnableOption "Enable navidrome module"; + }; + }; + + config = { + services = lib.mkIf navidromeEnabled { + navidrome = { + enable = true; + openFirewall = true; + + user = "navidrome"; + group = "storage"; + settings = { + Port = 4533; + Address = "0.0.0.0"; + MusicFolder = "/mnt/media/public/music"; + }; + }; + }; + }; +}