The systemd way is to create a service template that starts your alternative TTY login service …
[Unit]
Description=Qingy on %I
Documentation=info:qingy
BindTo=dev-%i.device
After=dev-%i.device systemd-user-sessions.service plymouth-quit-wait.service
[Service]
Environment=TERM=linux
ExecStart=/sbin/qingy %I --no-shutdown-screen
Restart=always
RestartSec=0
UtmpIdentifier=%I
TTYPath=/dev/%I
TTYReset=yes
TTYVHangup=yes
TTYVTDisallocate=yes
KillMode=process
IgnoreSIGPIPE=no
KillSignal=SIGHUP
[Install]
WantedBy=getty.target
… and then to make sure that the autovt@.service
template is an alias for this instead of for getty@.service
, as it is out of the box.
ln -s qingy@.service /etc/systemd/system/autovt@.service
systemctl daemon-reload
(Note that this is not modifying the pre-packaged /lib/systemd/system/autovt@.service
that comes in the box. This is using systemd's conventional /etc
//lib
dichotomy to override it with a local, administrator-defined, one.)
Stop an existing autovt@ttyN.service
and let logind
auto-start it again, to see this take effect.
Further reading