while there could be some conflicts with unattended upgrades, this is definitely an incorrect landscape (or python-apt) behaviour, where applying an update marks a package as manual. There are a few ways to trigger this and a few ways to avoid triggering this.
For instance, a lot of operations act on all updates, which leaves apt to do its job correctly.
Operations selecting specific updates (either through manual selection or a profile) drop the auto flag from installed packages. The proposed fix tries to resolve this by carrying the auto flag on packages which are already installed. Thus
1. new packages installed explicitly (not as dependencies) are always manual
2. installing a new version of an installed package explicitly keeps the auto flag, if set.
3. the way to mark a new version of an auto package as manual would be to remove it and add it again, or hold it.
This should keep things autoremovable through updates and appears to match the behaviour of command-line apt.
Now, I'm not sure how some kernels got to be marked manual, as they never are updated explicitly. (only the metapackage linux-image-generic should be updated, which pulls versions as auto dependencies) Unless a kernel version got selected manually, landscape shouldn't try to install those directly.
while there could be some conflicts with unattended upgrades, this is definitely an incorrect landscape (or python-apt) behaviour, where applying an update marks a package as manual. There are a few ways to trigger this and a few ways to avoid triggering this.
For instance, a lot of operations act on all updates, which leaves apt to do its job correctly.
Operations selecting specific updates (either through manual selection or a profile) drop the auto flag from installed packages. The proposed fix tries to resolve this by carrying the auto flag on packages which are already installed. Thus
1. new packages installed explicitly (not as dependencies) are always manual
2. installing a new version of an installed package explicitly keeps the auto flag, if set.
3. the way to mark a new version of an auto package as manual would be to remove it and add it again, or hold it.
This should keep things autoremovable through updates and appears to match the behaviour of command-line apt.
Now, I'm not sure how some kernels got to be marked manual, as they never are updated explicitly. (only the metapackage linux-image-generic should be updated, which pulls versions as auto dependencies) Unless a kernel version got selected manually, landscape shouldn't try to install those directly.