mirror of
https://git.yoctoproject.org/poky
synced 2026-04-04 23:02:22 +02:00
systemd-serialgetty: use existing unit files in systemd
Now that systemd isn't deleting the serial-getty@.service unit template files, we can simply symlink to the files provided by systemd instead of shipping a copy of them in this recipe. This ensures that the getty units triggered by the systemd are identical, be them via SERIAL_CONSOLES or the generator. (From OE-Core rev: b6a7617145c3acf9f79888e7555e7706cd55a350) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
5935e0ab57
commit
d1eaffbd6b
@@ -9,13 +9,6 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;m
|
||||
# required. This recipe (enabled via disabling serial-getty-generator in systemd)
|
||||
# should only be used if the generator is not appropriate.
|
||||
|
||||
SERIAL_TERM ?= "linux"
|
||||
|
||||
SRC_URI = "file://serial-getty@.service"
|
||||
|
||||
S = "${WORKDIR}/sources"
|
||||
UNPACKDIR = "${S}"
|
||||
|
||||
# As this package is tied to systemd, only build it when we're also building systemd.
|
||||
inherit features_check
|
||||
REQUIRED_DISTRO_FEATURES += "systemd"
|
||||
@@ -24,11 +17,7 @@ REQUIRED_DISTRO_FEATURES += "usrmerge"
|
||||
do_install() {
|
||||
if [ ! -z "${SERIAL_CONSOLES}" ] ; then
|
||||
default_baudrate=`echo "${SERIAL_CONSOLES}" | sed 's/\;.*//'`
|
||||
install -d ${D}${systemd_system_unitdir}/
|
||||
install -d ${D}${sysconfdir}/systemd/system/getty.target.wants/
|
||||
install -m 0644 ${S}/serial-getty@.service ${D}${systemd_system_unitdir}/
|
||||
sed -i -e "s/\@BAUDRATE\@/$default_baudrate/g" ${D}${systemd_system_unitdir}/serial-getty@.service
|
||||
sed -i -e "s/\@TERM\@/${SERIAL_TERM}/g" ${D}${systemd_system_unitdir}/serial-getty@.service
|
||||
|
||||
tmp="${SERIAL_CONSOLES}"
|
||||
for entry in $tmp ; do
|
||||
@@ -51,7 +40,7 @@ do_install() {
|
||||
}
|
||||
|
||||
# This is a machine specific file
|
||||
FILES:${PN} = "${systemd_system_unitdir}/*.service ${sysconfdir}"
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
FILES:${PN} = "${sysconfdir}"
|
||||
|
||||
ALLOW_EMPTY:${PN} = "1"
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# 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=Serial Getty on %I
|
||||
Documentation=man:agetty(8) man:systemd-getty-generator(8)
|
||||
Documentation=http://0pointer.de/blog/projects/serial-console.html
|
||||
PartOf=dev-%i.device
|
||||
ConditionPathExists=/dev/%i
|
||||
After=dev-%i.device systemd-user-sessions.service plymouth-quit-wait.service getty-pre.target
|
||||
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
|
||||
|
||||
# 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
|
||||
|
||||
[Service]
|
||||
Environment="TERM=@TERM@"
|
||||
ExecStart=-/sbin/agetty -8 -L %I @BAUDRATE@ $TERM
|
||||
Type=idle
|
||||
Restart=always
|
||||
UtmpIdentifier=%I
|
||||
TTYPath=/dev/%I
|
||||
TTYReset=yes
|
||||
TTYVHangup=yes
|
||||
KillMode=process
|
||||
IgnoreSIGPIPE=no
|
||||
SendSIGHUP=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=getty.target
|
||||
Reference in New Issue
Block a user