From 1181d6153e3d43bdd68658358120e966037748f2 Mon Sep 17 00:00:00 2001 From: Benjamin Staffin Date: Tue, 11 Dec 2018 16:51:16 -0500 Subject: logind: make killUserProcesses an option (#51426) Right now it's not at all obvious that one can override this option using `services.logind.extraConfig`; we might as well add an option for `killUserProcesses` directly so it's clear and documented. --- nixos/modules/system/boot/systemd.nix | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) (limited to 'nixos') diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix index 89f8e81535505..d1029bb579821 100644 --- a/nixos/modules/system/boot/systemd.nix +++ b/nixos/modules/system/boot/systemd.nix @@ -601,8 +601,27 @@ in type = types.lines; example = "IdleAction=lock"; description = '' - Extra config options for systemd-logind. See man logind.conf for - available options. + Extra config options for systemd-logind. See + + logind.conf(5) for available options. + ''; + }; + + services.logind.killUserProcesses = mkOption { + default = false; + type = types.bool; + description = '' + Specifies whether the processes of a user should be killed + when the user logs out. If true, the scope unit corresponding + to the session and all processes inside that scope will be + terminated. If false, the scope is "abandoned" (see + + systemd.scope(5)), and processes are not killed. + + + + See logind.conf(5) + for more details. ''; }; @@ -771,7 +790,7 @@ in "systemd/logind.conf".text = '' [Login] - KillUserProcesses=no + KillUserProcesses=${if config.services.logind.killUserProcesses then "yes" else "no"} HandleLidSwitch=${config.services.logind.lidSwitch} HandleLidSwitchDocked=${config.services.logind.lidSwitchDocked} ${config.services.logind.extraConfig} -- cgit 1.4.1