-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsteam.nix
64 lines (57 loc) · 1.87 KB
/
steam.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
{
config,
lib,
pkgs,
...
}:
{
# TODO: get steam to work
environment.systemPackages = with pkgs; [
steamcmd
# steam-tui
gamescope
adwsteamgtk # TODO: how to apply?
];
programs.steam = {
enable = true;
extraCompatPackages = with pkgs; [ proton-ge-bin ];
# extraPackages = with pkgs; [ ];
gamescopeSession.enable = false;
# remotePlay.openFirewall = false;
};
programs.gamescope.enable = true;
hardware.steam-hardware.enable = true;
programs.gamemode.enable = true;
# specialisation.gaming.configuration = {
# system.nixos.tags = [ "gaming" ];
# Nvidia Configuration
services.xserver.videoDrivers = [ "nvidia" ];
hardware.graphics.enable = true;
hardware.nvidia.modesetting.enable = true;
hardware.nvidia-container-toolkit.enable = true;
hardware.nvidia.powerManagement.enable = true;
hardware.nvidia.powerManagement.finegrained = true;
hardware.nvidia.dynamicBoost.enable = true;
hardware.nvidia.gsp.enable = true; # supported by the discrete GPU in my laptop, "GeForce RTX 3060 Mobile / Max-Q"
hardware.nvidia.open = false;
hardware.nvidia.prime = {
sync.enable = lib.mkForce false;
offload = rec {
enable = lib.mkForce true;
enableOffloadCmd = enable; # adds `nvidia-offload` to `environment.systemPackages`
};
# NOTE: ids found with `lspci | grep VGA`
nvidiaBusId = "PCI:01:00:0";
intelBusId = "PCI:00:02:0";
};
# hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable;
hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.latest;
# hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.beta;
# hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.vulkan_beta;
programs.coolercontrol.nvidiaSupport = true;
programs.coolercontrol.enable = true;
# };
services.sunshine = {
enable = false;
};
}