diff --git a/debian/changelog b/debian/changelog index 74679739..48d09467 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,11 +1,16 @@ livecd-rootfs (2.301) UNRELEASED; urgency=low + [ Michael Vogt ] * create /boot/uboot on armhf to ensure that its in the system tarball and still on the system if ubuntu-core-upgrader performs a "format" (LP: #1447652) * live-build/ubuntu-core/hooks/500-move-kernel-to-device-tar.binary: - fix typo in hardware.yaml + [ Adam Conrad ] + * live-build/auto/config: Handle applying priorities to EXTRA_PPAS + via the extra_ppa="user/ppaname:priority" syntax (LP: #1450257) + -- Michael Vogt Tue, 28 Apr 2015 08:27:44 +0200 livecd-rootfs (2.300) vivid; urgency=medium diff --git a/live-build/auto/config b/live-build/auto/config index c11ea361..5862472c 100755 --- a/live-build/auto/config +++ b/live-build/auto/config @@ -659,6 +659,7 @@ esac if [ "$EXTRA_PPAS" ]; then rm -f config/archives/extra-ppas.list.chroot \ + config/archives/extra-ppas.pref.chroot \ config/archives/extra-ppas.key.chroot gpg_tmpdir="$(mktemp -d)" run_gpg () { @@ -668,8 +669,23 @@ if [ "$EXTRA_PPAS" ]; then "$@" } for extra_ppa in $EXTRA_PPAS; do + extra_ppa_pin='' + extra_ppa_origin='' + case $extra_ppa in + *:*) + extra_ppa_pin=${extra_ppa#*:} + extra_ppa=${extra_ppa%:*} + ;; + esac extra_ppa_fingerprint="$(/usr/share/livecd-rootfs/get-ppa-fingerprint "$extra_ppa")" echo "deb http://ppa.launchpad.net/$extra_ppa/ubuntu @DISTRIBUTION@ main" >> config/archives/extra-ppas.list.chroot + if [ -n "$extra_ppa_pin" ]; then + extra_ppa_origin="LP-PPA-$(echo $extra_ppa | sed -e 's,/ppa$,,' -e 's,/,-,')" + echo "Package: *" >> config/archives/extra-ppas.pref.chroot + echo "Pin: release o=$extra_ppa_origin" >> config/archives/extra-ppas.pref.chroot + echo "Pin-Priority: $extra_ppa_pin" >> config/archives/extra-ppas.pref.chroot + echo "" >> config/archives/extra-ppas.pref.chroot + fi run_gpg --keyring "$gpg_tmpdir/pubring.gpg" \ --recv "$extra_ppa_fingerprint" run_gpg --keyring "$gpg_tmpdir/pubring.gpg" \ @@ -692,6 +708,8 @@ if [ "$EXTRA_PPAS" ]; then rm -rf "$gpg_tmpdir" cp -a config/archives/extra-ppas.list.chroot \ config/archives/extra-ppas.list.binary + cp -a config/archives/extra-ppas.pref.chroot \ + config/archives/extra-ppas.pref.binary cp -a config/archives/extra-ppas.key.chroot \ config/archives/extra-ppas.key.binary fi