feat(minecraft-servers): add restart/autoStart options

This commit is contained in:
Infinidoge 2022-02-09 17:32:19 -05:00
parent a11467d017
commit beba690f2f

View file

@ -16,6 +16,10 @@ in
options = { options = {
enable = mkBoolOpt false; enable = mkBoolOpt false;
autoStart = mkBoolOpt true;
restart = mkOpt types.str "always";
whitelist = mkOption { whitelist = mkOption {
type = type =
let let
@ -90,13 +94,15 @@ in
name = "minecraft-server-${name}"; name = "minecraft-server-${name}";
value = { value = {
description = "Minecraft Server ${name}"; description = "Minecraft Server ${name}";
wantedBy = [ "multi-user.target" ]; wantedBy = mkIf conf.autoStart [ "multi-user.target" ];
after = [ "network.target" ]; after = [ "network.target" ];
enable = conf.enable;
serviceConfig = { serviceConfig = {
ExecStart = "${startScript}"; ExecStart = "${startScript}";
ExecStop = "${stopScript} $MAINPID"; ExecStop = "${stopScript} $MAINPID";
Restart = "always"; Restart = conf.restart;
User = "minecraft"; User = "minecraft";
Type = "forking"; Type = "forking";
GuessMainPID = true; GuessMainPID = true;