Preinstall some new essential raspi packages in the official raspi images

Bug #1912498 reported by Łukasz Zemczak
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
livecd-rootfs (Ubuntu)
Opinion
Wishlist
Łukasz Zemczak
Focal
In Progress
High
Łukasz Zemczak
ubuntu-meta (Ubuntu)
Opinion
Wishlist
Łukasz Zemczak
Focal
In Progress
High
Łukasz Zemczak

Bug Description

[Impact]

For 20.04.2, also as part of support for some new Pi variants (CM4, Pi400), we want to preinstall some new essential packages in our raspi images such as rpi-eeprom, raspberrypi-userland etc.

This can be done in two possible ways. One is the 'old way', with a single change to livecd-rootfs adding the new packages. But what we'd like to propose this time is actually a more proper way, i.e. introducing device-specific raspi seeds and a raspi meta-package that would pull in all the needed dependencies. This way is better for the future, as if we decide we want to add new packages to existing raspi installations, we can do it easily by modifying the seeds and rebuilding meta. Currently we have no way like this.

So the current approach includes changes in the following components:
 * The ubuntu and platform seeds (git branches)
 * ubuntu-meta package (adding ubuntu-server-raspi)
 * livecd-rootfs package (installing the raspi-server task)

[Test Case]

After accepting all the package into -proposed (and making sure the git seed changes are merged), run a raspi arm64 and armhf build. Check if the image boots. Confirm that the new images have the following seeded: rpi-eeprom, libraspberrypi-bin, flash-kernel, pi-bluetooth.
Compare manifests between a normal, previous raspi image build and the one using seeds - check if nothing has been 'dropped'.

Also, check if no other image builds have been affected and still build correctly, compare image manifests.

[Where problems could occur]

In its current form, as the update touches some livecd-rootfs auto/config paths, it's possible that a malformed cut-paste broke some edge case scenario, so it's good if other non-raspi builds are also checked for correctness. Seed changes are less likely to break anything, but manifests should be checked in case something got dropped by accident.

Related branches

Changed in livecd-rootfs (Ubuntu):
importance: High → Wishlist
Changed in livecd-rootfs (Ubuntu Focal):
importance: Undecided → High
Changed in ubuntu-meta (Ubuntu Focal):
importance: Undecided → High
Changed in ubuntu-meta (Ubuntu):
importance: Undecided → Wishlist
status: New → Opinion
Changed in livecd-rootfs (Ubuntu):
status: New → Opinion
Changed in livecd-rootfs (Ubuntu Focal):
status: New → In Progress
Changed in ubuntu-meta (Ubuntu Focal):
status: New → In Progress
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

All branches ready for review, attaching debdiff for review of the ubuntu-meta package changes as well - would appreciate some feedback.

It's worth mentioning the status for hirsute. So basically in hirsute and groovy we only use the seeds for the raspi desktop images. In hirsute, with as things are right now, adding it would be hard as we'd be generating a lot of component mismatches due to pulling things from restricted, universe etc. It's a problem conceptually and for migration reasons, but for a stable series like focal it's less so. Especially that since ages we've been building raspi images from universe + multiverse packages anyway, so it's already 'bad'.

Changed in livecd-rootfs (Ubuntu Focal):
assignee: nobody → Łukasz Zemczak (sil2100)
Changed in ubuntu-meta (Ubuntu):
assignee: nobody → Łukasz Zemczak (sil2100)
Changed in ubuntu-meta (Ubuntu Focal):
assignee: nobody → Łukasz Zemczak (sil2100)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.