| Commit message (Collapse) | Author | Age |
|\
| |
| | |
nixos/opengl: Don't set XDG_DATA_DIRS.
|
| |
| |
| |
| |
| |
| | |
This was added in #19936 so that vulkan-loader finds the ICD config files. It is
not needed any more after #62869 where it was ensured that the loader looks in
/run/opengl-driver(-32)/share.
|
|\ \
| |/
|/| |
nixos: Don't set LD_LIBRARY_PATH for graphics drivers that don't need it.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A new internal option `hardware.opengl.setLdLibraryPath` is added which controls if `LD_LIBRARY_PATH` should be set to `/run/opengl-driver(-32)/lib`. It is false by default and is meant to be set to true by any driver which requires it. If this option is false, then `opengl.nix` and `xserver.nix` will not set `LD_LIBRARY_PATH`.
Currently Mesa and NVidia drivers don't set `setLdLibraryPath` because they work with libglvnd and do not override libraries, while `amdgpu-pro`, `ati` and `parallels-guest` set it to true (the former two really need it, the last one doesn't build so is presumed to).
Additionally, the `libPath` attribute within entries of `services.xserver.drivers` is removed. This made `xserver.nix` add the driver path directly to the `LD_LIBRARY_PATH` for the display manager (including X server). Not only is it redundant when the driver is added to `hardware.opengl.package` (assuming that `hardware.opengl.enable` is true), in fact all current drivers except `ati` set it incorrectly to the package path instead of package/lib.
This removal of `LD_LIBRARY_PATH` could break certain packages using CUDA, but only those that themselves load `libcuda` or other NVidia driver libraries using `dlopen` (not if they just use `cudatoolkit`). A few have already been fixed but it is practically impossible to test all because most packages using CUDA are libraries/frameworks without a simple way to test.
Fixes #11434 if only Mesa or NVidia graphics drivers are used.
|
|/
|
|
| |
Just use mesa for these to be more clear. Move these to aliases.nix
|
|
|
|
| |
See https://github.com/NixOS/nixpkgs/issues/51097
|
|
|
|
|
|
| |
This was getting evaluated eagerly causing assertion failures in
aarch64 systems. We can replace usages of pkgs_i686 with
pkgs.pkgsi686Linux.
|
|
|
|
|
| |
Anything that uses OpenGL starts after sysinit.target, so
systemd-tmpfiles runs before anything that needs these symlinks.
|
| |
|
|
|
|
| |
Purely cosmetic.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
...instead of mesa_noglu.out. Closures of systems remain unchanged,
as both are in (and the .out output is very small anyway).
This is to make sure that we use lib*GL* that aren't slowed down by grsecurity.
|
|
|
| |
Issue #12616 uses this example but the commit doesn't.
|
|
|
|
| |
Use hardware.opengl.extraPackages instead.
|
| |
|
|
|
|
|
|
|
|
|
| |
/run/opengl-drivers should contain only libGL-related libraries, not
stuff like udev. Injecting anything into LD_LIBRARY_PATH is dangerous
because it can break applications that expect a different version of
the library.
Caused by eef9a8ac2a30b495ff7184382ed0dbd73b3b88e4. Fixes #5371.
|
| |
|
|
|
|
| |
blacklist the radeon driver when ati_unfree is installed.
|
| |
|
|
|
|
|
| |
I'm sorry; I didn't notice Eelco renamed the option.
My dry-run didn't catch that one with nvidia driver, no idea why.
|
|
|
|
| |
so all users get this variable, thanks to work from #2692.
|
|
|
|
| |
LD_LIBRARY_PATH. Fix that, fix bumblebee module loading and make the socket group configurable
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously all card-specific stuff was scattered across xserver.nix
and opengl.nix, which is ugly. Now it can be kept together in a single
card-specific module. This required the addition of a few internal
options:
- services.xserver.drivers: A list of { name, driverName, modules,
libPath } sets.
- hardware.opengl.package: The OpenGL implementation. Note that there
can be only one OpenGL implementation at a time in a system
configuration (i.e. no dynamic detection).
- hardware.opengl.package32: The 32-bit OpenGL implementation.
|
|
|
|
|
|
|
|
| |
Fixes #2379.
The new name was a misnomer because the values really are X11 video
drivers (e.g. ‘cirrus’ or ‘nvidia’), not OpenGL implementations. That
it's also used to set an OpenGL implementation for kmscon is just
confusing overloading.
|
|
|
|
| |
Fixes #2242 in a different way (cleaner, I hope).
|
|
|
|
| |
Close #2200. Thanks to @cpages for suggesting and testing this.
|
|
Signed-off-by: Shea Levy <shea@shealevy.com>
|