Compare commits

...

12 Commits

Author SHA1 Message Date
michael.hudson@canonical.com
dad4a04751
releasing package livecd-rootfs version 26.04.23 2026-03-02 10:52:01 +13:00
michael.hudson@canonical.com
9861d393aa
changelog for Tobias' change 2026-02-27 14:40:30 +13:00
Tobias Heider
0b30131aae Properly handle non -generic kernel and initramfs flavour
Determine used flavour by looking at the suffix of kernel.
hwe is currently the only one that needs to have a prefix
added so we can hardcode that.
2026-02-26 02:08:26 +01:00
michael.hudson@canonical.com
301cf9622c
releasing package livecd-rootfs version 26.04.22 2026-02-26 10:57:27 +13:00
michael.hudson@canonical.com
a3c8532764
changelog for tobhe's changes 2026-02-26 10:32:54 +13:00
michael.hudson@canonical.com
92e680cc2c
Merge remote-tracking branch 'tobhe/extra_ppas' into ubuntu/master 2026-02-26 10:31:11 +13:00
Tobias Heider
b1c61d8bf1 Fix extra_ppas
ignore launchpad repos in in_release_path because it
can only handle a single repo.
2026-02-25 22:22:51 +01:00
michael.hudson@canonical.com
9c4ce17909
Merge branch 'more-iso-fixes' into ubuntu/master 2026-02-26 10:15:59 +13:00
michael.hudson@canonical.com
b1ca2ae69b
changelog 2026-02-26 10:13:24 +13:00
michael.hudson@canonical.com
31a0c2716c
place kernel at /casper/vmlinux on riscv64
For no very good reason this is what debian-cd does, and what the grub
config isobuilder generates still expects. It probably makes sense to
switch to 'vmlinuz' like every other arch apart from ppc64el does but
for now I want to maintain compatibility with the old ISOs.
2026-02-26 10:13:23 +13:00
michael.hudson@canonical.com
a66fbc54b7
make sure the for-iso squashfs gets created in the right place for kubuntu 2026-02-26 10:13:21 +13:00
Olivier Gayot
9819eae23c ubuntu: pull model from Launchpad canonical-model git repo
Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2026-02-25 10:34:19 +01:00
7 changed files with 61 additions and 233 deletions

25
debian/changelog vendored
View File

@ -1,3 +1,28 @@
livecd-rootfs (26.04.23) resolute; urgency=medium
[ Tobias Heider ]
* Fix ISO builds when KERNEL_FLAVOUR != generic.
-- Michael Hudson-Doyle <michael.hudson@ubuntu.com> Mon, 02 Mar 2026 10:51:47 +1300
livecd-rootfs (26.04.22) resolute; urgency=medium
[ Oliver Gayot ]
* Pull the model from Launchpad's lp:canonical-models
repo, instead of having it uploaded as part of livecd-rootfs. This
indirection makes it possible to update the models without requiring a new
upload of livecd-rootfs every time.
[ Michael Hudson-Doyle ]
* Fix two more problems with livefs-built ISOs:
- Generate the for-iso squashfs in the right place for Kubuntu.
- Fix confusion about the kernel path on the ISO on riscv64.
[ Tobias Heider ]
* Fix pool generation when using extra_ppas.
-- Michael Hudson-Doyle <michael.hudson@ubuntu.com> Thu, 26 Feb 2026 10:56:42 +1300
livecd-rootfs (26.04.21) resolute; urgency=medium
[ Dan Bungert ]

View File

@ -576,7 +576,7 @@ if [ "${MAKE_ISO}" = "yes" ]; then
# create a for-iso.filesystem.squashfs that does.
if [ -z "$PASSES" ]; then
isobuild generate-sources --mountpoint=/cdrom > chroot/etc/apt/sources.list.d/cdrom.sources
create_squashfs chroot for-iso.filesystem.squashfs
create_squashfs chroot ${PWD}/for-iso.filesystem.squashfs
fi
# Link kernel and initrd files. The ${thing#${PREFIX}} expansion strips
# the PREFIX, so "livecd.ubuntu-server.kernel-generic" becomes

View File

@ -108,10 +108,10 @@ class AptStateManager:
def in_release_path(self) -> pathlib.Path:
"""Return the path to the InRelease file.
This assumes exactly one InRelease file matches the pattern.
Will raise ValueError if there are 0 or multiple matches.
This ignores all but the first path.
Will raise Error if there isn't at least one match.
"""
[path] = self.apt_root.joinpath("var/lib/apt/lists").glob(
f"*_dists_{self.series}_InRelease"
f"*ubuntu.com*_dists_{self.series}_InRelease"
)
return path

View File

@ -268,7 +268,7 @@ class ISOBuilder:
target.hardlink_to(src)
kernel_name = "vmlinuz"
if self.arch == "ppc64el":
if self.arch in ("ppc64el", "riscv64"):
kernel_name = "vmlinux"
with self.logger.logged(
@ -278,19 +278,18 @@ class ISOBuilder:
for path in artifact_dir.glob(f"{filename_prefix}*.{ext}"):
newname = path.name[len(filename_prefix) :]
link(path, newname)
for suffix, prefix in (
("-generic", ""),
("-generic-hwe", "hwe-"),
):
if artifact_dir.joinpath(f"{filename_prefix}kernel{suffix}").exists():
link(
artifact_dir.joinpath(f"{filename_prefix}kernel{suffix}"),
f"{prefix}{kernel_name}",
)
link(
artifact_dir.joinpath(f"{filename_prefix}initrd{suffix}"),
f"{prefix}initrd",
)
for kernel_path in artifact_dir.glob(f"{filename_prefix}kernel*"):
suffix = kernel_path.name[len(filename_prefix) + len("kernel") :]
prefix = "hwe-" if suffix.endswith("-hwe") else ""
link(
artifact_dir.joinpath(f"{filename_prefix}kernel{suffix}"),
f"{prefix}{kernel_name}",
)
link(
artifact_dir.joinpath(f"{filename_prefix}initrd{suffix}"),
f"{prefix}initrd",
)
self._extract_casper_uuids()
def make_bootable(self, project: str, capproject: str, subarch: str):

View File

@ -133,8 +133,25 @@ get_components()
# env SNAPPY_STORE_NO_CDN=1 snap known --remote model series=16 brand-id=canonical model=ubuntu-classic-2410-amd64 > config/classic-model.model
#
dangerous_model=/usr/share/livecd-rootfs/live-build/${PROJECT}/ubuntu-classic-amd64-dangerous.model
stable_model=/usr/share/livecd-rootfs/live-build/${PROJECT}/ubuntu-classic-amd64.model
# We used to have the models included in livecd-rootfs itself, but now we pull
# them from the Launchpad git mirror.
canonical_models_tree=$(mktemp -d)
git clone --depth 1 https://git.launchpad.net/canonical-models -- "${canonical_models_tree}"
cleanup_repo()
{
rm -rf -- "${canonical_models_tree}"
}
trap cleanup_repo EXIT
echo 'Checked out canonical-models revision' "$(git -C "${canonical_models_tree}" rev-parse HEAD)"
model_version=$(release_ver | sed 's/\.//')
dangerous_model="${canonical_models_tree}"/ubuntu-classic-"${model_version}"-amd64-dangerous.model
stable_model="${canonical_models_tree}"/ubuntu-classic-"${model_version}"-amd64.model
prepare_args=()

View File

@ -1,109 +0,0 @@
type: model
authority-id: canonical
series: 16
brand-id: canonical
model: ubuntu-classic-2604-amd64-dangerous
architecture: amd64
base: core24
classic: true
distribution: ubuntu
grade: dangerous
snaps:
-
default-channel: classic-26.04/edge
id: UqFziVZDHLSyO3TqSWgNBoAdHbLI4dAH
name: pc
type: gadget
-
components:
nvidia-590-uda-ko:
presence: optional
nvidia-590-uda-user:
presence: optional
default-channel: 26.04/beta
id: pYVQrBcKmBa0mZ4CCN7ExT6jH8rY1hza
name: pc-kernel
type: kernel
-
default-channel: latest/edge
id: amcUKQILKXHHTlmSa7NMdnXSx02dNeeT
name: core22
type: base
-
default-channel: latest/edge
id: dwTAh7MZZ01zyriOZErqd1JynQLiOGvM
name: core24
type: base
-
default-channel: latest/edge
id: cUqM61hRuZAJYmIS898Ux66VY61gBbZf
name: core26
type: base
-
default-channel: latest/edge
id: PMrrV4ml8uWuEUDBT8dSGnKUYbevVhc4
name: snapd
type: snapd
-
default-channel: latest/edge
id: EISPgh06mRh1vordZY9OZ34QHdd7OrdR
name: bare
type: base
-
default-channel: latest/edge
id: HyhSEBPv3vHsW6uOHkQR384NgI7S6zpj
name: mesa-2404
type: app
-
default-channel: 1/edge
id: EI0D1KHjP8XiwMZKqSjuh6W8zvcowUVP
name: firmware-updater
type: app
-
default-channel: 1/edge
id: FppXWunWzuRT2NUT9CwoBPNJNZBYOCk0
name: desktop-security-center
type: app
-
default-channel: 1/edge
id: aoc5lfC8aUd2VL8VpvynUJJhGXp5K6Dj
name: prompting-client
type: app
-
default-channel: 2/edge
id: gjf3IPXoRiipCu9K0kVu52f0H56fIksg
name: snap-store
type: app
-
default-channel: latest/edge
id: jZLfBRzf1cYlYysIjD2bwSzNtngY0qit
name: gtk-common-themes
type: app
-
default-channel: latest/edge
id: 3wdHCAVyZEmYsCMFDE9qt92UV8rC8Wdk
name: firefox
type: app
-
default-channel: latest/edge
id: ew7OxpbRTxfK7ImpIygRR85lkxvU7Pzt
name: gnome-46-2404
type: app
-
default-channel: latest/edge
id: IrwRHakqtzhFRHJOOPxKVPU0Kk7Erhcu
name: snapd-desktop-integration
type: app
timestamp: 2026-02-24T15:37:46.0Z
sign-key-sha3-384: 9tydnLa6MTJ-jaQTFUXEwHl1yRx7ZS4K5cyFDhYDcPzhS7uyEkDxdUjg9g08BtNn
AcLBXAQAAQoABgUCaZ3mZQAKCRDgT5vottzAEkt+EACVvAOwS1sFAgor0XxstXKa2O8gez16ECTp
XK46Wc3hhU6/5A3U8Uo4i823j9sqVMQkwAT85XCIs4pXvdZYz0wlCKWNO/ZSQubiJay57iTg4P6N
eoO2yC1yP0iMIuXSyBufVklPHad71ArcLcztyK/ozBBEkKBEd30B9tk+UHGC/nFJ+ZU2uOWk5Hml
chPTDuTdu1JqJvZ9nbSnPJ6p7p8B39/2OjVyxkl7UdBMYMZMaam5bW+VPnzd9tJBzpJsuV0PVDVG
/xrF7uu47QT2g6QjEb/sbSKmlCcdRk9dEpjbciZHrKsy8MvTdW9XioAG9hRzhsToTuJC2lHIL+Lu
jY/CJklPOhhjmWFclF1rPieHNBE/PEQAbZexmz5KqONih4LbVAO4tNxNxkjmb3m1p8An8iVDV32w
20QmkPRwhgvOG2SfUKrJvRQvSo0vm+sbHRgT/nlxAoHbEaYrdI8l7Q0dxB9eLWD+sUUn/ZyzegTU
SGyrgAv7nhzxB7HfrZr3B6l9zsGGVqU0zqON+t7c0dnj1x0XTtq4NQQT+Hg++A5/XaWvStoofmWl
POjNaFhY001UQIwfQKxIRSw5VkTIp54aFVOWoJPFsEFKqZZ2v37jDhOLpx4/sUnMc7qDIbRBMNqM
Xg/iQkZeZGuvLpyXSwz0a98vsIRPWAcYFTfeF/lPAQ==

View File

@ -1,104 +0,0 @@
type: model
authority-id: canonical
series: 16
brand-id: canonical
model: ubuntu-classic-2604-amd64
architecture: amd64
base: core24
classic: true
distribution: ubuntu
grade: signed
snaps:
-
default-channel: classic-26.04/stable
id: UqFziVZDHLSyO3TqSWgNBoAdHbLI4dAH
name: pc
type: gadget
-
components:
nvidia-590-uda-ko:
presence: optional
nvidia-590-uda-user:
presence: optional
default-channel: 26.04/stable
id: pYVQrBcKmBa0mZ4CCN7ExT6jH8rY1hza
name: pc-kernel
type: kernel
-
default-channel: latest/stable
id: amcUKQILKXHHTlmSa7NMdnXSx02dNeeT
name: core22
type: base
-
default-channel: latest/stable
id: dwTAh7MZZ01zyriOZErqd1JynQLiOGvM
name: core24
type: base
-
default-channel: latest/stable
id: PMrrV4ml8uWuEUDBT8dSGnKUYbevVhc4
name: snapd
type: snapd
-
default-channel: latest/stable
id: EISPgh06mRh1vordZY9OZ34QHdd7OrdR
name: bare
type: base
-
default-channel: latest/stable/ubuntu-26.04
id: HyhSEBPv3vHsW6uOHkQR384NgI7S6zpj
name: mesa-2404
type: app
-
default-channel: 1/stable/ubuntu-26.04
id: EI0D1KHjP8XiwMZKqSjuh6W8zvcowUVP
name: firmware-updater
type: app
-
default-channel: 1/stable/ubuntu-26.04
id: FppXWunWzuRT2NUT9CwoBPNJNZBYOCk0
name: desktop-security-center
type: app
-
default-channel: 1/stable/ubuntu-26.04
id: aoc5lfC8aUd2VL8VpvynUJJhGXp5K6Dj
name: prompting-client
type: app
-
default-channel: 2/stable/ubuntu-26.04
id: gjf3IPXoRiipCu9K0kVu52f0H56fIksg
name: snap-store
type: app
-
default-channel: latest/stable/ubuntu-26.04
id: jZLfBRzf1cYlYysIjD2bwSzNtngY0qit
name: gtk-common-themes
type: app
-
default-channel: latest/stable/ubuntu-26.04
id: 3wdHCAVyZEmYsCMFDE9qt92UV8rC8Wdk
name: firefox
type: app
-
default-channel: latest/stable/ubuntu-26.04
id: ew7OxpbRTxfK7ImpIygRR85lkxvU7Pzt
name: gnome-46-2404
type: app
-
default-channel: latest/stable/ubuntu-26.04
id: IrwRHakqtzhFRHJOOPxKVPU0Kk7Erhcu
name: snapd-desktop-integration
type: app
timestamp: 2026-02-24T15:34:40.0Z
sign-key-sha3-384: 9tydnLa6MTJ-jaQTFUXEwHl1yRx7ZS4K5cyFDhYDcPzhS7uyEkDxdUjg9g08BtNn
AcLBXAQAAQoABgUCaZ3mZQAKCRDgT5vottzAEgO2EACdr7cHXU65ypjYo7e8XYHwXUiUZIAFIUD2
QzX258T572B3dg3OKM7HAM0hFuyw1myw1Q9BEGqN5gpb3c+87kNYsTo6oU6kArZvzSYN3iS0VcXf
2PQKBdR1wvGjHNcxdn5DjULzLVW2rihgmXHMJPvb9GfWrawlowTZ4/t4vfftI4GR5yxrm4425GsS
oQzUDhEfH9c0DMrizmKsFlSN5U2uh6J+MzBwod+G+heMDe3djeJnzfapBSu10tkItfufwgWZyHh+
uS0m2iRxtXNRNv0dohaAKmkoWqyBROS2mOHRCWItNEd59ielt8JCvIcuwABVm+VIdmnbAeNp4hQN
8MdQDig1Qz8U432ZxAb3miVvo2ByDrWZn2wCscOctJEp3kebq6TZXsAoVwaPdzGVduJExL4SWFd0
P4+RN1SB45yCZ0rfXwc0lWr0CqNwELdozc7/qUHUYNIioCyy6H8LKYxRlZA9ETLOI7/qiGX3mcgB
4Wcy4a0uFtzoTxnOFxiU6VbgTjE5456OsfP5NtnMlOmi3Ca4bzctO6WGMsJkDJBF8rasPfYcdy0X
wAYXhONNUrII4Qhy7NK9E2ELmVXqeu2kN7JUrih7bZRFnXJXz+qK9cL2L/W0lzDHR2dG2ylB487u
LRTMFy67WR4VrIEd0FbJgtPFhPHHr92UvuqvMkQPWw==