paul@22 | 1 | #!/bin/bash |
paul@22 | 2 | # Usage: uml-postsetupfs |
paul@22 | 3 | |
paul@22 | 4 | # Configuration: |
paul@22 | 5 | if [ -e userinstall-defaults-uml ]; then |
paul@22 | 6 | source userinstall-defaults-uml |
paul@22 | 7 | elif [ -e /etc/default/userinstall-uml ]; then |
paul@22 | 8 | source /etc/default/userinstall-uml |
paul@22 | 9 | else |
paul@22 | 10 | echo "No defaults found for userinstall (UML)." |
paul@22 | 11 | exit 1 |
paul@22 | 12 | fi |
paul@22 | 13 | |
paul@22 | 14 | # Ensure that images have been set up. |
paul@22 | 15 | if [ ! -e $UMLROOT ]; then |
paul@22 | 16 | echo "No UML instances set up at $UMLROOT." |
paul@22 | 17 | exit 1 |
paul@22 | 18 | fi |
paul@22 | 19 | |
paul@22 | 20 | export IMAGE=$UMLROOT/rootfs |
paul@22 | 21 | |
paul@22 | 22 | if [ ! -e $IMAGE ]; then |
paul@22 | 23 | echo "No image set up at $IMAGE." |
paul@22 | 24 | exit 1 |
paul@22 | 25 | fi |
paul@22 | 26 | |
paul@22 | 27 | export IMAGEDIR=$UMLROOT/rootfsdir |
paul@22 | 28 | |
paul@22 | 29 | if [ ! -e $IMAGEDIR ]; then |
paul@22 | 30 | mkdir $IMAGEDIR |
paul@22 | 31 | fi |
paul@22 | 32 | |
paul@26 | 33 | echo "Initialising device files..." |
paul@26 | 34 | chroot $PACKAGEROOT /bin/bash -c 'mount -t proc proc /proc; cd /dev; ./MAKEDEV generic; umount /proc' |
paul@26 | 35 | |
paul@22 | 36 | echo "Accessing the image..." |
paul@22 | 37 | mount -o loop $IMAGE $IMAGEDIR || exit 1 |
paul@22 | 38 | |
paul@22 | 39 | echo "Copying the filesystem into the image..." |
paul@22 | 40 | cp -a $PACKAGEROOT/* $IMAGEDIR |
paul@22 | 41 | |
paul@22 | 42 | echo "Unmounting the image..." |
paul@22 | 43 | umount $IMAGEDIR |
paul@22 | 44 | rmdir $IMAGEDIR |