I've finally managed to get hermatic builds working, which makes Builder
much nicer and also fixes bug 105.

The diff is attached, does anyone have any comments before I submit and push
it?

Brian
Index: do-update
===================================================================
--- do-update	(revision 159)
+++ do-update	(working copy)
@@ -79,70 +79,78 @@
     done
   else
     # Build it
-    RELEASE=$4 VERSION="=$3" $5 || exit 1
+    if [ 1 == $DONT_CHROOT ]; then
+      # Some things need to manipulate the repo itself
+      CHROOTDIR=$CHROOTDIR RELEASE=$4 VERSION="=$3" $5 || exit 1
+    else
+      chroot $CHROOTDIR bash -c "cd /builder && RELEASE=$4 VERSION='=$3' $5" || exit 1
+      reprepro -Vb $REPODST include $RELEASE $CHROOTDIR/$WORKINGDIR/*.changes
+    fi
   fi
 
 }
 
-if [ 1 == $BACKPORTS ]; then EXTRAS="$RELEASE-backports"; fi
-if [ 1 == $UPDATES ]; then EXTRAS="$EXTRAS $RELEASE-updates"; fi
+if [ 1 == $BACKPORTS ]; then EXTRAS="-backports"; fi
+if [ 1 == $UPDATES ]; then EXTRAS="$EXTRAS -updates"; fi
 
 REDO=1
 while [ $REDO -eq 1 ]; do  #If versions in the config change, we could need to redo the lot
   REDO=0
   reprepro --noskipold -Vb $REPODST update
 
-  for i in $RELEASE $RELEASE-security $EXTRAS; do
-    RELEASE=$i ./gen-sources.list
-    $APTGET update
+  for i in '' -security $EXTRAS; do
+    ./update-chroot $i
+    CHROOTDIR=$WORKINGDIR/$MIRRORDIST$i
+
     # General
-    ensure_updated base-files base-files $i ./gen-base-files $BASE_FILES_VERSION
-    ensure_updated grub grub $i ./gen-grub $GRUB_VERSION
-    ensure_updated ubiquity ubiquity $i ./gen-ubiquity $UBIQUITY_VERSION
-    ensure_updated example-content example-content $i ./gen-example-content $EXAMPLE_CONTENT_VERSION
-    ensure_updated module-init-tools module-init-tools $i ./gen-module-init-tools $MODULE_INIT_TOOLS_VERSION
-    ensure_updated launchpad-integration launchpad-integration $i ./gen-launchpad-integration $LAUNCHPAD_INTEGRATION_VERSION
-    ensure_updated postgresql-common postgresql-common $i ./gen-postgresql-common $POSTGRESQL_COMMON_VERSION
-    ensure_updated libgl1-mesa libgl1-mesa $i ./gen-mesa $MESA_VERSION
-    ensure_updated xserver-xorg-core xserver-xorg-core $i ./gen-xorg-server $XORG_SERVER_VERSION
-    ensure_updated cdrecord cdrecord $i ./gen-cdrtools $CDRTOOLS_VERSION
+    ensure_updated base-files base-files $RELEASE$i ./gen-base-files $BASE_FILES_VERSION
+    ensure_updated grub grub $RELEASE$i ./gen-grub $GRUB_VERSION
+    ensure_updated ubiquity ubiquity $RELEASE$i ./gen-ubiquity $UBIQUITY_VERSION
+    ensure_updated example-content example-content $RELEASE$i ./gen-example-content $EXAMPLE_CONTENT_VERSION
+    ensure_updated module-init-tools module-init-tools $RELEASE$i ./gen-module-init-tools $MODULE_INIT_TOOLS_VERSION
+    ensure_updated launchpad-integration launchpad-integration $RELEASE$i ./gen-launchpad-integration $LAUNCHPAD_INTEGRATION_VERSION
+    ensure_updated postgresql-common postgresql-common $RELEASE$i ./gen-postgresql-common $POSTGRESQL_COMMON_VERSION
+    ensure_updated xserver-xorg-core xserver-xorg-core $RELEASE$i ./gen-xorg-server $XORG_SERVER_VERSION
+    ensure_updated cdrecord cdrecord $RELEASE$i ./gen-cdrtools $CDRTOOLS_VERSION
 
     # Gnome
-    ensure_updated ubuntu-artwork $DISTRONAME_L-artwork $i ./gen-artwork $ARTWORK_VERSION
-    ensure_updated ubuntu-artwork ubuntu-artwork $i "./remove-package ubuntu-artwork" ''
-    ensure_updated ubuntu-desktop $DISTRONAME_L-desktop $i ./gen-meta $META_VERSION
-    ensure_updated ubuntu-desktop ubuntu-desktop $i "./remove-package ubuntu-desktop" ''
-    ensure_updated update-manager update-manager $i ./gen-update-manager $UPDATE_MANAGER_VERSION
-    ensure_updated system-tools-backends system-tools-backends $i ./gen-system-tools-backends $SYSTEM_TOOLS_BACKENDS_VERSION
-    #ensure_updated gnome-panel gnome-panel $i ./gen-gnome-panel $GNOME_PANEL_VERSION
-    ensure_updated gnome-app-install gnome-app-install $i ./gen-gnome-app-install $GNOME_APP_INSTALL_VERSION
-    ensure_updated usplash usplash $i ./gen-usplash $USPLASH_VERSION
-    ensure_updated firefox firefox $i ./gen-firefox $FIREFOX_VERSION
-    ensure_updated hal hal $i ./gen-hal $HAL_VERSION
+    ensure_updated ubuntu-artwork $DISTRONAME_L-artwork $RELEASE$i ./gen-artwork $ARTWORK_VERSION
+    DONT_CHROOT=1 ensure_updated ubuntu-artwork ubuntu-artwork $RELEASE$i "./remove-package ubuntu-artwork" ''
+    ensure_updated ubuntu-desktop $DISTRONAME_L-desktop $RELEASE$i ./gen-meta $META_VERSION
+    DONT_CHROOT=1 ensure_updated ubuntu-desktop ubuntu-desktop $RELEASE$i "./remove-package ubuntu-desktop" ''
+    ensure_updated update-manager update-manager $RELEASE$i ./gen-update-manager $UPDATE_MANAGER_VERSION
+    ensure_updated system-tools-backends system-tools-backends $RELEASE$i ./gen-system-tools-backends $SYSTEM_TOOLS_BACKENDS_VERSION
+    ensure_updated gnome-panel gnome-panel $RELEASE$i ./gen-gnome-panel $GNOME_PANEL_VERSION
+    ensure_updated gnome-app-install gnome-app-install $RELEASE$i ./gen-gnome-app-install $GNOME_APP_INSTALL_VERSION
+    ensure_updated usplash usplash $RELEASE$i ./gen-usplash $USPLASH_VERSION
+    ensure_updated firefox firefox $RELEASE$i ./gen-firefox $FIREFOX_VERSION
+    ensure_updated hal hal $RELEASE$i ./gen-hal $HAL_VERSION
 
     # KDE
-    ensure_updated kubuntu-default-settings k$DISTRONAME_L-default-settings $i ./gen-kdefault-settings $KDEFAULT_SETTINGS_VERSION
-    ensure_updated kubuntu-desktop k$DISTRONAME_L-desktop $i ./gen-kmeta $KMETA_VERSION  
-    ensure_updated kubuntu-desktop kubuntu-desktop $i "./remove-package kubuntu-desktop" ''
+    ensure_updated kubuntu-default-settings k$DISTRONAME_L-default-settings $RELEASE$i ./gen-kdefault-settings $KDEFAULT_SETTINGS_VERSION
+    ensure_updated kubuntu-desktop k$DISTRONAME_L-desktop $RELEASE$i ./gen-kmeta $KMETA_VERSION  
+    DONT_CHROOT=1 ensure_updated kubuntu-desktop kubuntu-desktop $RELEASE$i "./remove-package kubuntu-desktop" ''
   
-     # Non-Free, or no valid use in gNewSense
-    ensure_updated linuxsampler linuxsampler $i "./remove-package linuxsampler" ''
-    ensure_updated nvidia-xconfig nvidia-xconfig $i "./remove-package nvidia-xconfig" ''
-    ensure_updated gstreamer0.10-plugins-ugly-multiverse gstreamer0.10-plugins-ugly-multiverse $i "./remove-package gstreamer0.10-plugins-ugly-multiverse" ''
-    ensure_updated linux-wlan-ng-firmware linux-wlan-ng-firmware $i "./remove-package linux-wlan-ng-firmware" ''
-    ensure_updated bcm43xx-fwcutter bcm43xx-fwcutter $i "./remove-package bcm43xx-fwcutter" ''
-    ensure_updated isdnactivecards isdnactivecards $i "./remove-package isdnactivecards" ''
-    ensure_updated bind bind $i "./remove-package bind" ''
-    ensure_updated helix-player helix-player $i "./remove-package helix-player" ''
-    ensure_updated x11proto-gl-dev x11proto-gl-dev $i "./remove-package x11proto-gl-dev" ''
+    # Non-Free, or no valid use in gNewSense
+    DONT_CHROOT=1 ensure_updated libgl1-mesa libgl1-mesa $RELEASE$i ./gen-mesa $MESA_VERSION
+    DONT_CHROOT=1 ensure_updated linuxsampler linuxsampler $RELEASE$i "./remove-package linuxsampler" ''
+    DONT_CHROOT=1 ensure_updated nvidia-xconfig nvidia-xconfig $RELEASE$i "./remove-package nvidia-xconfig" ''
+    DONT_CHROOT=1 ensure_updated gstreamer0.10-plugins-ugly-multiverse gstreamer0.10-plugins-ugly-multiverse $RELEASE$i "./remove-package gstreamer0.10-plugins-ugly-multiverse" ''
+    DONT_CHROOT=1 ensure_updated linux-wlan-ng-firmware linux-wlan-ng-firmware $RELEASE$i "./remove-package linux-wlan-ng-firmware" ''
+    DONT_CHROOT=1 ensure_updated bcm43xx-fwcutter bcm43xx-fwcutter $RELEASE$i "./remove-package bcm43xx-fwcutter" ''
+    DONT_CHROOT=1 ensure_updated isdnactivecards isdnactivecards $RELEASE$i "./remove-package isdnactivecards" ''
+    DONT_CHROOT=1 ensure_updated bind bind $RELEASE$i "./remove-package bind" ''
+    DONT_CHROOT=1 ensure_updated helix-player helix-player $RELEASE$i "./remove-package helix-player" ''
+    DONT_CHROOT=1 ensure_updated x11proto-gl-dev x11proto-gl-dev $RELEASE$i "./remove-package x11proto-gl-dev" ''
+
     FOUND=0
     for n in `seq 100 -1 20`; do
       export KERNEL_VERSIONPART=$n  #Used by ./gen-kernel
       if [ $FOUND -eq 0 ]; then
-        ensure_updated linux-image-2.6.15-$n-386 linux-image-2.6.15-$n-386 $i ./gen-kernel $KERNEL_VERSION
+        ensure_updated linux-image-2.6.15-$n-386 linux-image-2.6.15-$n-386 $RELEASE$i ./gen-kernel $KERNEL_VERSION
       else
         #Only keep one
-        RELEASE=$i ./remove-kernel
+        RELEASE=$RELEASE$i ./remove-kernel
       fi
     done
   done
Index: gen-launchpad-integration
===================================================================
--- gen-launchpad-integration	(revision 159)
+++ gen-launchpad-integration	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source launchpad-integration$VERSION
+apt-get source launchpad-integration$VERSION
+apt-get build-dep launchpad-integration$VERSION
 cd launchpad-integration-*
 
 sed -i "s#https://launchpad\.net#http://lp.$DOMAIN#"; launchpadintegration/urls.py
@@ -34,4 +35,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE launchpad-integration*.changes
Index: gen-kernel
===================================================================
--- gen-kernel	(revision 159)
+++ gen-kernel	(working copy)
@@ -26,8 +26,9 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-#$APTGET source linux-image-2.6.15-$KERNEL_VERSIONPART-386$VERSION
-$APTGET source linux-image-2.6.15-$KERNEL_VERSIONPART-386
+#apt-get source linux-image-2.6.15-$KERNEL_VERSIONPART-386$VERSION
+apt-get source linux-image-2.6.15-$KERNEL_VERSIONPART-386
+apt-get build-dep linux-image-2.6.15-$KERNEL_VERSIONPART-386
 
 function clean_kconfig {
 	#$1 = filename $2 = things to remove
@@ -345,4 +346,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE linux-*.changes
Index: gen-module-init-tools
===================================================================
--- gen-module-init-tools	(revision 159)
+++ gen-module-init-tools	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source module-init-tools
+apt-get source module-init-tools
+apt-get build-dep module-init-tools
 cd module-init-tools-*
 
 sed -i "/^blacklist eepro100/d" extra/modprobe.d/blacklist
@@ -34,4 +35,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE module-init-tools*.changes
Index: gen-builder
===================================================================
--- gen-builder	(revision 159)
+++ gen-builder	(working copy)
@@ -70,4 +70,3 @@
 dpkg-buildpackage -rfakeroot -us -uc
 
 cd ..
-reprepro -Vb $REPODST include $RELEASE builder*.changes
Index: gen-meta
===================================================================
--- gen-meta	(revision 159)
+++ gen-meta	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source ubuntu-meta$VERSION
+apt-get source ubuntu-meta$VERSION
+apt-get build-dep ubuntu-meta$VERSION
 cd ubuntu-meta-*
 
 for i in minimal standard desktop live; do
@@ -50,4 +51,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE $DISTRONAME_L-meta*.changes
Index: gen-artwork
===================================================================
--- gen-artwork	(revision 159)
+++ gen-artwork	(working copy)
@@ -26,7 +26,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source ubuntu-artwork$VERSION
+apt-get source ubuntu-artwork$VERSION
+apt-get build-dep ubuntu-artwork$VERSION
 cd ubuntu-artwork-*
 
 
@@ -114,4 +115,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE ${DISTRONAME_L}-artwork*.changes
Index: gen-postgresql-common
===================================================================
--- gen-postgresql-common	(revision 159)
+++ gen-postgresql-common	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source postgresql-common$VERSION
+apt-get source postgresql-common$VERSION
+apt-get build-dep postgresql-common$VERSION
 cd postgresql-common-*
 
 # Workaround for broken packaging
@@ -35,4 +36,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE postgresql-common*.changes
Index: gen-system-tools-backends
===================================================================
--- gen-system-tools-backends	(revision 159)
+++ gen-system-tools-backends	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source system-tools-backends$VERSION
+apt-get source system-tools-backends$VERSION
+apt-get build-dep system-tools-backends$VERSION
 cd system-tools-backends-*
 
 #Stop the "Unsupported Platform" dialog
@@ -35,4 +36,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE system-tools-backends*.changes
Index: gen-emeta
===================================================================
--- gen-emeta	(revision 159)
+++ gen-emeta	(working copy)
@@ -23,9 +23,9 @@
 . config
 
 CONFIGS=$PWD/emeta
-rm -rf $WORKINGDIR
-mkdir -p $WORKINGDIR
-cd $WORKINGDIR
+rm -rf $WORKINGDIR/emeta
+mkdir -p $WORKINGDIR/emeta
+cd $WORKINGDIR/emeta
 
 for i in $CONFIGS/*; do
 	if [[ ! "$(basename $i)" =~ '^[-a-z]+$' ]]; then continue; fi
Index: gen-kdefault-settings
===================================================================
--- gen-kdefault-settings	(revision 159)
+++ gen-kdefault-settings	(working copy)
@@ -26,7 +26,8 @@
 cd $WORKINGDIR
 
 
-$APTGET source kubuntu-default-settings$VERSION
+apt-get source kubuntu-default-settings$VERSION
+apt-get build-dep kubuntu-default-settings$VERSION
 cd kubuntu-default-settings-*
 
 
@@ -175,4 +176,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE k${DISTRONAME_L}-default-settings*.changes
Index: gen-sources.list
===================================================================
--- gen-sources.list	(revision 159)
+++ gen-sources.list	(working copy)
@@ -1,11 +0,0 @@
-#!/bin/bash
-
-set -ex
-
-#Get distro information
-. config
-
-cat > $REPODST/apt/sources.list <<EOF
-deb $REPOAPT $RELEASE main universe
-deb-src $REPOAPT $RELEASE main universe
-EOF
Index: gen-kmeta
===================================================================
--- gen-kmeta	(revision 159)
+++ gen-kmeta	(working copy)
@@ -28,7 +28,8 @@
 cd $WORKINGDIR
 
 
-$APTGET source kubuntu-meta$VERSION
+apt-get source kubuntu-meta$VERSION
+apt-get build-dep kubuntu-meta$VERSION
 cd kubuntu-meta-*
 
 for i in desktop live; do
@@ -53,4 +54,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE k${DISTRONAME_L}-meta*.changes
Index: gen-example-content
===================================================================
--- gen-example-content	(revision 159)
+++ gen-example-content	(working copy)
@@ -26,7 +26,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source example-content$VERSION
+apt-get source example-content$VERSION
+apt-get build-dep example-content$VERSION
 cd example-content-*
 
 sed -i "s/Ubuntu/$DISTRONAME/" debian/rules
@@ -46,4 +47,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE example-content*.changes
Index: gen-base-files
===================================================================
--- gen-base-files	(revision 159)
+++ gen-base-files	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source base-files$VERSION
+apt-get source base-files$VERSION
+apt-get build-dep base-files$VERSION
 cd base-files-*
 
 cat > etc/motd <<EOF
@@ -59,4 +60,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE base-files*.changes
Index: gen-ubiquity
===================================================================
--- gen-ubiquity	(revision 159)
+++ gen-ubiquity	(working copy)
@@ -27,7 +27,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source ubiquity$VERSION
+apt-get source ubiquity$VERSION
+apt-get build-dep ubiquity$VERSION
 cd ubiquity-*
 
 ######## General
@@ -173,4 +174,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE ubiquity_*.changes
Index: gen-usplash
===================================================================
--- gen-usplash	(revision 159)
+++ gen-usplash	(working copy)
@@ -26,7 +26,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source usplash$VERSION
+apt-get source usplash$VERSION
+apt-get build-dep usplash$VERSION
 cd usplash-*
 
 
@@ -42,4 +43,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE usplash*.changes
Index: gen-xorg-server
===================================================================
--- gen-xorg-server	(revision 159)
+++ gen-xorg-server	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source xorg-server$VERSION
+apt-get source xorg-server$VERSION
+apt-get build-dep xorg-server$VERSION
 mkdir tmp
 tar -C tmp -xzf xorg-server_*.orig.tar.gz
 # Remove non-free bits for .orig, and patched version
@@ -49,4 +50,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE xorg*.changes
Index: gen-mesa
===================================================================
--- gen-mesa	(revision 159)
+++ gen-mesa	(working copy)
@@ -21,12 +21,17 @@
 
 . config
 
-rm -rf $WORKINGDIR
-mkdir -p $WORKINGDIR
-cd $WORKINGDIR
+if [ -z "$CHROOTDIR" ]; then
+  echo "This must be passed the CHROOTDIR"
+  exit 1
+fi
 
-$APTGET source mesa$VERSION
+rm -rf $CHROOTDIR/$WORKINGDIR
+mkdir -p $CHROOTDIR/$WORKINGDIR
+cd $CHROOTDIR/$WORKINGDIR
 
+chroot $CHROOTDIR "cd $WORKINGDIR && apt-get source mesa$VERSION"
+
 # Replace each package with an empty placeholder, don't break apt too badly
 CONTROL=mesa-*/debian/control
 for pkg in $(sed -n 's/^Package: //p' $CONTROL);do
Index: gen-gnome-app-install
===================================================================
--- gen-gnome-app-install	(revision 159)
+++ gen-gnome-app-install	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source gnome-app-install$VERSION
+apt-get source gnome-app-install$VERSION
+apt-get build-dep gnome-app-install$VERSION
 cd gnome-app-install*
 
 fgrep -lr X-AppInstall-Section=multiverse menu-data menu-data-additional | xargs -r rm
@@ -37,4 +38,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE gnome-app-install*.changes
Index: gen-cdrtools
===================================================================
--- gen-cdrtools	(revision 159)
+++ gen-cdrtools	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source cdrtools$VERSION
+apt-get source cdrtools$VERSION
+apt-get build-dep cdrtools$VERSION
 cd cdrtools-*
 
 sed -i -e '/Begin restricted/,/End restricted/d; /End restricted/d' ./cdrecord/cdrecord.c ./conf/xconfig.h.in ./libscg/scsitransp.c
@@ -37,4 +38,3 @@
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
 
-reprepro -Vb $REPODST include $RELEASE cdrtools*.changes
Index: gen-update-manager
===================================================================
--- gen-update-manager	(revision 159)
+++ gen-update-manager	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source update-manager$VERSION
+apt-get source update-manager$VERSION
+apt-get build-dep update-manager$VERSION
 cd update-manager-*
 
 cat > channels/$DISTRONAME.info.in <<EOF
@@ -78,4 +79,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE update-manager*.changes
Index: fixup-kernel-wedge
===================================================================
--- fixup-kernel-wedge	(revision 159)
+++ fixup-kernel-wedge	(working copy)
@@ -2,11 +2,6 @@
 
 #This script removes some "issues" with kernel-wedge the hard way.
 
-if [ $UID != 0 ]; then
-        echo 'This script must be run as root'
-        exit 1
-fi
-
 for i in /usr/share/kernel-wedge/modules/*; do
 	sed -i '/^\(starfire\|bnx2\|cassini\|acenic\|dgrs\|e100\|typhoon\|tg3 ?\|smctr\|dab\|korg1212\|qla1280\)$/d' $i	
 done
Index: config
===================================================================
--- config	(revision 159)
+++ config	(working copy)
@@ -1,6 +1,11 @@
 #/bin/bash
 # This is the config for gNewSense, alter as appropriate for your own distro
 
+if [ $UID != 0 ]; then
+        echo 'This script must be run as root'
+        exit 1
+fi
+
 # For kde download before anything libbogl-dev # Chris Fernandez
 
 ## UPSTREAM
@@ -105,8 +110,5 @@
 # Allow for local customisations
 if [ -x config.local ]; then . config.local; fi
 
-# Don't touch this
-APTGET="apt-get -o Dir::Etc::SourceList=$REPODST/apt/sources.list -o Dir::State::Lists=$REPODST/apt/lists -o Dir::State::status=$REPODST/apt/status -o Dir::Cache=$REPODST/apt/cache -t $RELEASE"
-
 # Without this, the diff cleaning for gen-kernel will break. Probably affects other stuff too.
 LANG=C
Index: gen-grub
===================================================================
--- gen-grub	(revision 159)
+++ gen-grub	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source grub$VERSION
+apt-get source grub$VERSION
+apt-get build-dep grub$VERSION
 cd grub-*
 
 sed -i "s/title=\"Ubuntu\"/title=\"$DISTRONAME\"/" debian/update-grub
@@ -34,4 +35,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE grub_*.changes
Index: gen-gnome-panel
===================================================================
--- gen-gnome-panel	(revision 159)
+++ gen-gnome-panel	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source gnome-panel$VERSION
+apt-get source gnome-panel$VERSION
+apt-get build-dep gnome-panel$VERSION
 cd gnome-panel*
 
 rm debian/patches/09_help_submenu.patch
@@ -34,4 +35,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE gnome-panel*.changes
Index: gen-firefox
===================================================================
--- gen-firefox	(revision 159)
+++ gen-firefox	(working copy)
@@ -26,7 +26,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source firefox$VERSION
+apt-get source firefox$VERSION
+apt-get build-dep firefox$VERSION
 cd firefox-*
 
 FIREFOX_NAME_L=$(tr A-Z a-z <<<"$FIREFOX_NAME")
@@ -121,4 +122,3 @@
 
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
-reprepro -Vb $REPODST include $RELEASE firefox*.changes
Index: gen-hal
===================================================================
--- gen-hal	(revision 159)
+++ gen-hal	(working copy)
@@ -25,7 +25,8 @@
 mkdir -p $WORKINGDIR
 cd $WORKINGDIR
 
-$APTGET source hal$VERSION
+apt-get source hal$VERSION
+apt-get build-dep hal$VERSION
 cd hal-*
 
 rm debian/patches/zzz_add_hwdb_button.patch
@@ -35,4 +36,3 @@
 dpkg-buildpackage -rfakeroot -us -uc
 cd ..
 
-reprepro -Vb $REPODST include $RELEASE hal*.changes
Index: update-chroot
===================================================================
--- update-chroot	(revision 0)
+++ update-chroot	(revision 0)
@@ -0,0 +1,55 @@
+#!/bin/bash
+#
+#    Copyright (C) 2008  Brian Brazil
+#
+#    This program is free software; you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation; either version 2 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program; if not, write to the Free Software
+#    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+#
+
+set -ex
+
+. config
+
+# -security etc.
+VARIANT=$1
+
+DIR=$WORKINGDIR/$MIRRORDIST$VARIANT
+
+if ! [ -f $DIR/bootstrap-done ]; then
+  rm -rf $DIR
+  mkdir -p $DIR
+
+  debootstrap $MIRRORDIST $DIR $MIRROR
+
+  touch $DIR/bootstrap-done
+fi
+
+cat > $DIR/etc/apt/sources.list <<EOF
+deb $MIRROR $MIRRORDIST main universe
+deb-src $MIRROR $MIRRORDIST main universe
+EOF
+
+if [ -n "$VARIANT" ];then
+  cat >> $DIR/etc/apt/sources.list <<EOF
+deb $MIRROR $MIRRORDIST$VARIANT main universe
+deb-src $MIRROR $MIRRORDIST$VARIANT main universe
+EOF
+fi
+
+# Copy of builder for use in chroot
+rsync -r --delete . $DIR/builder
+
+chroot $DIR bash -c "set -ex; DEBIAN_PRIORITY=critical aptitude -y update && aptitude -y dist-upgrade && 
+aptitude -y install build-essential kernel-wedge imagemagick netpbm fakeroot sharutils devscripts && 
+/builder/fixup-kernel-wedge"

Property changes on: update-chroot
___________________________________________________________________
Name: svn:executable
   + *

_______________________________________________
gNewSense-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/gnewsense-users

Reply via email to