Re: https://github.com/marioroy/nvidia-driver-on-clear-linux
Good news: The recent Clear Linux OS (release 38270) installs the libglvnd
package, a vendor-neutral dispatch layer for arbitrating OpenGL API calls between multiple vendors on a per-screen basis. Thank you, CL team.
The bad news: Updating to CL 38270 will break NVIDIA graphics using the NVIDIA proprietary driver. Before CL 38270, the NVIDIA installer removes non-libglvnd libraries { libGLESv2, libGLESv1_CM, libOpenGL, libEGL, libGLX, and libGL }. This requires automation to create symbolic links to the /opt/nvidia path via post-update trigger script.
Starting with CL 38270, the NVIDIA installer detects the presence of libglvnd libraries.
executing: '/bin/sh ./libglvnd_install_checker/check-libglvnd-install.sh'...
Found libglvnd libraries:
libGLESv2.so.2 libGLESv1_CM.so.1 libOpenGL.so.0
libEGL.so.1 libGLX.so.0 libGL.so.1
libglvnd appears to be installed.
Solution: Follow the steps to get NVIDIA graphics working again. This requires re-installing the proprietary driver to detect libglvnd. Notably important is running the pre-install-driver
script with the update
argument. That will refresh the trigger script to not make symbolic links to the libraries mentioned above.
- Boot into multi-user mode by pressing the letter
e
on the boot screen. Prepend3
with a space to the list of kernel arguments. - Uninstall the proprietary driver:
sudo /usr/bin/nvidia-uninstall
- Remove artifacts:
sudo rm -f /usr/lib64/libnvidia*
- Repair lib-opengl:
sudo swupd repair -x --bundles=lib-opengl
- Run:
git update
from the nvidia-driver-on-clear-linux folder - Run:
bash pre-install-driver update
Finally, install the proprietary driver: bash install-driver 525
or desired version 520
, 515
, 510
, or 470
.