summaryrefslogtreecommitdiffstats
path: root/nixos
diff options
context:
space:
mode:
authorK900 <me@0upti.me>2024-04-11 15:05:26 +0300
committerGitHub <noreply@github.com>2024-04-11 15:05:26 +0300
commit084ce1ee888100b00f6a884dc88c8e960154673e (patch)
treee2c719616d08f13afc0b64a6ec8d90646a0a9259 /nixos
parent68b3627a154ddf199ea2683d41533742d3da7c96 (diff)
Revert "nixos/getty: add option to autologin once per boot"
Diffstat (limited to 'nixos')
-rw-r--r--nixos/doc/manual/release-notes/rl-2405.section.md3
-rw-r--r--nixos/modules/services/ttys/getty.nix32
2 files changed, 4 insertions, 31 deletions
diff --git a/nixos/doc/manual/release-notes/rl-2405.section.md b/nixos/doc/manual/release-notes/rl-2405.section.md
index 243c7dc81f59..a8cefa0da604 100644
--- a/nixos/doc/manual/release-notes/rl-2405.section.md
+++ b/nixos/doc/manual/release-notes/rl-2405.section.md
@@ -498,9 +498,6 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
existing process, but will need to start that process from gdb (so it is a
child). Or you can set `boot.kernel.sysctl."kernel.yama.ptrace_scope"` to 0.
-- The new option `services.getty.autologinOnce` was added to limit the automatic login to once per boot and on the first tty only.
- When using full disk encryption, this option allows to unlock the system without retyping the passphrase while keeping the other ttys protected.
-
- The netbird module now allows running multiple tunnels in parallel through [`services.netbird.tunnels`](#opt-services.netbird.tunnels).
- [Nginx virtual hosts](#opt-services.nginx.virtualHosts) using `forceSSL` or
diff --git a/nixos/modules/services/ttys/getty.nix b/nixos/modules/services/ttys/getty.nix
index 3578f4ba8773..22ae9c27e5bc 100644
--- a/nixos/modules/services/ttys/getty.nix
+++ b/nixos/modules/services/ttys/getty.nix
@@ -7,26 +7,14 @@ let
baseArgs = [
"--login-program" "${cfg.loginProgram}"
- ] ++ optionals (cfg.autologinUser != null && !cfg.autologinOnce) [
+ ] ++ optionals (cfg.autologinUser != null) [
"--autologin" cfg.autologinUser
] ++ optionals (cfg.loginOptions != null) [
"--login-options" cfg.loginOptions
] ++ cfg.extraArgs;
gettyCmd = args:
- "${pkgs.util-linux}/sbin/agetty ${escapeShellArgs baseArgs} ${args}";
-
- autologinScript = ''
- otherArgs="--noclear --keep-baud $TTY 115200,38400,9600 $TERM";
- ${lib.optionalString cfg.autologinOnce ''
- autologged="/run/agetty.autologged"
- if test "$TTY" = tty1 && ! test -f "$autologged"; then
- touch "$autologged"
- exec ${gettyCmd "$otherArgs --autologin ${cfg.autologinUser}"}
- fi
- ''}
- exec ${gettyCmd "$otherArgs"}
- '';
+ "@${pkgs.util-linux}/sbin/agetty agetty ${escapeShellArgs baseArgs} ${args}";
in
@@ -52,16 +40,6 @@ in
'';
};
- autologinOnce = mkOption {
- type = types.bool;
- default = false;
- description = ''
- If enabled the automatic login will only happen in the first tty
- once per boot. This can be useful to avoid retyping the account
- password on systems with full disk encrypted.
- '';
- };
-
loginProgram = mkOption {
type = types.path;
default = "${pkgs.shadow}/bin/login";
@@ -128,11 +106,9 @@ in
systemd.services."getty@" =
{ serviceConfig.ExecStart = [
- # override upstream default with an empty ExecStart
- ""
- (pkgs.writers.writeDash "getty" autologinScript)
+ "" # override upstream default with an empty ExecStart
+ (gettyCmd "--noclear --keep-baud %I 115200,38400,9600 $TERM")
];
- environment.TTY = "%I";
restartIfChanged = false;
};