Summary

This specification discusses adding support to the GUI packaging tools to suggest removal of old installed kernels once a new kernel has been installed on a system.

Rationale

Having too many unused old installed kernels can lead to shortage of free space on a limited /boot fs, clutter in the boot loader's menu and confusion for the average desktop user. Having support for cleaning up the unused kernels on the system will assist in freeing the otherwise unusefully used space and will result in less confusion for the desktop user of GUI upgrade and update tools.

Use cases

Scope

Design

  1. The removal suggestion will be integrated into tools like the dist-upgrader (and maybe the update-manager/adept_updater application).
  2. When installing a new kernel (through the GUI packaging tools) mark the packages of:
    1. The currently running kernel.
    2. The new kernel that was just installed.
  3. Checking if the user has any other kernels installed other then those in the afformentioned list.
  4. If he does not, do nothing.
  5. If he does have, gather a list of all those kernel packages.
  6. Popup a desktop notification to the user "You have un-used kernels installed on the system. Would you like me to clean them up?".
  7. If the user confirms, then present a dialog displaying the list of kernels that was constructed in steps 2-4 , in the a window that will contain a columnd table, each row representing a kernel package:
    • Row 1: Kernel Version. (e.g. "2.6.15-25-686")
    • Row 2: Kernel Package Name. (e.g "linux-image-2.6.15-25-686").
    • Row 3: A check box indicating if this kernel package is to be removed, or left installed. (checked->keep, unchecked->remove)

  8. All items in the list are by default unchecked (meaning , tool will remove all kenrels on the remove-list)
  9. The user can choose to keep any of the kernls on the list by checking the checkbox next to the name/version.
  10. Pressing "Commit" , will calculate the kenrels packages to be removed from the check list, remove the kernel packages, and notify the user of success, or error if any issues were encountered while removing.

Implementation

Code

dsilvers: Presumably there's stuff to go in here

Data preservation and migration

Outstanding issues

BoF agenda and discussion


CategorySpec

PurgeOldKernels (last edited 2008-08-06 16:24:55 by localhost)