From 4fecb8b2d0c31caf963a35b4525b4a884adecec9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20H=C3=BCrlimann?= <645664+p-h@users.noreply.github.com> Date: Sat, 28 Aug 2021 18:26:03 +0000 Subject: [PATCH] nixos/airsonic: make path to war file and jre configurable (#135709) * nixos/airsonic: make path to war file and jre configurable * Apply suggestions from code review Co-authored-by: Sumner Evans Co-authored-by: Sumner Evans --- nixos/modules/services/misc/airsonic.nix | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/misc/airsonic.nix b/nixos/modules/services/misc/airsonic.nix index a572f1f6d6f5..490f6c5a5c06 100644 --- a/nixos/modules/services/misc/airsonic.nix +++ b/nixos/modules/services/misc/airsonic.nix @@ -82,6 +82,25 @@ in { ''; }; + jre = mkOption { + type = types.package; + default = pkgs.jre8; + defaultText = literalExample "pkgs.jre8"; + description = '' + JRE package to use. + + Airsonic only supports Java 8, airsonic-advanced requires at least + Java 11. + ''; + }; + + war = mkOption { + type = types.path; + default = "${pkgs.airsonic}/webapps/airsonic.war"; + defaultText = "\${pkgs.airsonic}/webapps/airsonic.war"; + description = "Airsonic war file to use."; + }; + jvmOptions = mkOption { description = '' Extra command line options for the JVM running AirSonic. @@ -118,7 +137,7 @@ in { ''; serviceConfig = { ExecStart = '' - ${pkgs.jre8}/bin/java -Xmx${toString cfg.maxMemory}m \ + ${cfg.jre}/bin/java -Xmx${toString cfg.maxMemory}m \ -Dairsonic.home=${cfg.home} \ -Dserver.address=${cfg.listenAddress} \ -Dserver.port=${toString cfg.port} \ @@ -128,7 +147,7 @@ in { "-Dserver.use-forward-headers=true"} \ ${toString cfg.jvmOptions} \ -verbose:gc \ - -jar ${pkgs.airsonic}/webapps/airsonic.war + -jar ${cfg.war} ''; Restart = "always"; User = "airsonic";