diff --git a/nixos/modules/hardware/opengl.nix b/nixos/modules/hardware/opengl.nix index 7b5e669d47f4..9108bcbd1652 100644 --- a/nixos/modules/hardware/opengl.nix +++ b/nixos/modules/hardware/opengl.nix @@ -69,50 +69,21 @@ 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 '' - Same as {option}`package` but for the 32-bit OpenGL implementation on - 64-bit systems. Used when {option}`driSupport32Bit` is set. + The package that provides 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_22"; - 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_22"; - 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 = []; @@ -126,6 +97,7 @@ in ::: ''; }; + extraPackages32 = mkOption { type = types.listOf types.package; default = []; @@ -181,6 +153,9 @@ 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; }; }