From f592a4ecbd972bde91e46d4a442da81f46d7e0e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Madeleine=20Sydney=20=C5=9Alaga?= Date: Sat, 11 Jul 2026 16:27:59 -0600 Subject: [PATCH] gitea action --- .gitea/workflows/build.yaml | 13 +++++++++++++ flake.nix | 23 ++++++++++++++++++----- 2 files changed, 31 insertions(+), 5 deletions(-) create mode 100644 .gitea/workflows/build.yaml diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml new file mode 100644 index 0000000..4f1069a --- /dev/null +++ b/.gitea/workflows/build.yaml @@ -0,0 +1,13 @@ +name: build +on: [push] + +jobs: + build: + runs-on: nixos + steps: + - name: Check out repository code + uses: actions/checkout@v4 + - name: build gyehoek + run: nix build -L .#gyehoek + - name: test gyehoek + run: nix flake check -L diff --git a/flake.nix b/flake.nix index 939fda5..008439e 100644 --- a/flake.nix +++ b/flake.nix @@ -22,6 +22,16 @@ gyehoek = final.haskell-nix.project' { src = ./.; compiler-nix-name = "ghc912"; + modules = [({ pkgs, lib, ...}: { + packages.gyehoek.components.tests.test.preCheck = + let bin = [pkgs.wasmtime pkgs.git]; + in '' + # Wasmtime requires a cache in $HOME. This is less + # painful than reconfiguring the cache location. + export HOME=$(mktemp -d) + export PATH=${lib.makeBinPath bin}:$PATH + ''; + })]; shell = { withHoogle = true; inputsFrom = []; @@ -32,7 +42,6 @@ buildInputs = with final; [ haskellPackages.cabal-fmt self.packages.${final.stdenv.hostPlatform.system}.shake - final.haskellPackages.shelltestrunner final.wabt final.nodejs final.wasmtime @@ -66,14 +75,18 @@ _pkgs = each-system ({ pkgs, ... }: pkgs); _hf = hf; - packages = each-system ({ pkgs, system, ... }: - hf.packages.${system} // { - default = hf.packages.${system}."gyehoek:exe:gyehoek"; + packages = each-system ({ pkgs, lib, system, ... }: + hf.packages.${system} // lib.fix (packages: { + gyehoek = hf.packages.${system}."gyehoek:exe:gyehoek"; + default = packages.gyehoek; shake = pkgs.callPackage ./shake-wrapper.nix {}; - }); + })); devShells = each-system ({ pkgs, system, ... }: hf.devShells.${system}); + + checks = each-system + ({ pkgs, system, ... }: hf.checks.${system}); }; nixConfig = {