summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
diff options
context:
space:
mode:
authorTrevor Woerner <twoerner@gmail.com>2020-12-24 10:31:05 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-01-05 13:48:41 +0000
commit6ddb9bc4bb1caedebcebeed6d0e3140956b5bcab (patch)
treee342e313315672bbd39f2645a44dad4640ba0fbf /meta/recipes-core
parent05091409dd90a93ce232206a02c050de760875b6 (diff)
downloadpoky-6ddb9bc4bb1caedebcebeed6d0e3140956b5bcab.tar.gz
psplash (sysvinit): add textual updates
The psplash program contains a hidden text box immediately above the progress bar. Any text sent via a "MSG" command through psplash's fifo will be displayed, centred, above the progress bar. Add the ability to show which startup script is currently running, in sync with updates to the progress bar. If a startup script takes a bit longer than others and the progress bar stops momentarily, this allows the user to know which script is responsible. This feature is added with a knob, default off, for enabling or disabling this feature. The knob is in the form of a PACKAGECONFIG against the sysvinit recipe: psplash-text-updates NOTE: this knob can be changed in the filesystem at runtime by editing /etc/default/rcS regardless of how it is set in the build. (From OE-Core rev: 6a48631e24341895f13029fb7c69dd67031f53c1) Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rwxr-xr-xmeta/recipes-core/sysvinit/sysvinit/rc3
-rw-r--r--meta/recipes-core/sysvinit/sysvinit/rcS-default2
-rw-r--r--meta/recipes-core/sysvinit/sysvinit_2.98.bb7
3 files changed, 11 insertions, 1 deletions
diff --git a/meta/recipes-core/sysvinit/sysvinit/rc b/meta/recipes-core/sysvinit/sysvinit/rc
index 8e76f987c1..41196ec90b 100755
--- a/meta/recipes-core/sysvinit/sysvinit/rc
+++ b/meta/recipes-core/sysvinit/sysvinit/rc
@@ -160,6 +160,9 @@ startup() {
160 # 160 #
161 [ -f $previous_start ] && [ ! -f $stop ] && continue 161 [ -f $previous_start ] && [ ! -f $stop ] && continue
162 fi 162 fi
163 if [ x"${PSPLASH_TEXT_UPDATES}" = x"yes" ]; then
164 psplash-write "MSG $(basename $i .sh | cut -c 4-)" || true
165 fi
163 case "$runlevel" in 166 case "$runlevel" in
164 0|6) 167 0|6)
165 startup $i stop 168 startup $i stop
diff --git a/meta/recipes-core/sysvinit/sysvinit/rcS-default b/meta/recipes-core/sysvinit/sysvinit/rcS-default
index 76af22b359..f7c4a2f841 100644
--- a/meta/recipes-core/sysvinit/sysvinit/rcS-default
+++ b/meta/recipes-core/sysvinit/sysvinit/rcS-default
@@ -32,3 +32,5 @@ ROOTFS_READ_ONLY=no
32INIT_SYSTEM=sysvinit 32INIT_SYSTEM=sysvinit
33# set the psplash fifo directory 33# set the psplash fifo directory
34PSPLASH_FIFO_DIR=/mnt 34PSPLASH_FIFO_DIR=/mnt
35# psplash textual updates knob
36PSPLASH_TEXT_UPDATES=#PSPLASH_TEXT#
diff --git a/meta/recipes-core/sysvinit/sysvinit_2.98.bb b/meta/recipes-core/sysvinit/sysvinit_2.98.bb
index fd39c61fb5..41009bc180 100644
--- a/meta/recipes-core/sysvinit/sysvinit_2.98.bb
+++ b/meta/recipes-core/sysvinit/sysvinit_2.98.bb
@@ -29,6 +29,8 @@ inherit update-alternatives features_check
29DEPENDS_append = " update-rc.d-native base-passwd virtual/crypt" 29DEPENDS_append = " update-rc.d-native base-passwd virtual/crypt"
30do_package_setscene[depends] = "${MLPREFIX}base-passwd:do_populate_sysroot" 30do_package_setscene[depends] = "${MLPREFIX}base-passwd:do_populate_sysroot"
31 31
32PACKAGECONFIG[psplash-text-updates] = ",,"
33
32REQUIRED_DISTRO_FEATURES = "sysvinit" 34REQUIRED_DISTRO_FEATURES = "sysvinit"
33 35
34ALTERNATIVE_${PN} = "init mountpoint halt reboot runlevel shutdown poweroff last lastb mesg utmpdump wall" 36ALTERNATIVE_${PN} = "init mountpoint halt reboot runlevel shutdown poweroff last lastb mesg utmpdump wall"
@@ -91,7 +93,10 @@ do_install () {
91 install -d ${D}${sysconfdir}/rc$level.d 93 install -d ${D}${sysconfdir}/rc$level.d
92 done 94 done
93 95
94 install -m 0644 ${WORKDIR}/rcS-default ${D}${sysconfdir}/default/rcS 96 sed -e \
97 's:#PSPLASH_TEXT#:${@bb.utils.contains("PACKAGECONFIG","psplash-text-updates","yes","no", d)}:g' \
98 ${WORKDIR}/rcS-default > ${D}${sysconfdir}/default/rcS
99 chmod 0644 ${D}${sysconfdir}/default/rcS
95 install -m 0755 ${WORKDIR}/rc ${D}${sysconfdir}/init.d 100 install -m 0755 ${WORKDIR}/rc ${D}${sysconfdir}/init.d
96 install -m 0755 ${WORKDIR}/rcS ${D}${sysconfdir}/init.d 101 install -m 0755 ${WORKDIR}/rcS ${D}${sysconfdir}/init.d
97 install -m 0755 ${WORKDIR}/bootlogd.init ${D}${sysconfdir}/init.d/bootlogd 102 install -m 0755 ${WORKDIR}/bootlogd.init ${D}${sysconfdir}/init.d/bootlogd