main
 1{
 2  den.aspects.game.utils = {
 3    cacheHome = {config, ...}: {
 4      directories = [
 5        "${config.xdg.userDirs.extraConfig.GAMES}"
 6      ];
 7    };
 8
 9    nixos = {pkgs, ...}: {
10      programs.gamemode = {
11        enable = true;
12      };
13
14      # load ntsync
15      boot.kernelModules = ["ntsync"];
16      # make ntsync device accessible
17      services.udev.packages = [
18        (pkgs.writeTextFile {
19          name = "ntsync-udev-rules";
20          text = ''KERNEL=="ntsync", MODE="0660", TAG+="uaccess"'';
21          destination = "/etc/udev/rules.d/70-ntsync.rules";
22        })
23      ];
24    };
25
26    homeManager = {config, ...}: {
27      xdg.userDirs = {
28        extraConfig = {
29          GAMES = "${config.home.homeDirectory}/Games";
30        };
31      };
32
33      programs.mangohud = {
34        enable = true;
35        settings = {
36          fps = true;
37          frametime = true;
38
39          # Hardware stats
40          cpu_stats = true;
41          cpu_temp = true;
42          cpu_power = true;
43          cpu_mhz = true;
44          gpu_stats = true;
45          gpu_temp = true;
46          gpu_power = true;
47          gpu_core_clock = true;
48          gpu_mem_clock = true;
49          ram = true;
50          vram = true;
51
52          # Keybinds
53          toggle_hud = "Shift_R+F12";
54        };
55      };
56    };
57  };
58}