Filter out kernel packages that mistakenly ended up in live tasks, so

that we can install updated versions separately (LP: #1325281).
This commit is contained in:
Colin Watson 2014-06-24 14:50:42 +01:00
parent 63113028d9
commit 4fc5871ffe
2 changed files with 24 additions and 4 deletions

2
debian/changelog vendored
View File

@ -4,6 +4,8 @@ livecd-rootfs (2.208.1) UNRELEASED; urgency=medium
on it being in the corresponding tasks. linux-signed-generic shouldn't on it being in the corresponding tasks. linux-signed-generic shouldn't
be in a task because that expands to ABI-versioned packages, and tasks be in a task because that expands to ABI-versioned packages, and tasks
can't be updated post-release. can't be updated post-release.
* Filter out kernel packages that mistakenly ended up in live tasks, so
that we can install updated versions separately (LP: #1325281).
-- Colin Watson <cjwatson@ubuntu.com> Tue, 24 Jun 2014 04:28:55 +0100 -- Colin Watson <cjwatson@ubuntu.com> Tue, 24 Jun 2014 04:28:55 +0100

View File

@ -39,8 +39,17 @@ add_task ()
{ {
local pass="$1" local pass="$1"
shift shift
local filter=
local task local task
if [ "$1" = --filter ]; then
# Add an extra layer of backslash-quoting to anything that's
# already backslash-quoted, since it will need to pass
# through eval.
filter="$(printf %s "$2" | sed 's/\(\\.\)/\\\\\1/g')"
shift 2
fi
# The removal of direct task installation support from live-build # The removal of direct task installation support from live-build
# poses some problems. If the chroot has multiarch configured - for # poses some problems. If the chroot has multiarch configured - for
# example, if we're building for amd64 - then dumpavail will show # example, if we're building for amd64 - then dumpavail will show
@ -60,7 +69,7 @@ add_task ()
for task; do for task; do
# We need a ridiculous number of backslashes to protect # We need a ridiculous number of backslashes to protect
# parentheses from eval. # parentheses from eval.
echo "!chroot chroot apt-cache dumpavail | grep-dctrl -nsPackage \\\\\\( -XFArchitecture $ARCH -o -XFArchitecture all \\\\\\) -a -wFTask $task" >> "config/package-lists/livecd-rootfs.list.chroot_$pass" echo "!chroot chroot apt-cache dumpavail | grep-dctrl -nsPackage \\\\\\( -XFArchitecture $ARCH -o -XFArchitecture all \\\\\\) -a -wFTask $task${filter:+ -a $filter}" >> "config/package-lists/livecd-rootfs.list.chroot_$pass"
done done
} }
@ -84,6 +93,7 @@ SOURCE='--source false'
BOOTLOADER=none BOOTLOADER=none
BOOTAPPEND_LIVE= BOOTAPPEND_LIVE=
LIVE_TASK= LIVE_TASK=
LIVE_TASK_FILTER=
PREINSTALLED=false PREINSTALLED=false
PREINSTALL_POOL= PREINSTALL_POOL=
PREINSTALL_POOL_SEEDS= PREINSTALL_POOL_SEEDS=
@ -190,6 +200,7 @@ case $PROJECT in
;; ;;
esac esac
LIVE_TASK='ubuntu-live' LIVE_TASK='ubuntu-live'
LIVE_TASK_FILTER='--not -Pe ^linux-\(headers\|image\|signed\)'
case $ARCH in case $ARCH in
amd64) add_package live linux-signed-generic ;; amd64) add_package live linux-signed-generic ;;
esac esac
@ -212,6 +223,7 @@ case $PROJECT in
;; ;;
esac esac
LIVE_TASK='kubuntu-live' LIVE_TASK='kubuntu-live'
LIVE_TASK_FILTER='--not -Pe ^linux-\(headers\|image\|signed\)'
case $ARCH in case $ARCH in
amd64) add_package live linux-signed-generic ;; amd64) add_package live linux-signed-generic ;;
esac esac
@ -229,6 +241,7 @@ case $PROJECT in
edubuntu|edubuntu-dvd) edubuntu|edubuntu-dvd)
add_task install minimal standard ubuntu-desktop edubuntu-desktop-gnome add_task install minimal standard ubuntu-desktop edubuntu-desktop-gnome
LIVE_TASK='edubuntu-live' LIVE_TASK='edubuntu-live'
LIVE_TASK_FILTER='--not -Pe ^linux-\(headers\|image\|signed\)'
case $ARCH in case $ARCH in
amd64) add_package live linux-signed-generic ;; amd64) add_package live linux-signed-generic ;;
esac esac
@ -239,6 +252,7 @@ case $PROJECT in
add_task install minimal standard xubuntu-desktop add_task install minimal standard xubuntu-desktop
add_package install xterm add_package install xterm
LIVE_TASK='xubuntu-live' LIVE_TASK='xubuntu-live'
LIVE_TASK_FILTER='--not -Pe ^linux-\(headers\|image\|signed\)'
case $ARCH in case $ARCH in
amd64) add_package live linux-signed-generic ;; amd64) add_package live linux-signed-generic ;;
esac esac
@ -256,6 +270,7 @@ case $PROJECT in
mythbuntu) mythbuntu)
add_task install minimal standard mythbuntu-desktop add_task install minimal standard mythbuntu-desktop
LIVE_TASK='mythbuntu-live' LIVE_TASK='mythbuntu-live'
LIVE_TASK_FILTER='--not -Pe ^linux-\(headers\|image\|signed\)'
case $ARCH in case $ARCH in
amd64) add_package live linux-signed-generic ;; amd64) add_package live linux-signed-generic ;;
esac esac
@ -265,6 +280,7 @@ case $PROJECT in
lubuntu) lubuntu)
add_task install minimal standard lubuntu-desktop add_task install minimal standard lubuntu-desktop
LIVE_TASK='lubuntu-live' LIVE_TASK='lubuntu-live'
LIVE_TASK_FILTER='--not -Pe ^linux-\(headers\|image\|signed\)'
case $ARCH in case $ARCH in
amd64) add_package live linux-signed-generic ;; amd64) add_package live linux-signed-generic ;;
esac esac
@ -281,6 +297,7 @@ case $PROJECT in
ubuntu-gnome) ubuntu-gnome)
add_task install minimal standard ubuntu-gnome-desktop add_task install minimal standard ubuntu-gnome-desktop
LIVE_TASK='ubuntu-gnome-live' LIVE_TASK='ubuntu-gnome-live'
LIVE_TASK_FILTER='--not -Pe ^linux-\(headers\|image\|signed\)'
case $ARCH in case $ARCH in
amd64) add_package live linux-signed-generic ;; amd64) add_package live linux-signed-generic ;;
esac esac
@ -299,6 +316,7 @@ case $PROJECT in
add_task install minimal standard ubuntu-desktop add_task install minimal standard ubuntu-desktop
add_package install ubuntukylin-default-settings add_package install ubuntukylin-default-settings
LIVE_TASK='ubuntu-live' LIVE_TASK='ubuntu-live'
LIVE_TASK_FILTER='--not -Pe ^linux-\(headers\|image\|signed\)'
case $ARCH in case $ARCH in
amd64) add_package live linux-signed-generic ;; amd64) add_package live linux-signed-generic ;;
esac esac
@ -340,17 +358,17 @@ case $PROJECT in
esac esac
if [ "$PREINSTALLED" != "true" ] && [ "$LIVE_TASK" ]; then if [ "$PREINSTALLED" != "true" ] && [ "$LIVE_TASK" ]; then
add_task live "$LIVE_TASK" add_task live ${LIVE_TASK_FILTER:+--filter "$LIVE_TASK_FILTER"} "$LIVE_TASK"
fi fi
case $PROJECT in case $PROJECT in
ubuntu-dvd) ubuntu-dvd)
add_task install ubuntu-usb add_task install ubuntu-usb
add_task live ubuntu-usb-live add_task live ${LIVE_TASK_FILTER:+--filter "$LIVE_TASK_FILTER"} ubuntu-usb-live
;; ;;
*-dvd) *-dvd)
add_task live "$PROJECT-live" add_task live ${LIVE_TASK_FILTER:+--filter "$LIVE_TASK_FILTER"} "$PROJECT-live"
;; ;;
esac esac