Update nix #224
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: "Update nix" | |
| on: | |
| repository_dispatch: | |
| workflow_dispatch: | |
| schedule: | |
| - cron: "31 2 * * *" | |
| jobs: | |
| update-nix-releases: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Update nix releases | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| latest_nix=$( | |
| gh api repos/NixOS/nix/tags --paginate --jq '.[].name' | | |
| grep -E '^[0-9]+\.[0-9]+\.[0-9]+$' | | |
| sort -V | | |
| tail -n 1 | |
| ) | |
| if [ -z "$latest_nix" ]; then | |
| echo "Failed to determine latest Nix version." >&2 | |
| exit 1 | |
| fi | |
| current_nix=$(grep -oE 'nix_version=[0-9.]+' ./install-nix.sh | cut -d= -f2) | |
| echo "Current Nix version: ${current_nix}" | |
| echo "Latest Nix version: ${latest_nix}" | |
| echo "CURRENT_NIX=${current_nix}" >> $GITHUB_ENV | |
| echo "LATEST_NIX=${latest_nix}" >> $GITHUB_ENV | |
| sed -i -E "s/nix_version=[0-9.]+/nix_version=${latest_nix}/" ./install-nix.sh | |
| - name: Create Pull Request | |
| uses: peter-evans/create-pull-request@v8 | |
| with: | |
| title: "nix: ${{ env.CURRENT_NIX }} -> ${{ env.LATEST_NIX }}" | |
| commit-message: "nix: ${{ env.CURRENT_NIX }} -> ${{ env.LATEST_NIX }}" | |
| body: | | |
| This PR updates the Nix version from ${{ env.CURRENT_NIX }} to ${{ env.LATEST_NIX }}. | |
| **To trigger the CI:** | |
| 1. Checkout the PR branch: | |
| ```bash | |
| gh pr checkout <pr-number> | |
| ``` | |
| 2. Amend and force push: | |
| ```bash | |
| git commit --amend --no-edit | |
| git push --force-with-lease | |
| ``` | |
| labels: dependencies |