Skip to content

Commit a5fe362

Browse files
committed
Update haskell.nix and use nixpkgs-2505
1 parent ff8c93b commit a5fe362

File tree

5 files changed

+77
-30
lines changed

5 files changed

+77
-30
lines changed

.github/workflows/hello.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ jobs:
1818
#- aarch64-darwin
1919
#- aarch64-linux
2020
compiler-nix-name:
21-
- ghc810
2221
- ghc96
2322
- ghc98
2423
- ghc910
@@ -35,9 +34,6 @@ jobs:
3534
- false
3635
- true
3736
exclude:
38-
# Just cross compiling javascript with ghc 9.6 and above
39-
- compiler-nix-name: ghc810
40-
target-platform: "-js"
4137
# Windows cross compilation only works on x86_64 right now.
4238
- platform: aarch64-darwin
4339
target-platform: "-windows"

.github/workflows/lints.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ jobs:
4242
nix_path: nixpkgs=channel:nixos-unstable
4343
- run: |
4444
nix profile install github:Kha/nixprof
45-
nixprof record nix develop .#ghc8107 --accept-flake-config
45+
nixprof record nix develop .#ghc96 --accept-flake-config
4646
nixprof report -p
4747
nixprof report -a
4848
nixprof report -s

flake.lock

Lines changed: 65 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flake.nix

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
description = "Minimal devshell flake for haskell";
33

44
inputs.haskellNix.url = "github:input-output-hk/haskell.nix";
5-
inputs.nixpkgs.follows = "haskellNix/nixpkgs-2411";
5+
inputs.nixpkgs.follows = "haskellNix/nixpkgs-2505";
66
inputs.flake-utils.url = "github:numtide/flake-utils";
77
inputs.iohk-nix.url = "github:input-output-hk/iohk-nix";
88
inputs.cabal.url = "github:stable-haskell/cabal";
@@ -91,7 +91,6 @@
9191
# Map the compiler-nix-name to a final compiler-nix-name the way haskell.nix
9292
# projects do (that way we can use short names)
9393
let compilers = pkgs: pkgs.lib.genAttrs [
94-
"ghc810"
9594
"ghc96"
9695
"ghc98"
9796
"ghc910"
@@ -257,9 +256,9 @@
257256
})) devShells)
258257
// (pkgs.lib.mapAttrs' (name: drv:
259258
pkgs.lib.nameValuePair "${name}-plans" drv.plans) devShells);
260-
packages.cabalProjectLocal.static = (import ./quirks.nix { pkgs = static-pkgs; static = true; }).template;
261-
packages.cabalProjectLocal.cross-js = (import ./quirks.nix { pkgs = js-pkgs; }).template;
262-
packages.cabalProjectLocal.cross-windows = (import ./quirks.nix { pkgs = windows-pkgs; }).template;
259+
packages.cabalProjectLocal-static = (import ./quirks.nix { pkgs = static-pkgs; static = true; }).template;
260+
packages.cabalProjectLocal-cross-js = (import ./quirks.nix { pkgs = js-pkgs; }).template;
261+
packages.cabalProjectLocal-cross-windows = (import ./quirks.nix { pkgs = windows-pkgs; }).template;
263262
});
264263
# we use flake-outputs here to inject a required job that aggregates all required jobs.
265264
in flake-outputs // {

tool-map.nix

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ let
1515
f76d08be13e9a61a377a85e2fb63f4c5435d40f8feb3e12eb05905edb8cdea89
1616
26021a13b401500c8eb2761ca95c61f2d625bfef951b939a8124ed12ecf07329
1717
7541f32a4ccca4f97aea3b22f5e593ba2c0267546016b992dfadcd2fe944e55d
18-
--sha256: sha256-+hzciiQqWb5oOzQ2JZ2lzJGfGuwA3ZigeWgAQ8Dz+kk=
18+
--sha256: sha256-NZy6Y5Lea+nOKpYkY9gO+XAZdAm0oKIAGIN8QICO9Co=
1919
2020
if impl(ghc < 9.13)
2121
active-repositories: hackage.haskell.org
@@ -37,15 +37,15 @@ compiler-nix-name: tool: {
3737
# Use the github source of HLS that is tested with haskell.nix CI
3838
src = { "ghc8107" = pkgs.haskell-nix.sources."hls-2.2";
3939
"ghc902" = pkgs.haskell-nix.sources."hls-2.4";
40-
}.${compiler-nix-name} or pkgs.haskell-nix.sources."hls-2.10";
40+
}.${compiler-nix-name} or pkgs.haskell-nix.sources."hls-2.11";
4141
# `tool` normally ignores the `cabal.project` (if there is one in the hackage source).
4242
# We need to use the github one (since it has settings to make hls build).
4343
cabalProject = __readFile (src + "/cabal.project");
4444
configureArgs = "--disable-benchmarks --disable-tests";
4545
};
4646
happy = { version = "1.20.1.1"; inherit cabalProjectLocal; };
4747
alex = { version = "3.2.7.3"; inherit cabalProjectLocal; };
48-
cabal = {
48+
cabal = rec {
4949
src = self.inputs.cabal;
5050
# We use the cabal.boostrap.project file, as we don't
5151
# want an of the cabal complexities they have. The
@@ -54,10 +54,10 @@ compiler-nix-name: tool: {
5454
#
5555
# cabal = { src = { outPath = self.inputs.cabal; filterPath = { path, ... }: path; }; }
5656
#
57-
cabalProjectFileName = "cabal.bootstrap.project";
58-
cabalProjectLocal = ''
59-
index-state: hackage.haskell.org 2025-03-17T00:00:00Z
60-
'';
57+
cabalProject = __replaceStrings
58+
["import: project-cabal/constraints.config"]
59+
[(__readFile (src + "/project-cabal/constraints.config"))]
60+
(__readFile (src + "/cabal.bootstrap.project"));
6161
};
6262
hlint = {
6363
cabalProjectLocal = ''

0 commit comments

Comments
 (0)