Skip to content

dkms with non-available modules forces updated to stop - and does not provide instructions #888

Open
@goebbe

Description

@goebbe

Describe the bug
I updated several of my 21.3 installations to linuxmint 22 - and had a hard time on two computers due to
dkms kernel modules that are not available for the new kernel on linuxmint 22.

Normally, dkms -modules are compiled, when installing a new kernel.
There are several reasons, why the necessary packages might not be available for the new kernel:

  • kernel module is not available / outdated and does not work with the new kernel
  • functionality of dkms-modules are integrated in the new kernel (so no dkms-module required anymore).
    • change in the software stack e.g. pulseaudo -> pipwire transition

In my case, the problems had been caused by the following modules, but the issue applies more generally:
bt-usb/4.1
nvidia-dkms-390

Currently, mintupdate tries to compile the dkms-modules (several times) for the new kernel and then stops with a cryptic error message: "kernel could not be installed due to Error"

At this point, currently the only option in mintupdate is to abort the installation - this however leaves the user with a mix of updated and old packages - and without instruction about the source of the problem and how to proceed.

Expected behavior
mintupdate should point to a solution to the problem.

  • If possible: Print a clear statement that the new kernel could not be installed, since a dkms-module (which one) can not be build for the new kernel.
  • Print a list with the dkms-modules currently used by the old kernel
    • $dkms status #show kdms modules of the current kernel
  • Provide hints on how to proceed/ solve the issue:
    1. Ask the user to check if the dkms-modules are still required
    2. If modules are still required by the user: Provide a hint on how to completely restore the old system (using timeshift)
    3. If modules are not required anymore: Provide a hint on how to remove the kernel modules
      4. $sudo dkms remove modulename/versionnumber #remove module from kernel
      5. $sudo apt remove packagename #remove package/source
      6. mintupdate has to be started again, to install the new kernel and to complete the update.
      7. after a successful update - install new dkms drivers/ modules, if necessary/ available

Distribution:

  • Linux Mint CE: 21.3 -> 22

Software version:
mintupdate 6.0.9

Logs:
Copy & paste the log output from Update Manager > View > Information here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions