diff options
author | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2018-08-31 13:25:51 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2018-09-06 14:44:12 +0300 |
commit | ff075f6ee795a590b244d70a90cc312ba1f2d83d (patch) | |
tree | a617790bdbfdeef960665ba0242e1f0c93e5301a /meta-phosphor/recipes-phosphor/preinit-mounts | |
parent | 3e4da38c127bb7e7641adc2fc41f4c33744cb918 (diff) | |
download | openbmc-ff075f6ee795a590b244d70a90cc312ba1f2d83d.tar.xz |
meta-phosphor: Move layer content from common/
Adopt a more conventional directory hierarchy. meta-phosphor is still
a _long_ way from suitable for hosting on yoctoproject.org but things
like this don't help.
(From meta-phosphor rev: 471cfcefa74b8c7ceb704cb670e6d915cf27c63b)
Change-Id: I3f106b2f6cdc6cec734be28a6090800546f362eb
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'meta-phosphor/recipes-phosphor/preinit-mounts')
-rw-r--r-- | meta-phosphor/recipes-phosphor/preinit-mounts/preinit-mounts.bb | 22 | ||||
-rw-r--r-- | meta-phosphor/recipes-phosphor/preinit-mounts/preinit-mounts/init | 19 |
2 files changed, 41 insertions, 0 deletions
diff --git a/meta-phosphor/recipes-phosphor/preinit-mounts/preinit-mounts.bb b/meta-phosphor/recipes-phosphor/preinit-mounts/preinit-mounts.bb new file mode 100644 index 000000000..30e0f3613 --- /dev/null +++ b/meta-phosphor/recipes-phosphor/preinit-mounts/preinit-mounts.bb @@ -0,0 +1,22 @@ +inherit obmc-phosphor-license +inherit allarch +inherit update-alternatives + +RDEPENDS_${PN} += "${VIRTUAL-RUNTIME_base-utils}" + +SRC_URI += "file://init" + +FILES_${PN} += "${base_sbindir}/init" + +do_install() { + install -d ${D}/${base_sbindir} + install -m 0755 ${WORKDIR}/init ${D}/${base_sbindir}/preinit-mounts +} + +ALTERNATIVE_${PN} = "init" +ALTERNATIVE_TARGET[init] = "${base_sbindir}/preinit-mounts" +ALTERNATIVE_LINK_NAME[init] = "${base_sbindir}/init" + +# Use a number higher than the systemd init alternative so that +# ours is enabled instead. +ALTERNATIVE_PRIORITY[init] ?= "400" diff --git a/meta-phosphor/recipes-phosphor/preinit-mounts/preinit-mounts/init b/meta-phosphor/recipes-phosphor/preinit-mounts/preinit-mounts/init new file mode 100644 index 000000000..91f8038f9 --- /dev/null +++ b/meta-phosphor/recipes-phosphor/preinit-mounts/preinit-mounts/init @@ -0,0 +1,19 @@ +#!/bin/sh + +if ! mount ubi0:rwfs /var -t ubifs -o defaults; then + if ! mount ubi0:rwfs /var -t ubifs -o defaults,ro; then + mount tmpfs /var -t tmpfs -o defaults + fi +fi + +mkdir -p /var/persist/etc /var/persist/etc-work /var/persist/home/root + +rm -rf /var/persist/etc-work/* +# rm -rf specifically skips . and .. directories; pipe all output to null to avoid the error message +rm -rf /var/persist/etc-work/.* > /dev/null 2>&1 + +if ! mount overlay /etc -t overlay -o defaults,lowerdir=/etc,upperdir=/var/persist/etc,workdir=/var/persist/etc-work; then + mount overlay /etc -t overlay -o defaults,lowerdir=/etc:/var/persist/etc +fi + +exec /lib/systemd/systemd |