mirror of
				https://git.launchpad.net/livecd-rootfs
				synced 2025-11-03 18:34:11 +00:00 
			
		
		
		
	Imported 2.547
No reason for CPC update specified.
This commit is contained in:
		
							parent
							
								
									cffdabf03e
								
							
						
					
					
						commit
						5b3f415c72
					
				
							
								
								
									
										22
									
								
								debian/changelog
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								debian/changelog
									
									
									
									
										vendored
									
									
								
							@ -1,3 +1,25 @@
 | 
			
		||||
livecd-rootfs (2.547) disco; urgency=medium
 | 
			
		||||
 | 
			
		||||
  [ Łukasz Zemczak ]
 | 
			
		||||
  * Add support for raspi3 rootfs builds (based on Ryan Finnie's changes).
 | 
			
		||||
  * For ubuntu-image consumption, export the kernel and initrd to
 | 
			
		||||
    image/boot/uboot for raspi*.
 | 
			
		||||
  * Avoid issues of hard-linking to a symbolic vmlinuz as this can lead to a
 | 
			
		||||
    dangling symlink.
 | 
			
		||||
  * Add raspi3 arm64 rootfs build support.
 | 
			
		||||
  * Add git to the build dependencies for the gadget tree pull.
 | 
			
		||||
  * Minor fixes to raspi3 builds: add arm64+raspi3 to the supported model
 | 
			
		||||
    list, pass SUITE on to the build stage and use the git:// url for the
 | 
			
		||||
    gadget tree.
 | 
			
		||||
 | 
			
		||||
  [ Aleksandr Bogdanov ]
 | 
			
		||||
  * vagrant: disabling automatic console log file
 | 
			
		||||
 | 
			
		||||
  [ Michael Zanetti ]
 | 
			
		||||
  * Don't set QML2_IMPORT_PATH in environment for Ubuntu Touch images.
 | 
			
		||||
 | 
			
		||||
 -- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com>  Fri, 23 Nov 2018 17:20:29 +0100
 | 
			
		||||
 | 
			
		||||
livecd-rootfs (2.546) disco; urgency=medium
 | 
			
		||||
 | 
			
		||||
  * Revert "Do not mount result, on top of lowerdir, appears to fail in
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										3
									
								
								debian/control
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								debian/control
									
									
									
									
										vendored
									
									
								
							@ -17,12 +17,14 @@ Depends: ${misc:Depends},
 | 
			
		||||
         gdisk,
 | 
			
		||||
         genisoimage,
 | 
			
		||||
         germinate (>= 1.25.1),
 | 
			
		||||
         git,
 | 
			
		||||
         gnupg,
 | 
			
		||||
         grep-dctrl,
 | 
			
		||||
         kpartx,
 | 
			
		||||
         live-build (>= 3.0~a57-1ubuntu31~),
 | 
			
		||||
         lsb-release,
 | 
			
		||||
         lzma,
 | 
			
		||||
         make,
 | 
			
		||||
         parted,
 | 
			
		||||
         procps,
 | 
			
		||||
         python-minimal | python,
 | 
			
		||||
@ -33,6 +35,7 @@ Depends: ${misc:Depends},
 | 
			
		||||
         snapd,
 | 
			
		||||
         squashfs-tools (>= 1:3.3-1),
 | 
			
		||||
         sudo,
 | 
			
		||||
         u-boot-tools [armhf arm64],
 | 
			
		||||
         ubuntu-image,
 | 
			
		||||
         vmdk-stream-converter [amd64 i386],
 | 
			
		||||
         xz-utils,
 | 
			
		||||
 | 
			
		||||
@ -23,12 +23,31 @@ PREFIX="livecd.$PROJECT${SUBARCH:+-$SUBARCH}"
 | 
			
		||||
if [ "${IMAGEFORMAT:-}" = "ubuntu-image" ]; then
 | 
			
		||||
	# Use ubuntu-image instead of live-build
 | 
			
		||||
 | 
			
		||||
	CHANNEL="${CHANNEL:-edge}"
 | 
			
		||||
	env SNAPPY_STORE_NO_CDN=1 \
 | 
			
		||||
	ubuntu-image -c "$CHANNEL" $UBUNTU_IMAGE_ARGS \
 | 
			
		||||
		-o "$PREFIX".img "$PREFIX".model-assertion
 | 
			
		||||
	xz -0 -T4 "$PREFIX".img
 | 
			
		||||
	mv seed.manifest "$PREFIX".manifest
 | 
			
		||||
	if [ "$PROJECT" = "ubuntu-core"]; then
 | 
			
		||||
		CHANNEL="${CHANNEL:-edge}"
 | 
			
		||||
		env SNAPPY_STORE_NO_CDN=1 \
 | 
			
		||||
		ubuntu-image snap -c "$CHANNEL" $UBUNTU_IMAGE_ARGS \
 | 
			
		||||
			-O output "$PREFIX".model-assertion
 | 
			
		||||
		# XXX: currently we only have one image generated, but really
 | 
			
		||||
		#  we should be supporting more than one for models that
 | 
			
		||||
		#  define those.
 | 
			
		||||
		mv output/*.img "$PREFIX".img
 | 
			
		||||
		xz -0 -T4 "$PREFIX".img
 | 
			
		||||
		mv output/seed.manifest "$PREFIX".manifest
 | 
			
		||||
	else
 | 
			
		||||
		# First we need to build the gadget tree
 | 
			
		||||
		make -C "config/$PREFIX-gadget" ARCH=$ARCH SERIES=$SUITE
 | 
			
		||||
		ubuntu-image classic $UBUNTU_IMAGE_ARGS \
 | 
			
		||||
			-s $SUITE -p $PROJECT -a $ARCH --subarch $SUBARCH \
 | 
			
		||||
			-O output config/$PREFIX-gadget/install
 | 
			
		||||
		# XXX: currently we only have one image generated, but really
 | 
			
		||||
		#  we should be supporting more than one for models that
 | 
			
		||||
		#  define those.
 | 
			
		||||
		mv output/*.img "$PREFIX".img
 | 
			
		||||
		xz -0 -T4 "$PREFIX".img
 | 
			
		||||
		mv output/filesystem.manifest "$PREFIX".manifest
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	exit 0
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
@ -550,7 +569,6 @@ if [ "$PROJECT" = "ubuntu-touch" ] || [ "$PROJECT" = "ubuntu-touch-custom" ]; th
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# '--initramfs none' produces different manifest names.
 | 
			
		||||
# NB! we want stdout appended to the manifest, yet stderr to be printed on stdout
 | 
			
		||||
if [ -e "binary/$INITFS/filesystem.packages" ]; then
 | 
			
		||||
	./config/snap-seed-parse "chroot/" "binary/${INITFS}/filesystem.packages"
 | 
			
		||||
	ln "binary/$INITFS/filesystem.packages" "$PREFIX.manifest"
 | 
			
		||||
@ -864,36 +882,52 @@ if [ "$NUMFLAVOURS" = 1 ] && [ "$LB_LINUX_FLAVOURS" != "none" ]; then
 | 
			
		||||
	fi
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if [ "$SUBARCH" = "ac100" ]; then
 | 
			
		||||
	# create the md5sum and size files for which we are actually doing all this
 | 
			
		||||
	md5sum $PREFIX.rootfs.tar.gz >chroot/installer.md5
 | 
			
		||||
	wc -c $PREFIX.rootfs.tar.gz >chroot/installer.size
 | 
			
		||||
case $SUBARCH in
 | 
			
		||||
	ac100)
 | 
			
		||||
		# create the md5sum and size files for which we are actually doing all this
 | 
			
		||||
		md5sum $PREFIX.rootfs.tar.gz >chroot/installer.md5
 | 
			
		||||
		wc -c $PREFIX.rootfs.tar.gz >chroot/installer.size
 | 
			
		||||
	
 | 
			
		||||
		INFO_DESC="$(lsb_release -d -s)"
 | 
			
		||||
		INFO_STAMP=$(date +20%y%m%d-%H:%M)
 | 
			
		||||
	
 | 
			
		||||
		echo "$INFO_DESC - $ARCH ($INFO_STAMP)" >chroot/media-info
 | 
			
		||||
	
 | 
			
		||||
		# make sure update-initramfs feels cosy and warm in the environment
 | 
			
		||||
		lb chroot_proc install "$@"
 | 
			
		||||
		lb chroot_sysfs install "$@"
 | 
			
		||||
		lb chroot_devpts install "$@"
 | 
			
		||||
	
 | 
			
		||||
		# re-create initrd to contain the installer.md5 file
 | 
			
		||||
		Chroot chroot "env FLASH_KERNEL_SKIP=1 update-initramfs -k all -t -u -v"
 | 
			
		||||
	
 | 
			
		||||
		# create boot.img
 | 
			
		||||
		Chroot chroot "abootimg --create /boot/installer-${KVERS}.img -f /boot/bootimg.cfg-$SUBARCH -r /boot/initrd.img-${KVERS} -k /boot/vmlinuz-${KVERS}"
 | 
			
		||||
	
 | 
			
		||||
		# clean up
 | 
			
		||||
		lb chroot_devpts remove "$@"
 | 
			
		||||
		lb chroot_sysfs remove "$@"
 | 
			
		||||
		lb chroot_proc remove "$@"
 | 
			
		||||
	
 | 
			
		||||
		cp "chroot/boot/installer-${KVERS}.img" "$PREFIX.bootimg-$FLAVOUR"
 | 
			
		||||
		ln -sf "$PREFIX.bootimg-$FLAVOUR" "$PREFIX.bootimg"
 | 
			
		||||
		;;
 | 
			
		||||
 | 
			
		||||
	INFO_DESC="$(lsb_release -d -s)"
 | 
			
		||||
	INFO_STAMP=$(date +20%y%m%d-%H:%M)
 | 
			
		||||
	raspi2|raspi3)
 | 
			
		||||
		# copy the kernel and initrd to a predictable directory for
 | 
			
		||||
		# ubuntu-image consumption.  In some cases, like in pi2/3
 | 
			
		||||
		# u-boot, the bootloader needs to contain the kernel and initrd,
 | 
			
		||||
		# so during rootfs build we copy it over to a directory that
 | 
			
		||||
		# ubuntu-image looks for and shoves into the bootloader
 | 
			
		||||
		# partition.
 | 
			
		||||
		UBOOT_BOOT="image/boot/uboot"
 | 
			
		||||
 | 
			
		||||
	echo "$INFO_DESC - $ARCH ($INFO_STAMP)" >chroot/media-info
 | 
			
		||||
		mkdir -p $UBOOT_BOOT
 | 
			
		||||
 | 
			
		||||
	# make sure update-initramfs feels cosy and warm in the environment
 | 
			
		||||
	lb chroot_proc install "$@"
 | 
			
		||||
	lb chroot_sysfs install "$@"
 | 
			
		||||
	lb chroot_devpts install "$@"
 | 
			
		||||
 | 
			
		||||
	# re-create initrd to contain the installer.md5 file
 | 
			
		||||
	Chroot chroot "env FLASH_KERNEL_SKIP=1 update-initramfs -k all -t -u -v"
 | 
			
		||||
 | 
			
		||||
	# create boot.img
 | 
			
		||||
	Chroot chroot "abootimg --create /boot/installer-${KVERS}.img -f /boot/bootimg.cfg-$SUBARCH -r /boot/initrd.img-${KVERS} -k /boot/vmlinuz-${KVERS}"
 | 
			
		||||
 | 
			
		||||
	# clean up
 | 
			
		||||
	lb chroot_devpts remove "$@"
 | 
			
		||||
	lb chroot_sysfs remove "$@"
 | 
			
		||||
	lb chroot_proc remove "$@"
 | 
			
		||||
 | 
			
		||||
	cp "chroot/boot/installer-${KVERS}.img" "$PREFIX.bootimg-$FLAVOUR"
 | 
			
		||||
	ln -sf "$PREFIX.bootimg-$FLAVOUR" "$PREFIX.bootimg"
 | 
			
		||||
 | 
			
		||||
fi
 | 
			
		||||
		cp $PREFIX.initrd $UBOOT_BOOT/initrd.img || true
 | 
			
		||||
		cp $PREFIX.kernel $UBOOT_BOOT/vmlinuz || true
 | 
			
		||||
		;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
if [ "$PROJECT" = "ubuntu-touch" ] || [ "$PROJECT" = "ubuntu-touch-custom" ]; then
 | 
			
		||||
	sourceslist="chroot/etc/apt/sources.list"
 | 
			
		||||
 | 
			
		||||
@ -171,7 +171,7 @@ case $IMAGEFORMAT in
 | 
			
		||||
				MODEL=dragonboard ;;
 | 
			
		||||
			armhf+raspi2)
 | 
			
		||||
				MODEL=pi2 ;;
 | 
			
		||||
			armhf+raspi3)
 | 
			
		||||
			armhf+raspi3|arm64+raspi3)
 | 
			
		||||
				MODEL=pi3 ;;
 | 
			
		||||
			armhf+cm3)
 | 
			
		||||
				MODEL=cm3 ;;
 | 
			
		||||
@ -180,28 +180,47 @@ case $IMAGEFORMAT in
 | 
			
		||||
				exit 1
 | 
			
		||||
				;;
 | 
			
		||||
		esac
 | 
			
		||||
		case $MODEL in
 | 
			
		||||
			pc-amd64|pc-i386)
 | 
			
		||||
				UBUNTU_IMAGE_ARGS="--image-size 3700M" ;;
 | 
			
		||||
			*)
 | 
			
		||||
				UBUNTU_IMAGE_ARGS="" ;;
 | 
			
		||||
		esac
 | 
			
		||||
		case $SUITE in
 | 
			
		||||
			xenial)
 | 
			
		||||
				# Ubuntu Core 16
 | 
			
		||||
				;;
 | 
			
		||||
			*)
 | 
			
		||||
				# Ubuntu Core 18
 | 
			
		||||
				MODEL="ubuntu-core-18-${MODEL#pc-}" ;;
 | 
			
		||||
		esac
 | 
			
		||||
 | 
			
		||||
		echo "IMAGEFORMAT=$IMAGEFORMAT" >> config/common
 | 
			
		||||
		echo "UBUNTU_IMAGE_ARGS=\"$UBUNTU_IMAGE_ARGS\"" >> config/common
 | 
			
		||||
		# Store model assertion in top dir to get it picked up later as a build artifact
 | 
			
		||||
		env SNAPPY_STORE_NO_CDN=1 snap known --remote model series=16 model="$MODEL" brand-id=canonical > "$PREFIX".model-assertion
 | 
			
		||||
		echo "Configured ubuntu-image for the following model assertion:"
 | 
			
		||||
		cat "$PREFIX".model-assertion
 | 
			
		||||
		echo "----------------------------------------------------------"
 | 
			
		||||
		if [ $PROJECT = "ubuntu-core" ]; then
 | 
			
		||||
			# snap-based core images
 | 
			
		||||
 | 
			
		||||
			case $MODEL in
 | 
			
		||||
				pc-amd64|pc-i386)
 | 
			
		||||
					UBUNTU_IMAGE_ARGS="--image-size 3700M" ;;
 | 
			
		||||
				*)
 | 
			
		||||
					UBUNTU_IMAGE_ARGS="" ;;
 | 
			
		||||
			esac
 | 
			
		||||
			case $SUITE in
 | 
			
		||||
				xenial)
 | 
			
		||||
					# Ubuntu Core 16
 | 
			
		||||
					;;
 | 
			
		||||
				*)
 | 
			
		||||
					# Ubuntu Core 18
 | 
			
		||||
					MODEL="ubuntu-core-18-${MODEL#pc-}" ;;
 | 
			
		||||
			esac
 | 
			
		||||
 | 
			
		||||
			echo "IMAGEFORMAT=$IMAGEFORMAT" >> config/common
 | 
			
		||||
			echo "UBUNTU_IMAGE_ARGS=\"$UBUNTU_IMAGE_ARGS\"" >> config/common
 | 
			
		||||
			# Store model assertion in top dir to get it picked up later as a build artifact
 | 
			
		||||
			env SNAPPY_STORE_NO_CDN=1 snap known --remote model series=16 model="$MODEL" brand-id=canonical > "$PREFIX".model-assertion
 | 
			
		||||
			echo "Configured ubuntu-image for the following model assertion:"
 | 
			
		||||
			cat "$PREFIX".model-assertion
 | 
			
		||||
			echo "----------------------------------------------------------"
 | 
			
		||||
		else
 | 
			
		||||
			# classic images
 | 
			
		||||
 | 
			
		||||
			UBUNTU_IMAGE_ARGS=""
 | 
			
		||||
			UBUNTU_IMAGE_ARGS="$UBUNTU_IMAGE_ARGS${PROPOSED:+ --with-proposed}"
 | 
			
		||||
			UBUNTU_IMAGE_ARGS="$UBUNTU_IMAGE_ARGS${EXTRA_PPAS:+ --extra-ppas \"$EXTRA_PPAS\"}"
 | 
			
		||||
 | 
			
		||||
			git clone git://git.launchpad.net/~canonical-foundations/snap-$MODEL/+git/github-mirror -b classic config/$PREFIX-gadget
 | 
			
		||||
 | 
			
		||||
			echo "IMAGEFORMAT=$IMAGEFORMAT" >> config/common
 | 
			
		||||
			echo "SUITE=$SUITE" >> config/common
 | 
			
		||||
			echo "UBUNTU_IMAGE_ARGS=\"$UBUNTU_IMAGE_ARGS\"" >> config/common
 | 
			
		||||
 | 
			
		||||
			echo "Configured ubuntu-image for the following gadget model: $MODEL"
 | 
			
		||||
		fi
 | 
			
		||||
		# Fake finished configuration for lb build
 | 
			
		||||
		mkdir -p .build
 | 
			
		||||
		touch .build/config
 | 
			
		||||
@ -768,7 +787,7 @@ case $PROJECT in
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
case $ARCH in
 | 
			
		||||
	armel|armhf)
 | 
			
		||||
	armel|armhf|arm64)
 | 
			
		||||
		KERNEL_FLAVOURS="${SUBARCH:-$KERNEL_FLAVOURS}"
 | 
			
		||||
		case $SUBARCH in
 | 
			
		||||
			dove)
 | 
			
		||||
@ -806,6 +825,13 @@ case $ARCH in
 | 
			
		||||
				add_package install linux-firmware-raspi2 u-boot-rpi flash-kernel u-boot-tools
 | 
			
		||||
				BINARY_REMOVE_LINUX=false
 | 
			
		||||
				;;
 | 
			
		||||
			raspi3)
 | 
			
		||||
				COMPONENTS='main restricted universe multiverse'
 | 
			
		||||
				KERNEL_FLAVOURS=raspi2
 | 
			
		||||
				add_package install raspi3-firmware u-boot-rpi flash-kernel u-boot-tools
 | 
			
		||||
				BINARY_REMOVE_LINUX=false
 | 
			
		||||
				;;
 | 
			
		||||
 | 
			
		||||
		esac
 | 
			
		||||
		;;
 | 
			
		||||
esac
 | 
			
		||||
@ -871,7 +897,7 @@ echo "SUBPROJECT=\"${SUBPROJECT:-}\"" >> config/binary
 | 
			
		||||
echo "LB_DISTRIBUTION=\"$SUITE\"" >> config/binary
 | 
			
		||||
 | 
			
		||||
case $ARCH+$SUBARCH in
 | 
			
		||||
	armhf+raspi2)
 | 
			
		||||
	armhf+raspi2|armhf+raspi3|arm64+raspi3)
 | 
			
		||||
		cat > config/hooks/01-firmware-directory.chroot_early <<EOF
 | 
			
		||||
#!/bin/sh -ex
 | 
			
		||||
mkdir -p /boot/firmware
 | 
			
		||||
 | 
			
		||||
@ -43,7 +43,6 @@ create_empty_disk_image() {
 | 
			
		||||
    dd if=/dev/zero of="$1" bs=1 count=0 seek="${imagesize}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# NB! we want stdout appended to the manifest, yet stderr to be printed on stdout
 | 
			
		||||
create_manifest() {
 | 
			
		||||
    local chroot_root=${1}
 | 
			
		||||
    local target_file=${2}
 | 
			
		||||
 | 
			
		||||
@ -13,7 +13,6 @@ ANDROID_BOOTLOGO=1
 | 
			
		||||
LD_LIBRARY_PATH=/vendor/lib:/system/lib
 | 
			
		||||
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
 | 
			
		||||
ANDROID_DATA=/data
 | 
			
		||||
QML2_IMPORT_PATH=/usr/lib/@DEB_HOST_MULTIARCH@/qt5/imports
 | 
			
		||||
QT_SELECT=qt5
 | 
			
		||||
SHLVL=1
 | 
			
		||||
MKSH=/system/bin/sh
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user