diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2014-02-05 19:16:15 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2014-02-05 19:20:42 +0100 |
commit | 428469443987e063760cf85235d96f02f51dc891 (patch) | |
tree | d19860666459418e61b9df198d1de312cd38bc91 | |
parent | a123a2675bdd7da9b592fb7ab3db328208f88843 (diff) |
nixos/mesa: don't create /run/opengl-driver-32 ...
... if on 64-bit and without 32-bit drivers. Also assert against requesting 32-bit drivers on 32-bit machine.
-rw-r--r-- | nixos/modules/services/x11/mesa.nix | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/nixos/modules/services/x11/mesa.nix b/nixos/modules/services/x11/mesa.nix index f892a1517582a..12fc7ae1178dd 100644 --- a/nixos/modules/services/x11/mesa.nix +++ b/nixos/modules/services/x11/mesa.nix @@ -61,13 +61,18 @@ in { }; config = mkIf cfg.enable { + assertions = pkgs.lib.singleton { + assertion = cfg.driSupport32Bit -> pkgs.stdenv.isx86_64; + message = "Option driSupport32Bit only makes sens on a 64-bit system."; + }; + system.activationScripts.setup-opengl.deps = []; system.activationScripts.setup-opengl.text = '' rm -f /run/opengl-driver{,-32} - ${optionalString (!cfg.driSupport32Bit) "ln -sf opengl-driver /run/opengl-driver-32"} - - ${# !!! The OpenGL driver depends on what's detected at runtime. - if elem "nvidia" cfg.videoDrivers then + ${optionalString (pkgs.stdenv.isi686) "ln -sf opengl-driver /run/opengl-driver-32"} + '' + #TODO: The OpenGL driver should depend on what's detected at runtime. + +( if elem "nvidia" cfg.videoDrivers then '' ln -sf ${kernelPackages.nvidia_x11} /run/opengl-driver ${optionalString cfg.driSupport32Bit @@ -89,8 +94,7 @@ in { ${optionalString cfg.driSupport32Bit "ln -sf ${pkgs_i686.mesa_drivers} /run/opengl-driver-32"} '' - } - ''; + ); environment.variables.LD_LIBRARY_PATH = [ "/run/opengl-driver/lib" "/run/opengl-driver-32/lib" ] |