summaryrefslogtreecommitdiffstats
path: root/initramfs/initrd-stuff/init
diff options
context:
space:
mode:
Diffstat (limited to 'initramfs/initrd-stuff/init')
-rwxr-xr-xinitramfs/initrd-stuff/init51
1 files changed, 51 insertions, 0 deletions
diff --git a/initramfs/initrd-stuff/init b/initramfs/initrd-stuff/init
index f1f99770..0cb53fb1 100755
--- a/initramfs/initrd-stuff/init
+++ b/initramfs/initrd-stuff/init
@@ -110,6 +110,9 @@ echo "noldap" > /tmp/ldap-done
# standard path (.../tftpboot/client-config/ ...)
file="yes"
+# splashy stuff
+nosplash=0
+
# read kernel commandline
read KCMDLINE < /proc/cmdline
export KCMDLINE
@@ -261,8 +264,15 @@ $0\n# deprecated: please use rootfs=nfs://...\nnfsroot=\"${nfsroot}\"\n" \
vci=${opts#vci=};;
xenbr)
xenbr=1;;
+ # splashy stuff
+ nosplash)
+ nosplash=1;;
esac
done
+
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] && /bin/splashy boot 2>/dev/null
+
# at this point a timer should be started to ensure an automated reboot
# or halt of the machine if SLX init does not succeed (e.g. missing kernel
# module for the network adaptor)
@@ -543,6 +553,10 @@ $(sysup)"
# and should be generalized for nbd, dnbd, iscsi
fi
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update "progress 20" 2>/dev/null
+
# if no type of root filesystem is passed via kernel command line try
# information gathered from dhcp process (only valid for nfs)
if [ -z "${bldmod}" -a -z "${bldhost}" -a -z "${nfsroot}" ] ; then
@@ -606,6 +620,11 @@ if [ -n "${aufs}" ]; then
modprobe ${MODPRV} -n unionfs && error $init_noaufs_butufs
fi
fi
+
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update "progress 30" 2>/dev/null
+
# setup of client root filesystem dependent on the availability of UnionFS
if [ -n "${unionfs}" -o -n "${aufs}" ] ; then
echo "Using ${union_type} for rw access"
@@ -677,6 +696,11 @@ elif [ -z "${cowloop}" ] ; then
#rm -rf /root/* >/dev/null 2>&1
# run some specific stuff !?
fi
+
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update "progress 40" 2>/dev/null
+
# script for stuff to execute during early bootup
d_mkrlscript init boot.slx "Running configuration postponed from InitRamFS"
echo "fs complete at $(sysup)" >/tmp/fscmpl
@@ -696,6 +720,10 @@ else
servconfig &
fi
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update "progress 50" 2>/dev/null
+
for path in @@@COMDIRINDXS@@@ ${D_DIRINDXS} ${D_DIRINBINDMNT} ; do
testmkd /mnt/${path}
done
@@ -717,6 +745,10 @@ proc\t\t/proc\t\tproc\t\tdefaults\t 0 0\ninitramdevs\t/dev\t\ttmpfs\
echo -e "rootfs / rootfs rw 0 0\ninitramdevs /dev tmpfs rw\
0 0" > /mnt/etc/mtab
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update "progress 60" 2>/dev/null
+
# copy library cache if generated
if [ -n "${ldsc}" ] ; then
# creating library cache takes a while ...
@@ -771,6 +803,10 @@ if [ -d /initramfs/plugin-init.d ]; then
done
fi
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update "progress 70" 2>/dev/null
+
# post init for some distro specific
postinit
[ -s /initramfs/postinit.local ] && {
@@ -791,6 +827,10 @@ for ticks in 0 1 2 5 10 20 30; do
error "$init_wait" nonfatal
done
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update "progress 80" 2>/dev/null
+
mount 2>/dev/null | grep /lib/modules/${KERNEL} >/dev/null 2>&1 \
&& error "$init_errumnt"
# check for inittab file (might fail for new style init -> upstart)
@@ -806,6 +846,10 @@ umount -n /proc/bus/usb >/dev/null 2>&1
chmod 1777 /mnt/dev/shm /mnt/tmp /mnt/tmp/scratch 2>/dev/null
mount -n --move /dev /mnt/dev
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update "progress 90" 2>/dev/null
+
# kill hwautocfg, servconfig
killall -9 hwautocfg servconfig 2>/mnt/dev/null
# runtimer
@@ -818,5 +862,12 @@ umount -n /proc
unset client debug date initrd ip bldroot nfsroot rootfs ticks vci vga
unset BOOT_IMAGE KCMDLINE KERNEL MODPRV NWMODULES OLDPWD UDEVD_EVENT_TIMEOUT \
SLXVERSION UDEVD_EXPECTED_SEQNUM PATH
+
+# splashy stuff
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update "progress 100" 2>/dev/null
+[ ${DEBUGLEVEL} = 0 -a ${nosplash} = 0 ] \
+ && /bin/splashy_update exit 2>/dev/null
+
# new style of pivoting (switch_root or run-init)
exec /bin/switch_root -c dev/console /mnt /sbin/init || error "$init_runinit"