diff options
Diffstat (limited to 'modules/nixosModules/server/navidrome.nix')
| -rw-r--r-- | modules/nixosModules/server/navidrome.nix | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/modules/nixosModules/server/navidrome.nix b/modules/nixosModules/server/navidrome.nix new file mode 100644 index 0000000..5e319ca --- /dev/null +++ b/modules/nixosModules/server/navidrome.nix @@ -0,0 +1,31 @@ +{ self, ... }: { + flake.nixosModules.navidrome = { config, ... }: let + cfg = config.hostOptions.server; + in { + imports = [ + self.nixosModules.hostOptions + self.nixosModules.nginx + ]; + + services.navidrome = { + enable = true; + settings = { + MusicFolder = "${cfg.mediaPath}/audio"; + DataFolder = "${cfg.dataPath}/navidrome"; + Address = "127.0.0.1"; + Port = 4533; + EnableTranscoding = true; + EnableMediaDeletion = true; + Scanner.PurgeMissing = "always"; + EnableSharing = true; + DefaultShareExpiration = "24h"; + }; + }; + + services.nginx.virtualHosts."music.${cfg.domain}" = { + enableACME = true; + forceSSL = true; + locations."/".proxyPass = "http://127.0.0.1:4553"; + }; + }; +} |
