Nvidia-installer-dkms Dependency Missmatch

nvidia-installer-dkms targets mainstream and LTS kernels only, along with their respective headers. Custom kernel support is broken as of this post.

$ sudo pacman -S nvidia-installer-dkms
resolving dependencies...
looking for conflicting packages...

Packages (3) linux-headers-5.2.11.arch1-1  nvidia-installer-db-2.1-1
             nvidia-installer-dkms-2.1-6

Total Installed Size:  100.38 MiB

:: Proceed with installation? [Y/n] 

It targets mainline headers, whilst failing detection of “linux”, “lts”, or “hardened” kernel presence in the system. linux-5.2.11.arch1-1 is not installed or resolved. What happens if a user compiles and installs their own “custom” kernel?

:: Proceed with installation? [Y/n] y
(3/3) checking keys in keyring                     [----------------------] 100%
(3/3) checking package integrity                   [----------------------] 100%
(3/3) loading package files                        [----------------------] 100%
(3/3) checking for file conflicts                  [----------------------] 100%
:: Processing package changes...
(1/3) installing linux-headers                     [----------------------] 100%
(2/3) installing nvidia-installer-db               [----------------------] 100%
(3/3) installing nvidia-installer-dkms             [----------------------] 100%
Optional dependencies for nvidia-installer-dkms
    linux-lts-headers: for nvidia-installer-dkms with kernel linux-lts
    nvidia-settings: tool for configuring the NVIDIA graphics driver [installed]
    nvidia-390xx-settings: tool for configuring the NVIDIA graphics driver
:: Running post-transaction hooks...
(1/2) Arming ConditionNeedsUpdate...
(2/2) Install DKMS modules
==> Unable to install module bbswitch/0.8 for kernel 5.2.11-arch1-1-ARCH: Missing kernel modules tree.
==> Unable to install module vboxhost/6.0.12_OSE for kernel 5.2.11-arch1-1-ARCH: Missing kernel modules tree.
==> Unable to install module nvidia/435.21 for kernel 5.2.11-arch1-1-ARCH: Missing kernel modules tree.
==> Unable to install module exfat/205.c0915bb for kernel 5.2.11-arch1-1-ARCH: Missing kernel modules tree.

Makese sense, no module trees for absent kernels. :face_with_head_bandage:

$ sudo nvidia-installer-dkms -b
2019-09-06 10:02:13 [INFO]: EndeavourOS Nvidia Installer v2.0
2019-09-06 10:02:13 [INFO]: All logs will be stored in /tmp/nvidia-installer.log
2019-09-06 10:02:13 [INFO]: Installing bumblebee driver...
2019-09-06 10:02:13 [INFO]: Removing conflicting packages...
2019-09-06 10:02:13 [INFO]: Downloading and installing driver packages, please wait as this may take a few minutes...
2019-09-06 10:04:16 [INFO]: Adding user thanos to bumblebee group...
2019-09-06 10:04:16 [INFO]: gpasswd -a thanos bumblebee
2019-09-06 10:04:16 [INFO]: Adding user thanos to video group...
2019-09-06 10:04:16 [INFO]: gpasswd -a thanos video
2019-09-06 10:04:16 [INFO]: Enabling bumblebeed.service service...
2019-09-06 10:04:16 [INFO]: systemctl enable bumblebeed.service
2019-09-06 10:04:17 [INFO]: Patching /usr/share/applications/nvidia-settings.desktop...
2019-09-06 10:04:17 [INFO]: /etc/X11/xorg.conf.d/20-nvidia.conf not found. That's ok.
2019-09-06 10:04:17 [INFO]: Installation finished. You need to reboot now!

2019-09-06 10:04:17 [INFO]: /etc/X11/xorg.conf.d/20-nvidia.conf not found. That's ok.

Why is no 20-nvidia.conf okay? :dizzy_face:

Removing linux-headers-5.2.11.arch1-1 breaks dependencies. My “custom” headers should suffice.

1 Like

Thanks for the report. We’ll remove those kernel header dependencies, as it causes issues for custom kernels.

2 Likes

Nice! Thank you. :+1:

New version 2.1-7 of nvidia-installer-dkms should now be available (may take some time depending on location).
Please report your findings. :smile:

2 Likes
2019-09-06 11:05:38 [INFO]: /etc/X11/xorg.conf.d/20-nvidia.conf not found. That's ok.

I need to know! :laughing:

2019-09-06 11:03:29 [INFO]: EndeavourOS Nvidia Installer v2.0

Cosmetic: You should update the version number in next release.

kernel headers are a dependency of nvidia-installer, but not in nvidia-installer-dkms (anymore). Could a wildcard for kernel headers (i.e. *-headers) avoid conflicts?

EDIT: If a wildcard isn’t an option, remember to include linux-hardened-headers. :slightly_smiling_face:

Thanks again for reporting!

Not sure why in bumblebee case not having 20-nvidia.conf is OK.
The code is inherited from Antergos devs, and they explicitly programmed that the config file is not needed with nouveau (naturally) nor bumblebee.
Maybe @joekamprad knows/remembers this?

Fixed.

Added optional header dependencies for more kernels. AFAIK wildcards are not possible in PKGBUILDs for this.

3 Likes

As script is handling it, if it is needed it will create it, if it must be removed it will do nothing in it…

https://antergos.com/wiki/de/hardware/bumblebee-for-nvidia-optimus/
This is the base of nividia-installer script.
On the Nvidia config file I do remember only that it will cause issues on switching GPU if bumblebee is used…

And to run Nvidia drivers it is also not needed but used for not showing Nvidia logo, or to enable features.

1 Like