This commit is contained in:
Madeleine Sydney
2025-04-02 09:41:40 -06:00
commit e40d152489
13 changed files with 392 additions and 0 deletions

42
tf2/packages/default.nix Normal file
View File

@@ -0,0 +1,42 @@
{ pkgs, lib }:
let
mkTf2Config = pkgs.callPackage ../mkTf2Config.nix {};
fetchFromGameBanana =
{ id
, hash
}:
pkgs.fetchzip {
url = "https://gamebanana.com/dl/${id}";
extension = "zip";
inherit hash;
};
mkCfg = name: body:
pkgs.runCommand name {} ''
${lib.toShellVar "name" name}
mkdir -p $out/cfg "$(dirname "$out/cfg/$name")"
tee "$out/cfg/$name.cfg" << SUPER_UNIQUE_EOF
// Generated by tf2.nix
${body}
SUPER_UNIQUE_EOF
'';
mergeTf2Configs = configs:
pkgs.symlinkJoin {
name = "merged-tf2-config";
paths = configs;
};
extra-args = {
inherit mkTf2Config fetchFromGameBanana mkCfg mergeTf2Configs;
};
in lib.mergeAttrsList [
extra-args
{ mastercomfig = pkgs.callPackage ./mastercomfig.nix extra-args; }
(pkgs.callPackage ./huds.nix extra-args)
(pkgs.callPackage ./misc.nix extra-args)
(pkgs.callPackage ./scripts.nix extra-args)
]