Remove duplications of kernel meta packages and flavours encodings
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu CD Images |
New
|
Undecided
|
Unassigned | ||
subiquity |
New
|
Undecided
|
Unassigned | ||
casper (Ubuntu) |
New
|
Undecided
|
Unassigned | ||
livecd-rootfs (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
Remove duplications of kernel meta packages and flavours
Currently we encode kernel flavours in lots of places:
1) livecd-rootfs code has lots of logic which kernel meta to install, and on which layer.
2) vmlinuz/initrd extraction code currently results encodes mapping of abi & flavour to kenrel stem artifact
3) output artifacts are then encoded, and expected by exact flavour name by ubuntu-cdimage
4) which then has again encoding of which build expects with kernel
5) and then boot-* scripts may have special logic for a kernel too
6) then seeds have to seed the right kernel offline too for offline install to work correctly
7) and then casper specified a different default flavour at runtime too
this is too much, and makes building desktop image that boots into and installs generic-64k, lowlatency, oem, intel-iot, laptop kernels really really really difficult
Ideally i wish to eliminate all of these things.
Default kernel for a project should be produced as .kernel
A layer should exist for every offline preinstalled kernel, for direct installation to target.
Or for example, packages to install such kernel should be pre-populated into apt-cache with apt-cache download.
If image offers more than one kernel flavour for install, it should be possible to discover them.
Casper should not be the one writing out /run/kernel-
summary: |
- Remove duplications of kernel meta packages and flavours + Remove duplications of kernel meta packages and flavours encodings |
maybe like casper (?!) can ship a systemd unit that writes out /run/kernel- meta-package.
then layers that create things can `apt download` all the meta packages.
and activate one of them to be the default one.