On Mon, Dec 11, 2023 at 02:35:07PM +0100, Stella Ashburne wrote: > Suppose linux-image-6.1.0-15-amd64 is installed successfully and I reboot my > device. > > A few days from now, I decide to remove linux-image-6.1.0-15-amd64 because it > is buggy and so in a terminal, I type the commands: > > sudo apt remove linux-image-6.1.0-15-amd64 > > or > > sudo apt purge linux-image-6.1.0-15-amd64 > > sudo update-grub > > sudo shutdown -r now > > Based on the above commands, I have some questions for you. They are: > > (1) Is it a "hard" or "soft" removal of linux-image-6.1.0-15-amd64?
I don't know what you mean by "hard removal" or "soft removal". The other day, I used the phrase "hard dependency" to describe the relationship between linux-image-amd64 and linux-image-SOME-VERSION-amd64. The metapackage has a "Depends: ..." line which names the other kernel package. You *cannot* install linux-image-amd64 without also bringing in the versioned kernel that it depends on. This is different from "Suggests:" or "Recommends:" which are optional dependencies. > (2) Is the metapackage linux-image-amd64 removed? Yes, because linux-image-amd64 *right now* depends on linux-image-6.1.0-15-amd64. Removing linux-image-6.1.0-15-amd64 will therefore remove linux-image-amd64. > (3) What do you mean by your statement "prevents you from updating to the > buggy kernel but you have to do some tidying up afterwards"? You have to go back in time, to when linux-image-amd64 depended on the buggy linux-image-6.1.0-14-amd64 package. At that time, removing linux-image-6.1.0-14-amd64 would have removed linux-image-amd64 because *back then* that's how the dependency was. If you removed linux-image-6.1.0-14-amd64 and linux-image-amd64 as I'm sure many people did, then in order to get back to normalcy, you would have to reinstall the linux-image-amd64 metapackage. But the question is *when* to do this. If you did it right away, it would just reinstall the buggy kernel, so that's no good. You had to wait. But... how long? It makes sense to wait until we have a confirmed good kernel version available; otherwise, we just have to repeat this cycle all over again.