This post is prefaced by my admission that the problem I am seeking help with is somewhat beyond my present Linux expertise, and that my use of relevant terminology may be lacking as the result of having stepped away from this issue and SUSE for a few months.
My Librem 14 requires an ACPI driver that isn’t included in the SUSE kernel or repositories; without it, there are issues with charging and running the laptop from an outlet. I tried building it from source and loading it into the kernel via DKMS, but it ultimately won’t work due to being unsigned in some respect. I can enable DKMS and install the driver, but the driver itself will not function, likely not because it wasn’t compiled properly.
Any pointers or a guide would be helpful, as would openSUSE adding it as built/signed to the repository. If anyone can provide some guidance on the latter, that would be great - I don’t know how to go about making that sort of request apart from a forum post.
Check your BIOS settings for Secure Boot related items and disable Secure Boot. If you do not know how to do it, you can try to disable validation from within Linux
mokutil --disable-validation
you will be asked for a password, enter whatever you like, then reboot. After reboot you will be greeted with blue screen of MokManager and will need to confirm the action by entering the same password (in the old versions you were asked for specific characters from this password). MokManager has rather short timeout (10 - 15 seconds), do not miss it.
Is it possible to sign the driver rather than disable secure boot/validation? The security features of openSUSE are a primary incentive for running it.
It’s highly unlikely that any developer is going to package anything, if it isn’t something that they need to use. If this is something that a user finds beneficial, you’re going to have a heck of alot better chance of getting it into the openSUSE official repositories, if you package it yourself, and submit it for inclusion.
Installation seems to have worked this time around by following the GitHub guide. That said, there are still issues with the functionality of the driver. Here is the output of “sudo systemctl status dkms”:
dkms.service - Builds and install new kernel modules through DKMS
Loaded: loaded (/usr/lib/systemd/system/dkms.service; enabled; preset: disabled)
Active: active (exited) since Tue 2023-12-19 04:30:47 GMT; 1h 8min ago
Docs: man:dkms(8)
Main PID: 1744 (code=exited, status=0/SUCCESS)
CPU: 278ms
Dec 19 04:30:47 localhost systemd[1]: Starting Builds and install new kernel modules through DKMS…
Dec 19 04:30:47 localhost dkms[1944]: /var/lib/dkms/librem_ec_acpi/1.0/source/dkms.conf: line 1: librem_ec_acpi: command not found
Dec 19 04:30:47 localhost dkms[2061]: Deprecated feature: REMAKE_INITRD (/var/lib/dkms/lkrg/0.9.7/source/dkms.conf)
Dec 19 04:30:47 localhost systemd[1]: Finished Builds and install new kernel modules through DKMS.
Svyatko posted the link to the driver’s source, or an older version of it. I was concerned about the deficiency mentioned at the end of the systemctl line for the driver, if there was some general wisdom as to a cause for that entry.
Thanks for the tip about the kernel updates directory.