nix/README.md
2025-06-20 17:34:56 +02:00

57 lines
1.3 KiB
Markdown

# Spire nix packages
A set of tf2 related nix packages
## Packages
The following is currently packaged:
- `ambuild`
- `sourcepawn`
- `metamod-source`
- `sourcemod`
- [`sourcemod-include-library`](https://github.com/JoinedSenses/SourceMod-IncludeLibrary)
## Sourcemod SDKs
For the `sourcemod` package, you need to enable one or more SDKs at build time.
The SDKs are packaged under the `hl2sdk` package and can be enabled like in the
following example.
```nix
pkgs.sourcemod.override {sdks = {inherit (pkgs.hl2sdk) tf2;};};
```
### Supported SDKs
Note that while all the sdks listed below are all packages under `hl2sdk`,
sourcemod doesn't support all of them.
#### i686-linux
`episode1`, `ep2`, `css`, `hl2dm`, `dods`, `sdk2013`, `tf2`, `l4d`, `l4d2`,
`nucleardawn`, `csgo`, `insurgency`, `bms` and `doi`
#### x86_64-linux
`mcv`, `blade`, `csgo`, `tf2`, `cs2`, `sdk2013`, `dota`, `dods`, `hl2dm`,
`deadlock`, `insurgency` and `css`
## Building sourcepawn script
```nix
buildSourcePawnScript {
name = "test";
src = ./test.sp;
};
```
By default, the sourcemod includes are available.
Additional includes can be added by setting the `includes` argument to an array
of packages containing an `include` folder containing the `.inc` files. A helper
is provided to create include packages:
```nix
sourcepawn.buildInclude [./cURL.inc ./cURL_header.inc]
```