Skip to content

Add nixpkgs-2205 and update other nixpkgs pins #1506

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 116 commits into from
Jul 17, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
116 commits
Select commit Hold shift + click to select a range
f019637
Add nixpkgs-2205 and update other nixpkgs pins
hamishmack Jun 4, 2022
6430b58
ifdLevel 1
hamishmack Jun 4, 2022
4d2ee36
Bump nodejs
hamishmack Jun 4, 2022
5be86c9
Bump nodejs
hamishmack Jun 4, 2022
285133b
Fix postBuild for setup derivation
hamishmack Jun 5, 2022
2bb09cb
Merge remote-tracking branch 'origin/master' into hkm/nixpkgs-2205
hamishmack Jun 8, 2022
2926d8a
ifdLevel 2
hamishmack Jun 8, 2022
bdf920e
Merge remote-tracking branch 'origin/master' into hkm/nixpkgs-2205
hamishmack Jun 11, 2022
7fdc0aa
Bump nixpkgs pins
hamishmack Jun 11, 2022
8ea4ecf
Merge branch 'master' into hkm/nixpkgs-2205
hamishmack Jun 17, 2022
bc73952
Merge remote-tracking branch 'origin/master' into hkm/nixpkgs-2205
hamishmack Jun 23, 2022
00692f3
Bump nixpkgs pins
hamishmack Jun 23, 2022
263f0d3
Add spdx-3.17 materialization
hamishmack Jun 27, 2022
ba36bc4
Fix layout of code in setup build phase
hamishmack Jun 27, 2022
0d72622
Backport of windres fix
hamishmack Jun 28, 2022
9bbe304
Backport of windres fix
hamishmack Jun 28, 2022
a0c4318
Look for dynamic linking to libc instead of pthreads
hamishmack Jun 29, 2022
b9fdbe7
x86-64: fix linking with non-zero base address
hamishmack Jun 30, 2022
bb924a5
Try nixpkgs 2205 for ghc 8.10.7 windows cross compile
hamishmack Jun 30, 2022
ecd4714
Try nixpkgs 2111 for ghc 8.10.7 windows cross compile
hamishmack Jun 30, 2022
dd6f37d
Bump nixpkgs pins
hamishmack Jun 30, 2022
b93f2c3
Wind back nixpkgs-unstable to fix aarch64-darwin
hamishmack Jul 1, 2022
9e005cb
Pin binutils for windows cross compile
hamishmack Jul 1, 2022
1709fdc
Bump nixpkgs pins
hamishmack Jul 1, 2022
fe0be38
windres is in binutils so we should not need this now
hamishmack Jul 1, 2022
7481b40
Wind back nixpkgs-unstable to fix aarch64-darwin
hamishmack Jul 1, 2022
bc14c45
Use nixpkgs-unstable for ghc 8.10 windows cross compilation
hamishmack Jul 1, 2022
11b0117
Revert "Look for dynamic linking to libc instead of pthreads"
hamishmack Jul 1, 2022
4c69f38
Look for dynamic linking to libc instead of pthreads
hamishmack Jul 1, 2022
486a2c8
ifdLevel 0
hamishmack Jul 1, 2022
9277c16
Make sure Setup can run
hamishmack Jul 2, 2022
0819074
Merge remote-tracking branch 'origin/master' into hkm/nixpkgs-2205
hamishmack Jul 2, 2022
c681aa7
Move check to install phase
hamishmack Jul 2, 2022
b67dca7
Try older binutils for macOS
hamishmack Jul 2, 2022
bcc5ce5
Revert "Try older binutils for macOS"
hamishmack Jul 3, 2022
6cd78db
Try last good nixpkgs-unstable (based on git bisect)
hamishmack Jul 4, 2022
8151653
Try latest nixpkgs-unstable
hamishmack Jul 5, 2022
2c907cc
Work around for nixpkgs-unstable on aarch64-darwin
hamishmack Jul 5, 2022
a3cfecb
Add sanity check to boot compiler derivations
hamishmack Jul 6, 2022
eb38f10
Debug code to figure out what is going wrong on hydra
hamishmack Jul 6, 2022
5a523a0
Debug code to figure out what is going wrong on hydra
hamishmack Jul 6, 2022
f650174
Debug code to figure out what is going wrong on hydra
hamishmack Jul 6, 2022
1582715
Debug code to figure out what is going wrong on hydra
hamishmack Jul 6, 2022
f54c588
Debug code to figure out what is going wrong on hydra
hamishmack Jul 6, 2022
114af2c
Debug code to figure out what is going wrong on hydra
hamishmack Jul 6, 2022
b13bbea
Debug code to figure out what is going wrong on hydra
hamishmack Jul 6, 2022
e60ee42
Try `cp` instead of `install`
hamishmack Jul 6, 2022
178843c
Check ./Setup before copying
hamishmack Jul 6, 2022
3a922f1
Debug code to figure out what is going wrong on hydra
hamishmack Jul 6, 2022
0fd23b4
Debug code to figure out what is going wrong on hydra
hamishmack Jul 6, 2022
0afccd5
Possible fix
hamishmack Jul 6, 2022
9fb9deb
Possible fix
hamishmack Jul 6, 2022
618ec7b
That fix does not work (just breaks later)
hamishmack Jul 6, 2022
92b3b0e
Check older nixpkgs versions
hamishmack Jul 6, 2022
2b75103
What if we copy from $out to build dir
hamishmack Jul 6, 2022
93d44c4
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
87fc57e
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
7ac97c2
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
42a934e
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
1cf1fb1
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
582c0e1
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
f7d57e9
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
068f0a9
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
b305121
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
cc8cc4f
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
94e8fdd
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
3e5a800
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
a261e66
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
c6b3de4
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
ac1ada1
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
6b1eeeb
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
049c5c4
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
019aa6f
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
537f089
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
38802be
git bisect nixpkgs-unstable
hamishmack Jul 7, 2022
1dc450a
git bisect nixpkgs-unstable
hamishmack Jul 8, 2022
88541fe
git bisect nixpkgs-unstable
hamishmack Jul 8, 2022
0a56847
git bisect nixpkgs-unstable
hamishmack Jul 8, 2022
7aea88f
git bisect nixpkgs-unstable
hamishmack Jul 8, 2022
757ea7d
git bisect nixpkgs-unstable
hamishmack Jul 8, 2022
9e7cd0f
git bisect nixpkgs-unstable
hamishmack Jul 8, 2022
2f43c9c
git bisect nixpkgs-unstable
hamishmack Jul 8, 2022
580774a
git bisect nixpkgs-unstable
hamishmack Jul 9, 2022
f9e916a
git bisect nixpkgs-unstable
hamishmack Jul 9, 2022
eb1d60d
git bisect nixpkgs-unstable
hamishmack Jul 10, 2022
c754a41
git bisect nixpkgs-unstable
hamishmack Jul 10, 2022
b30dd4a
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
5cb8bd4
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
ce60bfe
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
544a5f9
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
7c5e880
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
a99baa5
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
c639019
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
6f95422
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
13abe08
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
082861d
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
efbffc3
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
6d25f9f
git bisect nixpkgs-unstable
hamishmack Jul 11, 2022
ed02853
git bisect nixpkgs-unstable
hamishmack Jul 12, 2022
1d6e7ec
nix flake lock --update-input nixpkgs-unstable
hamishmack Jul 13, 2022
7463e9c
remove debug code and turn on all ci
hamishmack Jul 13, 2022
206f51f
Remove sphinx work around no longer needed
hamishmack Jul 13, 2022
8765d94
Revert other changes made while testing
hamishmack Jul 13, 2022
7d646ee
Bump nixpkgs-2111 and nixpkgs-2205
hamishmack Jul 13, 2022
ea78e65
ifdLevel 1
hamishmack Jul 13, 2022
e82ce06
ifdLevel 2
hamishmack Jul 15, 2022
3a70416
Fix qemu for aarch64-multiplatform cross compile
hamishmack Jul 16, 2022
4c764e2
Fix libdwarf tests
hamishmack Jul 16, 2022
f455c38
ifdLevel 0
hamishmack Jul 16, 2022
55d6dc5
Update pins
hamishmack Jul 16, 2022
eb32a7c
ifdLevel 1
hamishmack Jul 16, 2022
6006511
ifdLevel 2
hamishmack Jul 16, 2022
c7f9443
Add "dwarfdump-20181024" to ci.nix
hamishmack Jul 16, 2022
4399b57
Fix libdwarf tests
hamishmack Jul 16, 2022
bf26f48
ifdLevel 3
hamishmack Jul 16, 2022
2ea9809
Fix for buildkite
hamishmack Jul 16, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions builder/setup-builder.nix
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,8 @@ let
for f in Setup.hs Setup.lhs; do
if [ -f $f ]; then
echo Compiling package $f
ghc $f -threaded '' + (if includeGhcPackage then "-package ghc " else "")
+ ''-package-db ${configFiles}/${configFiles.packageCfgDir} --make -o ./Setup
setup=$(pwd)/Setup
ghc $f -threaded ${if includeGhcPackage then "-package ghc " else ""
}-package-db ${configFiles}/${configFiles.packageCfgDir} --make -o ./Setup
fi
done
[ -f ./Setup ] || (echo Failed to build Setup && exit 1)
Expand Down
14 changes: 12 additions & 2 deletions ci.nix
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,17 @@
inherit (pkgs.haskell-nix) sources;
nixpkgsVersions = {
"R2111" = "nixpkgs-2111";
"R2205" = "nixpkgs-2205";
"unstable" = "nixpkgs-unstable";
};
haskellNix = import ./default.nix { inherit checkMaterialization; };
nixpkgsArgs = haskellNix.nixpkgsArgs // {
# Needed for dwarf tests
config = haskellNix.nixpkgsArgs.config // {
permittedInsecurePackages = ["libdwarf-20210528" "libdwarf-20181024" "dwarfdump-20181024"];
};
};
compilerNixNames = nixpkgsName: nixpkgs: builtins.mapAttrs (compiler-nix-name: runTests: {
inherit (import ./default.nix { inherit checkMaterialization; }) nixpkgsArgs;
inherit runTests;
}) (
# GHC version to cache and whether to run the tests against them.
Expand All @@ -26,6 +33,9 @@
nixpkgs.lib.optionalAttrs (nixpkgsName == "R2111") {
ghc865 = false;
ghc8107 = true;
} // nixpkgs.lib.optionalAttrs (nixpkgsName == "R2205") {
ghc865 = false;
ghc8107 = true;
} // nixpkgs.lib.optionalAttrs (nixpkgsName == "unstable") {
ghc865 = false;
ghc884 = false; # Native version is used to boot 9.0.1
Expand Down Expand Up @@ -70,7 +80,7 @@ dimension "Nixpkgs version" nixpkgsVersions (nixpkgsName: nixpkgs-pin:
let pinnedNixpkgsSrc = sources.${nixpkgs-pin};
# We need this for generic nixpkgs stuff at the right version
genericPkgs = import pinnedNixpkgsSrc {};
in dimension "GHC version" (compilerNixNames nixpkgsName genericPkgs) (compiler-nix-name: {nixpkgsArgs, runTests}:
in dimension "GHC version" (compilerNixNames nixpkgsName genericPkgs) (compiler-nix-name: {runTests}:
dimension "System" (systems nixpkgsName genericPkgs compiler-nix-name) (systemName: system:
let pkgs = import pinnedNixpkgsSrc (nixpkgsArgs // { inherit system; });
build = import ./build.nix { inherit pkgs ifdLevel compiler-nix-name; };
Expand Down
35 changes: 26 additions & 9 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
nixpkgs-2003 = { url = "github:NixOS/nixpkgs/nixpkgs-20.03-darwin"; };
nixpkgs-2105 = { url = "github:NixOS/nixpkgs/nixpkgs-21.05-darwin"; };
nixpkgs-2111 = { url = "github:NixOS/nixpkgs/nixpkgs-21.11-darwin"; };
nixpkgs-2205 = { url = "github:NixOS/nixpkgs/nixpkgs-22.05-darwin"; };
nixpkgs-unstable = { url = "github:NixOS/nixpkgs/nixpkgs-unstable"; };
flake-utils = { url = "github:numtide/flake-utils"; };
hydra.url = "hydra";
Expand Down
8 changes: 5 additions & 3 deletions lib/ghcjs-project.nix
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,11 @@ let

# Inputs needed to boot the GHCJS compiler
bootInputs = with pkgs.buildPackages; [
# pin nodejs to the 12 series for now, as strings can only be half the length in node 14+
# see https://github.com/nodejs/node/issues/33960, this can break large TH splices for now.
nodejs-12_x
# We used to pin nodejs to the 12 series, as strings can only be half the length in node 14+
# see https://github.com/nodejs/node/issues/33960
# Large TH splices are likely broken.
# TODO reinstate the pin of find a work around for ghcjs to send TH splice in chunks.
nodejs-18_x
makeWrapper
xorg.lndir
gmp
Expand Down
6 changes: 3 additions & 3 deletions lib/materialize.nix
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
}: derivation:

let
inherit (derivation) name;
name = derivation.name + pkgs.lib.optionalString (derivation ? version) "-${derivation.version}";

traceIgnoringSha256 = reason: x:
if sha256 != null
Expand All @@ -38,8 +38,8 @@ let

unchecked =
let
sha256message = "To make ${this} a fixed-output derivation but not materialized, set `${sha256Arg}` to the output of the 'calculateMaterializedSha' script in 'passthru'.";
materializeMessage = "To materialize ${this} entirely, pass a writable path as the `materialized` argument and run the 'updateMaterialized' script in 'passthru'.";
sha256message = "${name}: To make ${this} a fixed-output derivation but not materialized, set `${sha256Arg}` to the output of the 'calculateMaterializedSha' script in 'passthru'.";
materializeMessage = "${name}: To materialize ${this} entirely, pass a writable path as the `materialized` argument and run the 'updateMaterialized' script in 'passthru'.";
in if reasonNotSafe != null
then
# Warn the user if they tried to pin stuff down when it is not safe
Expand Down
7 changes: 4 additions & 3 deletions lib/spdx/licenses.nix
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
pkgs:
with builtins; let
materialized' = ../../materialized + "/spdx-${pkgs.evalPackages.spdx-license-list-data.version}";
spdxJson = pkgs.evalPackages.spdx-license-list-data.json or pkgs.evalPackages.spdx-license-list-data;
materialized' = ../../materialized + "/spdx-${spdxJson.version}";
licensesJSON = fromJSON (replaceStrings
[ "\\u0026" "\\u0027" "\\u003d" ]
[ "&" "'" "=" ]
(readFile "${pkgs.evalPackages.haskell-nix.materialize {
materialized = if pathExists materialized' then materialized' else null;
} (pkgs.evalPackages.runCommand "spdx-json" {} ''
} (pkgs.evalPackages.runCommand "spdx-json" { inherit (spdxJson) version; } ''
mkdir $out
cp ${pkgs.evalPackages.spdx-license-list-data.json or pkgs.evalPackages.spdx-license-list-data}/json/licenses.json $out
cp ${spdxJson}/json/licenses.json $out
'')
}/licenses.json")
);
Expand Down
Loading