mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-18 15:56:50 +01:00
nixos/opengl: add mesaPackage option
This commit is contained in:
parent
c4752a1631
commit
bf1785d0a9
1 changed files with 33 additions and 8 deletions
|
@ -69,21 +69,50 @@ in
|
|||
package = mkOption {
|
||||
type = types.package;
|
||||
internal = true;
|
||||
default = cfg.mesaPackage;
|
||||
description = lib.mdDoc ''
|
||||
The package that provides the OpenGL implementation.
|
||||
|
||||
The default is Mesa's drivers which should cover all OpenGL-capable
|
||||
hardware. If you want to use another Mesa version, adjust
|
||||
{option}`mesaPackage`.
|
||||
'';
|
||||
};
|
||||
|
||||
package32 = mkOption {
|
||||
type = types.package;
|
||||
internal = true;
|
||||
default = cfg.mesaPackage32;
|
||||
description = lib.mdDoc ''
|
||||
The package that provides the 32-bit OpenGL implementation on
|
||||
64-bit systems. Used when {option}`driSupport32Bit` is
|
||||
set.
|
||||
Same as {option}`package` but for the 32-bit OpenGL implementation on
|
||||
64-bit systems. Used when {option}`driSupport32Bit` is set.
|
||||
'';
|
||||
};
|
||||
|
||||
mesaPackage = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.mesa;
|
||||
defaultText = literalExpression "pkgs.mesa";
|
||||
example = literalExpression "pkgs.mesa_23";
|
||||
description = lib.mdDoc ''
|
||||
The Mesa driver package used for rendering support on the system.
|
||||
|
||||
You should only need to adjust this if you require a newer Mesa
|
||||
version for your hardware or because you need to patch a bug.
|
||||
'';
|
||||
apply = mesa: mesa.drivers or throw "`mesa` package must have a `drivers` output.";
|
||||
};
|
||||
mesaPackage32 = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.pkgsi686Linux.mesa;
|
||||
defaultText = literalExpression "pkgs.pkgsi686Linux.mesa";
|
||||
example = literalExpression "pkgs.pkgsi686Linux.mesa_23";
|
||||
description = lib.mdDoc ''
|
||||
Same as {option}`mesaPackage` but for the 32-bit Mesa on 64-bit
|
||||
systems. Used when {option}`driSupport32Bit` is set.
|
||||
'';
|
||||
apply = mesa: mesa.drivers or throw "`mesa` package must have a `drivers` output.";
|
||||
};
|
||||
|
||||
extraPackages = mkOption {
|
||||
type = types.listOf types.package;
|
||||
default = [];
|
||||
|
@ -97,7 +126,6 @@ in
|
|||
:::
|
||||
'';
|
||||
};
|
||||
|
||||
extraPackages32 = mkOption {
|
||||
type = types.listOf types.package;
|
||||
default = [];
|
||||
|
@ -153,9 +181,6 @@ in
|
|||
environment.sessionVariables.LD_LIBRARY_PATH = mkIf cfg.setLdLibraryPath
|
||||
([ "/run/opengl-driver/lib" ] ++ optional cfg.driSupport32Bit "/run/opengl-driver-32/lib");
|
||||
|
||||
hardware.opengl.package = mkDefault pkgs.mesa.drivers;
|
||||
hardware.opengl.package32 = mkDefault pkgs.pkgsi686Linux.mesa.drivers;
|
||||
|
||||
boot.extraModulePackages = optional (elem "virtualbox" videoDrivers) kernelPackages.virtualboxGuestAdditions;
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue