summaryrefslogtreecommitdiff
path: root/src/chroot-tools/buildenv
diff options
context:
space:
mode:
authorNicolás Reynolds <apoyosis@correo.inta.gob.ar>2012-11-07 15:06:55 -0300
committerNicolás Reynolds <apoyosis@correo.inta.gob.ar>2012-11-07 15:06:55 -0300
commit73b813613aa08646515f4e06c71503b18125cec3 (patch)
tree5b98b01f1c331692e2dcae4fd4f6fb4e4a7064df /src/chroot-tools/buildenv
parent6c14fad1750b4342b5b283e0851c00e3c074a15c (diff)
parent040111e9d8419456255816600784a496febd57b0 (diff)
Merge branch 'master' of git://gitorious.org/parabola/libretools
Diffstat (limited to 'src/chroot-tools/buildenv')
-rwxr-xr-xsrc/chroot-tools/buildenv28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/chroot-tools/buildenv b/src/chroot-tools/buildenv
new file mode 100755
index 0000000..84a1fc2
--- /dev/null
+++ b/src/chroot-tools/buildenv
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+trap "umount_all" 0 ERR TERM KILL
+
+user=${SUDO_USER:-${1}}
+
+umount_all() {
+ for mp in home/pkgdest home/srcdest home/${user}; do
+ msg "Umounting /$mp"
+ umount $CHROOTDIR/$CHROOT/$mp || error "Couldn't umount"
+ done
+}
+
+source /etc/libretools.conf
+
+for mp in home/pkgdest home/srcdest home/${user} var/lib/toru; do
+ msg "Binding /$mp"
+ mount -o bind /$mp $CHROOTDIR/$CHROOT/$mp || exit 1
+done
+
+for etc in etc/makepkg.conf etc/abs.conf etc/mtab; do
+ msg "Copying config /$etc"
+ cp --remove-destination /$etc $CHROOTDIR/$CHROOT/$etc || exit 1
+done
+
+$(dirname $0)/librechroot $CHROOT
+
+exit $?