diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml deleted file mode 100644 index 0a4c95a..0000000 --- a/.forgejo/workflows/build.yaml +++ /dev/null @@ -1,29 +0,0 @@ -on: - pull_request: - push: - - -jobs: - kernel: - runs-on: local/aarch64-linux - - steps: - - uses: actions/checkout@v4 - - - name: set home - run: | - echo "HOME=$PWD" >> "$GITHUB_ENV" - - - name: build all - run: | - set -x - TARGETS=$(nix eval .#packages.aarch64-linux --apply 'builtins.attrNames' --json | jq '. | map(".#" + .) | join(" ")' -r) - OUTPUT=$(nix build --print-out-paths --keep-going $TARGETS) - echo $OUTPUT - echo "$OUTPUT" > build.out - - - name: upload to cachix - run: | - cachix push nixos-x13s $(cat build.out) - env: - CACHIX_AUTH_TOKEN: '${{ secrets.CACHIX_TOKEN_X13S }}' diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml new file mode 100644 index 0000000..4f80aef --- /dev/null +++ b/.woodpecker/build.yaml @@ -0,0 +1,25 @@ +labels: + type: local + system: aarch64-linux + +steps: + - name: find-targets + image: bash + commands: + - nix develop .#ci -c just -- find-targets + + - name: build + image: bash + commands: + - nix develop .#ci -c just -- build + + - name: upload + image: bash + commands: + - nix develop .#ci -c just -- push + environment: + CACHIX_AUTH_TOKEN: + from_secret: CACHIX_AUTH_TOKEN + +when: + - event: push diff --git a/flake.nix b/flake.nix index 5d476d6..4d49eb7 100644 --- a/flake.nix +++ b/flake.nix @@ -20,9 +20,16 @@ perSystem = { pkgs, ... }: { - devShells = { - default = pkgs.mkShellNoCC { packages = [ pkgs.npins ]; }; - ci = pkgs.mkShellNoCC { packages = [ pkgs.cachix ]; }; + devShells = rec { + default = pkgs.mkShellNoCC { packages = [ pkgs.npins ] ++ ci.nativeBuildInputs; }; + + ci = pkgs.mkShellNoCC { + packages = [ + pkgs.cachix + pkgs.jq + pkgs.just + ]; + }; }; packages = { diff --git a/justfile b/justfile new file mode 100644 index 0000000..5d7f7fe --- /dev/null +++ b/justfile @@ -0,0 +1,12 @@ +all: + just -l + +find-targets: + nix eval .#packages.aarch64-linux --apply 'builtins.attrNames' --json | jq '. | map(".#" + .) | join(" ")' -r > targets + +build: + nix build --print-out-paths --keep-going $(cat targets) > outputs + cat outputs + +push: + cachix -- push nixos-x13s $(cat outputs)