diff --git a/.gitea/workflows/nix-check.yaml b/.gitea/workflows/nix-check.yaml new file mode 100644 index 0000000..1c98823 --- /dev/null +++ b/.gitea/workflows/nix-check.yaml @@ -0,0 +1,13 @@ +name: Verify build +run-name: ${{ gitea.actor }} is building +on: [push] + +jobs: + verify_build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: cachix/install-nix-action@v30 + with: + nix_path: nixpkgs=channel:nixos-24.11 + - run: nix-build diff --git a/.gitignore b/.gitignore index 50ab282..c364de4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /a.out /.zig-cache/ /zig-out/ +/result diff --git a/default.nix b/default.nix new file mode 100644 index 0000000..7479078 --- /dev/null +++ b/default.nix @@ -0,0 +1,33 @@ +# default.nix +{ pkgs ? import {} }: + +pkgs.stdenv.mkDerivation { + pname = "RatChess"; + version = "0.0.1"; + + src = ./.; + + nativeBuildInputs = with pkgs; [ + zig + zls + ]; + + buildInputs = with pkgs; [ + ]; + + buildPhase = '' + echo "Building project..." + ${pkgs.zig}/bin/zig build --global-cache-dir ./cache --release=fast + ''; + + installPhase = '' + mkdir $out + cp -r zig-out/* $out/ + ''; + + checkPhase = '' + echo "Testing project..." + ${pkgs.zig}/bin/zig build test --global-cache-dir ./cache + ''; + doCheck = true; +}