diff --git a/.github/workflows/test-per-system.yml b/.github/workflows/test-per-system.yml index c0686cd..2c5cd87 100644 --- a/.github/workflows/test-per-system.yml +++ b/.github/workflows/test-per-system.yml @@ -13,8 +13,7 @@ on: type: string oldest_installer_version: description: 'Oldest supported Nix installer version to test (e.g., nix-2.8.0)' - required: false - default: 'nix-2.8.0' + required: true type: string env: @@ -95,4 +94,4 @@ jobs: with: nix_path: ${{ env.nixpkgs_channel }} install_url: https://releases.nixos.org/nix/${{ inputs.oldest_installer_version }}/install - - run: nix-build tests/test-build.nix + - run: nix-build tests/test-build.nix \ No newline at end of file diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index fb25d14..d122210 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -42,10 +42,6 @@ jobs: - runs-on: macos-14 system: aarch64-darwin oldest_installer_version: nix-2.8.0 - - runs-on: macos-15-intel - system: x86_64-darwin - oldest_installer_version: nix-2.18.6 - # macos13 will be retired on 04/12/2025 - runs-on: macos-13 system: x86_64-darwin oldest_installer_version: nix-2.8.0 @@ -65,5 +61,4 @@ jobs: ./bin/act push \ -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:js-24.04 \ -j simple-build \ - --matrix runs-on:ubuntu-latest \ - --matrix system:x86_64-linux + --matrix os:ubuntu-latest diff --git a/README.md b/README.md index 70a9836..ade4392 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # install-nix-action -[![Tests](https://github.com/cachix/install-nix-action/actions/workflows/test.yml/badge.svg)](https://github.com/cachix/install-nix-action/actions/workflows/test.yml) +![GitHub Actions badge](https://github.com/cachix/install-nix-action/workflows/install-nix-action%20test/badge.svg) Installs [Nix](https://nixos.org/nix/) on GitHub Actions runners for Linux and macOS. @@ -58,7 +58,7 @@ jobs: | Name | Description | Default | |------|-------------|---------| -| `install_url` | URL to install Nix from. Useful for testing non-stable releases or pinning a specific Nix version (e.g., ) | `""` | +| `install_url` | URL to install Nix from. Useful for testing non-stable releases or pinning a specific Nix version (e.g., https://releases.nixos.org/nix/nix-2.3.7/install) | `""` | | `install_options` | Additional flags to pass to the Nix installer script | `""` | | `extra_nix_config` | Additional configuration to append to `/etc/nix/nix.conf` | `""` | | `nix_path` | Value to set for the `NIX_PATH` environment variable (e.g., `nixpkgs=channel:nixos-unstable`) | `""` | @@ -66,6 +66,7 @@ jobs: | `set_as_trusted_user` | Add the current user to the `trusted-users` list | `true` | | `enable_kvm` | Enable KVM for hardware-accelerated virtualization on Linux | `true` | + ## Differences from the default Nix installer Some settings have been optimised for use in CI environments: @@ -195,9 +196,8 @@ nix develop --impure In multi-user mode, Nix commands that operate on the Nix store are forwarded to a privileged daemon. This daemon runs in a separate context from your GitHub Actions workflow and cannot access the workflow's environment variables. Consequently, any secrets or credentials defined in your workflow environment will not be available to Nix operations that require store access. There are two ways to pass AWS credentials to the Nix daemon: - -- Configure a default profile using the AWS CLI -- Install Nix in single-user mode + - Configure a default profile using the AWS CLI + - Install Nix in single-user mode #### Configure a default profile using the AWS CLI diff --git a/install-nix.sh b/install-nix.sh index 3731171..c72765b 100755 --- a/install-nix.sh +++ b/install-nix.sh @@ -102,7 +102,7 @@ echo "installer options: ${installer_options[*]}" # There is --retry-on-errors, but only newer curl versions support that curl_retries=5 -nix_version=2.32.2 +nix_version=2.31.2 while ! curl -sS -o "$workdir/install" -v --fail -L "${INPUT_INSTALL_URL:-https://releases.nixos.org/nix/nix-${nix_version}/install}"; do sleep 1 ((curl_retries--))