diff options
author | Jonas Bonn <jonas@norrbonn.se> | 2019-05-02 22:09:40 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-05-03 06:11:57 +0100 |
commit | 119d310f36bfaba25ad99266ad41f5abca748b43 (patch) | |
tree | 892e95b6fd3384fe2b4ef2fdfad0193c0f340c36 | |
parent | 140c96d9653bcd6385d659d57645747ea521333d (diff) | |
download | poky-119d310f36bfaba25ad99266ad41f5abca748b43.tar.gz |
systemd: do not create machine-id
There is no reason to have an emtpy machine-id as part of the systemd
package. Either:
i) the filesystem is writable and the file will be created
automatically; or
ii) the filesystem is read-only, in which case the empty machine-id file
should be created as part of the read-only-rootfs tweaks.
(From OE-Core rev: 76444b63e614baea33c044851a5859f6d1e69729)
Signed-off-by: Jonas Bonn <jonas@norrbonn.se>
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/rootfs-postcommands.bbclass | 6 | ||||
-rw-r--r-- | meta/recipes-core/systemd/systemd-conf_242.bb | 9 | ||||
-rw-r--r-- | meta/recipes-core/systemd/systemd/99-default.preset | 1 | ||||
-rw-r--r-- | meta/recipes-core/systemd/systemd_242.bb | 6 |
4 files changed, 14 insertions, 8 deletions
diff --git a/meta/classes/rootfs-postcommands.bbclass b/meta/classes/rootfs-postcommands.bbclass index bde58ad6cd..89f8efd323 100644 --- a/meta/classes/rootfs-postcommands.bbclass +++ b/meta/classes/rootfs-postcommands.bbclass | |||
@@ -126,6 +126,12 @@ read_only_rootfs_hook () { | |||
126 | ${IMAGE_ROOTFS}/etc/init.d/populate-volatile.sh | 126 | ${IMAGE_ROOTFS}/etc/init.d/populate-volatile.sh |
127 | fi | 127 | fi |
128 | fi | 128 | fi |
129 | |||
130 | if ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "true", "false", d)}; then | ||
131 | # Create machine-id | ||
132 | # 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 | ||
133 | touch ${IMAGE_ROOTFS}${sysconfdir}/machine-id | ||
134 | fi | ||
129 | } | 135 | } |
130 | 136 | ||
131 | # | 137 | # |
diff --git a/meta/recipes-core/systemd/systemd-conf_242.bb b/meta/recipes-core/systemd/systemd-conf_242.bb index 9bb27fd96d..7fe2e1105b 100644 --- a/meta/recipes-core/systemd/systemd-conf_242.bb +++ b/meta/recipes-core/systemd/systemd-conf_242.bb | |||
@@ -7,14 +7,13 @@ DefaultTimeoutStartSec setting." | |||
7 | 7 | ||
8 | PACKAGE_ARCH = "${MACHINE_ARCH}" | 8 | PACKAGE_ARCH = "${MACHINE_ARCH}" |
9 | 9 | ||
10 | CONFFILES_${PN} = "${sysconfdir}/machine-id \ | 10 | CONFFILES_${PN} = "${sysconfdir}/systemd/coredump.conf \ |
11 | ${sysconfdir}/systemd/coredump.conf \ | ||
12 | ${sysconfdir}/systemd/journald.conf \ | 11 | ${sysconfdir}/systemd/journald.conf \ |
13 | ${sysconfdir}/systemd/logind.conf \ | 12 | ${sysconfdir}/systemd/logind.conf \ |
14 | ${sysconfdir}/systemd/system.conf \ | 13 | ${sysconfdir}/systemd/system.conf \ |
15 | ${sysconfdir}/systemd/user.conf" | 14 | ${sysconfdir}/systemd/user.conf" |
16 | 15 | ||
17 | FILES_${PN} = "${sysconfdir}/machine-id ${sysconfdir}/systemd" | 16 | FILES_${PN} = "${sysconfdir}/systemd" |
18 | 17 | ||
19 | do_configure[noexec] = '1' | 18 | do_configure[noexec] = '1' |
20 | do_compile[noexec] = '1' | 19 | do_compile[noexec] = '1' |
@@ -23,10 +22,6 @@ do_install() { | |||
23 | rm -rf ${D}/${sysconfdir}/systemd | 22 | rm -rf ${D}/${sysconfdir}/systemd |
24 | install -d ${D}/${sysconfdir}/systemd | 23 | install -d ${D}/${sysconfdir}/systemd |
25 | 24 | ||
26 | # Create machine-id | ||
27 | # 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 | ||
28 | touch ${D}${sysconfdir}/machine-id | ||
29 | |||
30 | install -m 0644 ${S}/src/coredump/coredump.conf ${D}${sysconfdir}/systemd/coredump.conf | 25 | install -m 0644 ${S}/src/coredump/coredump.conf ${D}${sysconfdir}/systemd/coredump.conf |
31 | 26 | ||
32 | install -m 0644 ${S}/src/journal/journald.conf ${D}${sysconfdir}/systemd/journald.conf | 27 | install -m 0644 ${S}/src/journal/journald.conf ${D}${sysconfdir}/systemd/journald.conf |
diff --git a/meta/recipes-core/systemd/systemd/99-default.preset b/meta/recipes-core/systemd/systemd/99-default.preset new file mode 100644 index 0000000000..1f29b50597 --- /dev/null +++ b/meta/recipes-core/systemd/systemd/99-default.preset | |||
@@ -0,0 +1 @@ | |||
disable * | |||
diff --git a/meta/recipes-core/systemd/systemd_242.bb b/meta/recipes-core/systemd/systemd_242.bb index 9f194f2b6c..7d1b0ec13a 100644 --- a/meta/recipes-core/systemd/systemd_242.bb +++ b/meta/recipes-core/systemd/systemd_242.bb | |||
@@ -22,6 +22,7 @@ SRC_URI += "file://touchscreen.rules \ | |||
22 | file://0003-implment-systemd-sysv-install-for-OE.patch \ | 22 | file://0003-implment-systemd-sysv-install-for-OE.patch \ |
23 | file://0004-rules-whitelist-hd-devices.patch \ | 23 | file://0004-rules-whitelist-hd-devices.patch \ |
24 | file://0005-rules-watch-metadata-changes-in-ide-devices.patch \ | 24 | file://0005-rules-watch-metadata-changes-in-ide-devices.patch \ |
25 | file://99-default.preset \ | ||
25 | " | 26 | " |
26 | 27 | ||
27 | # patches needed by musl | 28 | # patches needed by musl |
@@ -277,7 +278,6 @@ do_install() { | |||
277 | fi | 278 | fi |
278 | 279 | ||
279 | # conf files are handled by systemd-conf | 280 | # conf files are handled by systemd-conf |
280 | rm -f ${D}${sysconfdir}/machine-id | ||
281 | rm -f ${D}${sysconfdir}/systemd/coredump.conf | 281 | rm -f ${D}${sysconfdir}/systemd/coredump.conf |
282 | rm -f ${D}${sysconfdir}/systemd/journald.conf | 282 | rm -f ${D}${sysconfdir}/systemd/journald.conf |
283 | rm -f ${D}${sysconfdir}/systemd/logind.conf | 283 | rm -f ${D}${sysconfdir}/systemd/logind.conf |
@@ -287,6 +287,10 @@ do_install() { | |||
287 | # duplicate udevadm for postinst script | 287 | # duplicate udevadm for postinst script |
288 | install -d ${D}${libexecdir} | 288 | install -d ${D}${libexecdir} |
289 | ln ${D}${base_bindir}/udevadm ${D}${libexecdir}/${MLPREFIX}udevadm | 289 | ln ${D}${base_bindir}/udevadm ${D}${libexecdir}/${MLPREFIX}udevadm |
290 | |||
291 | # install default policy for presets | ||
292 | # https://www.freedesktop.org/wiki/Software/systemd/Preset/#howto | ||
293 | install -Dm 0644 ${WORKDIR}/99-default.preset ${D}${systemd_unitdir}/system-preset/99-default.preset | ||
290 | } | 294 | } |
291 | 295 | ||
292 | 296 | ||