Skip to content

Commit c8d55d0

Browse files
committed
Merge remote-tracking branch 'origin/master' into angerman/fix-aarch64-musl
# Conflicts: # flake.lock # overlays/bootstrap.nix
2 parents 929fc64 + 08fe0b4 commit c8d55d0

File tree

2,485 files changed

+33342
-114176
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,485 files changed

+33342
-114176
lines changed

.github/workflows/lints.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
deadnix:
2424
runs-on: [self-hosted, linux]
2525
steps:
26-
- uses: actions/checkout@v3
26+
- uses: actions/checkout@v4
2727
- run: |
2828
nix run github:astro/deadnix -- --edit --no-lambda-pattern-names --exclude materialized
2929
TMPFILE=$(mktemp)

.github/workflows/pipeline.yml

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -21,126 +21,126 @@ jobs:
2121
nix-build:
2222
runs-on: [self-hosted, linux]
2323
steps:
24-
- uses: actions/checkout@v3
24+
- uses: actions/checkout@v4
2525
- name: "Run tests with ghc8107: Running the nix-build tests..."
2626
run: "./test/tests.sh ghc8107 nix-build"
2727

2828
unit-tests:
2929
runs-on: [self-hosted, linux]
3030
steps:
31-
- uses: actions/checkout@v3
31+
- uses: actions/checkout@v4
3232
- name: "Run tests with ghc8107: Running the unit tests..."
3333
run: "./test/tests.sh ghc8107 unit-tests"
3434

3535
runghc:
3636
runs-on: [self-hosted, linux]
3737
steps:
38-
- uses: actions/checkout@v3
38+
- uses: actions/checkout@v4
3939
- name: "Run tests with ghc8107: Checking that a nix-shell works for runghc..."
4040
run: "./test/tests.sh ghc8107 runghc"
4141

4242
cabal:
4343
runs-on: [self-hosted, linux]
4444
steps:
45-
- uses: actions/checkout@v3
45+
- uses: actions/checkout@v4
4646
- name: "Run tests with ghc8107: Checking that a nix-shell works for cabal..."
4747
run: "./test/tests.sh ghc8107 cabal"
4848

4949
cabal-doExactConfig:
5050
runs-on: [self-hosted, linux]
5151
steps:
52-
- uses: actions/checkout@v3
52+
- uses: actions/checkout@v4
5353
- name: "Run tests with ghc8107: Checking that a nix-shell works for cabal (doExactConfig component)..."
5454
run: "./test/tests.sh ghc8107 cabal-doExactConfig"
5555

5656
tests-benchmarks:
5757
runs-on: [self-hosted, linux]
5858
steps:
59-
- uses: actions/checkout@v3
59+
- uses: actions/checkout@v4
6060
- name: "Run tests with ghc8107: Checking that a nix-shell works for a project with test-suite build-tools and benchmarks..."
6161
run: "./test/tests.sh ghc8107 tests-benchmarks"
6262

6363
multi-target:
6464
runs-on: [self-hosted, linux]
6565
steps:
66-
- uses: actions/checkout@v3
66+
- uses: actions/checkout@v4
6767
- name: "Run tests with ghc8107: Checking that a nix-shell works for a multi-target project..."
6868
run: "./test/tests.sh ghc8107 multi-target"
6969

7070
shellFor-single-package:
7171
runs-on: [self-hosted, linux]
7272
steps:
73-
- uses: actions/checkout@v3
73+
- uses: actions/checkout@v4
7474
- name: "Run tests with ghc8107: Checking shellFor works for a cabal project, multiple packages..."
7575
run: "./test/tests.sh ghc8107 shellFor-single-package"
7676

7777
shellFor-multiple-package:
7878
runs-on: [self-hosted, linux]
7979
steps:
80-
- uses: actions/checkout@v3
80+
- uses: actions/checkout@v4
8181
- name: "Run tests with ghc8107: Checking shellFor works for a cabal project, single package...y"
8282
run: "./test/tests.sh ghc8107 shellFor-multiple-package"
8383

8484
shellFor-hoogle:
8585
runs-on: [self-hosted, linux]
8686
steps:
87-
- uses: actions/checkout@v3
87+
- uses: actions/checkout@v4
8888
- name: "Run tests with ghc8107: Checking shellFor works for a cabal project, single package..."
8989
run: "./test/tests.sh ghc8107 shellFor-hoogle"
9090

9191
shellFor-not-depends:
9292
runs-on: [self-hosted, linux]
9393
steps:
94-
- uses: actions/checkout@v3
94+
- uses: actions/checkout@v4
9595
- name: "Run tests with ghc8107: Checking shellFor does not depend on given packages...y"
9696
run: "./test/tests.sh ghc8107 shellFor-not-depends"
9797

9898
maintainer-scripts:
9999
runs-on: [self-hosted, linux]
100100
steps:
101-
- uses: actions/checkout@v3
101+
- uses: actions/checkout@v4
102102
- name: "Run tests with ghc8107: Checking the maintainer scripts...y"
103103
run: "./test/tests.sh ghc8107 maintainer-scripts"
104104

105105
plan-extra-hackages:
106106
runs-on: [self-hosted, linux]
107107
steps:
108-
- uses: actions/checkout@v3
108+
- uses: actions/checkout@v4
109109
- name: "Run tests with ghc8107: Checking that plan construction works with extra Hackages..."
110110
run: "./test/tests.sh ghc8107 plan-extra-hackages"
111111

112112
build-extra-hackages:
113113
runs-on: [self-hosted, linux]
114114
steps:
115-
- uses: actions/checkout@v3
115+
- uses: actions/checkout@v4
116116
- name: "Run tests with ghc8107: Checking that package with extra Hackages can be build..."
117117
run: "./test/tests.sh ghc8107 build-extra-hackages"
118118

119119
hix:
120120
runs-on: [self-hosted, linux]
121121
steps:
122-
- uses: actions/checkout@v3
122+
- uses: actions/checkout@v4
123123
- name: "Run tests with ghc8107: End-2-end test of hix project initialization and flakes development shell ..."
124124
run: "./test/tests.sh ghc8107 hix"
125125

126126
# template:
127127
# runs-on: [self-hosted, linux]
128128
# steps:
129-
# - uses: actions/checkout@v3
129+
# - uses: actions/checkout@v4
130130
# - name: "Run tests with ghc8107: End-2-end test of hix project initialization and flakes development shell ..."
131131
# run: "./test/tests.sh ghc8107 template"
132132

133133
docs:
134134
runs-on: [self-hosted, linux]
135135
steps:
136-
- uses: actions/checkout@v3
136+
- uses: actions/checkout@v4
137137
- name: "Test examples in documentation ..."
138138
run: "./test/tests.sh ghc8107 docs"
139139

140140
hydra-ifdLevel-0-and-1:
141141
runs-on: [self-hosted, linux]
142142
steps:
143-
- uses: actions/checkout@v3
143+
- uses: actions/checkout@v4
144144
- name: "Check that jobset will evaluate in Hydra at ifdLevel 0 and 1"
145145
run: |
146146
nix-build build.nix -A maintainer-scripts.check-hydra -o check-hydra.sh
@@ -150,7 +150,7 @@ jobs:
150150
hydra-ifdLevel-2:
151151
runs-on: [self-hosted, linux]
152152
steps:
153-
- uses: actions/checkout@v3
153+
- uses: actions/checkout@v4
154154
- name: "Check that jobset will evaluate in Hydra at ifdLevel 2"
155155
run: |
156156
nix-build build.nix -A maintainer-scripts.check-hydra -o check-hydra.sh
@@ -159,7 +159,7 @@ jobs:
159159
hydra-ifdLevel-3-and-ghc-8-10:
160160
runs-on: [self-hosted, linux]
161161
steps:
162-
- uses: actions/checkout@v3
162+
- uses: actions/checkout@v4
163163
- name: "Check that jobset will evaluate in Hydra at ifdLevel 3 and ghc 8.10"
164164
run: |
165165
nix-build build.nix -A maintainer-scripts.check-hydra -o check-hydra.sh
@@ -168,7 +168,7 @@ jobs:
168168
hydra-ifdLevel-3-and-ghc-9-2:
169169
runs-on: [self-hosted, linux]
170170
steps:
171-
- uses: actions/checkout@v3
171+
- uses: actions/checkout@v4
172172
- name: "Check that jobset will evaluate in Hydra at ifdLevel 3 and ghc 9.2"
173173
run: |
174174
nix-build build.nix -A maintainer-scripts.check-hydra -o check-hydra.sh
@@ -177,7 +177,7 @@ jobs:
177177
hydra-ifdLevel-3-and-not-ghc-8-10-or-9-2:
178178
runs-on: [self-hosted, linux]
179179
steps:
180-
- uses: actions/checkout@v3
180+
- uses: actions/checkout@v4
181181
- name: "Check that jobset will evaluate in Hydra at ifdLevel 3 and not (ghc 8.10 or ghc 9.2)"
182182
run: |
183183
nix-build build.nix -A maintainer-scripts.check-hydra -o check-hydra.sh
@@ -186,7 +186,7 @@ jobs:
186186
closure-size:
187187
runs-on: [self-hosted, linux]
188188
steps:
189-
- uses: actions/checkout@v3
189+
- uses: actions/checkout@v4
190190
- name: "Check closure size with ghc8107"
191191
run: |
192192
nix-build build.nix -A maintainer-scripts.check-closure-size --argstr compiler-nix-name ghc8107 -o check-closure-size.sh
@@ -196,7 +196,7 @@ jobs:
196196
update-docs:
197197
runs-on: [self-hosted, linux]
198198
steps:
199-
- uses: actions/checkout@v3
199+
- uses: actions/checkout@v4
200200
- name: "Update docs"
201201
run: |
202202
nix-build build.nix -A maintainer-scripts.update-docs -o update-docs.sh
@@ -205,7 +205,7 @@ jobs:
205205
check-materialization-concurrency:
206206
runs-on: [self-hosted, linux]
207207
steps:
208-
- uses: actions/checkout@v3
208+
- uses: actions/checkout@v4
209209
- name: "Make sure materialize function does not limit concurrency"
210210
run: |
211211
nix-build build.nix -A maintainer-scripts.check-materialization-concurrency -o check-materialization-concurrency.sh
@@ -214,7 +214,7 @@ jobs:
214214
check-path-support:
215215
runs-on: [self-hosted, linux]
216216
steps:
217-
- uses: actions/checkout@v3
217+
- uses: actions/checkout@v4
218218
- name: "Make sure non store paths like can be used as src"
219219
run: |
220220
nix-build build.nix -A maintainer-scripts.check-path-support --argstr compiler-nix-name ghc8107 -o check-path-support.sh
@@ -223,26 +223,26 @@ jobs:
223223
haskell-nix-roots-do-not-require-IFDs:
224224
runs-on: [self-hosted, linux]
225225
steps:
226-
- uses: actions/checkout@v3
226+
- uses: actions/checkout@v4
227227
- name: "Check that the haskell.nix roots do not require IFDs"
228228
run: nix build .#roots.x86_64-linux --accept-flake-config --option allow-import-from-derivation false
229229

230230
hydra-without-remote-builders:
231231
runs-on: [self-hosted, linux]
232232
steps:
233-
- uses: actions/checkout@v3
233+
- uses: actions/checkout@v4
234234
- name: "Check that evaluation of hydra jobs works without using remote builders"
235235
run: nix path-info --derivation .#requiredJobs.x86_64-darwin.required-unstable-ghc8107-native --show-trace --builders ''
236236

237237
hix-cabal:
238238
runs-on: [self-hosted, linux]
239239
steps:
240-
- uses: actions/checkout@v3
240+
- uses: actions/checkout@v4
241241
- name: "Check hix -- run github:haskell/cabal/3.10#cabal-install:exe:cabal -- --version"
242242
run: "HIX_DIR=$(mktemp -d) nix run .#hix --accept-flake-config -- run github:haskell/cabal/3.10#cabal-install:exe:cabal --accept-flake-config --override-input haskellNix . -- --version"
243243

244244
nix-tools:
245245
runs-on: [self-hosted, linux]
246246
steps:
247-
- uses: actions/checkout@v3
247+
- uses: actions/checkout@v4
248248
- run: nix build ./nix-tools#checks.x86_64-linux.truncate-index --accept-flake-config

.github/workflows/updates.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
update-pins:
1010
runs-on: ubuntu-latest
1111
steps:
12-
- uses: actions/checkout@v3
12+
- uses: actions/checkout@v4
1313
- uses: cachix/install-nix-action@v15
1414
with:
1515
nix_path: nixpkgs=channel:nixos-unstable
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
name: Wait for Hydra Build
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
tags:
8+
- "nix-tools-*"
9+
pull_request:
10+
11+
env:
12+
FLAKE_REF: github:${{ github.repository }}?ref=${{ github.head_ref || github.ref }}
13+
GH_TOKEN: ${{ github.token }}
14+
15+
jobs:
16+
wait-for-hydra:
17+
runs-on: ubuntu-latest
18+
19+
steps:
20+
- name: Checkout
21+
uses: actions/checkout@v4
22+
23+
- name: Install Nix with good defaults
24+
uses: input-output-hk/install-nix-action@v20
25+
with:
26+
extra_nix_config: |
27+
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= loony-tools:pr9m4BkM/5/eSTZlkQyRt57Jz7OMBxNSUiMC4FkcNfk=
28+
substituters = https://cache.nixos.org/ https://cache.iog.io/ https://cache.zw3rk.com
29+
nix_path: nixpkgs=channel:nixos-unstable
30+
31+
- name: Display flake metadata
32+
id: flake-metadata
33+
run: |
34+
echo $PWD
35+
ls -lah .
36+
nix flake metadata ${{ env.FLAKE_REF }}
37+
nix flake metadata ${{ env.FLAKE_REF }} --json | jq -r '"LOCKED_URL=\(.url)"' >> "$GITHUB_OUTPUT"
38+
39+
- name: Wait for nix-tools meta job
40+
uses: input-output-hk/actions/wait-for-hydra@angerman/support-prs
41+
with:
42+
status: 'ci/hydra-build:nix-tools'
43+
44+
- name: "Pull nix-tools"
45+
run: |
46+
ls -lah .
47+
cp $(nix build --builders "" --max-jobs 0 ${{ steps.flake-metadata.outputs.LOCKED_URL }}#hydraJobs.aarch64-darwin.nix-tools.static.zipped.nix-tools-static-no-ifd --no-link --print-out-paths)/*.zip .
48+
cp $(nix build --builders "" --max-jobs 0 ${{ steps.flake-metadata.outputs.LOCKED_URL }}#hydraJobs.x86_64-darwin.nix-tools.static.zipped.nix-tools-static-no-ifd --no-link --print-out-paths)/*.zip .
49+
cp $(nix build --builders "" --max-jobs 0 ${{ steps.flake-metadata.outputs.LOCKED_URL }}#hydraJobs.x86_64-linux.nix-tools.static.zipped.nix-tools-static-no-ifd --no-link --print-out-paths)/*.zip .
50+
cp $(nix build --builders "" --max-jobs 0 ${{ steps.flake-metadata.outputs.LOCKED_URL }}#hydraJobs.x86_64-linux.nix-tools.static.zipped.nix-tools-static-arm64-no-ifd --no-link --print-out-paths)/*.zip .
51+
52+
- name: Configure Git
53+
if: startsWith(github.ref, 'refs/tags/')
54+
run: |
55+
git config --global user.name 'Auto Update Bot'
56+
git config --global user.email '[email protected]'
57+
58+
- name: "Compute nix-tools-static.nix"
59+
if: startsWith(github.ref, 'refs/tags/')
60+
run: |
61+
git fetch --all
62+
git switch --force static-nix-tools
63+
(
64+
echo "pkgs: let baseurl = \"https://github.com/input-output-hk/haskell.nix/releases/download/${GITHUB_REF_NAME}/\"; in {"
65+
for arch in aarch64-darwin x86_64-darwin aarch64-linux x86_64-linux; do
66+
echo " ${arch} = pkgs.fetchurl { "
67+
echo " name = \"${arch}-nix-tools-static\";"
68+
echo " url = \"\${baseurl}${arch}-nix-tools-static.zip\";"
69+
echo " sha256 = \"$(nix-hash --sri --type sha256 --flat ${arch}-nix-tools-static.zip)\";"
70+
echo " };"
71+
done
72+
echo "}"
73+
) > nix-tools-static.nix
74+
cat nix-tools-static.nix
75+
76+
77+
- name: Push to nix branch
78+
if: startsWith(github.ref, 'refs/tags/')
79+
run: |
80+
git add nix-tools-static.nix
81+
git commit -m "update nix-tools-static.nix"
82+
git push origin static-nix-tools
83+
84+
- name: Release
85+
uses: input-output-hk/action-gh-release@v1
86+
if: startsWith(github.ref, 'refs/tags/')
87+
with:
88+
files: |
89+
*-nix-tools-static.zip

0 commit comments

Comments
 (0)