voidconf/modules/graphics.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"];
};
}