RetroPie-Setup/tools/sdcard/chroot.sh
2015-10-05 00:49:43 +01:00

43 lines
936 B
Bash
Executable file

#!/bin/bash
DEST="$1"
CMD="$2"
if [[ ! -f "$DEST/boot/kernel.img" ]]; then
echo "$DEST doesn't look like a RPI filesystem"
exit 1
fi
cleanup()
{
trap '' INT
rm -f "$DEST/usr/bin/qemu-arm-static"
cat /dev/null >"$DEST/etc/resolv.conf"
echo "/usr/lib/arm-linux-gnueabihf/libcofi_rpi.so" >"$DEST/etc/ld.so.preload"
rm -rf "$DEST/run/resolvconf"
umount -l "$DEST/proc"
umount -l "$DEST/dev"
if [ "$DEST" = "/mnt" ]; then
umount /mnt/boot /mnt
fi
exit 0
}
trap cleanup INT
mkdir -p "$DEST/run/resolvconf"
echo "nameserver 8.8.8.8" >"$DEST/etc/resolv.conf"
rm -f "$DEST/etc/ld.so.preload"
mount -o bind /proc "$DEST/proc"
mount -o bind /dev "$DEST/dev"
export QEMU_CPU=cortex-a15
cp /usr/bin/qemu-arm-static "$DEST/usr/bin"
if [ "$CMD" = "" ]; then
HOME="/home/pi" chroot --userspec 1000:1000 $DEST
else
HOME="/home/pi" chroot --userspec 1000:1000 $DEST $CMD
fi
cleanup