Compare commits
	
		
			1 Commits
		
	
	
		
			master
			...
			auto-uid-a
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | e7eff97c99 | 
| @@ -1,15 +0,0 @@ | |||||||
| # EditorConfig is awesome: https://EditorConfig.org |  | ||||||
|  |  | ||||||
| # top-most EditorConfig file |  | ||||||
| root = true |  | ||||||
|  |  | ||||||
| # Unix-style newlines with a newline ending every file |  | ||||||
| [*] |  | ||||||
| charset = utf-8 |  | ||||||
| end_of_line = lf |  | ||||||
| indent_size = 2 |  | ||||||
| indent_style = space |  | ||||||
| insert_final_newline = true |  | ||||||
|  |  | ||||||
| [LICENSE] |  | ||||||
| indent_size = unset |  | ||||||
							
								
								
									
										14
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							| @@ -12,7 +12,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, macos-latest] |         os: [ubuntu-latest, macos-latest] | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v3 | ||||||
|     - name: Install Nix |     - name: Install Nix | ||||||
|       uses: ./ |       uses: ./ | ||||||
|       with: |       with: | ||||||
| @@ -28,7 +28,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, macos-latest] |         os: [ubuntu-latest, macos-latest] | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v3 | ||||||
|     - name: Install Nix |     - name: Install Nix | ||||||
|       uses: ./ |       uses: ./ | ||||||
|       with: |       with: | ||||||
| @@ -42,7 +42,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, macos-latest] |         os: [ubuntu-latest, macos-latest] | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v3 | ||||||
|     - name: Install Nix |     - name: Install Nix | ||||||
|       uses: ./ |       uses: ./ | ||||||
|       with: |       with: | ||||||
| @@ -58,7 +58,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, macos-latest] |         os: [ubuntu-latest, macos-latest] | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v3 | ||||||
|     - name: Install Nix |     - name: Install Nix | ||||||
|       uses: ./ |       uses: ./ | ||||||
|     - run: nix flake show github:NixOS/nixpkgs |     - run: nix flake show github:NixOS/nixpkgs | ||||||
| @@ -69,7 +69,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, macos-latest] |         os: [ubuntu-latest, macos-latest] | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v3 | ||||||
|     - name: Install Nix |     - name: Install Nix | ||||||
|       uses: ./ |       uses: ./ | ||||||
|       with: |       with: | ||||||
| @@ -84,7 +84,7 @@ jobs: | |||||||
|           os: [ubuntu-latest, macos-latest] |           os: [ubuntu-latest, macos-latest] | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v3 | ||||||
|     - name: Install Nix |     - name: Install Nix | ||||||
|       uses: ./ |       uses: ./ | ||||||
|       with: |       with: | ||||||
| @@ -98,7 +98,7 @@ jobs: | |||||||
|           os: [ubuntu-latest] |           os: [ubuntu-latest] | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v3 | ||||||
|     - run: curl https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash |     - run: curl https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash | ||||||
|     - run: docker pull ghcr.io/catthehacker/ubuntu:js-20.04 |     - run: docker pull ghcr.io/catthehacker/ubuntu:js-20.04 | ||||||
|     - run: ./bin/act -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:js-20.04 push -j simple-build |     - run: ./bin/act -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:js-20.04 push -j simple-build | ||||||
|   | |||||||
							
								
								
									
										10
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								README.md
									
									
									
									
									
								
							| @@ -6,8 +6,8 @@ Installs [Nix](https://nixos.org/nix/) on GitHub Actions for the supported platf | |||||||
|  |  | ||||||
| By default it has no nixpkgs configured, you have to set `nix_path` | By default it has no nixpkgs configured, you have to set `nix_path` | ||||||
| by [picking a channel](https://status.nixos.org/) | by [picking a channel](https://status.nixos.org/) | ||||||
| or [pin nixpkgs yourself](https://nix.dev/reference/pinning-nixpkgs) | or [pin nixpkgs yourself](https://nix.dev/reference/pinning-nixpkgs.html) | ||||||
| (see also [pinning tutorial](https://nix.dev/tutorials/towards-reproducibility-pinning-nixpkgs)). | (see also [pinning tutorial](https://nix.dev/tutorials/towards-reproducibility-pinning-nixpkgs.html)). | ||||||
|  |  | ||||||
| # Features | # Features | ||||||
|  |  | ||||||
| @@ -34,7 +34,7 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v3 |     - uses: actions/checkout@v3 | ||||||
|     - uses: cachix/install-nix-action@v22 |     - uses: cachix/install-nix-action@v20 | ||||||
|       with: |       with: | ||||||
|         nix_path: nixpkgs=channel:nixos-unstable |         nix_path: nixpkgs=channel:nixos-unstable | ||||||
|     - run: nix-build |     - run: nix-build | ||||||
| @@ -52,7 +52,7 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v3 |     - uses: actions/checkout@v3 | ||||||
|     - uses: cachix/install-nix-action@v22 |     - uses: cachix/install-nix-action@v20 | ||||||
|       with: |       with: | ||||||
|         github_access_token: ${{ secrets.GITHUB_TOKEN }} |         github_access_token: ${{ secrets.GITHUB_TOKEN }} | ||||||
|     - run: nix build |     - run: nix build | ||||||
| @@ -120,7 +120,7 @@ Otherwise, you can add any binary cache to nix.conf using | |||||||
| install-nix-action's own `extra_nix_config` input: | install-nix-action's own `extra_nix_config` input: | ||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| - uses: cachix/install-nix-action@v22 | - uses: cachix/install-nix-action@v20 | ||||||
|   with: |   with: | ||||||
|     extra_nix_config: | |     extra_nix_config: | | ||||||
|       trusted-public-keys = hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= |       trusted-public-keys = hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= | ||||||
|   | |||||||
| @@ -17,12 +17,8 @@ trap 'rm -rf "$workdir"' EXIT | |||||||
| add_config() { | add_config() { | ||||||
|   echo "$1" >> "$workdir/nix.conf" |   echo "$1" >> "$workdir/nix.conf" | ||||||
| } | } | ||||||
| add_config "show-trace = true" |  | ||||||
| # Set jobs to number of cores | # Set jobs to number of cores | ||||||
| add_config "max-jobs = auto" | add_config "max-jobs = auto" | ||||||
| if [[ $OSTYPE =~ darwin ]]; then |  | ||||||
|   add_config "ssl-cert-file = /etc/ssl/cert.pem" |  | ||||||
| fi |  | ||||||
| # Allow binary caches for user | # Allow binary caches for user | ||||||
| add_config "trusted-users = root ${USER:-}" | add_config "trusted-users = root ${USER:-}" | ||||||
| # Add github access token | # Add github access token | ||||||
| @@ -36,7 +32,7 @@ if [[ -n "${INPUT_EXTRA_NIX_CONFIG:-}" ]]; then | |||||||
|   add_config "$INPUT_EXTRA_NIX_CONFIG" |   add_config "$INPUT_EXTRA_NIX_CONFIG" | ||||||
| fi | fi | ||||||
| if [[ ! $INPUT_EXTRA_NIX_CONFIG =~ "experimental-features" ]]; then | if [[ ! $INPUT_EXTRA_NIX_CONFIG =~ "experimental-features" ]]; then | ||||||
|   add_config "experimental-features = nix-command flakes" |   add_config "experimental-features = nix-command flakes auto-allocate-uids" | ||||||
| fi | fi | ||||||
|  |  | ||||||
| # Nix installer flags | # Nix installer flags | ||||||
| @@ -50,8 +46,9 @@ installer_options=( | |||||||
| if [[ (! $INPUT_INSTALL_OPTIONS =~ "--no-daemon") && ($OSTYPE =~ darwin || -e /run/systemd/system) ]]; then | if [[ (! $INPUT_INSTALL_OPTIONS =~ "--no-daemon") && ($OSTYPE =~ darwin || -e /run/systemd/system) ]]; then | ||||||
|   installer_options+=( |   installer_options+=( | ||||||
|     --daemon |     --daemon | ||||||
|     --daemon-user-count "$(python3 -c 'import multiprocessing as mp; print(mp.cpu_count() * 2)')" |     --daemon-user-count 1 | ||||||
|   ) |   ) | ||||||
|  |   add_config "auto-allocate-uids = true" | ||||||
| else | else | ||||||
|   # "fix" the following error when running nix* |   # "fix" the following error when running nix* | ||||||
|   # error: the group 'nixbld' specified in 'build-users-group' does not exist |   # error: the group 'nixbld' specified in 'build-users-group' does not exist | ||||||
| @@ -70,7 +67,7 @@ echo "installer options: ${installer_options[*]}" | |||||||
|  |  | ||||||
| # There is --retry-on-errors, but only newer curl versions support that | # There is --retry-on-errors, but only newer curl versions support that | ||||||
| curl_retries=5 | curl_retries=5 | ||||||
| while ! curl -sS -o "$workdir/install" -v --fail -L "${INPUT_INSTALL_URL:-https://releases.nixos.org/nix/nix-2.17.0/install}" | while ! curl -sS -o "$workdir/install" -v --fail -L "${INPUT_INSTALL_URL:-https://releases.nixos.org/nix/nix-2.15.1/install}" | ||||||
| do | do | ||||||
|   sleep 1 |   sleep 1 | ||||||
|   ((curl_retries--)) |   ((curl_retries--)) | ||||||
| @@ -82,6 +79,14 @@ done | |||||||
|  |  | ||||||
| sh "$workdir/install" "${installer_options[@]}" | sh "$workdir/install" "${installer_options[@]}" | ||||||
|  |  | ||||||
|  | if [[ $OSTYPE =~ darwin ]]; then | ||||||
|  |   # macOS needs certificates hints | ||||||
|  |   cert_file=/nix/var/nix/profiles/default/etc/ssl/certs/ca-bundle.crt | ||||||
|  |   echo "NIX_SSL_CERT_FILE=$cert_file" >> "$GITHUB_ENV" | ||||||
|  |   export NIX_SSL_CERT_FILE=$cert_file | ||||||
|  |   sudo launchctl setenv NIX_SSL_CERT_FILE "$cert_file" | ||||||
|  | fi | ||||||
|  |  | ||||||
| # Set paths | # Set paths | ||||||
| echo "/nix/var/nix/profiles/default/bin" >> "$GITHUB_PATH" | echo "/nix/var/nix/profiles/default/bin" >> "$GITHUB_PATH" | ||||||
| # new path for nix 2.14 | # new path for nix 2.14 | ||||||
| @@ -91,10 +96,5 @@ if [[ -n "${INPUT_NIX_PATH:-}" ]]; then | |||||||
|   echo "NIX_PATH=${INPUT_NIX_PATH}" >> "$GITHUB_ENV" |   echo "NIX_PATH=${INPUT_NIX_PATH}" >> "$GITHUB_ENV" | ||||||
| fi | fi | ||||||
|  |  | ||||||
| # Set temporary directory (if not already set) to fix https://github.com/cachix/install-nix-action/issues/197 |  | ||||||
| if [[ -z "${TMPDIR:-}" ]]; then |  | ||||||
|   echo "TMPDIR=${RUNNER_TEMP}" >> "$GITHUB_ENV" |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| # Close the log message group which was opened above | # Close the log message group which was opened above | ||||||
| echo "::endgroup::" | echo "::endgroup::" | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user