New comment by moabeat-berlin on void-packages repository https://github.com/void-linux/void-packages/pull/43600#issuecomment-1722569106 Comment: I think I figured something out why dkms is not working with the new kernel. There have been some changes how the kernel is configured. For example, the crypto module got has now dependencies into the "arch" directory. Check this [diff between the old 5.15.72 and the newer 6.1.53](https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/crypto/Kconfig?id=v6.1.53&id2=v5.15.72) version. Now, the dkms with the x86_64 architecture only works due an error in the template script of the "linux6.3" package. [Here](https://github.com/void-linux/void-packages/blob/master/srcpkgs/linux6.3/template#L294) all files related to unnecessary architectures should actually get removed. The case to extend this also to architectures like "powerpc" (matching *p) uses the "arch" variable and expects it either as "i386" or "x86_64". However, this is never true as [here](https://github.com/void-linux/void-packages/blob/master/srcpkgs/linux6.3/template#L119) the "arch" variable is set to "x86". Therefore no "powerpc" directory is removed on x86_64 and dkms works. By accident all necessary sub-directories in the "arch" directory are present. For "arm64" this is different. Here architectures starting with "p*" are removed. Now the question is, why is this important? Well, something similar is present in the "rpi-kernel" package [here](https://github.com/void-linux/void-packages/blob/master/srcpkgs/rpi-kernel/template#L193). It even removes "arm64" if you are on "arm". And since there is a hard-coded dependency in "crypto/Kconfig" it breaks. Maybe the best approach is, to not remove any unnecessary architectures at all anymore if there are so many interdependences?