x11/nvidia-driver update from 460.80 to 460.80_1: libglvnd

From: David Wolfskill <david_at_catwhisker.org>
Date: Thu, 17 Jun 2021 11:04:07 UTC
On my laptops, I have been using x11/nvidia-driver (quite successfully)
for several years.

As I update FreeBSD base and installed ports daily on those machines, I
have

PORTS_MODULES+=x11/nvidia-driver

in /etc/src.conf, so the kernel modules get rebuilt when the kernel
does; that has all worked quite well.

This morning, things didn't go according to plan:

...
===>  Cleaning for nvidia-driver-460.80_1
===>  License NVIDIA accepted by the user
===>   nvidia-driver-460.80_1 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by nvidia-driver-460.80_1 for building
===>  Extracting for nvidia-driver-460.80_1
=> SHA256 Checksum OK for NVIDIA-FreeBSD-x86_64-460.80.tar.gz.
===>  Patching for nvidia-driver-460.80_1
===>   nvidia-driver-460.80_1 depends on executable: gsed - found
===>  Applying extra patch /common/ports/x11/nvidia-driver/files/460-patch-lib-libGLX_nvidia-Makefile
===>  Applying extra patch /common/ports/x11/nvidia-driver/files/460-patch-src-nvidia-nvidia_ctl.c
===>  Applying extra patch /common/ports/x11/nvidia-driver/files/460-patch-src-nvidia-nvidia_linux.c
===>  Applying extra patch /common/ports/x11/nvidia-driver/files/460-patch-src_nvidia-modeset_nvidia-modeset-freebsd.c
===>  Applying extra patch /common/S1/obj/usr/src/amd64.amd64/sys/CANARY/common/ports/x11/nvidia-driver/work/extra-patch-src-Makefile
===>  Applying extra patch /common/S1/obj/usr/src/amd64.amd64/sys/CANARY/common/ports/x11/nvidia-driver/work/extra-patch-src-nv-freebsd.h
===>  Applying extra patch /common/S1/obj/usr/src/amd64.amd64/sys/CANARY/common/ports/x11/nvidia-driver/work/extra-patch-src-nv-misc.h
===>  Applying extra patch /common/S1/obj/usr/src/amd64.amd64/sys/CANARY/common/ports/x11/nvidia-driver/work/extra-patch-src-nvidia_dev.c
===>  Applying extra patch /common/S1/obj/usr/src/amd64.amd64/sys/CANARY/common/ports/x11/nvidia-driver/work/extra-patch-src-nvidia_pci.c
No such line 404 in input file, ignoring
===>  Applying FreeBSD patches for nvidia-driver-460.80_1 from /common/ports/x11/nvidia-driver/files
===>   nvidia-driver-460.80_1 depends on executable: pkg-config - found
===>   nvidia-driver-460.80_1 depends on package: libglvnd>0 - not found
*** [all] Stopped -- signal 22

Sure enough:

g1-55(12.2-S)[9] pkg info -o libglvnd\*
pkg: No package(s) matching libglvnd*

So I tried building/installing it ... only to find:

===>  Installing for libglvnd-1.3.2
===>   Registering installation for libglvnd-1.3.2
Installing libglvnd-1.3.2...
pkg-static: libglvnd-1.3.2 conflicts with mesa-libs-20.2.3 (installs files into the same place).  Problematic file: /usr/local/include/EGL/egl.h
*** Error code 1

So... let's see what uses mesa-libs-20.2.3, eh?

g1-55(12.2-S)[7] pkg info -r mesa-libs\*
mesa-libs-20.2.3:
        firefox-89.0.1,2
        iqpuzzle-1.2.5
        libepoxy-1.5.8
        xlockmore-5.66
        cairo-1.17.4,3
        chromium-90.0.4430.212_1
        jasper-2.0.32
        sdl2-2.0.12_4
        nvidia-settings-460.73.01
        xorg-nestserver-1.20.11,2
        xorg-server-1.20.11,1
        qt5-gui-5.15.2_4
        mplayer-1.4.0.20210314
        mesa-dri-20.2.3_1
        pinball-0.3.20201218
        qt5-multimedia-5.15.2_1
        qt5-opengl-5.15.2_1
        qt5-declarative-5.15.2
        freeglut-3.0.0_2
        libGLU-9.0.1
        ftgl-2.4.0,1
        xf86-video-openchrome-0.6.0_4
        xdriinfo-1.0.6_3
g1-55(12.2-S)[8] 

So... at this point, I am unclear on how to make both x11/nvidia-driver
and things from the above list like ... Web browsers (for example) able
to coexist on the same system.

This is running:
FreeBSD g1-55.catwhisker.org 12.2-STABLE FreeBSD 12.2-STABLE #1066 stable/12-n233297-4e2ae05c3ae: Wed Jun 16 03:31:46 PDT 2021     root@localhost:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY  amd64 1202507 1202507

with sources updated to c0a91473f5be9f0660d1e043b1f08f7d50e815ad
(stable/12-n233306-c0a91473f5b) and ports updated to
5e09ee3336ab5db008ff5362d11790c1d057e06e (main-n549052-5e09ee3336ab).

Thanks!

Peace,
david
-- 
David H. Wolfskill                              david@catwhisker.org
"Remember, I'm not the one trying to undermine American democracy. I'm
the one that's trying to save it." - Donald Trump, lying again (05 June 2021)

See https://www.catwhisker.org/~david/publickey.gpg for my public key.