1799ddf7f0
Since xanthous has a checked-in package.yaml and cabal file, the haskellPackages build infrastructure will use the package.yaml file for all builds. The resulting problem is that our CI won't actually catch build failures that would be observable with cabal or when building from the sdist. We fix that by filtering out the package.yaml file in pkg.nix additionally to the filters specified in .gitignore. For this we need gitignoreFilter from gitignore.nix which we expose as part of a functor set from third_party.gitignoreSource to maintain interface compatibility. Change-Id: I337185f484d2027341f38031dcd78898706904eb Reviewed-on: https://cl.tvl.fyi/c/depot/+/2609 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi> Reviewed-by: tazjin <mail@tazj.in> |
||
---|---|---|
.. | ||
.github | ||
bench | ||
build | ||
src | ||
test | ||
.envrc | ||
.gitignore | ||
default.nix | ||
hie.yaml | ||
LICENSE | ||
nixpkgs.nix | ||
package.yaml | ||
pkg.nix | ||
README.org | ||
Setup.hs | ||
shell.nix | ||
xanthous.cabal |
Xanthous
Building
$ nix build
Running
$ ./result/bin/xanthous [--help]
Keyboard commands
Keyboard commands are currently undocumented, but can be found in [this file. Movement uses the nethack-esque hjklybnu.
Development
Use lorri, or run everything in a nix-shell
# Build (for dev)
$ cabal new-build
# Run the game
$ cabal new-run xanthous
# Run tests
$ cabal new-run test
# Run a repl
$ cabal new-repl