summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorEmily <vcs@emily.moe>2025-01-14 01:47:14 +0000
committerGitHub <noreply@github.com>2025-01-14 01:47:14 +0000
commitbd921223ba7cdac346477d7ea5204d6f4736fcc6 (patch)
treeb4e86959c9a0813cce116103f8b2d75ce21a3f4d /.github
parent6ace2f2d12bdf74235d5cbf9fbd34a71c9716685 (diff)
parente33d37c41f8040631f0cc16b032a1cf214aeeb4e (diff)
Merge pull request #1259 from emilazy/push-xztopxsynztu
Make release branches a thing
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/test.yml152
1 files changed, 28 insertions, 124 deletions
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 94fec9d..63c155b 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -6,42 +6,42 @@ on:
- master
env:
- CURRENT_STABLE_CHANNEL: nixpkgs-24.11-darwin
+ NIXPKGS_BRANCH: nixpkgs-unstable
+ NIX_DARWIN_BRANCH: master
+ NIX_VERSION: 2.24.11
jobs:
- test-stable:
- runs-on: macos-13
- steps:
- - uses: actions/checkout@v4
- - name: Install nix corresponding to latest stable channel
- uses: cachix/install-nix-action@v30
- with:
- install_url: https://releases.nixos.org/nix/nix-2.18.8/install
- - run: nix flake check --override-input nixpkgs nixpkgs/${{ env.CURRENT_STABLE_CHANNEL }}
+ # The `test-stable` and `install-against-stable` job names are
+ # load‐bearing, despite their inaccuracy on the unstable branch, as
+ # they are set as required checks in the repository configuration,
+ # which only repository admins can change.
+ #
+ # TODO: Change them once the repository configuration is updated.
- test-unstable:
+ test-stable:
runs-on: macos-13
steps:
- uses: actions/checkout@v4
- - name: Install nix from current unstable channel
+ - name: Install Nix
uses: cachix/install-nix-action@v30
with:
- install_url: https://releases.nixos.org/nix/nix-2.24.9/install
- - run: nix flake check --override-input nixpkgs nixpkgs/nixpkgs-unstable
+ install_url: https://releases.nixos.org/nix/nix-${{ env.NIX_VERSION }}/install
+ - run: nix flake check --override-input nixpkgs nixpkgs/${{ env.NIXPKGS_BRANCH }}
install-against-stable:
runs-on: macos-13
+ timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- - name: Install nix corresponding to latest stable channel
+ - name: Install Nix
uses: cachix/install-nix-action@v30
with:
- install_url: https://releases.nixos.org/nix/nix-2.18.8/install
- nix_path: nixpkgs=channel:${{ env.CURRENT_STABLE_CHANNEL }}
+ install_url: https://releases.nixos.org/nix/nix-${{ env.NIX_VERSION }}/install
+ nix_path: nixpkgs=channel:${{ env.NIXPKGS_BRANCH }}
- name: Install channels
run: |
- nix-channel --add https://github.com/LnL7/nix-darwin/archive/master.tar.gz darwin
- nix-channel --add https://nixos.org/channels/${{ env.CURRENT_STABLE_CHANNEL }} nixpkgs
+ nix-channel --add https://github.com/LnL7/nix-darwin/archive/${{ env.NIX_DARWIN_BRANCH }}.tar.gz darwin
+ nix-channel --add https://nixos.org/channels/${{ env.NIXPKGS_BRANCH }} nixpkgs
nix-channel --update
- name: Install nix-darwin
run: |
@@ -75,116 +75,20 @@ jobs:
# `cachix/install-nix-action` but not by our default config above
nix run .#darwin-uninstaller \
--extra-experimental-features "nix-command flakes" \
- --override-input nixpkgs nixpkgs/${{ env.CURRENT_STABLE_CHANNEL }}
+ --override-input nixpkgs nixpkgs/${{ env.NIXPKGS_BRANCH }}
nix run .#darwin-uninstaller.tests.uninstaller \
--extra-experimental-features "nix-command flakes" \
- --override-input nixpkgs nixpkgs/${{ env.CURRENT_STABLE_CHANNEL }}
-
- install-against-unstable:
- runs-on: macos-13
- timeout-minutes: 30
- steps:
- - uses: actions/checkout@v4
- - name: Install nix from current unstable channel
- uses: cachix/install-nix-action@v30
- with:
- install_url: https://releases.nixos.org/nix/nix-2.24.9/install
- nix_path: nixpkgs=channel:nixpkgs-unstable
- - name: Install channels
- run: |
- nix-channel --add https://github.com/LnL7/nix-darwin/archive/master.tar.gz darwin
- nix-channel --add https://nixos.org/channels/nixpkgs-unstable nixpkgs
- nix-channel --update
- - name: Install nix-darwin
- run: |
- export NIX_PATH=$HOME/.nix-defexpr/channels
-
- mkdir -p ~/.config/nix-darwin
- cp modules/examples/simple.nix ~/.config/nix-darwin/configuration.nix
-
- nixConfHash=$(shasum -a 256 /etc/nix/nix.conf | cut -d ' ' -f 1)
- /usr/bin/sed -i.bak \
- "s/# programs.fish.enable = true;/nix.settings.access-tokens = [ \"github.com=\${{ secrets.GITHUB_TOKEN }}\" ]; environment.etc.\"nix\/nix.conf\".knownSha256Hashes = [ \"$nixConfHash\" ];/" \
- ~/.config/nix-darwin/configuration.nix
-
- nix run .#darwin-rebuild \
- -- switch \
- -I darwin-config=$HOME/.config/nix-darwin/configuration.nix
- - name: Switch to new configuration
- run: |
- . /etc/bashrc
-
- /usr/bin/sed -i.bak \
- "s/pkgs.vim/pkgs.hello/" \
- ~/.config/nix-darwin/configuration.nix
-
- darwin-rebuild switch -I darwin=.
-
- hello
- - name: Test uninstallation of nix-darwin
- run: |
- # We need to specify `--extra-experimental-features` because `experimental-features` is set by
- # `cachix/install-nix-action` but not by our default config above
- nix run .#darwin-uninstaller \
- --extra-experimental-features "nix-command flakes" \
- --override-input nixpkgs nixpkgs/nixpkgs-unstable
- nix run .#darwin-uninstaller.tests.uninstaller \
- --extra-experimental-features "nix-command flakes" \
- --override-input nixpkgs nixpkgs/nixpkgs-unstable
-
- install-flake-against-stable:
- runs-on: macos-13
- steps:
- - uses: actions/checkout@v4
- - name: Install nix version corresponding to latest stable channel
- uses: cachix/install-nix-action@v30
- with:
- install_url: https://releases.nixos.org/nix/nix-2.18.8/install
- - name: Install nix-darwin
- run: |
- mkdir -p ~/.config/nix-darwin
- darwin=$(pwd)
- pushd ~/.config/nix-darwin
- nix flake init -t $darwin
- nixConfHash=$(shasum -a 256 /etc/nix/nix.conf | cut -d ' ' -f 1)
- /usr/bin/sed -i.bak \
- "s/# programs.fish.enable = true;/nix.settings.access-tokens = [ \"github.com=\${{ secrets.GITHUB_TOKEN }}\" ]; environment.etc.\"nix\/nix.conf\".knownSha256Hashes = [ \"$nixConfHash\" ];/" \
- flake.nix
- /usr/bin/sed -i.bak \
- 's/nixpkgs.hostPlatform = "aarch64-darwin";/nixpkgs.hostPlatform = "'$(nix eval --expr builtins.currentSystem --impure --raw)'";/' \
- flake.nix
- popd
- nix run .#darwin-rebuild -- \
- switch --flake ~/.config/nix-darwin#simple \
- --override-input nix-darwin . \
- --override-input nixpkgs nixpkgs/${{ env.CURRENT_STABLE_CHANNEL }}
- - name: Switch to new configuration
- run: |
- . /etc/bashrc
-
- /usr/bin/sed -i.bak \
- "s/pkgs.vim/pkgs.hello/" \
- ~/.config/nix-darwin/flake.nix
-
- darwin-rebuild switch --flake ~/.config/nix-darwin#simple \
- --override-input nix-darwin . \
- --override-input nixpkgs nixpkgs/${{ env.CURRENT_STABLE_CHANNEL }}
-
- hello
- - name: Test uninstallation of nix-darwin
- run: |
- nix run .#darwin-uninstaller --override-input nixpkgs nixpkgs/${{ env.CURRENT_STABLE_CHANNEL }}
- nix run .#darwin-uninstaller.tests.uninstaller --override-input nixpkgs nixpkgs/${{ env.CURRENT_STABLE_CHANNEL }}
+ --override-input nixpkgs nixpkgs/${{ env.NIXPKGS_BRANCH }}
- install-flake-against-unstable:
+ install-flake:
runs-on: macos-13
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- - name: Install nix from current unstable channel
+ - name: Install Nix
uses: cachix/install-nix-action@v30
with:
- install_url: https://releases.nixos.org/nix/nix-2.24.9/install
+ install_url: https://releases.nixos.org/nix/nix-${{ env.NIX_VERSION }}/install
- name: Install nix-darwin
run: |
mkdir -p ~/.config/nix-darwin
@@ -202,7 +106,7 @@ jobs:
nix run .#darwin-rebuild -- \
switch --flake ~/.config/nix-darwin#simple \
--override-input nix-darwin . \
- --override-input nixpkgs nixpkgs/nixpkgs-unstable
+ --override-input nixpkgs nixpkgs/${{ env.NIXPKGS_BRANCH }}
- name: Switch to new configuration
run: |
. /etc/bashrc
@@ -213,10 +117,10 @@ jobs:
darwin-rebuild switch --flake ~/.config/nix-darwin#simple \
--override-input nix-darwin . \
- --override-input nixpkgs nixpkgs/nixpkgs-unstable
+ --override-input nixpkgs nixpkgs/${{ env.NIXPKGS_BRANCH }}
hello
- name: Test uninstallation of nix-darwin
run: |
- nix run .#darwin-uninstaller --override-input nixpkgs nixpkgs/nixpkgs-unstable
- nix run .#darwin-uninstaller.tests.uninstaller --override-input nixpkgs nixpkgs/nixpkgs-unstable
+ nix run .#darwin-uninstaller --override-input nixpkgs nixpkgs/${{ env.NIXPKGS_BRANCH }}
+ nix run .#darwin-uninstaller.tests.uninstaller --override-input nixpkgs nixpkgs/${{ env.NIXPKGS_BRANCH }}