Add -a option to BuildLiveCD to allow pulling from an additional apt

source.
ubuntu/precise
Steve Langasek 15 years ago
parent 3023718fe6
commit bb2f34bdf8

@ -32,11 +32,12 @@ SUITES=""
PROPOSED="" PROPOSED=""
IMAGEFORMAT="" IMAGEFORMAT=""
while getopts :s:d:f:p name; do case $name in while getopts :s:d:f:p:a name; do case $name in
s) SUBARCH="$OPTARG";; s) SUBARCH="$OPTARG";;
d) NEWSUITE="$OPTARG";; d) NEWSUITE="$OPTARG";;
f) IMAGEFORMAT="-f$OPTARG";; f) IMAGEFORMAT="-f$OPTARG";;
p) PROPOSED="-p";; p) PROPOSED="-p";;
a) APT_SOURCE="$OPTARG";;
esac; done; esac; done;
shift $((OPTIND-1)) shift $((OPTIND-1))
@ -103,6 +104,23 @@ set -e
for STE in $SUITES; do for STE in $SUITES; do
if [ -d ~/build-${STE}-live/chroot-${STE} ]; then if [ -d ~/build-${STE}-live/chroot-${STE} ]; then
if [ -n "$APT_SOURCE" ]; then
sudo sed -i -e"\$a\
deb $APT_SOURCE $STE main" ~/build-${STE}-live/chroot-${STE}/etc/apt/sources.list
# allow unsigned sources, unfortunately
echo 'APT::Get::AllowUnauthenticated "yes";' | sudo tee ~/build-${STE}-live/chroot-${STE}/etc/apt/apt.conf.d/extra-source-allows-unauthenticated-sources > /dev/null
# and add the preferences rules :(
APT_PIN=$(echo $APT_SOURCE | sed -e's,http://,,; s,/.*,,')
cat | sudo tee ~/build-${STE}-live/chroot-${STE}/etc/apt/preferences.d/local-source-preferred-even-downgrade > /dev/null <<EOF
Package: *
Pin: release a=$STE
Pin-Priority: 500
Package: *
Pin: origin $APT_PIN
Pin-Priority: 1001
EOF
fi
sudo chroot ~/build-${STE}-live/chroot-${STE} apt-get -qq update || true sudo chroot ~/build-${STE}-live/chroot-${STE} apt-get -qq update || true
sudo chroot ~/build-${STE}-live/chroot-${STE} apt-get -y dist-upgrade || true sudo chroot ~/build-${STE}-live/chroot-${STE} apt-get -y dist-upgrade || true
fi fi
@ -164,3 +182,10 @@ for STE in $SUITES; do
fi fi
done done
done done
for STE in $SUITES; do
if [ -d ~/build-${STE}-live/chroot-${STE} ] && [ -n "$APT_SOURCE" ]; then
sudo sed -i -e"/$APT_SOURCE $STE/d" ~/build-${STE}-live/chroot-${STE}/etc/apt/sources.list
sudo rm -f ~/build-${STE}-live/chroot-${STE}/etc/apt/apt.conf.d/extra-source-allows-unauthenticated-sources
sudo rm -f ~/build-${STE}-live/chroot-${STE}/etc/apt/preferences.d/local-source-preferred-even-downgrade
fi
done

7
debian/changelog vendored

@ -1,3 +1,10 @@
livecd-rootfs (1.133ubuntu1) UNRELEASED; urgency=low
* Add -a option to BuildLiveCD to allow pulling from an additional apt
source.
-- Steve Langasek <steve.langasek@ubuntu.com> Tue, 20 Jul 2010 18:15:22 +0200
livecd-rootfs (1.133) maverick; urgency=low livecd-rootfs (1.133) maverick; urgency=low
* adjust BuildLiveCD PUBDIR variable to match reality (uses SUBARCH on the * adjust BuildLiveCD PUBDIR variable to match reality (uses SUBARCH on the

Loading…
Cancel
Save