From 558c588ef2c3e0c563e89ed578ba33dd3c9c32b1 Mon Sep 17 00:00:00 2001 From: Hamish Mackenzie Date: Thu, 6 Nov 2025 14:49:52 +1300 Subject: [PATCH 1/8] Update nixpkgs pins nix flake update nixpkgs-unstable nix flake update nixpkgs-2505 nix flake update nixpkgs-2411 --- flake.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 05bfa0f6d4..a6c12959ae 100644 --- a/flake.lock +++ b/flake.lock @@ -452,11 +452,11 @@ }, "nixpkgs-2411": { "locked": { - "lastModified": 1748037224, - "narHash": "sha256-92vihpZr6dwEMV6g98M5kHZIttrWahb9iRPBm1atcPk=", + "lastModified": 1751290243, + "narHash": "sha256-kNf+obkpJZWar7HZymXZbW+Rlk3HTEIMlpc6FCNz0Ds=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f09dede81861f3a83f7f06641ead34f02f37597f", + "rev": "5ab036a8d97cb9476fbe81b09076e6e91d15e1b6", "type": "github" }, "original": { @@ -468,11 +468,11 @@ }, "nixpkgs-2505": { "locked": { - "lastModified": 1757716134, - "narHash": "sha256-OYoZLWvmCnCTCJQwaQlpK1IO5nkLnLLoUW8wwmPmrfU=", + "lastModified": 1762303001, + "narHash": "sha256-6Q5fx8I7kI+uHL97pdpUnTm1Uu+OazpHfnv+DCAihtE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e85b5aa112a98805a016bbf6291e726debbc448a", + "rev": "139de9c2cb757650424fe8aa2a980eaa93a9e733", "type": "github" }, "original": { @@ -484,11 +484,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1759070547, - "narHash": "sha256-JVZl8NaVRYb0+381nl7LvPE+A774/dRpif01FKLrYFQ=", + "lastModified": 1762286042, + "narHash": "sha256-OD5HsZ+sN7VvNucbrjiCz7CHF5zf9gP51YVJvPwYIH8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "647e5c14cbd5067f44ac86b74f014962df460840", + "rev": "12c1f0253aa9a54fdf8ec8aecaafada64a111e24", "type": "github" }, "original": { From fccbbad4c46aacf9de606f22ce5bb171ab889166 Mon Sep 17 00:00:00 2001 From: Thomas Bereknyei Date: Thu, 30 Oct 2025 04:37:00 -0400 Subject: [PATCH 2/8] fix: use ghc967 to bootstrap (25.11) --- overlays/bootstrap.nix | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/overlays/bootstrap.nix b/overlays/bootstrap.nix index 2da240b20f..ba124fb5be 100644 --- a/overlays/bootstrap.nix +++ b/overlays/bootstrap.nix @@ -867,8 +867,9 @@ in { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform - then final.buildPackages.buildPackages.haskell-nix.compiler.ghc966 - else final.buildPackages.buildPackages.haskell.compiler.ghc966 + then final.buildPackages.buildPackages.haskell-nix.compiler.ghc967 + else final.buildPackages.buildPackages.haskell.compiler.ghc967 + or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 or final.buildPackages.buildPackages.haskell.compiler.ghc963 @@ -893,8 +894,9 @@ in { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform - then final.buildPackages.buildPackages.haskell-nix.compiler.ghc966 - else final.buildPackages.buildPackages.haskell.compiler.ghc966 + then final.buildPackages.buildPackages.haskell-nix.compiler.ghc967 + else final.buildPackages.buildPackages.haskell.compiler.ghc967 + or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 or final.buildPackages.buildPackages.haskell.compiler.ghc963 @@ -920,7 +922,8 @@ in { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform then final.buildPackages.buildPackages.haskell-nix.compiler.ghc983 - else final.buildPackages.buildPackages.haskell.compiler.ghc966 + else final.buildPackages.buildPackages.haskell.compiler.ghc967 + or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 or final.buildPackages.buildPackages.haskell.compiler.ghc963 @@ -946,7 +949,8 @@ in { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform then final.buildPackages.buildPackages.haskell-nix.compiler.ghc984 - else final.buildPackages.buildPackages.haskell.compiler.ghc966 + else final.buildPackages.buildPackages.haskell.compiler.ghc967 + or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 or final.buildPackages.buildPackages.haskell.compiler.ghc963 @@ -977,6 +981,7 @@ in { # or final.buildPackages.buildPackages.haskell.compiler.ghc983 final.buildPackages.buildPackages.haskell.compiler.ghc982 or final.buildPackages.buildPackages.haskell.compiler.ghc981 + or final.buildPackages.buildPackages.haskell.compiler.ghc967 or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 @@ -1008,6 +1013,7 @@ in { # or final.buildPackages.buildPackages.haskell.compiler.ghc983 final.buildPackages.buildPackages.haskell.compiler.ghc982 or final.buildPackages.buildPackages.haskell.compiler.ghc981 + or final.buildPackages.buildPackages.haskell.compiler.ghc967 or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 @@ -1040,6 +1046,7 @@ in { or final.buildPackages.buildPackages.haskell.compiler.ghc983 or final.buildPackages.buildPackages.haskell.compiler.ghc982 or final.buildPackages.buildPackages.haskell.compiler.ghc981 + or final.buildPackages.buildPackages.haskell.compiler.ghc967 or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 @@ -1073,6 +1080,7 @@ in { or final.buildPackages.buildPackages.haskell.compiler.ghc983 or final.buildPackages.buildPackages.haskell.compiler.ghc982 or final.buildPackages.buildPackages.haskell.compiler.ghc981 + or final.buildPackages.buildPackages.haskell.compiler.ghc967 or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 @@ -1114,6 +1122,7 @@ in { or final.buildPackages.buildPackages.haskell.compiler.ghc983 or final.buildPackages.buildPackages.haskell.compiler.ghc982 or final.buildPackages.buildPackages.haskell.compiler.ghc981 + or final.buildPackages.buildPackages.haskell.compiler.ghc967 or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 @@ -1138,8 +1147,9 @@ in { } // final.lib.optionalAttrs (builtins.compareVersions version "9.7" <0) { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform - then final.buildPackages.buildPackages.haskell-nix.compiler.ghc966 - else final.buildPackages.buildPackages.haskell.compiler.ghc966 + then final.buildPackages.buildPackages.haskell-nix.compiler.ghc967 + else final.buildPackages.buildPackages.haskell.compiler.ghc967 + or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 or final.buildPackages.buildPackages.haskell.compiler.ghc963 From 37b248948a4c2686cdc4917ecac6396300bd4b73 Mon Sep 17 00:00:00 2001 From: Hamish Mackenzie Date: Fri, 7 Nov 2025 22:28:52 +1300 Subject: [PATCH 3/8] Fix argument passed to compilerSelection --- lib/call-cabal-project-to-nix.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/call-cabal-project-to-nix.nix b/lib/call-cabal-project-to-nix.nix index 34dec9b988..2c65c5240f 100644 --- a/lib/call-cabal-project-to-nix.nix +++ b/lib/call-cabal-project-to-nix.nix @@ -89,7 +89,7 @@ let # # > The option `packages.Win32.package.identifier.name' is used but not defined. # - (compilerSelection pkgs)."${compiler-nix-name}"; + (compilerSelection pkgs.buildPackages)."${compiler-nix-name}"; in let ghc = if ghc' ? latestVersion From c448a6858e9efb7ef4aa44d31b40935a21ae952c Mon Sep 17 00:00:00 2001 From: Hamish Mackenzie Date: Tue, 18 Nov 2025 11:21:44 +1300 Subject: [PATCH 4/8] Fix for GHC 9.8.4 --- overlays/bootstrap.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/overlays/bootstrap.nix b/overlays/bootstrap.nix index ba124fb5be..9405106287 100644 --- a/overlays/bootstrap.nix +++ b/overlays/bootstrap.nix @@ -949,7 +949,8 @@ in { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform then final.buildPackages.buildPackages.haskell-nix.compiler.ghc984 - else final.buildPackages.buildPackages.haskell.compiler.ghc967 + else final.buildPackages.buildPackages.haskell.compiler.ghc984 + or final.buildPackages.buildPackages.haskell.compiler.ghc967 or final.buildPackages.buildPackages.haskell.compiler.ghc966 or final.buildPackages.buildPackages.haskell.compiler.ghc965 or final.buildPackages.buildPackages.haskell.compiler.ghc964 From fd247a200e6912a57e8e50705ae59db8a9382e33 Mon Sep 17 00:00:00 2001 From: Hamish Mackenzie Date: Tue, 18 Nov 2025 14:12:09 +1300 Subject: [PATCH 5/8] Fix for wine tests on detsys mac linux builders --- overlays/mingw_w64.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/overlays/mingw_w64.nix b/overlays/mingw_w64.nix index 2ab1cc133f..c2dd39beaa 100644 --- a/overlays/mingw_w64.nix +++ b/overlays/mingw_w64.nix @@ -90,7 +90,7 @@ let export WINEDLLOVERRIDES="winemac.drv=d" export WINEDEBUG=warn-all,fixme-all,-menubuilder,-mscoree,-ole,-secur32,-winediag export LC_ALL=en_US.UTF-8 - export WINEPREFIX=$TMP + export WINEPREFIX=''${WINEPREFIX:-$(mktemp -d)} Path="''${Path:-}" unset configureFlags unset configurePhase From 7e29adf376d1c8e164928d91b7fba80d55c2fcb4 Mon Sep 17 00:00:00 2001 From: Hamish Mackenzie Date: Thu, 20 Nov 2025 11:36:23 +1300 Subject: [PATCH 6/8] Disable broken tests --- test/coverage/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/coverage/default.nix b/test/coverage/default.nix index 512e85be8d..de86fb4b1c 100644 --- a/test/coverage/default.nix +++ b/test/coverage/default.nix @@ -29,7 +29,9 @@ in recurseIntoAttrs ({ # Does not work on ghcjs because it needs zlib. Wasm needs network fixed. meta.disabled = stdenv.hostPlatform.isGhcjs || stdenv.hostPlatform.isWasm # For some reason the `.tix` file is not created on armv7a android (not sure why) - || stdenv.hostPlatform.isAndroid && stdenv.hostPlatform.isAarch32; + || stdenv.hostPlatform.isAndroid && stdenv.hostPlatform.isAarch32 + # The `input.txt` is not written (or just not found) for mingwW64 (ucrt64 works ok) + || (stdenv.hostPlatform.isWindows && stdenv.hostPlatform.libc != "ucrt"); run = stdenv.mkDerivation { name = "coverage-test"; From 2a071cc897cfaebb3d553dfc7080fb25818be1ce Mon Sep 17 00:00:00 2001 From: Hamish Mackenzie Date: Thu, 20 Nov 2025 17:57:32 +1300 Subject: [PATCH 7/8] Update ghcjs-overlay sha256 --- test/unit.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/unit.nix b/test/unit.nix index 355169dbf6..b5e1dfd9a2 100644 --- a/test/unit.nix +++ b/test/unit.nix @@ -143,7 +143,7 @@ lib.runTests { secure: True root-keys: key-threshold: 0 - --sha256: sha256-y1vQnXI1XzkjnC4h66tVDmu2TZjZPcMrZEnE3m0XOfg= + --sha256: sha256-tyeqsCew1ptGCrNAIrw5R2sz+oSqWbWrd/wDAPh1hMs= -- end of block '')); expected = __toJSON { From 4b2b6f1b1ad7d126a3d8b32b18aa387100fd2860 Mon Sep 17 00:00:00 2001 From: Hamish Mackenzie Date: Thu, 20 Nov 2025 18:00:43 +1300 Subject: [PATCH 8/8] nix flake update hackage --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index ef5dc97153..e458056a43 100644 --- a/flake.lock +++ b/flake.lock @@ -103,11 +103,11 @@ "hackage": { "flake": false, "locked": { - "lastModified": 1763598401, - "narHash": "sha256-ob9BLrE7VWOvzYUZU3Ni6Kynst/eGRH2FAz1i16LGcA=", + "lastModified": 1763605384, + "narHash": "sha256-rQLBXbwZdY+Nu+sIVFCkNMi6AJUVzUOysD3ajBth+aY=", "owner": "input-output-hk", "repo": "hackage.nix", - "rev": "a9359105928d8c90ca9ec7a92a02a7aa9bfcfcab", + "rev": "c5ce8b5cf15a27a5faad73751d93e3c4e8624417", "type": "github" }, "original": {