diff options
author | Rob Landley <rob@landley.net> | 2020-05-08 03:16:38 -0500 |
---|---|---|
committer | Rob Landley <rob@landley.net> | 2020-05-08 03:16:38 -0500 |
commit | 4761d756dde03e62de0c3f3d7f25067a4f207fa3 (patch) | |
tree | a562276a01feba9667ef9387b2f5391b9655a92d /scripts/mkroot.sh | |
parent | 9c6a08e1c36fb7f3b056cc24581cc5467d81ad12 (diff) | |
download | toybox-4761d756dde03e62de0c3f3d7f25067a4f207fa3.tar.gz |
beat the dropbear build and module support a little further into shape.
Diffstat (limited to 'scripts/mkroot.sh')
-rwxr-xr-x | scripts/mkroot.sh | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/scripts/mkroot.sh b/scripts/mkroot.sh index 43500ef1..b6386eac 100755 --- a/scripts/mkroot.sh +++ b/scripts/mkroot.sh @@ -94,7 +94,7 @@ if [ $$ -eq 1 ]; then [ "$(date +%s)" -lt 10000000 ] && sntp -sq time.google.com # Run expansion scripts (if any) - for i in $(/etc/rc/* | sort); do [ -e "$i" ] && . $i; done + for i in $(echo /etc/rc/* | sort); do [ -e "$i" ] && . $i; done [ -z "$CONSOLE" ] && CONSOLE="$(</sys/class/tty/console/active)" [ -z "$HANDOFF" ] && HANDOFF=/bin/sh && echo Type exit when done. @@ -109,7 +109,7 @@ chmod +x "$ROOT"/init && # Google's nameserver, passwd+group with special (root/nobody) accounts + guest echo "nameserver 8.8.8.8" > "$ROOT"/etc/resolv.conf && cat > "$ROOT"/etc/passwd << 'EOF' && -root::0:0:root:/root:/bin/sh +root:x:0:0:root:/root:/bin/sh guest:x:500:500:guest:/home/guest:/bin/sh nobody:x:65534:65534:nobody:/proc/self:/dev/null EOF @@ -120,6 +120,9 @@ announce toybox make clean ${CONF:-defconfig KCONFIG_ALLCONFIG=<(echo $'CONFIG_SH=y\nCONFIG_ROUTE=y')} && LDFLAGS=--static PREFIX="$ROOT" make toybox install || exit 1 +# Build any modules +for i in $PKG; do announce "$i"; PATH="$PKGDIR:$PATH" source $i; done + if [ -z "$LINUX" ] || [ ! -d "$LINUX/kernel" ]; then echo 'No $LINUX directory, kernel build skipped.' else @@ -188,7 +191,7 @@ else fi # Write the qemu launch script - echo "qemu-system-$QEMU" '"$@"' -nographic -no-reboot -m 256 \ + echo qemu-system-"$QEMU" '"$@"' $QEMU_MORE -nographic -no-reboot -m 256 \ "-kernel $(basename "$VMLINUX") -initrd ${CROSS_BASE}root.cpio.gz" \ "-append \"quiet panic=1 HOST=$TARGET console=$KARGS \$KARGS\"" \ ${DTB:+-dtb "$(basename "$DTB")"} ";echo -e '\e[?7h'" \ @@ -228,8 +231,8 @@ else cp "$VMLINUX" "$OUTPUT" && cd .. && rm -rf linux && popd || exit 1 fi -# Build any modules, clean up, and package root filesystem for initramfs. -for i in $PKG; do announce "$i"; PATH="$PKGDIR:$PATH" source $i; done +# clean up and package root filesystem for initramfs. rmdir "$MYBUILD" "$BUILD" 2>/dev/null announce "${CROSS_BASE}root.cpio.gz" -(cd "$ROOT" && find .|cpio -o -H newc|gzip) > "$OUTPUT/$CROSS_BASE"root.cpio.gz +(cd "$ROOT" && find . | cpio -o -H newc --no-preserve-owner | gzip) \ + > "$OUTPUT/$CROSS_BASE"root.cpio.gz |