mirror of
https://github.com/systemd/systemd.git
synced 2024-12-26 03:22:00 +03:00
db6aedab92
Make agetty started by *getty* units pass '-p' option to "login", so it doesn't clear the environment and passes whatever was setup by systemd to shells. This is needed especially for programs which are specified as user shells, but won't read locale settings from anywhere but environment. [zj: cherry-pick just the second patch from the series, see discussion on the pull request.]
59 lines
1.9 KiB
Plaintext
59 lines
1.9 KiB
Plaintext
# 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) man:systemd-getty-generator(8)
|
|
Documentation=http://0pointer.de/blog/projects/serial-console.html
|
|
After=systemd-user-sessions.service plymouth-quit-wait.service
|
|
m4_ifdef(`HAVE_SYSV_COMPAT',
|
|
After=rc-local.service
|
|
)m4_dnl
|
|
|
|
# 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
|
|
|
|
# IgnoreOnIsolate causes issues with sulogin, if someone isolates
|
|
# rescue.target or starts rescue.service from multi-user.target or
|
|
# graphical.target.
|
|
Conflicts=rescue.service
|
|
Before=rescue.service
|
|
|
|
# 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]
|
|
# the VT is cleared by TTYVTDisallocate
|
|
# The '-o' option value tells agetty to replace 'login' arguments with an
|
|
# option to preserve environment (-p), followed by '--' for safety, and then
|
|
# the entered username.
|
|
ExecStart=-/sbin/agetty -o '-p -- \\u' --noclear %I $TERM
|
|
Type=idle
|
|
Restart=always
|
|
RestartSec=0
|
|
UtmpIdentifier=%I
|
|
TTYPath=/dev/%I
|
|
TTYReset=yes
|
|
TTYVHangup=yes
|
|
TTYVTDisallocate=yes
|
|
KillMode=process
|
|
IgnoreSIGPIPE=no
|
|
SendSIGHUP=yes
|
|
|
|
# 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=
|
|
|
|
[Install]
|
|
WantedBy=getty.target
|
|
DefaultInstance=tty1
|