diff --git a/usr/lib/initcpio/install/arch_systemd b/usr/lib/initcpio/install/arch_systemd index bf80114b1..ae5cb341e 100644 --- a/usr/lib/initcpio/install/arch_systemd +++ b/usr/lib/initcpio/install/arch_systemd @@ -53,6 +53,8 @@ build () add_file "/usr/share/archboot/systemd/etc/systemd/system/getty@.service" "/etc/systemd/system/getty@.service" add_file "/usr/share/archboot/systemd/etc/systemd/system/serial-getty@.service" "/etc/systemd/system/serial-getty@.service" add_file "/usr/share/archboot/systemd/etc/systemd/system/autovt@.service" "/etc/systemd/system/autovt@.service" + add_file "/usr/share/archboot/systemd/etc/systemd/system/getty.target.wants/getty\@tty1.service" \ + "/etc/systemd/system/getty.target.wants/getty\@tty1.service" } help () diff --git a/usr/share/archboot/systemd/etc/systemd/system/getty.target.wants/getty@tty1.service b/usr/share/archboot/systemd/etc/systemd/system/getty.target.wants/getty@tty1.service new file mode 100644 index 000000000..ef4275c6c --- /dev/null +++ b/usr/share/archboot/systemd/etc/systemd/system/getty.target.wants/getty@tty1.service @@ -0,0 +1,48 @@ +# This file is part of systemd. +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. + +[Unit] +Description=Getty on %I +Documentation=man:agetty(8) +After=systemd-user-sessions.service plymouth-quit-wait.service +After=rc-local.service + +# If additional gettys are spawned during boot then we should make +# sure that this is synchronized before getty.target, even though +# getty.target didn't actually pull it in. +Before=getty.target +IgnoreOnIsolate=yes + +# On systems without virtual consoles, don't start any getty. (Note +# that serial gettys are covered by serial-getty@.service, not this +# unit +ConditionPathExists=/dev/tty0 + +[Service] +Environment=TERM=linux +ExecStart=-/sbin/agetty -n -l /etc/login.sh %I 38400 +Type=idle +Restart=always +RestartSec=0 +UtmpIdentifier=%I +TTYPath=/dev/%I +TTYReset=yes +TTYVHangup=yes +TTYVTDisallocate=yes +KillMode=process +IgnoreSIGPIPE=no + +# Unset locale for the console getty since the console has problems +# displaying some internationalized messages. +Environment=LANG= LANGUAGE= LC_CTYPE= LC_NUMERIC= LC_TIME= LC_COLLATE= LC_MONETARY= LC_MESSAGES= LC_PAPER= LC_NAME= LC_ADDRESS= LC_TELEPHONE= LC_MEASUREMENT= LC_IDENTIFICATION= + +# Some login implementations ignore SIGTERM, so we send SIGHUP +# instead, to ensure that login terminates cleanly. +KillSignal=SIGHUP + +[Install] +Alias=getty.target.wants/getty@tty1.service