There's a closed pull request on the void-packages repository [RFC] libglvnd: depend on mesa https://github.com/void-linux/void-packages/pull/18712 Description: `libglvnd` doesn't currently install any OpenGL implementation, which makes GL unavailable ootb until the mesa drivers (package `mesa-dri`) are installed. This happens when installing `xorg-minimal` (which doesn't pull in the graphics drivers) or a Wayland compositor. Previously, `libGL` shipped the software rendering driver, so that GL was available (but not optimal), and users were expected to install the `mesa-...-dri` matching their GPU. Now that all dri drivers are in a single package, it is possible to provide hardware acceleration by default as soon as any program which links with GL is installed. This PR modifies dependencies so that: GL app -> libglvnd -> mesa -> mesa-dri Caveats: - Due to how xbps-src works (i.e. to avoid loops), a second libglvnd package must be introduced specifically to compile mesa (and kept in sync with the other one) - xbps-src is not currently trying to build dependencies of subpackages. If it is changed to do so, loops will happen again as `libglvnd` appears as dependency in some subpackages (maybe those deps can be removed?) - This will pull in the drivers also when building GL programs in chroot, which is unnecessary. Can it be avoided? I initially thought about making `libglvnd` depend on a virtual `gl-vendor` which would be provided by `mesa` and `nvidia*`, but the nvidia packages required non-trivial modifications. Nvidia-only users can uninstall the mesa drivers via `ignorepkg` anyway.