Compare commits
12 Commits
Author | SHA1 | Date | |
---|---|---|---|
07da2520ee | |||
661bbdf5ce | |||
334bb6100b | |||
d5ba40b697 | |||
fda16d28d8 | |||
da678383b2 | |||
8a37740405 | |||
28b1d88f39 | |||
2767b618db | |||
aee3ec7ef5 | |||
ba5c343622 | |||
8389c1826a |
2
.github/workflows/test.yml
vendored
2
.github/workflows/test.yml
vendored
@ -2,6 +2,8 @@ name: "install-nix-action test"
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
simple-build:
|
||||
|
11
README.md
11
README.md
@ -6,7 +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 [picking a channel](https://status.nixos.org/)
|
||||
or [pin nixpkgs yourself](https://nix.dev/tutorials/towards-reproducibility-pinning-nixpkgs.html).
|
||||
or [pin nixpkgs yourself](https://nix.dev/reference/pinning-nixpkgs.html)
|
||||
(see also [pinning tutorial](https://nix.dev/tutorials/towards-reproducibility-pinning-nixpkgs.html)).
|
||||
|
||||
# Features
|
||||
|
||||
@ -16,6 +17,7 @@ or [pin nixpkgs yourself](https://nix.dev/tutorials/towards-reproducibility-pinn
|
||||
- Allows specifying Nix installation URL via `install_url`
|
||||
- Allows specifying extra Nix configration options via `extra_nix_config`
|
||||
- Allows specifying `$NIX_PATH` and channels via `nix_path`
|
||||
- Share `/nix/store` between builds using [cachix-action](https://github.com/cachix/cachix-action) for simple binary cache setup to speed up your builds and share binaries with your team
|
||||
|
||||
## Usage
|
||||
|
||||
@ -37,13 +39,10 @@ jobs:
|
||||
- run: nix-build
|
||||
```
|
||||
|
||||
See also [cachix-action](https://github.com/cachix/cachix-action) for
|
||||
simple binary cache setup to speed up your builds and share binaries
|
||||
with developers.
|
||||
|
||||
## Usage with Flakes
|
||||
|
||||
```
|
||||
```yaml
|
||||
name: "Test"
|
||||
on:
|
||||
pull_request:
|
||||
@ -66,7 +65,7 @@ jobs:
|
||||
|
||||
## Inputs (specify using `with:`)
|
||||
|
||||
- `install_url`: specify URL to install Nix from (useful for testing non-stable releases)
|
||||
- `install_url`: specify URL to install Nix from (useful for testing non-stable releases or pinning Nix for example https://releases.nixos.org/nix/nix-2.3.7/install)
|
||||
|
||||
- `nix_path`: set `NIX_PATH` environment variable, for example `nixpkgs=channel:nixos-unstable`
|
||||
|
||||
|
@ -1,6 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
if type -p nix &>/dev/null ; then
|
||||
echo "Aborting: Nix is already installed at $(type -p nix)"
|
||||
exit
|
||||
fi
|
||||
|
||||
# Configure Nix
|
||||
add_config() {
|
||||
echo "$1" | sudo tee -a /tmp/nix.conf >/dev/null
|
||||
@ -35,15 +40,15 @@ if [[ $OSTYPE =~ darwin ]]; then
|
||||
|
||||
# macOS needs certificates hints
|
||||
cert_file=/nix/var/nix/profiles/default/etc/ssl/certs/ca-bundle.crt
|
||||
echo "::set-env name=NIX_SSL_CERT_FILE::$cert_file"
|
||||
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
|
||||
echo "::add-path::/nix/var/nix/profiles/per-user/$USER/profile/bin"
|
||||
echo "::add-path::/nix/var/nix/profiles/default/bin"
|
||||
echo "/nix/var/nix/profiles/per-user/$USER/profile/bin" >> $GITHUB_PATH
|
||||
echo "/nix/var/nix/profiles/default/bin" >> $GITHUB_PATH
|
||||
|
||||
if [[ $INPUT_NIX_PATH != "" ]]; then
|
||||
echo "::set-env name=NIX_PATH::${INPUT_NIX_PATH}"
|
||||
echo "NIX_PATH=${INPUT_NIX_PATH}" >> $GITHUB_ENV
|
||||
fi
|
||||
|
@ -20,7 +20,7 @@
|
||||
"author": "Domen Kožar",
|
||||
"license": "ASL2",
|
||||
"dependencies": {
|
||||
"@actions/core": "^1.1.0",
|
||||
"@actions/core": "^1.2.6",
|
||||
"@actions/exec": "^1.0.1",
|
||||
"@actions/tool-cache": "^1.1.2"
|
||||
},
|
||||
|
@ -2,10 +2,10 @@
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@actions/core@^1.1.0":
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.1.1.tgz#e08f3dbfe04721bb3d040f8fca2d6d7e1817b2e1"
|
||||
integrity sha512-O5G6EmlzTVsng7VSpNtszIoQq6kOgMGNTFB/hmwKNNA4V71JyxImCIrL27vVHCt2Cb3ImkaCr6o27C2MV9Ylwg==
|
||||
"@actions/core@^1.1.0", "@actions/core@^1.2.6":
|
||||
version "1.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.2.6.tgz#a78d49f41a4def18e88ce47c2cac615d5694bf09"
|
||||
integrity sha512-ZQYitnqiyBc3D+k7LsgSBmMDVkOVidaagDG7j3fOym77jNunWRuYx7VSHa9GNfFZh+zh61xsCjRj4JxMZlDqTA==
|
||||
|
||||
"@actions/exec@^1.0.1":
|
||||
version "1.0.1"
|
||||
|
Reference in New Issue
Block a user