diff options
author | Raphaël Hertzog <raphael@offensive-security.com> | 2019-12-19 18:18:44 +0100 |
---|---|---|
committer | Raphaël Hertzog <raphael@offensive-security.com> | 2019-12-19 18:18:44 +0100 |
commit | 44b9b0a6501476de594ce3783cea5df0c141478c (patch) | |
tree | dd84f8ea71c77fc5774a736db95f7669e1e58c2b /scripts/build/installer_debian-installer | |
parent | e7221c02f3baae0eaeb804b573551ad883d95290 (diff) | |
download | vyos-live-build-44b9b0a6501476de594ce3783cea5df0c141478c.tar.gz vyos-live-build-44b9b0a6501476de594ce3783cea5df0c141478c.zip |
Support --distribution-binary and --distribution-chroot
This makes it possible to build an image against a first distribution
(--distribution-chroot) and have the resulting image point to another
distribution (--distribution-binary). We can use this to build against a
snapshot and have the result use the original distribution that was
snapshotted.
Closes: #888507
Diffstat (limited to 'scripts/build/installer_debian-installer')
-rwxr-xr-x | scripts/build/installer_debian-installer | 36 |
1 files changed, 14 insertions, 22 deletions
diff --git a/scripts/build/installer_debian-installer b/scripts/build/installer_debian-installer index 3a477a8f1..e91ca7fe9 100755 --- a/scripts/build/installer_debian-installer +++ b/scripts/build/installer_debian-installer @@ -346,15 +346,15 @@ then FIRMWARE_PACKAGES="" - _CONTENTS="$(for _PARENT_ARCHIVE_AREA in ${LB_PARENT_ARCHIVE_AREAS}; do echo ${LB_PARENT_MIRROR_CHROOT}/dists/${LB_PARENT_DISTRIBUTION}/${_PARENT_ARCHIVE_AREA}/Contents-${LB_ARCHITECTURES}.gz; done)" + _CONTENTS="$(for _PARENT_ARCHIVE_AREA in ${LB_PARENT_ARCHIVE_AREAS}; do echo ${LB_PARENT_MIRROR_CHROOT}/dists/${LB_PARENT_DISTRIBUTION_CHROOT}/${_PARENT_ARCHIVE_AREA}/Contents-${LB_ARCHITECTURES}.gz; done)" - rm -f cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION}.${LB_ARCHITECTURES} + rm -f cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION_CHROOT}.${LB_ARCHITECTURES} for _CONTENT in ${_CONTENTS} do - wget ${WGET_OPTIONS} ${_CONTENT} -O - | gunzip -c >> cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION}.${LB_ARCHITECTURES} + wget ${WGET_OPTIONS} ${_CONTENT} -O - | gunzip -c >> cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION_CHROOT}.${LB_ARCHITECTURES} - FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} $(awk '/^lib\/firmware/ { print $2 }' cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION}.${LB_ARCHITECTURES} | sort -u)" + FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} $(awk '/^lib\/firmware/ { print $2 }' cache/contents.chroot/contents.${LB_PARENT_DISTRIBUTION_CHROOT}.${LB_ARCHITECTURES} | sort -u)" done if echo ${LB_PARENT_ARCHIVE_AREAS} | grep -qs "non-free" @@ -378,15 +378,15 @@ then then # FIXME: account for the fact that PARENT_DISTRIBUTION and DISTRIBUTION might be the same (to not have overlapping cache files for contents). - _CONTENTS="$(for _ARCHIVE_AREA in ${LB_ARCHIVE_AREAS}; do echo ${LB_MIRROR_CHROOT}/dists/${LB_DISTRIBUTION}/${_ARCHIVE_AREA}/Contents-${LB_ARCHITECTURES}.gz; done)" + _CONTENTS="$(for _ARCHIVE_AREA in ${LB_ARCHIVE_AREAS}; do echo ${LB_MIRROR_CHROOT}/dists/${LB_DISTRIBUTION_CHROOT}/${_ARCHIVE_AREA}/Contents-${LB_ARCHITECTURES}.gz; done)" - rm -f cache/contents.chroot/contents.${LB_DISTRIBUTION}.${LB_ARCHITECTURES} + rm -f cache/contents.chroot/contents.${LB_DISTRIBUTION_CHROOT}.${LB_ARCHITECTURES} for _CONTENT in ${_CONTENTS} do - wget ${WGET_OPTIONS} ${_CONTENT} -O - | gunzip -c >> cache/contents.chroot/contents.${LB_DISTRIBUTION}.${LB_ARCHITECTURES} + wget ${WGET_OPTIONS} ${_CONTENT} -O - | gunzip -c >> cache/contents.chroot/contents.${LB_DISTRIBUTION_CHROOT}.${LB_ARCHITECTURES} - FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} $(awk '/^lib\/firmware/ { print $2 }' cache/contents.chroot/contents.${LB_DISTRIBUTION}.${LB_ARCHITECTURES} | sort -u)" + FIRMWARE_PACKAGES="${FIRMWARE_PACKAGES} $(awk '/^lib\/firmware/ { print $2 }' cache/contents.chroot/contents.${LB_DISTRIBUTION_CHROOT}.${LB_ARCHITECTURES} | sort -u)" done fi @@ -666,13 +666,13 @@ then _LB_APT_VERSION_OPT='-o APT::FTPArchive::Release::Version="'"${_VERSION}"'"' fi - case "${LB_PARENT_DISTRIBUTION}" in + case "${LB_PARENT_DISTRIBUTION_BINARY}" in sid) _SUITE="unstable" ;; *) - _SUITE="${LB_PARENT_DISTRIBUTION}" + _SUITE="${LB_PARENT_DISTRIBUTION_BINARY}" ;; esac @@ -682,7 +682,7 @@ cd /root/binary && apt-ftparchive \ -o APT::FTPArchive::Release::Label="Debian" \ -o APT::FTPArchive::Release::Suite="${_SUITE}" \ ${_LB_APT_VERSION_OPT} \ - -o APT::FTPArchive::Release::Codename="${LB_PARENT_DISTRIBUTION}" \ + -o APT::FTPArchive::Release::Codename="${LB_PARENT_DISTRIBUTION_BINARY}" \ -o APT::FTPArchive::Release::Date="$(date -R)" \ -o APT::FTPArchive::Release::Architectures="${LB_ARCHITECTURES}" \ -o APT::FTPArchive::Release::Components="${LB_PARENT_ARCHIVE_AREAS}" \ @@ -694,19 +694,11 @@ EOF rm -f chroot/binary.sh mv chroot/root/binary ./ - case "${LB_PARENT_DISTRIBUTION}" in - jessie) - DISTRIBUTIONS="stable" - ;; - - *) - DISTRIBUTIONS="stable testing unstable" - ;; - esac + DISTRIBUTIONS="stable testing unstable" - if [ "${LB_PARENT_DEBIAN_INSTALLER_DISTRIBUTION}" != "${LB_PARENT_DISTRIBUTION}" ] + if [ "${LB_PARENT_DEBIAN_INSTALLER_DISTRIBUTION}" != "${LB_PARENT_DISTRIBUTION_BINARY}" ] then - DISTRIBUTIONS="${DISTRIBUTIONS} ${LB_PARENT_DISTRIBUTION}" + DISTRIBUTIONS="${DISTRIBUTIONS} ${LB_PARENT_DISTRIBUTION_BINARY}" fi case "${LIVE_IMAGE_TYPE}" in |