1 #!/bin/bash 2 # Usage: user-do [ --root [ --dev ] ] [ <command and options> ] 3 4 # Configuration: 5 if [ -e userinstall-defaults ]; then 6 source userinstall-defaults 7 elif [ -e /etc/default/userinstall ]; then 8 source /etc/default/userinstall 9 else 10 echo "No defaults found for userinstall." 11 exit 1 12 fi 13 14 if [[ "$1" == '--root' ]]; then 15 shift 1 16 mount -o bind /proc "$PACKAGEROOT/proc" 17 mount -o bind /sys "$PACKAGEROOT/sys" 18 if [[ "$1" == '--dev' ]]; then 19 shift 1 20 if [ -e "$PACKAGEROOT/dev.orig" ]; then 21 echo "Devices may already be defined for the installation." 22 else 23 mv "$PACKAGEROOT/dev" "$PACKAGEROOT/dev.orig" 24 mkdir "$PACKAGEROOT/dev" 25 mount -o bind /dev "$PACKAGEROOT/dev" 26 fi 27 fi 28 chroot "$PACKAGEROOT" $* 29 umount "$PACKAGEROOT/proc" 30 umount "$PACKAGEROOT/sys" 31 if [ -e "$PACKAGEROOT/dev.orig" ]; then 32 umount "$PACKAGEROOT/dev" 33 rmdir "$PACKAGEROOT/dev" 34 mv "$PACKAGEROOT/dev.orig" "$PACKAGEROOT/dev" 35 fi 36 else 37 fakeroot fakechroot $FAKECHROOT_OPTIONS chroot "$PACKAGEROOT" $* 38 fi