I’m currently trying to dual-boot Windows 11 and CashyOS on my Lenovo Legion 5, that has both an Intel iGPU as well as a Nvidia dGPU. I first installed Windows 11 with Secure Boot on, no problems there. I then disabled Secure Boot as to install CashyOS on a different drive, both drives installed in the same laptop. Everything went smoothly, and after completing the installation I booted into CashyOS to setup Secure Boot, as instructed by the official Wiki. All this went by increadibly smoothly, especially as limine picked up my Windows-install automatically. My problem is now that my Nvidia dGPU doesn’t seem to get picked up by the system. All drivers are installed, so I believe that the problem lies in the fact that the Nvidia drivers aren’t signed, and are therefore being blocked by Secure Boot. My question is then, how can I sign my Nvidia drivers so that Secure Boot doesn’t block them? And how do I do this, so that when I update my drivers I don’t have to manually sign them again? Thanks in advance!
Please include this:
pacman -Ss nvidia|grep installed
It should just work at the signing stage. And it dose:
sudo sbctl verify && nvidia-smi ─╯
[sudo] password for me:
Verifying file database and EFI images in /boot/efi...
✓ /boot/efi/997733ed59bf48b2aa6cef8b9601cb3a/linux-cachyos/vmlinuz-linux-cachyos is signed
✓ /boot/efi/EFI/BOOT/BOOTX64.EFI is signed
✓ /boot/efi/EFI/cachyos/grubx64.efi is signed
✓ /boot/efi/EFI/limine/limine_x64.efi is signed
✓ /boot/vmlinuz-linux-cachyos-custom is signed
✓ /boot/vmlinuz-linux-cachyos-lts is signed
✓ /boot/efi/997733ed59bf48b2aa6cef8b9601cb3a/linux-cachyos-lts/vmlinuz-linux-cachyos-lts is signed
✓ /boot/efi/be9379fb7f2345d1a854c5da8fa34cdd/linux-cachyos-lts/vmlinuz-linux-cachyos-lts is signed
✓ /boot/efi/be9379fb7f2345d1a854c5da8fa34cdd/linux-cachyos/vmlinuz-linux-cachyos is signed
✓ /boot/vmlinuz-linux-cachyos is signed
Mon Apr 6 13:58:16 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 595.58.03 Driver Version: 595.58.03 CUDA Version: 13.2 |
+-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 3050 ... Off | 00000000:01:00.0 On | N/A |
| N/A 40C P8 4W / 80W | 347MiB / 4096MiB | 10% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 3184 G /usr/bin/ksecretd 1MiB |
| 0 N/A N/A 3270 G /usr/bin/kwin_wayland 7MiB |
| 0 N/A N/A 3314 G /usr/bin/plasma-keyboard 48MiB |
| 0 N/A N/A 3347 G /usr/bin/Xwayland 6MiB |
| 0 N/A N/A 3382 G /usr/bin/ksmserver 1MiB |
| 0 N/A N/A 3384 G /usr/bin/kded6 1MiB |
| 0 N/A N/A 3409 G /usr/bin/plasmashell 65MiB |
| 0 N/A N/A 3426 G /usr/bin/kaccess 1MiB |
| 0 N/A N/A 3427 G ...it-kde-authentication-agent-1 1MiB |
| 0 N/A N/A 3529 G /usr/bin/kdeconnectd 1MiB |
| 0 N/A N/A 3844 G /usr/bin/konsole 1MiB |
| 0 N/A N/A 3975 G /usr/bin/python 1MiB |
| 0 N/A N/A 4048 G /usr/lib/xdg-desktop-portal-kde 1MiB |
| 0 N/A N/A 4420 G /usr/bin/kwalletd6 1MiB |
+-----------------------------------------------------------------------------------------+
What pacman -Ss nvidia|grep installed gives me:
pacman -Ss nvidia|grep installed
cachyos-v3/lib32-nvidia-utils 595.58.03-1 [installed]
cachyos-v3/lib32-opencl-nvidia 595.58.03-1 [installed]
cachyos-v3/libxnvctrl 595.58.03-1 [installed]
cachyos-v3/linux-cachyos-lts-nvidia-open 6.18.20-1 [installed]
cachyos-v3/linux-cachyos-nvidia-open 6.19.10-1 [installed]
cachyos-v3/nvidia-settings 595.58.03-1 [installed]
cachyos-v3/nvidia-utils 595.58.03-1 [installed]
cachyos-v3/opencl-nvidia 595.58.03-1 [installed]
cachyos-extra-v3/egl-gbm 1.1.3-1.1 [installed]
cachyos-extra-v3/egl-wayland 4:1.1.21-1.1 [installed]
cachyos-extra-v3/egl-wayland2 1.0.1-1.1 [installed]
cachyos-extra-v3/egl-x11 1.0.5-1.1 [installed]
cachyos-extra-v3/libva-nvidia-driver 0.0.16-1.2 [installed]
cachyos-extra-v3/libvdpau 1.5-4.1 [installed]
cachyos-extra-v3/libxnvctrl 595.58.03-1.1 [installed: 595.58.03-1]
cachyos-extra-v3/nvidia-settings 595.58.03-1.1 [installed: 595.58.03-1]
cachyos/lib32-nvidia-utils 595.58.03-1 [installed]
cachyos/lib32-opencl-nvidia 595.58.03-1 [installed]
cachyos/libxnvctrl 595.58.03-1 [installed]
cachyos/linux-cachyos-lts-nvidia-open 6.18.20-1 [installed]
cachyos/linux-cachyos-nvidia-open 6.19.10-1 [installed]
cachyos/linux-firmware-nvidia 1:20260309-1 [installed]
cachyos/nvidia-settings 595.58.03-1 [installed]
cachyos/nvidia-utils 595.58.03-1 [installed]
cachyos/opencl-nvidia 595.58.03-1 [installed]
core/linux-firmware-nvidia 20260309-1 [installed: 1:20260309-1]
extra/egl-gbm 1.1.3-1 [installed: 1.1.3-1.1]
extra/egl-wayland 4:1.1.21-1 [installed: 4:1.1.21-1.1]
extra/egl-wayland2 1.0.1-1 [installed: 1.0.1-1.1]
extra/egl-x11 1.0.5-1 [installed: 1.0.5-1.1]
extra/libva-nvidia-driver 0.0.16-1 [installed: 0.0.16-1.2]
extra/libvdpau 1.5-4 [installed: 1.5-4.1]
extra/libxnvctrl 595.58.03-1 [installed]
extra/nvidia-prime 1.0-5 [installed]
extra/nvidia-settings 595.58.03-1 [installed]
extra/nvidia-utils 595.58.03-1 [installed]
extra/opencl-nvidia 595.58.03-1 [installed]
multilib/lib32-nvidia-utils 595.58.03-1 [installed]
multilib/lib32-opencl-nvidia 595.58.03-1 [installed]
Mine doesn’t seem to have everything signed…
sudo sbctl verify && nvidia-smi
[sudo] password for me:
Verifying file database and EFI images in /boot...
✗ /boot/32ddc08dba944e58bd2908b02408382b/limine_history/vmlinuz-linux-cachyos-lts_sha256_5d8c6e23cab2c641c36f705a035947111fb1a5c06c0dfba691ad2f46510652ae is not signed
✗ /boot/32ddc08dba944e58bd2908b02408382b/limine_history/vmlinuz-linux-cachyos_sha256_6febea8f7aacf9e91f9a4c573dc911be957008443e5ea0a5048732916c24e94d is not signed
✗ /boot/32ddc08dba944e58bd2908b02408382b/linux-cachyos/vmlinuz-linux-cachyos is not signed
✗ /boot/32ddc08dba944e58bd2908b02408382b/linux-cachyos-lts/vmlinuz-linux-cachyos-lts is not signed
✗ /boot/EFI/BOOT/BOOTX64.EFI is not signed
✓ /boot/EFI/limine/limine_x64.efi is signed
✓ /boot/vmlinuz-linux-cachyos is signed
✓ /boot/vmlinuz-linux-cachyos-lts is signed
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.
Thanks for taking your time!
For me it went like this:
sudo pacman -S sbctl
sudo sbctl create-keys
sudo sbctl enroll-keys --microsoft --firmware-builtin
sudo sbctl-batch-sign
And all should be good from there.
You will have to start just the signing process over though. (Setup Mode)
I see! The last command sudo sbctl-batch-sign wasn’t included in the Wiki-tutorial, and I didn’t therefore run it the first time. So I tried starting the signing process over (Setup Mode), but was met with the following (probably because I’m using limine as my bootloader?):
sudo sbctl-batch-sign
Limine detected, please do not use this script.
Is there a similar command that would work for limine? I’m guessing you’re using a different bootloader (or do you have some other type of set-up)?
Have you followed the steps here?
there have been some changes with limine recently
Yep I blew right by limine mea culpa`
This should work as is:
sudo sbctl enroll-keys --microsoft
This is a limine boot:
sudo sbctl verify && nvidia-smi ─╯
[sudo] password for me:
Verifying file database and EFI images in /boot...
✗ /boot/982a366da64e4a1daa4fd022c2886afa/limine_history/vmlinuz-linux-cachyos-bore_sha256_0f1acc864567e447df1d7cd44879e4c79a2e8a2a0217937e8a9d60f0f2d84c68 is not signed
✗ /boot/982a366da64e4a1daa4fd022c2886afa/limine_history/vmlinuz-linux-cachyos-lts_sha256_5d8c6e23cab2c641c36f705a035947111fb1a5c06c0dfba691ad2f46510652ae is not signed
✗ /boot/982a366da64e4a1daa4fd022c2886afa/limine_history/vmlinuz-linux-cachyos-rc_sha256_04a93f21ef60942825a9818dd3b9d53ff0d1e7f3f584637d179124e0add42f37 is not signed
✗ /boot/982a366da64e4a1daa4fd022c2886afa/limine_history/vmlinuz-linux-cachyos_sha256_6febea8f7aacf9e91f9a4c573dc911be957008443e5ea0a5048732916c24e94d is not signed
✓ /boot/982a366da64e4a1daa4fd022c2886afa/linux-cachyos/vmlinuz-linux-cachyos is signed
✓ /boot/982a366da64e4a1daa4fd022c2886afa/linux-cachyos-bore/vmlinuz-linux-cachyos-bore is signed
✓ /boot/982a366da64e4a1daa4fd022c2886afa/linux-cachyos-lts/vmlinuz-linux-cachyos-lts is signed
✓ /boot/982a366da64e4a1daa4fd022c2886afa/linux-cachyos-rc/vmlinuz-linux-cachyos-rc is signed
✗ /boot/EFI/BOOT/BOOTX64.EFI is not signed
✓ /boot/EFI/limine/limine_x64.efi is signed
Mon Apr 6 15:40:33 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 595.58.03 Driver Version: 595.58.03 CUDA Version: 13.2 |
+-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 3050 ... On | 00000000:01:00.0 On | N/A |
| N/A 42C P8 4W / 80W | 278MiB / 4096MiB | 6% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 1325 G /usr/bin/ksecretd 1MiB |
| 0 N/A N/A 1404 G /usr/bin/kwin_wayland 7MiB |
| 0 N/A N/A 1458 G /usr/bin/Xwayland 6MiB |
| 0 N/A N/A 1488 G /usr/bin/ksmserver 1MiB |
| 0 N/A N/A 1490 G /usr/bin/kded6 1MiB |
| 0 N/A N/A 1544 G /usr/bin/plasmashell 64MiB |
| 0 N/A N/A 1561 G /usr/bin/kaccess 1MiB |
| 0 N/A N/A 1562 G ...it-kde-authentication-agent-1 1MiB |
| 0 N/A N/A 1629 G /usr/bin/kdeconnectd 1MiB |
| 0 N/A N/A 2005 G /usr/bin/python 1MiB |
| 0 N/A N/A 2077 G /usr/lib/xdg-desktop-portal-kde 1MiB |
| 0 N/A N/A 2436 G /usr/bin/kwalletd6 1MiB |
| 0 N/A N/A 2479 G /usr/bin/konsole 1MiB |
+-----------------------------------------------------------------------------------------+
I finally found a solution! After some more digging (reading the Wiki-tutorial thoroughly), it seems as though it’s totally normal (and even beneficial) that you don’t sign everything when using Limine. The result I was getting when running sudo sbctl verify was in other words totally like it should be, hence why the Wiki-tutorial doesn’t include the sudo sbctl-batch-sign-step for Limine.
The thing that was causing the issue of my dGPU not getting recognized, was that I in Windows, in the for Legion laptops configuration program called Legion Space, had turned on a mode called “Hybrid-Auto Mode” which only uses the iGPU when not plugged in, and switches between the iGPU and the dGPU when plugged in depending on the task in question (or at least that’s how I’ve understood it). This must’ve stayed on even when I booted into CashyOS, which then probably wasn’t able to understand the mode, and just left the dGPU off completely (regardless of if the laptop was plugged in or not). Switching the mode to “Hybrid” (turning off “Hybrid-Auto Mode”) fixed this, and now my dGPU is getting recognized in CashyOS and works as intended!
Thanks to everyone for helping out along the way (especially @anon15508052 <3)!