diff --git a/flake.lock b/flake.lock index dd4795c..d424eaa 100644 --- a/flake.lock +++ b/flake.lock @@ -450,11 +450,11 @@ }, "nur": { "locked": { - "lastModified": 1717864805, - "narHash": "sha256-iu5gmYBncm1c+FSFmHiRkEvbcWpH/ZO/MQYe0r5ng7s=", + "lastModified": 1717872410, + "narHash": "sha256-kL4bugfx+R4ozR6t8MrGSdv3LVX7H9IkCxmvjaLAQ7o=", "owner": "nix-community", "repo": "NUR", - "rev": "e212541138b753c7bc5215524215e2a07403df8d", + "rev": "3b134079df522044c0da57f1b7785646a7b76518", "type": "github" }, "original": { diff --git a/hosts/common/users/media/default.nix b/hosts/common/users/media/default.nix index f88b6ce..ec8af1d 100644 --- a/hosts/common/users/media/default.nix +++ b/hosts/common/users/media/default.nix @@ -37,6 +37,8 @@ in ".mozilla" ".local" ".zotero" + ".var" + ".steam" ]; files = [ ]; diff --git a/hosts/sparky/default.nix b/hosts/sparky/default.nix index bc5b60a..47ff70e 100644 --- a/hosts/sparky/default.nix +++ b/hosts/sparky/default.nix @@ -1,4 +1,4 @@ -{ inputs, config, lib, pkgs, outputs,... }: +{ inputs, config, lib, pkgs, outputs, ... }: let # Disko setup fsType = "btrfs"; # one of ext4 or btrfs. Use btrfs if using impermanence @@ -45,14 +45,58 @@ in enableIPv6 = false; }; + # Gaming + hardware.xone.enable = true; + environment.systemPackages = with pkgs; [ + #Xbox controller + linuxKernel.packages.linux_zen.xone + + # Steam + mangohud + gamemode + + # WINE + wine + winetricks + protontricks + vulkan-tools + + # Extra dependencies + # https://github.com/lutris/docs/ + gnutls + openldap + libgpgerror + freetype + sqlite + libxml2 + xml2 + SDL2 + ]; + nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ # Add additional package names here "nvidia-x11" "nvidia-settings" "nvidia-persistenced" + "steam" + "steam-original" + "steam-run" ]; + programs.steam.enable = true; + programs.gamemode.enable = true; + nixpkgs.config.packageOverrides = pkgs: { + steam = pkgs.steam.override { + extraPkgs = pkgs: with pkgs; [ + pango + libthai + harfbuzz + gamemode + ]; + }; + }; + services.displayManager.defaultSession = "cinnamon"; services.libinput.enable = true; @@ -65,7 +109,7 @@ in ''; desktopManager = { cinnamon.enable = true; - }; + }; }; # Enable OpenGL