about summary refs log tree commit diff
path: root/modules/nixos/games/steam-run.nix
diff options
context:
space:
mode:
authorAzat Bahawi <azat@bahawi.net>2024-03-31 21:29:27 +0300
committerAzat Bahawi <azat@bahawi.net>2024-03-31 21:29:27 +0300
commit9a5427e3a0c0ccf2a82dc503149a26b23fbd6004 (patch)
treef28beec29deeea36038615a8fb98a810891940b5 /modules/nixos/games/steam-run.nix
parent2024-03-19 (diff)
2024-03-31
Diffstat (limited to '')
-rw-r--r--modules/nixos/games/steam-run.nix78
1 files changed, 46 insertions, 32 deletions
diff --git a/modules/nixos/games/steam-run.nix b/modules/nixos/games/steam-run.nix
index fc51c85..cfee8ae 100644
--- a/modules/nixos/games/steam-run.nix
+++ b/modules/nixos/games/steam-run.nix
@@ -4,9 +4,11 @@
   pkgs,
   ...
 }:
-with lib; let
+with lib;
+let
   cfg = config.nixfiles.modules.games.steam-run;
-in {
+in
+{
   options.nixfiles.modules.games.steam-run = {
     enable = mkEnableOption "native Steam runtime";
 
@@ -19,7 +21,10 @@ in {
 
   config = mkIf cfg.enable {
     nixfiles.modules = {
-      common.nix.allowedUnfreePackages = ["steam" "steam-run"];
+      common.nix.allowedUnfreePackages = [
+        "steam"
+        "steam-run"
+      ];
 
       games = {
         enable32BitSupport = true;
@@ -30,46 +35,55 @@ in {
 
     hm.home.packages = with pkgs; [
       (steam.override {
-        extraLibraries = _:
+        extraLibraries =
+          _:
           with cfg.quirks;
-            optional blackIsleStudios openssl_1_0_0
-            ++ optionals cryptOfTheNecrodancer [
-              (import (builtins.fetchTarball {
-                url = "https://github.com/NixOS/nixpkgs/archive/d1c3fea7ecbed758168787fe4e4a3157e52bc808.tar.gz";
-                sha256 = "0ykm15a690v8lcqf2j899za3j6hak1rm3xixdxsx33nz7n3swsyy";
-              }) {inherit (config.nixpkgs) config localSystem;})
-              .flac
-            ]
-            ++ optionals mountAndBladeWarband [
-              (glew.overrideAttrs (_: super: let
+          optional blackIsleStudios openssl_1_0_0
+          ++ optionals cryptOfTheNecrodancer [
+            (import (builtins.fetchTarball {
+              url = "https://github.com/NixOS/nixpkgs/archive/d1c3fea7ecbed758168787fe4e4a3157e52bc808.tar.gz";
+              sha256 = "0ykm15a690v8lcqf2j899za3j6hak1rm3xixdxsx33nz7n3swsyy";
+            }) { inherit (config.nixpkgs) config localSystem; }).flac
+          ]
+          ++ optionals mountAndBladeWarband [
+            (glew.overrideAttrs (
+              _: super:
+              let
                 opname = super.pname;
-              in rec {
+              in
+              rec {
                 pname = "${opname}-steam-run-fix";
                 inherit (super) version;
                 src = fetchurl {
                   url = "mirror://sourceforge/${opname}/${opname}-${version}.tgz";
                   hash = "sha256-BN6R5+Z2MDm8EZQAlc2cf4gLq6ghlqd2X3J6wFqZPJU=";
                 };
-              }))
-              (fmodex.overrideAttrs (_: super: let
+              }
+            ))
+            (fmodex.overrideAttrs (
+              _: super:
+              let
                 opname = super.pname;
-              in rec {
+              in
+              rec {
                 pname = "${opname}-steam-run-fix";
                 inherit (super) version;
-                installPhase = let
-                  libPath = makeLibraryPath [
-                    alsa-lib
-                    libpulseaudio
-                    stdenv.cc.cc
-                  ];
-                in ''
-                  install -Dm755 api/lib/libfmodex64-${version}.so $out/lib/libfmodex64.so
-                  patchelf --set-rpath ${libPath} $out/lib/libfmodex64.so
-                '';
-              }))
-            ];
-      })
-      .run
+                installPhase =
+                  let
+                    libPath = makeLibraryPath [
+                      alsa-lib
+                      libpulseaudio
+                      stdenv.cc.cc
+                    ];
+                  in
+                  ''
+                    install -Dm755 api/lib/libfmodex64-${version}.so $out/lib/libfmodex64.so
+                    patchelf --set-rpath ${libPath} $out/lib/libfmodex64.so
+                  '';
+              }
+            ))
+          ];
+      }).run
     ];
   };
 }

Consider giving Nix/NixOS a try! <3