diff options
author | Alyssa Ross <hi@alyssa.is> | 2019-02-25 17:59:25 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2019-02-25 17:59:25 +0000 |
commit | d42c1abb93cecf65cc86394c6353ce25c72fd6ef (patch) | |
tree | 77a4ea520717bc2561716b70672f76c8ea532d52 /nixpkgs/nixos | |
parent | 072c01a28f865e9487df09aed7ddff328252fb36 (diff) | |
download | nixlib-d42c1abb93cecf65cc86394c6353ce25c72fd6ef.tar nixlib-d42c1abb93cecf65cc86394c6353ce25c72fd6ef.tar.gz nixlib-d42c1abb93cecf65cc86394c6353ce25c72fd6ef.tar.bz2 nixlib-d42c1abb93cecf65cc86394c6353ce25c72fd6ef.tar.lz nixlib-d42c1abb93cecf65cc86394c6353ce25c72fd6ef.tar.xz nixlib-d42c1abb93cecf65cc86394c6353ce25c72fd6ef.tar.zst nixlib-d42c1abb93cecf65cc86394c6353ce25c72fd6ef.zip |
nixos/agetty: add services.mingetty.loginOptions
My use case here is setting it to "-- \u" (no extra options), so that I can use autologinUser without it skipping the password prompt.
Diffstat (limited to 'nixpkgs/nixos')
-rw-r--r-- | nixpkgs/nixos/modules/services/ttys/agetty.nix | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/nixpkgs/nixos/modules/services/ttys/agetty.nix b/nixpkgs/nixos/modules/services/ttys/agetty.nix index b50de496e975..448b7c59e2ac 100644 --- a/nixpkgs/nixos/modules/services/ttys/agetty.nix +++ b/nixpkgs/nixos/modules/services/ttys/agetty.nix @@ -3,9 +3,20 @@ with lib; let + cfg = config.services.mingetty; - autologinArg = optionalString (config.services.mingetty.autologinUser != null) "--autologin ${config.services.mingetty.autologinUser}"; - gettyCmd = extraArgs: "@${pkgs.utillinux}/sbin/agetty agetty --login-program ${pkgs.shadow}/bin/login ${autologinArg} ${extraArgs}"; + loginArgs = concatStringsSep " " [ + "--login-program ${pkgs.shadow}/bin/login" + + (optionalString (cfg.autologinUser != null) + "--autologin ${cfg.autologinUser}") + + (optionalString (cfg.loginOptions != null) + "--login-options ${escapeShellArg cfg.loginOptions}") + ]; + + gettyCmd = extraArgs: + "@${pkgs.utillinux}/sbin/agetty agetty ${loginArgs} ${extraArgs}"; in @@ -26,6 +37,17 @@ in ''; }; + loginOptions = mkOption { + type = types.nullOr types.str; + default = null; + description = '' + Template for arguments to be passed to login(1). + See agetty(1) for details, including security considerations. + If unspecified, agetty will not be invoked with a --login-options option. + ''; + example = "-h darkstar -- \u"; + }; + greetingLine = mkOption { type = types.str; description = '' |