32 lines
903 B
Nix
32 lines
903 B
Nix
|
{ lib, config, ... }:
|
||
|
with lib;
|
||
|
let cfg = config.voidcruiser.graphics;
|
||
|
in {
|
||
|
options.voidcruiser.graphics ={
|
||
|
defaultSettings.enable = mkEnableOption "Enables some basic graphical settings";
|
||
|
nvidia = {
|
||
|
enable = mkEnableOption "Enables Nvidia settings";
|
||
|
proprietaryDrivers = mkEnableOption "Enables proprietary drivers";
|
||
|
};
|
||
|
};
|
||
|
config = {
|
||
|
hardware = {
|
||
|
opengl = {
|
||
|
enable = true;
|
||
|
driSupport = true;
|
||
|
driSupport32Bit = true;
|
||
|
};
|
||
|
nvidia = mkIf cfg.nvidia.enable {
|
||
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||
|
powerManagement = {
|
||
|
enable = false;
|
||
|
finegrained = false;
|
||
|
};
|
||
|
open = !cfg.nvidia.proprietaryDrivers;
|
||
|
nvidiaSettings = cfg.nvidia.proprietaryDrivers;
|
||
|
};
|
||
|
};
|
||
|
services.xserver.videoDrivers = mkIf cfg.nvidia.proprietaryDrivers ["nvidia"];
|
||
|
};
|
||
|
}
|