From 56449e59d7aabd1c06fb67a51a1e129b55cb9270 Mon Sep 17 00:00:00 2001 From: yuuko Date: Thu, 29 Aug 2024 21:51:04 -0700 Subject: break out of system config --- README.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 README.md (limited to 'README.md') diff --git a/README.md b/README.md new file mode 100644 index 0000000..5d0f767 --- /dev/null +++ b/README.md @@ -0,0 +1,38 @@ +### /!\ ALART /!\ ALPHA PROOF OF CONCEPT /!\ ALART /!\ + +Currently the SM/MMS side of things builds exclusively against SDK 2013 +Multiplayer. Accordingly, there are some underlying 32-bit assumptions. + +srcds-nix +========= + +This is a Nix package set and library for Source Engine dedicated servers. +It currently features: + +* fetchers for Steam content: `fetchDepotCache`, `fetchDepotFile`, `mkDepot` + * Courtesy of a patched DepotDownloader, derivations are fixed-output on the + contents of deterministic manifests, then on the SHA1 hashes within. + * This is quite distinct from the usual `steamcmd` approach, but yields a + far more reproducible server environment. Additionally, the network traffic + between `lib.fakeHash` and TOFU is measured in kilobytes, not potential + gigabytes as with [steam-fetcher]. +* AMBuild +* MetaMod: Source +* SourceMod + * a standard extensible package set for plugins and extensions, including: + * `mkDerivation` analogue: `buildSMPlugin` + * setup hook for `spcomp` include paths + * coming soon: development shells to replicate your server setup + +Usage +----- + +* `default.nix` lets you `callPackage` this repository the old-fashioned way + to get the top-level package set. +* `overlay.nix` adds it as `srcdsPackages` to the target. `srcdsPackages` is + considered its canonical place in nixpkgs. +* `flake.nix` exposes: + * `packages.${system}.default` is the top-level package set. + * `overlays.default` points to `overlay.nix`. + +[steam-fetcher]: https://github.com/nix-community/steam-fetcher -- cgit v1.2.3