[RESOLVED] 6.4.1-1-liquorix-amd64 sign-file not found, won't be signed
zebus3d
Status: New User - Welcome
Joined: 04 Jul 2023
Posts: 3
Reply Quote
Hi, I'm on debian 12 and I get the following error when trying to upgrade, I think it's the dkms trying to configure the nvidia driver

:: Code ::
Configurando linux-image-6.4.1-1-liquorix-amd64 (6.4-1.3~bookworm) ...
/etc/kernel/postinst.d/dkms:
dkms: running auto installation service for kernel 6.4.1-1-liquorix-amd64.
Sign command: /lib/modules/6.4.1-1-liquorix-amd64/build/scripts/sign-file
Binary /lib/modules/6.4.1-1-liquorix-amd64/build/scripts/sign-file not found, modules won't be signed

Building module:
Cleaning build area...
env NV_VERBOSE=1 make -j32 modules KERNEL_UNAME=6.4.1-1-liquorix-amd64.......(bad exit status: 2)
Error! Bad return status for module build on kernel: 6.4.1-1-liquorix-amd64 (x86_64)
Consult /var/lib/dkms/nvidia-current/525.105.17/build/make.log for more information.
Error! One or more modules failed to install during autoinstall.
Refer to previous errors for more information.
dkms: autoinstall for kernel: 6.4.1-1-liquorix-amd64 failed!
run-parts: /etc/kernel/postinst.d/dkms exited with return code 11
dpkg: error al procesar el paquete linux-image-6.4.1-1-liquorix-amd64 (--configure):
 el subproceso instalado paquete linux-image-6.4.1-1-liquorix-amd64 script post-installation devolvió el código de salida de error 1
Configurando linux-headers-6.4.1-1-liquorix-amd64 (6.4-1.3~bookworm) ...
/etc/kernel/header_postinst.d/dkms:
dkms: running auto installation service for kernel 6.4.1-1-liquorix-amd64.
Sign command: /lib/modules/6.4.1-1-liquorix-amd64/build/scripts/sign-file
Binary /lib/modules/6.4.1-1-liquorix-amd64/build/scripts/sign-file not found, modules won't be signed

Building module:
Cleaning build area...
env NV_VERBOSE=1 make -j32 modules KERNEL_UNAME=6.4.1-1-liquorix-amd64.......(bad exit status: 2)
Error! Bad return status for module build on kernel: 6.4.1-1-liquorix-amd64 (x86_64)
Consult /var/lib/dkms/nvidia-current/525.105.17/build/make.log for more information.
Error! One or more modules failed to install during autoinstall.
Refer to previous errors for more information.
dkms: autoinstall for kernel: 6.4.1-1-liquorix-amd64 failed!
run-parts: /etc/kernel/header_postinst.d/dkms exited with return code 11
Failed to process /etc/kernel/header_postinst.d at /var/lib/dpkg/info/linux-headers-6.4.1-1-liquorix-amd64.postinst line 11.
dpkg: error al procesar el paquete linux-headers-6.4.1-1-liquorix-amd64 (--configure):
 el subproceso instalado paquete linux-headers-6.4.1-1-liquorix-amd64 script post-installation devolvió el código de salida de error 1
dpkg: problemas de dependencias impiden la configuración de linux-image-liquorix-amd64:
 linux-image-liquorix-amd64 depende de linux-image-6.4.1-1-liquorix-amd64 (= 6.4-1.3~bookworm); sin embargo:
 El paquete `linux-image-6.4.1-1-liquorix-amd64' no está configurado todavía.

dpkg: error al procesar el paquete linux-image-liquorix-amd64 (--configure):
 problemas de dependencias - se deja sin configurar
Se encontraron errores al procesar:
 linux-image-6.4.1-1-liquorix-amd64
 linux-headers-6.4.1-1-liquorix-amd64
 linux-image-liquorix-amd64
E: Sub-process /usr/bin/dpkg returned an error code (1)


has anyone else had this happen?
Back to top
damentz
Status: Assistant
Joined: 09 Sep 2008
Posts: 1122
Reply Quote
Are you trying to install Liquorix with secure boot enabled?
Back to top
techAdmin
Status: Site Admin
Joined: 26 Sep 2003
Posts: 4127
Location: East Coast, West Coast? I know it's one of them.
Reply Quote
Nvidia 530.xx fails on 6.4 kernel, I just learned that. 535.xx does compile apparently, at least it was just verified the other day that this is the case.

Don't use a distro dkms packaged nvidia driver unless you know what you are doing. dkms is not magical, it will try to compile the driver against the new kernel, but that doesn't mean it will work. And it definitely won't magically grab the latest driver from nvidia, which in this case was released maybe 1 week ago, and replace your driver with it.

While person didn't post any real data, that would account for it.

Could also be 470 or 390 series, I think new 470 works, but 390 will probably fail.

inxi -bxz would show the necessary info.

Understand please that non-free driver issues are NEVER resolvable by a kernel, and have nothing to do with the kernel, and distro drivers can and often do lag well behind current stable or latest legacy nvidia drivers, so trying to use liquorix or any kernel like it with non free driver without understanding this reality will not lead to good results. The essence of non free drivers is that nobody but nvidia can deal with the issues, though sometimes patches can be applied with varying success, but that is not a kernel issue, it's a driver package issue.

Failure to understand this fundamental reality is probably one of the top issues I see people have. If you want good experiences use amd graphics devices, which are free and open and integrated into mainline kernel releases, and firmware releases etc. If nvidia non free is to be used, you have to learn what that involves and realize you cannot expect the same results as with free open drivers.

nvidia releases current stable, and maintains one or two legacy branches, which become EOL eventually, at which point that non free driver will never work again with new kernels that break it. This is why I stopped using nvidia cards, I got tired of replacing totally fine and working graphics hardware because the driver had reached EOL.

To be clear, an nvidia driver can be expected to fail eventually, maybe on a new kernel that nvidia has not released a new driver for, maybe because nvidia stops supporting that hardware with updated drivers, but it will eventually fail, that is certain, because I think the very maximum life for driver support is 10 years, it varies, and the max life for the current stable driver branch is maybe 3-5 years, after which it becomes a legacy driver, which receives far fewer updates.

Basically by the time your nvidia device switches to legacy nvidia drivers, you should plan on moving on to either amd card or to nouveau if it works for you, because you only have a fixed number of years of non free nvidia support at that point.

nvidia driver failing on a new kernel is never a valid issue, it's an expected and predictable outcome.
Back to top
zebus3d
Status: New User - Welcome
Joined: 04 Jul 2023
Posts: 3
Reply Quote
:: damentz wrote ::
Are you trying to install Liquorix with secure boot enabled?


I tried disabling secure boot in the bios but this did not solve it.
Back to top
zebus3d
Status: New User - Welcome
Joined: 04 Jul 2023
Posts: 3
Reply Quote
:: Quote ::
techAdmin

Thanks, that's good to know, I'll wait for the Nvidia driver update then. My next card will be AMD. Thank you very much for the information!.
Back to top
techAdmin
Status: Site Admin
Joined: 26 Sep 2003
Posts: 4127
Location: East Coast, West Coast? I know it's one of them.
Reply Quote
Again, inxi -bGxxz will show me if you will even be getting an nvidia driver update. That shows your nvidia card family, driver type, etc.

If you are not running 530 now, then you won't have support much longer, if it is 530, or 525, I don't know what Debian bookworm has. Checked, it's 525, they are way behind.

Using distro packaged drivers, except for Arch Linux, and Liquorix on rolling release, is not a good idea in general, Debian right now for example I think is maybe 6 versions behind, I don't remember when 525 stopped being current driver, but there have been at least 2 530 releases, and 535, since then, so that package isn't even close to current.
Back to top
rab0171610
Status: New User - Welcome
Joined: 10 Jul 2023
Posts: 1
Reply Quote
The problem has nothing to do with "sign-file not found, modules won't be signed." This is a warning that the modules won't be signed. If one were to read the build log, the error is actually something similar to:
:: Code ::
‘struct drm_driver’ has no member named ‘dumb_destroy’
  nv_drm_driver.dumb_destroy     = nv_drm_dumb_destroy;

There is a workaround that allows the driver to build and support the 6.4 kernel ABI. It is from a patch for previous driver versions, but works with the current Debian Nvidia driver. I did not write a patch so three files in the Nvidia driver will have to be edited manually using a text editor, such as nano, in the terminal or a GUI editor that can save files with root permissions, such as KDE's Kate.
First, backup your current Nvidia drivers source directory:
:: Code ::
sudo cp -rv /usr/src/nvidia-current-525.105.17 /usr/src/nvidia-current-525.105.17.bak


In the file /usr/src/nvidia-current-525.105.17/nvidia-drm/nvidia-drm-drv.c , there is a block of text:

:: Code ::
+     nv_drm_driver.dumb_create      = nv_drm_dumb_create;
+     nv_drm_driver.dumb_map_offset  = nv_drm_dumb_map_offset;
-    nv_drm_driver.dumb_destroy     = nv_drm_dumb_destroy;
+       #endif /* NV_DRM_ATOMIC_MODESET_AVAILABLE */
+ }

Delete the 3rd line above so that it now looks like this:
:: Code ::
  nv_drm_driver.dumb_create      = nv_drm_dumb_create;
   nv_drm_driver.dumb_map_offset  = nv_drm_dumb_map_offset;
  #endif /* NV_DRM_ATOMIC_MODESET_AVAILABLE */
 }

Next, edit /usr/src/nvidia-current-525.105.17/nvidia-drm/nvidia-drm-gem-nvkms-memory.c :
:: Code ::
+     return ret;
+ }
-
-int nv_drm_dumb_destroy(struct drm_file *file,
-                        struct drm_device *dev,
-                        uint32_t handle)
- {
-    return drm_gem_handle_delete(file, handle);
- }
-
+ #endif

Search for and delete the lines of code above indicated with a - (minus) symbol at the beginning. It should now look like this:
:: Code ::
return ret;
 }
#endif


Lastly, edit /usr/src/nvidia-current-525.105.17/nvidia-drm/nvidia-drm-gem-nvkms-memory.h :

:: Code ::
+                            struct drm_device *dev, uint32_t handle,
+                            uint64_t *offset);
+
- int nv_drm_dumb_destroy(struct drm_file *file,
-                        struct drm_device *dev,
-                        uint32_t handle);
-
+ struct drm_gem_object *nv_drm_gem_nvkms_prime_import(
+     struct drm_device *dev,
+     struct drm_gem_object *gem);

After deleting the lines indicated by minus above, It should now look like this:
:: Code ::
                            struct drm_device *dev, uint32_t handle,
                            uint64_t *offset);

 struct drm_gem_object *nv_drm_gem_nvkms_prime_import(
     struct drm_device *dev,
     struct drm_gem_object *gem);

The driver that failed will now build with DKMS for the LQX 6.4 kernel series when running:
:: Code ::
sudo apt upgrade

Obviously, any updates to or re-installation of the Nvidia drivers will overwrite these changes.

For information about the source of this patch upstream, search the web for the struct drm_driver error as listed above or the patch itself, which was named "buildfix_kernel_6.4.patch". It was provided on 6-29-23 by Paolo Pisati at Ubuntu for the 470 Nvidia driver series.
Back to top
damentz
Status: Assistant
Joined: 09 Sep 2008
Posts: 1122
Reply Quote
I'll just mark this as resolved, the issue is with DKMS packages that need updates.
Back to top
Display posts from previous:   

All times are GMT - 8 Hours