busybox add initramfs hook

This commit is contained in:
aliriza committed 2022-12-27 11:32:36 +00:00
1 parent 7ebd83d3be
commit 2c6923f94f
3 files changed
+45 -3

No files matched your search

+39
View File
@@ -0,0 +1,39 @@
#!/bin/sh
# This hook copies busybox binary into the initramfs directory
# and creates all necessary links to it.
# It should be placed last into the hooks directory, in order to
# not overwrite commands which are provided by other means.
set -e
case "${1:-}" in
prereqs) echo ""; exit 0;;
esac
BB_BIN=/bin/busybox
[ n = "$BUSYBOX" ] && exit 0
[ -r /usr/share/initramfs-tools/hook-functions ] || exit 0
. /usr/share/initramfs-tools/hook-functions
if [ -f $DESTDIR/bin/sh ] && cmp -s $DESTDIR/bin/sh $BB_BIN ; then
# initramfs copies busybox into /bin/sh, undo this
rm -f $DESTDIR/bin/sh
fi
rm -f $DESTDIR/bin/busybox # for compatibility with old initramfs
copy_exec $BB_BIN /bin/busybox
for alias in $($BB_BIN --list-long); do
alias="${alias#/}"
case "$alias" in
# strip leading /usr, we don't use it
usr/*) alias="${alias#usr/}" ;;
*/*) ;;
*) alias="bin/$alias" ;; # make it into /bin
esac
[ -e "$DESTDIR/$alias" ] || \
ln "$DESTDIR/bin/busybox" "$DESTDIR/$alias"
done
+8
View File
@@ -0,0 +1,8 @@
#!/bin/busybox ash
/bin/busybox mkdir -p /var/lib/ymp/sysconf/busybox/
if /bin/busybox [ ! -f /var/lib/ymp/sysconf/busybox/postinstall.done ] ; then
/bin/busybox --install -s /bin
/bin/busybox install /bin/busybox /bin/su
/bin/busybox chmod u+s /bin/su
/bin/busybox date > /var/lib/ymp/sysconf/busybox/postinstall.done
fi