diff options
| author | nsfisis <54318333+nsfisis@users.noreply.github.com> | 2025-04-27 13:47:46 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-27 13:47:46 +0900 |
| commit | 771f7c72fd1f1236031751048861550c694c796c (patch) | |
| tree | f2b74712b9b3c064bbc435e14a889825e67a82d4 /.github/workflows/build.yml | |
| download | nur-packages-771f7c72fd1f1236031751048861550c694c796c.tar.gz nur-packages-771f7c72fd1f1236031751048861550c694c796c.tar.zst nur-packages-771f7c72fd1f1236031751048861550c694c796c.zip | |
Initial commit
Diffstat (limited to '.github/workflows/build.yml')
| -rw-r--r-- | .github/workflows/build.yml | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..6f0117f --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,76 @@ +name: "Build and populate cache" +on: + pull_request: + push: + branches: + - main + - master + schedule: + # rebuild everyday at 2:51 + # TIP: Choose a random time here so not all repositories are build at once: + # https://www.random.org/clock-times/?num=1&earliest=01%3A00&latest=08%3A00&interval=5&format=html&rnd=new + - cron: '51 2 * * *' + workflow_dispatch: +jobs: + tests: + strategy: + matrix: + # Set this to notify the global nur package registry that changes are + # available. + # + # The repo name as used in + # https://github.com/nix-community/NUR/blob/master/repos.json + nurRepo: + - <YOUR_REPO_NAME> + # Set this to cache your build results in cachix for faster builds + # in CI and for everyone who uses your cache. + # + # Format: Your cachix cache host name without the ".cachix.org" suffix. + # Example: mycache (for mycache.cachix.org) + # + # For this to work, you also need to set the CACHIX_SIGNING_KEY or + # CACHIX_AUTH_TOKEN secret in your repository secrets settings in + # Github found at + # https://github.com/<your_githubname>/nur-packages/settings/secrets + cachixName: + - <YOUR_CACHIX_NAME> + nixPath: + - nixpkgs=https://github.com/NixOS/nixpkgs/archive/refs/heads/nixpkgs-unstable.tar.gz + - nixpkgs=https://github.com/NixOS/nixpkgs/archive/refs/heads/nixos-unstable.tar.gz + - nixpkgs=https://github.com/NixOS/nixpkgs/archive/refs/heads/nixos-24.05.tar.gz + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + - name: Install nix + uses: cachix/install-nix-action@v30 + with: + nix_path: "${{ matrix.nixPath }}" + extra_nix_config: | + experimental-features = nix-command flakes + access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} + - name: Show nixpkgs version + run: nix-instantiate --eval -E '(import <nixpkgs> {}).lib.version' + - name: Setup cachix + uses: cachix/cachix-action@v15 + # Don't replace <YOUR_CACHIX_NAME> here! + if: ${{ matrix.cachixName != '<YOUR_CACHIX_NAME>' }} + with: + name: ${{ matrix.cachixName }} + signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}' + authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' + - name: Check evaluation + run: | + nix-env -f . -qa \* --meta --xml \ + --allowed-uris https://static.rust-lang.org \ + --option restrict-eval true \ + --option allow-import-from-derivation true \ + --drv-path --show-trace \ + -I nixpkgs=$(nix-instantiate --find-file nixpkgs) \ + -I $PWD + - name: Build nix packages + run: nix shell -f '<nixpkgs>' nix-build-uncached -c nix-build-uncached ci.nix -A cacheOutputs + - name: Trigger NUR update + # Don't replace <YOUR_REPO_NAME> here! + if: ${{ matrix.nurRepo != '<YOUR_REPO_NAME>' }} + run: curl -XPOST "https://nur-update.nix-community.org/update?repo=${{ matrix.nurRepo }}" |
