diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index cd55461..c3ea9d6 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -11,6 +11,7 @@ ./services/home-assistant ./services/mail.nix ./services/matrix.nix + ./services/music-assistant.nix ./services/netbird.nix ./services/nginx.nix ./services/photoprism.nix diff --git a/modules/nixos/services/music-assistant.nix b/modules/nixos/services/music-assistant.nix new file mode 100644 index 0000000..eb91ebd --- /dev/null +++ b/modules/nixos/services/music-assistant.nix @@ -0,0 +1,37 @@ +{ + config, + lib, + ... +}: + +let + inherit (lib) + mkEnableOption + mkIf + ; + cfg = config.modules.services.music-assistant; +in +{ + options.modules.services.music-assistant.enable = mkEnableOption "music-assistant"; + + config = mkIf cfg.enable { + services = { + nginx.virtualHosts."music-assistant.${config.networking.hostName}" = { + extraConfig = '' + proxy_buffering off; + ''; + locations."/" = { + proxyPass = "http://[::1]:8095"; + proxyWebsockets = true; + }; + }; + music-assistant = { + enable = true; + providers = [ + "hass" + "jellyfin" + ]; + }; + }; + }; +}