busybox add initramfs hook
This commit is contained in:
1 parent
7ebd83d3be
commit
2c6923f94f
3 files changed
+45
-3
No files matched your search
Executable
+39
@@ -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
|
||||
Reference in new issue
Block a user