mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 00:39:46 +00:00
systemd: Remove items that made this machine (qemu) specific
Create a new systemd-conf recipe to contain the specific system/machine configuration items. This new package is now machine specific. Without doing this trying to create a single system with multiple BSPs, one of which was qemu based, would result in the systemd -and- everything that dependend upon systemd to have their hash changed. The hash changing means lots of rebuilds, but worse if it's a package based system each different machine ends with a new PR value and a newly generated package. (From OE-Core rev: d3395418758ed414eee3e95e13d2d8bc5dca88cc) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
5293bee5f7
commit
28c2f0dfe3
@@ -629,6 +629,7 @@ RECIPE_MAINTAINER_pn-systemd = "Chen Qi <Qi.Chen@windriver.com>"
|
|||||||
RECIPE_MAINTAINER_pn-systemd-boot = "Chen Qi <Qi.Chen@windriver.com>"
|
RECIPE_MAINTAINER_pn-systemd-boot = "Chen Qi <Qi.Chen@windriver.com>"
|
||||||
RECIPE_MAINTAINER_pn-systemd-bootchart = "Chen Qi <Qi.Chen@windriver.com>"
|
RECIPE_MAINTAINER_pn-systemd-bootchart = "Chen Qi <Qi.Chen@windriver.com>"
|
||||||
RECIPE_MAINTAINER_pn-systemd-bootconf = "Chen Qi <Qi.Chen@windriver.com>"
|
RECIPE_MAINTAINER_pn-systemd-bootconf = "Chen Qi <Qi.Chen@windriver.com>"
|
||||||
|
RECIPE_MAINTAINER_pn-systemd-conf = "Chen Qi <Qi.Chen@windriver.com>"
|
||||||
RECIPE_MAINTAINER_pn-systemd-compat-units = "Chen Qi <Qi.Chen@windriver.com>"
|
RECIPE_MAINTAINER_pn-systemd-compat-units = "Chen Qi <Qi.Chen@windriver.com>"
|
||||||
RECIPE_MAINTAINER_pn-systemd-serialgetty = "Chen Qi <Qi.Chen@windriver.com>"
|
RECIPE_MAINTAINER_pn-systemd-serialgetty = "Chen Qi <Qi.Chen@windriver.com>"
|
||||||
RECIPE_MAINTAINER_pn-systemd-systemctl-native = "Chen Qi <Qi.Chen@windriver.com>"
|
RECIPE_MAINTAINER_pn-systemd-systemctl-native = "Chen Qi <Qi.Chen@windriver.com>"
|
||||||
|
|||||||
@@ -74,6 +74,7 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
|
|||||||
gnome-icon-theme->librsvg \
|
gnome-icon-theme->librsvg \
|
||||||
font-alias->font-util \
|
font-alias->font-util \
|
||||||
systemd-boot->systemd-bootconf \
|
systemd-boot->systemd-bootconf \
|
||||||
|
systemd->systemd-conf \
|
||||||
weston-init->weston \
|
weston-init->weston \
|
||||||
weston-init->kbd \
|
weston-init->kbd \
|
||||||
"
|
"
|
||||||
|
|||||||
@@ -0,0 +1,51 @@
|
|||||||
|
require systemd.inc
|
||||||
|
|
||||||
|
SUMMARY = "Systemd system configuration"
|
||||||
|
DESCRIPTION = "Systemd may require slightly different configuration for \
|
||||||
|
different machines. For example, qemu machines require a longer \
|
||||||
|
DefaultTimeoutStartSec setting."
|
||||||
|
|
||||||
|
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||||
|
|
||||||
|
CONFFILES_${PN} = "${sysconfdir}/machine-id \
|
||||||
|
${sysconfdir}/systemd/coredump.conf \
|
||||||
|
${sysconfdir}/systemd/journald.conf \
|
||||||
|
${sysconfdir}/systemd/logind.conf \
|
||||||
|
${sysconfdir}/systemd/system.conf \
|
||||||
|
${sysconfdir}/systemd/user.conf"
|
||||||
|
|
||||||
|
FILES_${PN} = "${sysconfdir}/machine-id ${sysconfdir}/systemd"
|
||||||
|
|
||||||
|
do_compile[noexec] = '1'
|
||||||
|
|
||||||
|
do_install() {
|
||||||
|
install -d ${D}/${sysconfdir}/systemd
|
||||||
|
|
||||||
|
# Create machine-id
|
||||||
|
# 20:12 < mezcalero> koen: you have three options: a) run systemd-machine-id-setup at install time, b) have / read-only and an empty file there (for stateless) and c) boot with / writable
|
||||||
|
touch ${D}${sysconfdir}/machine-id
|
||||||
|
|
||||||
|
install -m 0644 ${S}/src/coredump/coredump.conf ${D}${sysconfdir}/systemd/coredump.conf
|
||||||
|
|
||||||
|
install -m 0644 ${S}/src/journal/journald.conf ${D}${sysconfdir}/systemd/journald.conf
|
||||||
|
# Enable journal to forward message to syslog daemon
|
||||||
|
sed -i -e 's/.*ForwardToSyslog.*/ForwardToSyslog=yes/' ${D}${sysconfdir}/systemd/journald.conf
|
||||||
|
# Set the maximium size of runtime journal to 64M as default
|
||||||
|
sed -i -e 's/.*RuntimeMaxUse.*/RuntimeMaxUse=64M/' ${D}${sysconfdir}/systemd/journald.conf
|
||||||
|
|
||||||
|
install -m 0644 ${S}/src/login/logind.conf.in ${D}${sysconfdir}/systemd/logind.conf
|
||||||
|
# Set KILL_USER_PROCESSES to yes
|
||||||
|
sed -i -e 's/@KILL_USER_PROCESSES@/yes/' ${D}${sysconfdir}/systemd/logind.conf
|
||||||
|
|
||||||
|
install -m 0644 ${S}/src/core/system.conf.in ${D}${sysconfdir}/systemd/system.conf
|
||||||
|
# Set MEMORY_ACCOUNTING_DEFAULT to yes
|
||||||
|
sed -i -e 's/@MEMORY_ACCOUNTING_DEFAULT@/yes/' ${D}${sysconfdir}/systemd/system.conf
|
||||||
|
|
||||||
|
install -m 0644 ${S}/src/core/user.conf ${D}${sysconfdir}/systemd/user.conf
|
||||||
|
}
|
||||||
|
|
||||||
|
# Based on change from YP bug 8141, OE commit 5196d7bacaef1076c361adaa2867be31759c1b52
|
||||||
|
do_install_append_qemuall() {
|
||||||
|
# Change DefaultTimeoutStartSec from 90s to 240s
|
||||||
|
echo "DefaultTimeoutStartSec = 240s" >> ${D}${sysconfdir}/systemd/system.conf
|
||||||
|
}
|
||||||
-35
@@ -1,35 +0,0 @@
|
|||||||
From 2925c0c3b6ce4056622b86c1c61ee14add430790 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Chen Qi <Qi.Chen@windriver.com>
|
|
||||||
Date: Thu, 28 Jun 2018 10:56:29 +0800
|
|
||||||
Subject: [PATCH] core/device.c: Change the default device timeout to 240 sec.
|
|
||||||
MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
Upstream-Status: Inappropriate [Specific case QEMU/AB]
|
|
||||||
|
|
||||||
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
|
|
||||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
||||||
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
|
|
||||||
---
|
|
||||||
src/core/device.c | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/src/core/device.c b/src/core/device.c
|
|
||||||
index a2d00a0fb..f26e55ebb 100644
|
|
||||||
--- a/src/core/device.c
|
|
||||||
+++ b/src/core/device.c
|
|
||||||
@@ -95,7 +95,7 @@ static void device_init(Unit *u) {
|
|
||||||
* indefinitely for plugged in devices, something which cannot
|
|
||||||
* happen for the other units since their operations time out
|
|
||||||
* anyway. */
|
|
||||||
- u->job_running_timeout = u->manager->default_timeout_start_usec;
|
|
||||||
+ u->job_running_timeout = (240 * USEC_PER_SEC);
|
|
||||||
|
|
||||||
u->ignore_on_isolate = true;
|
|
||||||
|
|
||||||
--
|
|
||||||
2.11.0
|
|
||||||
|
|
||||||
@@ -31,7 +31,6 @@ SRC_URI += "file://touchscreen.rules \
|
|||||||
file://0022-build-sys-Detect-whether-struct-statx-is-defined-in-.patch \
|
file://0022-build-sys-Detect-whether-struct-statx-is-defined-in-.patch \
|
||||||
file://0023-resolvconf-fixes-for-the-compatibility-interface.patch \
|
file://0023-resolvconf-fixes-for-the-compatibility-interface.patch \
|
||||||
"
|
"
|
||||||
SRC_URI_append_qemuall = " file://0001-core-device.c-Change-the-default-device-timeout-to-2.patch"
|
|
||||||
|
|
||||||
# patches made for musl are only applied on TCLIBC is musl
|
# patches made for musl are only applied on TCLIBC is musl
|
||||||
SRC_URI += "${SRC_URI_MUSL}"
|
SRC_URI += "${SRC_URI_MUSL}"
|
||||||
@@ -218,10 +217,6 @@ do_install() {
|
|||||||
[ ! -e ${D}/init ] && ln -s ${rootlibexecdir}/systemd/systemd ${D}/init
|
[ ! -e ${D}/init ] && ln -s ${rootlibexecdir}/systemd/systemd ${D}/init
|
||||||
[ ! -e ${D}/${base_sbindir}/udevd ] && ln -s ${rootlibexecdir}/systemd/systemd-udevd ${D}/${base_sbindir}/udevd
|
[ ! -e ${D}/${base_sbindir}/udevd ] && ln -s ${rootlibexecdir}/systemd/systemd-udevd ${D}/${base_sbindir}/udevd
|
||||||
|
|
||||||
# Create machine-id
|
|
||||||
# 20:12 < mezcalero> koen: you have three options: a) run systemd-machine-id-setup at install time, b) have / read-only and an empty file there (for stateless) and c) boot with / writable
|
|
||||||
touch ${D}${sysconfdir}/machine-id
|
|
||||||
|
|
||||||
install -d ${D}${sysconfdir}/udev/rules.d/
|
install -d ${D}${sysconfdir}/udev/rules.d/
|
||||||
install -d ${D}${sysconfdir}/tmpfiles.d
|
install -d ${D}${sysconfdir}/tmpfiles.d
|
||||||
install -m 0644 ${WORKDIR}/*.rules ${D}${sysconfdir}/udev/rules.d/
|
install -m 0644 ${WORKDIR}/*.rules ${D}${sysconfdir}/udev/rules.d/
|
||||||
@@ -256,11 +251,6 @@ do_install() {
|
|||||||
ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/rescue.target.wants/systemd-update-utmp-runlevel.service
|
ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/rescue.target.wants/systemd-update-utmp-runlevel.service
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Enable journal to forward message to syslog daemon
|
|
||||||
sed -i -e 's/.*ForwardToSyslog.*/ForwardToSyslog=yes/' ${D}${sysconfdir}/systemd/journald.conf
|
|
||||||
# Set the maximium size of runtime journal to 64M as default
|
|
||||||
sed -i -e 's/.*RuntimeMaxUse.*/RuntimeMaxUse=64M/' ${D}${sysconfdir}/systemd/journald.conf
|
|
||||||
|
|
||||||
# this file is needed to exist if networkd is disabled but timesyncd is still in use since timesyncd checks it
|
# this file is needed to exist if networkd is disabled but timesyncd is still in use since timesyncd checks it
|
||||||
# for existence else it fails
|
# for existence else it fails
|
||||||
if [ -s ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf ]; then
|
if [ -s ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf ]; then
|
||||||
@@ -284,6 +274,14 @@ do_install() {
|
|||||||
chown polkitd:root ${D}${datadir}/polkit-1/rules.d
|
chown polkitd:root ${D}${datadir}/polkit-1/rules.d
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# conf files are handled by systemd-conf
|
||||||
|
rm -f ${D}${sysconfdir}/machine-id
|
||||||
|
rm -f ${D}${sysconfdir}/systemd/coredump.conf
|
||||||
|
rm -f ${D}${sysconfdir}/systemd/journald.conf
|
||||||
|
rm -f ${D}${sysconfdir}/systemd/logind.conf
|
||||||
|
rm -f ${D}${sysconfdir}/systemd/system.conf
|
||||||
|
rm -f ${D}${sysconfdir}/systemd/user.conf
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -433,13 +431,6 @@ FILES_${PN}-extra-utils = "\
|
|||||||
${rootlibexecdir}/systemd/systemd-cgroups-agent \
|
${rootlibexecdir}/systemd/systemd-cgroups-agent \
|
||||||
"
|
"
|
||||||
|
|
||||||
CONFFILES_${PN} = "${sysconfdir}/machine-id \
|
|
||||||
${sysconfdir}/systemd/coredump.conf \
|
|
||||||
${sysconfdir}/systemd/journald.conf \
|
|
||||||
${sysconfdir}/systemd/logind.conf \
|
|
||||||
${sysconfdir}/systemd/system.conf \
|
|
||||||
${sysconfdir}/systemd/user.conf"
|
|
||||||
|
|
||||||
FILES_${PN} = " ${base_bindir}/* \
|
FILES_${PN} = " ${base_bindir}/* \
|
||||||
${base_sbindir}/shutdown \
|
${base_sbindir}/shutdown \
|
||||||
${base_sbindir}/halt \
|
${base_sbindir}/halt \
|
||||||
@@ -455,7 +446,6 @@ FILES_${PN} = " ${base_bindir}/* \
|
|||||||
${datadir}/${BPN} \
|
${datadir}/${BPN} \
|
||||||
${datadir}/factory \
|
${datadir}/factory \
|
||||||
${sysconfdir}/dbus-1/ \
|
${sysconfdir}/dbus-1/ \
|
||||||
${sysconfdir}/machine-id \
|
|
||||||
${sysconfdir}/modules-load.d/ \
|
${sysconfdir}/modules-load.d/ \
|
||||||
${sysconfdir}/pam.d/ \
|
${sysconfdir}/pam.d/ \
|
||||||
${sysconfdir}/sysctl.d/ \
|
${sysconfdir}/sysctl.d/ \
|
||||||
@@ -504,7 +494,7 @@ FILES_${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/ $
|
|||||||
|
|
||||||
RDEPENDS_${PN} += "kmod dbus util-linux-mount udev (= ${EXTENDPKGV}) util-linux-agetty util-linux-fsck"
|
RDEPENDS_${PN} += "kmod dbus util-linux-mount udev (= ${EXTENDPKGV}) util-linux-agetty util-linux-fsck"
|
||||||
RDEPENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', '', 'systemd-serialgetty', d)}"
|
RDEPENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', '', 'systemd-serialgetty', d)}"
|
||||||
RDEPENDS_${PN} += "volatile-binds update-rc.d"
|
RDEPENDS_${PN} += "volatile-binds update-rc.d systemd-conf"
|
||||||
|
|
||||||
RRECOMMENDS_${PN} += "systemd-extra-utils \
|
RRECOMMENDS_${PN} += "systemd-extra-utils \
|
||||||
systemd-compat-units udev-hwdb \
|
systemd-compat-units udev-hwdb \
|
||||||
|
|||||||
Reference in New Issue
Block a user