1#!/bin/bash -e 2 3POST_ROOTFS_ONLY=1 4 5source "${POST_HELPER:-$(dirname "$(realpath "$0")")/../post-hooks/post-helper}" 6 7[ -z "$RK_DISK_HELPERS_DISABLED" ] || exit 0 8 9cd "$SDK_DIR" 10 11mkdir -p "$TARGET_DIR/usr/bin" 12install -m 0755 external/rkscript/disk-helper "$TARGET_DIR/usr/bin/" 13 14if [ "$RK_DISK_HELPERS_MOUNTALL" ]; then 15 DISK_HELPER_TYPE=mount 16elif [ "$RK_DISK_HELPERS_RESIZEALL" ]; then 17 DISK_HELPER_TYPE=resize 18else 19 if [ "$POST_OS" = buildroot ]; then 20 DISK_HELPER_TYPE=mount 21 else 22 DISK_HELPER_TYPE=resize 23 fi 24fi 25 26echo "Installing $DISK_HELPER_TYPE service..." 27 28install -m 0755 external/rkscript/$DISK_HELPER_TYPE-helper \ 29 "$TARGET_DIR/usr/bin/" 30 31SCRIPT=$(ls external/rkscript/ | grep ${DISK_HELPER_TYPE}all.sh) 32 33if [ "$POST_INIT_BUSYBOX" ]; then 34 install -m 0755 external/rkscript/$SCRIPT "$TARGET_DIR/etc/init.d/" 35fi 36 37if [ "$DISK_HELPER_TYPE" = mount ]; then 38 if [ "$RK_DISK_AUTO_FORMAT" ]; then 39 echo "Enabling auto formatting..." 40 touch "$TARGET_DIR/.auto_mkfs" 41 fi 42 43 if [ "$RK_DISK_SKIP_FSCK" ]; then 44 echo "Disabling boot time fsck..." 45 touch "$TARGET_DIR/.skip_fsck" 46 fi 47 exit 0 48fi 49 50if [ "$POST_INIT_SYSTEMD" ]; then 51 install -m 0755 external/rkscript/$DISK_HELPER_TYPE-all.service \ 52 "$TARGET_DIR/lib/systemd/system/" 53 mkdir -p "$TARGET_DIR/etc/systemd/system/sysinit.target.wants" 54 ln -sf /lib/systemd/system/$DISK_HELPER_TYPE-all.service \ 55 "$TARGET_DIR/etc/systemd/system/sysinit.target.wants/" 56fi 57 58if [ "$POST_INIT_SYSV" ]; then 59 install -m 0755 external/rkscript/$SCRIPT \ 60 "$TARGET_DIR/etc/init.d/${DISK_HELPER_TYPE}all.sh" 61 ln -sf ../init.d/${DISK_HELPER_TYPE}all.sh \ 62 "$TARGET_DIR/etc/rcS.d/$SCRIPT" 63fi 64