Always add our apt_preference(5) pinning stanza when using local-packages.
This mostly reverts my most recent chroot_local-packages/preferences commit as I found problems when re-running parts of the build: as the pinning stanza was removed, calls to "apt-get upgrade" from within live-helper would remove replacement packages placed in chroot_local-packages. This isn't 100% foolproof - running apt-get upgrade on the binary image may still attempt to remove replacement packages (heavy users of this should probably be using their own repo for this sort of thing anyway).
This commit is contained in:
parent
45bc246fbb
commit
382d244050
|
@ -159,3 +159,13 @@ case "${1}" in
|
|||
Usage
|
||||
;;
|
||||
esac
|
||||
|
||||
if ls config/chroot_local-packages/*.deb > /dev/null 2>&1
|
||||
then
|
||||
cat >>chroot/etc/apt/preferences <<EOF
|
||||
|
||||
Package: *
|
||||
Pin: release o=chroot_local-packages
|
||||
Pin-Priority: 1001
|
||||
EOF
|
||||
fi
|
||||
|
|
|
@ -47,32 +47,19 @@ then
|
|||
# Restoring cache
|
||||
Restore_cache cache/packages_chroot
|
||||
|
||||
# Ensure chroot_local-packages override all other packages
|
||||
if [ -e chroot/etc/apt/preferences ]
|
||||
then
|
||||
cp chroot/etc/apt/preferences chroot/etc/apt/preferences.live
|
||||
fi
|
||||
|
||||
cat >> chroot/etc/apt/preferences.live <<EOF
|
||||
Package: *
|
||||
Pin: release o=chroot_local-packages
|
||||
Pin-Priority: 1001
|
||||
EOF
|
||||
|
||||
# Installing packages
|
||||
case "${LH_APT}" in
|
||||
apt|apt-get)
|
||||
Chroot "xargs --arg-file=/root/chroot_packages apt-get ${APT_OPTIONS} -o Dir::Etc::preferences=preferences.live install"
|
||||
Chroot "xargs --arg-file=/root/chroot_packages apt-get ${APT_OPTIONS} install"
|
||||
;;
|
||||
|
||||
aptitude)
|
||||
Chroot "xargs --arg-file=/root/chroot_packages aptitude ${APTITUDE_OPTIONS} -o Dir::Etc::preferences=preferences.live install"
|
||||
Chroot "xargs --arg-file=/root/chroot_packages aptitude ${APTITUDE_OPTIONS} install"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Tidying up
|
||||
rm -f chroot/root/chroot_packages
|
||||
rm -f chroot/etc/apt/preferences.live
|
||||
|
||||
# Saving cache
|
||||
Save_cache cache/packages_chroot
|
||||
|
|
Loading…
Reference in New Issue