Files
nix-config/home/linux/gui/i3/options/nvidia.nix

28 lines
570 B
Nix

{
config,
lib,
...
}:
with lib; let
cfg = config.modules.desktop.i3;
in {
options.modules.desktop.i3 = {
nvidia = mkEnableOption "whether nvidia GPU is used";
};
config = mkIf (cfg.enable && cfg.nvidia) (
let
env = {
"LIBVA_DRIVER_NAME" = "nvidia";
"GBM_BACKEND" = "nvidia-drm";
"__GLX_VENDOR_LIBRARY_NAME" = "nvidia";
};
in {
# environment set for systemd's user session
systemd.user.sessionVariables = env;
# environment set at user login
home.sessionVariables = env;
}
);
}