diff --git a/flake.lock b/flake.lock index cc3d7ac..438feb8 100644 --- a/flake.lock +++ b/flake.lock @@ -30,11 +30,11 @@ ] }, "locked": { - "lastModified": 1710544781, - "narHash": "sha256-nkxihb3D85k1nZV1CzlB3seMKtTEeKb688sblIGp/Bs=", + "lastModified": 1710153923, + "narHash": "sha256-aCaHueh0QkFoAMnhfYwrG9LTx/fCCsicPzjgPMLjByc=", "owner": "catppuccin", "repo": "vscode", - "rev": "d7b96ccac36fd29929bd97bc9357413cc4e0240c", + "rev": "91851ec881a99541355ad4d665f775ee0e15dfcc", "type": "github" }, "original": { @@ -59,6 +59,24 @@ "type": "github" } }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1709336216, + "narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "flake-utils": { "inputs": { "systems": "systems_2" @@ -105,11 +123,11 @@ ] }, "locked": { - "lastModified": 1710820906, - "narHash": "sha256-2bNMraoRB4pdw/HtxgYTFeMhEekBZeQ53/a8xkqpbZc=", + "lastModified": 1710281778, + "narHash": "sha256-bvWr9vvBrAxb44kHM3H3cY/uQg+4pYP1BM/Nu3e/7V8=", "owner": "nix-community", "repo": "home-manager", - "rev": "022464438a85450abb23d93b91aa82e0addd71fb", + "rev": "49a266d2ca59df8a03249550e73a54626181b65d", "type": "github" }, "original": { @@ -147,11 +165,11 @@ ] }, "locked": { - "lastModified": 1710915975, - "narHash": "sha256-yOc0AD6ba7mbialNciZGzuSQLMo4CopoZGEfcUugA4I=", + "lastModified": 1710025765, + "narHash": "sha256-CnNH3E1xB/xfif+KotTfvSGLLqOZ0OvUcUrDsFMwN6Q=", "owner": "Jovian-Experiments", "repo": "Jovian-NixOS", - "rev": "179d73fbe14c5bdb835d10bcc1c783466112bfa6", + "rev": "2e8c168044e86ee1344c18bde5caeffe205292f2", "type": "github" }, "original": { @@ -176,6 +194,27 @@ "type": "github" } }, + "nix-gaming": { + "inputs": { + "flake-parts": "flake-parts", + "nixpkgs": [ + "nixpkgs-unstable-raw" + ] + }, + "locked": { + "lastModified": 1710310905, + "narHash": "sha256-D7f1CTKO8AZupjvymvrgCm3PY1x79IMrTqvppNyVjnY=", + "owner": "fufexan", + "repo": "nix-gaming", + "rev": "dcae53055d404ee74a8273276d4b8731718574a9", + "type": "github" + }, + "original": { + "owner": "fufexan", + "repo": "nix-gaming", + "type": "github" + } + }, "nix-github-actions": { "inputs": { "nixpkgs": [ @@ -220,11 +259,11 @@ ] }, "locked": { - "lastModified": 1710644923, - "narHash": "sha256-0fjbN5GYYDKPyPay0l8gYoH+tFfNqPPwP5sxxBreeA4=", + "lastModified": 1710120787, + "narHash": "sha256-tlLuB73OCOKtU2j83bQzSYFyzjJo3rjpITZE5MoofG8=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "e25efda85e39fcdc845e371971ac4384989c4295", + "rev": "e76ff2df6bfd2abe06abd8e7b9f217df941c1b07", "type": "github" }, "original": { @@ -240,11 +279,11 @@ ] }, "locked": { - "lastModified": 1710644923, - "narHash": "sha256-0fjbN5GYYDKPyPay0l8gYoH+tFfNqPPwP5sxxBreeA4=", + "lastModified": 1710120787, + "narHash": "sha256-tlLuB73OCOKtU2j83bQzSYFyzjJo3rjpITZE5MoofG8=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "e25efda85e39fcdc845e371971ac4384989c4295", + "rev": "e76ff2df6bfd2abe06abd8e7b9f217df941c1b07", "type": "github" }, "original": { @@ -255,11 +294,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1710783728, - "narHash": "sha256-eIsfu3c9JUBgm3cURSKTXLEI9Dlk1azo+MWKZVqrmkc=", + "lastModified": 1710123225, + "narHash": "sha256-j3oWlxRZxB7cFsgEntpH3rosjFHRkAo/dhX9H3OfxtY=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "1e679b9a9970780cd5d4dfe755a74a8f96d33388", + "rev": "ad2fd7b978d5e462048729a6c635c45d3d33c9ba", "type": "github" }, "original": { @@ -269,13 +308,31 @@ "type": "github" } }, - "nixpkgs-raw": { + "nixpkgs-lib": { "locked": { - "lastModified": 1710838473, - "narHash": "sha256-RLvwdQSENKOaLdKhNie8XqHmTXzNm00/M/THj6zplQo=", + "dir": "lib", + "lastModified": 1709237383, + "narHash": "sha256-cy6ArO4k5qTx+l5o+0mL9f5fa86tYUX3ozE1S+Txlds=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fa9f817df522ac294016af3d40ccff82f5fd3a63", + "rev": "1536926ef5621b09bba54035ae2bb6d806d72ac8", + "type": "github" + }, + "original": { + "dir": "lib", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-raw": { + "locked": { + "lastModified": 1710162809, + "narHash": "sha256-i2R2bcnQp+85de67yjgZVvJhd6rRnJbSYNpGmB6Leb8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "ddcd7598b2184008c97e6c9c6a21c5f37590b8d2", "type": "github" }, "original": { @@ -286,11 +343,11 @@ }, "nixpkgs-unstable-raw": { "locked": { - "lastModified": 1710806803, - "narHash": "sha256-qrxvLS888pNJFwJdK+hf1wpRCSQcqA6W5+Ox202NDa0=", + "lastModified": 1710272261, + "narHash": "sha256-g0bDwXFmTE7uGDOs9HcJsfLFhH7fOsASbAuOzDC+fhQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b06025f1533a1e07b6db3e75151caa155d1c7eb3", + "rev": "0ad13a6833440b8e238947e47bea7f11071dc2b2", "type": "github" }, "original": { @@ -301,11 +358,11 @@ }, "nur": { "locked": { - "lastModified": 1710919093, - "narHash": "sha256-0A7NnR+kfsn9VSTkbZpkx5JAl7psNU5QKpEZk8wU/uU=", + "lastModified": 1710317965, + "narHash": "sha256-XsumRdRnryHdyzKMxXFhI7FXp0JCksDr19S96jG5fCI=", "owner": "nix-community", "repo": "NUR", - "rev": "14ecc0dbbc7f572a29fb177168c991379d5e44b9", + "rev": "e3ca1bd405762320da4c8808acc724b89dbe5edd", "type": "github" }, "original": { @@ -345,6 +402,7 @@ "home-manager-unstable": "home-manager-unstable", "jovian": "jovian", "nix-flatpak": "nix-flatpak", + "nix-gaming": "nix-gaming", "nix-impermanence": "nix-impermanence", "nix-index-db": "nix-index-db", "nix-index-db-unstable": "nix-index-db-unstable", @@ -412,11 +470,11 @@ ] }, "locked": { - "lastModified": 1710897544, - "narHash": "sha256-3mPv91syU+Vqu4TPoOJR6dKBAjfOHZL44jPXdHZ0Les=", + "lastModified": 1710292754, + "narHash": "sha256-xwX3HOa7cKEeN6jU/QpLyTDbzlYwuRAAhC1rzu04ndE=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "f2f5adbda31543a80667500769f20c6369038897", + "rev": "46173e748ea7d66d285302c899e5016613be9199", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 8dfa996..a68172a 100644 --- a/flake.nix +++ b/flake.nix @@ -69,6 +69,11 @@ nix-flatpak.url = "github:gmodena/nix-flatpak/main"; nur.url = "github:nix-community/NUR"; + + nix-gaming = { + url = "github:fufexan/nix-gaming"; + inputs.nixpkgs.follows = "nixpkgs-unstable-raw"; + }; }; outputs = { ... } @inputs: with inputs; diff --git a/roles/gaming/programs/steam.nix b/roles/gaming/programs/steam.nix index 321633c..5499456 100644 --- a/roles/gaming/programs/steam.nix +++ b/roles/gaming/programs/steam.nix @@ -1,16 +1,32 @@ - { config, pkgs, ... }: +{ config, flakeSelf, ... }: + +let + nix-gaming = flakeSelf.inputs.nix-gaming; +in { + # Get the nix-gaming module + imports = [ + # This module is basically built in to nixpkgs now, so it;s not useful + # nix-gaming.nixosModules.steamCompat + ]; + programs.steam = { enable = true; # Doubt that I'll use it, but I'll enable it anyways remotePlay.openFirewall = true; - extraCompatPackages = with pkgs; [ - proton-ge-bin + extraCompatPackages = with nix-gaming.packages.x86_64-linux; [ + proton-ge ]; }; + # Use nix-gaming's cachix + nix.settings = { + substituters = ["https://nix-gaming.cachix.org"]; + trusted-public-keys = ["nix-gaming.cachix.org-1:nbjlureqMbRAxR1gJ/f3hxemL9svXaZF/Ees8vCUUs4="]; + }; + # Some linux native games (rise of the tomb raider) use alsa for sound services.pipewire.alsa.enable = if config.services.pipewire.pulse.enable == true then true else false;