Code review comment for lp:~smoser/curtin/trunk.yakkety

Revision history for this message
Scott Moser (smoser) wrote :

So yeah, the one thing questionable is the installation of linux-generic
by default, and that could actually be an issue. See the comment i put in revno 398 here:

| set fallback kernel to 'linux-generic'
|
| this is making yakkety work much nicer, and we should definitely have a
| fallback. I'm just not sure that this is the right way to do this. It seems
| like some more involved kernel package handling might be needed.
|
| For example
| * an image might have a kernel installed already.
| They'd reasonably want to just use that kernel as is.
| * installing 'package' could result in 2 kernels being installed
| and 'package' kernel not even being selected as it is older.
|
| some thought required.

Not sure what the best thing to do here is. I had started on a more
involved patch that would go looking for a kernel. Heres some doc
i started to write:

+# kernel config
+# package: ensure this package is installed
+# fallback-package: kernel-package
+# mapping: {release: {'X.Y.Z': {'package'}}}
+#
+# kernel package selection is done by:
+# if package is provided and not None use it.
+# install 'package' or fail trying.
+# if the booted release/kernel-version is found in 'mapping', use it.
+# if 'package' is avialable in apt:
+# install it or fail trying
+#
+# # At this point either package == None or fallback mapping kernel not
+# # installable.
+# if fallback is set to None
+# do not attempt installation of anything
+# elif there is *any* kernel package installed:
+# let it be, do nothing.
+# else:
+# if fallback package is installed:
+# do nothing (do not upgrade it if it is present)
+# else
+# attempt install 'fallback' or fail trying

I thought we should also possibly add a 'purge-others' option that would
possibly even default to true. Where if a kernel package was installed
then others in the image would be removed. This would be the only
real way to guarantee that the kernel isntalled woudl be the one booted.

« Back to merge proposal