Compare commits

...

215 commits

Author SHA1 Message Date
nixpkgs-ci[bot]
8486e8a7b3
Merge fbdfe58264 into haskell-updates 2026-07-06 00:43:34 +00:00
nixpkgs-ci[bot]
4f0970401a
Merge 7d5d19274b into haskell-updates 2026-07-05 00:43:51 +00:00
nixpkgs-ci[bot]
9959ce2f44
Merge f91cfe02f8 into haskell-updates 2026-07-04 00:40:56 +00:00
nixpkgs-ci[bot]
3f085fe61c
Merge 9778ed5674 into haskell-updates 2026-07-03 00:42:09 +00:00
Wolfgang Walther
f61423d87c
haskellPackages.lambdabot: remove ncfavier as maintainer (#537887) 2026-07-02 19:57:54 +00:00
Naïm Camille Favier
4aeebf57da
haskellPackages.lambdabot: remove ncfavier as maintainer 2026-07-02 19:38:32 +02:00
Wolfgang Walther
4c7647a6d3
haskell.packages.ghc{96,98}.haskell-language-server: fix build (#537724) 2026-07-02 10:10:33 +00:00
Wolfgang Walther
afda14f1d4
dhall-lsp-server: fix build with lsp 2.8 2026-07-02 10:31:48 +02:00
Wolfgang Walther
e9af2ed4be
haskellPackages.no-recursion: jailbreak 2026-07-02 10:23:39 +02:00
Wolfgang Walther
2735e861f0
haskell.packages.ghc{96,98}.haskell-language-server: fix build
Jailbreaks are due to optparse-applicative.
2026-07-02 10:07:26 +02:00
Wolfgang Walther
92ca07b6a5
haskellPackages.threadscope: jailbreak 2026-07-02 09:48:12 +02:00
Wolfgang Walther
e82d6b924f
haskellPackages.taskwarrior: jailbreak 2026-07-02 09:43:24 +02:00
Wolfgang Walther
94aa8f8960
haskellPackages.shh{,-extras}: jailbreak 2026-07-02 09:41:11 +02:00
Wolfgang Walther
75496eb67a
haskellPackages.eventlog2html: jailbreak 2026-07-02 09:36:13 +02:00
Wolfgang Walther
9c55dbeccf
[haskell-updates] stack: patch for semaphore-compat >= 2.0 (#534567) 2026-07-02 07:25:00 +00:00
Wolfgang Walther
cef090d1ab
haskellPackages.optics: pick patches that make test suite pass with 9.12 (#536009) 2026-07-02 07:19:43 +00:00
sterni
4132fb9736
haskellPackages.optics: pick patches that make test suite pass with 9.12
I'm not 100% clear whether there is still some kind of GHC regression
involved here, but I think we can pick these patches from upstream's
development branch. Also GHC upstream is aware of these (original)
failures with 9.12.5-rc2.
2026-07-02 09:13:52 +02:00
Wolfgang Walther
98c655c09a
haskellPackages.*: compile a few test suites with threaded runtime (#537144) 2026-07-02 07:06:56 +00:00
nixpkgs-ci[bot]
3f49232af6
Merge 8037b1aab1 into haskell-updates 2026-07-02 00:50:41 +00:00
nixpkgs-ci[bot]
7100632254
Merge 5bb269961b into haskell-updates 2026-07-01 00:56:02 +00:00
Alexandre Esteves
b078be0041 haskellPackages.*: compile a few test suites with threaded runtime 2026-07-01 01:01:33 +01:00
nixpkgs-ci[bot]
92779d4478
Merge 3b1d058d00 into haskell-updates 2026-06-30 00:53:14 +00:00
sterni
070e7a021f haskellPackages.futhark-manifest: use version requested by futhark-0.26.3 2026-06-29 23:56:40 +02:00
Wolfgang Walther
71b5964ed6
haskellPackages.{yaya*}: allow doctest 0.25 (#536739) 2026-06-29 18:04:32 +00:00
Wolfgang Walther
00a35c51c7
haskellPackages.{yaya*}: allow doctest 0.25 2026-06-29 19:55:06 +02:00
Wolfgang Walther
dbd129b241
haskellPackages.graphviz: allow QuickCheck 2.16 (#536737) 2026-06-29 17:54:14 +00:00
Wolfgang Walther
26066e1e2b
haskellPackages.graphviz: allow QuickCheck 2.16 2026-06-29 19:28:59 +02:00
nixpkgs-ci[bot]
60f1d07046
Merge 2df5d1313a into haskell-updates 2026-06-29 00:55:22 +00:00
Wolfgang Walther
a5e06de0c4
haskellPackages.servant-{auth-client,auth-docs,auth-server,swagger}: jailbreak (#536456) 2026-06-28 22:21:46 +00:00
Wolfgang Walther
d0e8fdd1bd
haskellPackages.servant-{auth-client,auth-docs,auth-server,swagger}: jailbreak 2026-06-28 23:39:46 +02:00
sterni
9122c84035 git-annex: delete unused patch file 2026-06-28 16:15:35 +02:00
sterni
f479cbacab stack: apply patches for semaphore-compat >= 2.0
Apply patches from https://github.com/commercialhaskell/stack/pull/6935
allowing us to build stack with GHC 9.12.5-rc2 (but no other GHC version).
Patch for the change log is not included (due to likely conflict problems),
but other documentation included with stack is updated.

We also apply an unrelated bug fix, so we don't need to rebase the patches.
2026-06-28 16:12:15 +02:00
sterni
f87fabdc91 stack: drop released patch 2026-06-28 16:11:51 +02:00
sterni
f94cecf640 haskell.packages.ghc910.stack: remove compat code
Ideally, we won't use this going forward and just build stack with GHC 9.12
2026-06-28 15:45:51 +02:00
Wolfgang Walther
fc0932307c
pkgsStatic.haskell.packages.native-bignum.ghc948.postgrest: fix build
Removes a dependency which had long been replaced upstream, but the
expression is still generated from the outdated hackage package.

The GHC 9.4.8 static variant is still used upstream, but we will be able
to remove it from the release set on PostgREST's next release.
2026-06-28 10:47:04 +02:00
Wolfgang Walther
ffbec19b05
haskellPackages.git-annex: update hash 2026-06-28 10:32:42 +02:00
nixpkgs-ci[bot]
435e7264b6
Merge bdd995eaee into haskell-updates 2026-06-28 00:54:07 +00:00
sternenseemann
480f0726e7
[haskell-updates] haskellPackages: stackage Nightly 2026-06-20 -> Nightly 2026-06-26 (#534748) 2026-06-27 11:29:35 +00:00
nixpkgs-ci[bot]
4d0ae93287
Merge 538087c016 into haskell-updates 2026-06-27 00:52:07 +00:00
sternenseemann
81ef0ce73b
haskellPackages.wai-app-file-cgi: pin to < 3.2.0 for mighttpd2 (#535246) 2026-06-26 11:13:45 +00:00
sterni
24211dd381 haskellPackages.wai-app-file-cgi: pin to < 3.2.0 for mighttpd2
Requires picking a compat patch from 3.2.1 for http-types-0.12.5.
2026-06-26 13:04:54 +02:00
sterni
8b99224c3e haskellPackages.statistics: drop obsolete override 2026-06-26 10:48:10 +02:00
sterni
d56383f426 haskellPackages: stackage Nightly 2026-06-20 -> Nightly 2026-06-26
all-cabal-hashes: 2026-06-20T12:32:58Z -> 2026-06-26T06:10:51Z

(generated by maintainers/scripts/haskell/update-package-set.sh)
2026-06-26 10:48:10 +02:00
nixpkgs-ci[bot]
2836c4b1f4
Merge 19e056881c into haskell-updates 2026-06-26 00:54:38 +00:00
Wolfgang Walther
16a3b0c7d9
[haskell-updates] git-annex: unbreak (#534543) 2026-06-25 08:31:42 +00:00
Wolfgang Walther
7db16b7a40
top-level/release-haskell.nix: use ghc 9.12 in versioned jobs (#534745) 2026-06-25 07:55:36 +00:00
nixpkgs-ci[bot]
85b5c86354
Merge 19a053f28c into haskell-updates 2026-06-25 00:53:29 +00:00
nixpkgs-ci[bot]
3f6c25ad80
Merge dd4c7b49b6 into haskell-updates 2026-06-24 00:48:36 +00:00
sterni
a8988fede0 top-level/release-haskell.nix: drop ghc9125 exclusions
These packages need to work in the default package set anyways!
2026-06-23 23:36:56 +02:00
sterni
68f69e8b05 top-level/release-haskell.nix: prefer ghc9125 over ghc9123 2026-06-23 23:36:56 +02:00
Robert Hensing
9bbb567bb9 haskellPackages.hercules-ci-optparse-applicative: 0.19.0.0-fork-0 -> 0.19.0.0-fork-1 2026-06-23 17:11:40 +02:00
sterni
5f8a3af9eb haskellPackages.git-annex: patch for http-types >= 0.12.5 2026-06-23 12:55:31 +02:00
sterni
b25e3e8489 git-annex: update sha256 for 10.20260601 2026-06-23 12:55:31 +02:00
sterni
a220c38f46 haskellPackages.cabal2nix-unstable: 2026-03-30 -> 2026-06-23
This makes sure the libmagic dependency of haskellPackages.magic
is resolved correctly again.
2026-06-23 12:55:25 +02:00
sterni
fdbcfd8b47 haskellPackages.statistics: allow doctest >= 0.25 2026-06-23 10:17:49 +02:00
sterni
eff6c0e60e darcs: patch incompatibilities with Stackage Nightly and Cabal 3.14 2026-06-23 10:17:49 +02:00
nixpkgs-ci[bot]
5a03008b47
Merge 691bc285bc into haskell-updates 2026-06-23 00:52:15 +00:00
nixpkgs-ci[bot]
6dd4da168b
Merge 6e7f01b46b into haskell-updates 2026-06-22 00:59:28 +00:00
Alexandre Esteves
4cbc2251c7
haskellPackages.haskell-language-server: fix or bump deps (#525752) 2026-06-22 00:38:49 +00:00
Alexandre Esteves
a8233a24e1 haskellPackages: regenerate package set based on current config 2026-06-21 23:04:56 +01:00
Alexandre Esteves
da4f3989f0 haskellPackages.haskell-language-server: add myself as maintainer including deps 2026-06-21 22:44:59 +01:00
Alexandre Esteves
e0497b3d10 haskellPackages: drop obsolete package upgrades 2026-06-21 22:44:07 +01:00
Alexandre Esteves
a49c815e3d haskellPackages: regenerate package set based on current config 2026-06-21 22:43:24 +01:00
Alexandre Esteves
f213d6af36 haskellPackages.haskell-language-server: unrestrict deps 2026-06-21 22:30:23 +01:00
Alexandre Esteves
aba749b3bb haskellPackages.stylish-haskell: patch bound 2026-06-21 22:30:07 +01:00
Wolfgang Walther
e64658550c
cabal-install: patch for compatibility with semaphore-compat-2.0.0 (#531658) 2026-06-21 09:11:29 +00:00
Wolfgang Walther
07d2edc929
haskellPackages.gitit: drop obsolete overrides 2026-06-21 10:47:07 +02:00
nixpkgs-ci[bot]
b52ea84a40
Merge dccba7b9f2 into haskell-updates 2026-06-21 00:59:34 +00:00
sterni
f394a62a65 cabal-install: patch for compatibility with semaphore-compat-2.0.0
This is necessary pending a release of cabal-install-3.18 (and Cabal-3.18).
Since the patch for Cabal changes the public API, I've chosen to only
apply it inside the cabal-install overlay for now.
2026-06-21 02:39:54 +02:00
sternenseemann
ad66699b02
[haskell-updates] haskellPackages: stackage Nightly 2026-06-09 -> Nightly 2026-06-16 (#530271) 2026-06-21 00:30:46 +00:00
sterni
084d450fa7 haskell.packages.ghc9125: 9.12.4.20260606 -> 9.12.4.20260614 2026-06-20 19:18:03 +02:00
Wolfgang Walther
ec138222f7 haskellPackages.postgres-websockets: jailbreak (wai-app-static) 2026-06-20 19:18:03 +02:00
sterni
5a13f175d1 haskellPackages.hakyll-filestore: drop obsolete override 2026-06-20 19:18:03 +02:00
Wolfgang Walther
117625921f haskellPackages.hw-prim: drop obsolete jailbreak 2026-06-20 19:18:03 +02:00
Wolfgang Walther
2c44031fe0 haskellPackages.vector: drop obsolete jailbreak 2026-06-20 19:18:03 +02:00
sterni
d34ba4d817 haskellPackages: stackage Nightly 2026-06-09 -> Nightly 2026-06-20
all-cabal-hashes: 2026-06-09T15:28:54Z -> 2026-06-20T12:32:58Z

(generated by maintainers/scripts/haskell/update-package-set.sh)
2026-06-20 19:18:02 +02:00
nixpkgs-ci[bot]
e34ce374a1
Merge 6c91888634 into haskell-updates 2026-06-20 00:54:18 +00:00
nixpkgs-ci[bot]
a00be59a94
Merge f7df78e77a into haskell-updates 2026-06-19 01:03:53 +00:00
nixpkgs-ci[bot]
ab20ff9b2f
Merge a0fe7a7f2e into haskell-updates 2026-06-18 00:58:39 +00:00
nixpkgs-ci[bot]
995d34a153
Merge 8cf9f7fff1 into haskell-updates 2026-06-17 00:58:42 +00:00
Wolfgang Walther
9208b19946
haskellPackages.{rvar,QuickCheck-safe}: fix build (#531374) 2026-06-16 20:14:29 +00:00
nixpkgs-ci[bot]
9029909ba3
Merge 5a21d1bfee into haskell-updates 2026-06-16 01:04:21 +00:00
nixpkgs-ci[bot]
b82be3afe6
Merge 635f366cf9 into haskell-updates 2026-06-15 00:59:45 +00:00
Naïm Camille Favier
248b70dc3b
haskellPackages.QuickCheck-safe: allow build with QuickCheck 2.16 2026-06-14 16:11:41 +02:00
Naïm Camille Favier
0baca65faa
haskellPackages.{rvar,random-fu}: fix build 2026-06-14 16:11:11 +02:00
nixpkgs-ci[bot]
b1528a1baf
Merge a18d24ff2b into haskell-updates 2026-06-14 00:57:26 +00:00
Wolfgang Walther
200316c491
haskellPackages/fused-effects: jailbreak because of too tight hedgedoc dep (#531331) 2026-06-13 12:49:06 +00:00
mangoiv
3c4f10205c
haskellPackages/fused-effects: jailbreak because of too tight hedgedog dep 2026-06-13 14:03:44 +02:00
Wolfgang Walther
827c840fb1
haskellPackages.validation: pin to 1.1.5 (#530365) 2026-06-13 11:43:41 +00:00
Allen Du
095f6729ca
haskellPackages.validation: pin to 1.1.5 2026-06-13 10:17:35 +02:00
Wolfgang Walther
1352e67378
haskellPackages: regenerate hackage-packages.nix 2026-06-13 10:17:11 +02:00
nixpkgs-ci[bot]
0814616eaf
Merge 08740d8811 into haskell-updates 2026-06-13 00:57:33 +00:00
nixpkgs-ci[bot]
f70431ea67
Merge 20c18080b0 into haskell-updates 2026-06-12 00:58:47 +00:00
sterni
8383c3f904 haskellPackages.hakyll-filestore: allow hakyll >= 4.17 2026-06-11 22:38:23 +02:00
nixpkgs-ci[bot]
cac8c10692
Merge d9c4084332 into haskell-updates 2026-06-11 00:55:35 +00:00
Wolfgang Walther
739281cf7a
haskellPackages.yesod-middleware-csp: jailbreak & unbreak (#529859) 2026-06-10 09:49:07 +00:00
Michael Schneider
ef5a2561e3 haskellPackages.yesod-middleware-csp: 1.2.0 -> 1.3.0 2026-06-10 16:40:50 +07:00
sterni
a5f1afdf0f haskellPackages.pandoc: drop patch applied by upstream 2026-06-10 06:40:59 +02:00
sternenseemann
cbe86ed815
[haskell-updates] haskellPackages: stackage Nightly 2026-05-27 -> Nightly 2026-06-07 (#529097) 2026-06-09 16:33:20 +00:00
Wolfgang Walther
5617c0ba47 haskellPackages: stackage Nightly 2026-05-27 -> Nightly 2026-06-09
all-cabal-hashes: 2026-05-28T09:17:22Z -> 2026-06-09T15:28:54Z

(generated by maintainers/scripts/haskell/update-package-set.sh)

Co-authored-by: sterni <sternenseemann@systemli.org>
2026-06-09 18:08:40 +02:00
sternenseemann
caf8327196
git-annex: build against filepath-bytestring instead of file-io (#527916) 2026-06-09 15:35:27 +00:00
sternenseemann
89b9cdcbba
haskellPackages.{bitwise,psqueues,xz}: drop override (#525905) 2026-06-09 15:33:55 +00:00
sternenseemann
3c3354afa3
haskell.packages.ghc912: 9.12.3 -> 9.12.4.20260606 (#529900) 2026-06-09 15:11:44 +00:00
sterni
8cc9c34bcb haskell.packages.ghc9{4,6}.semaphore-compat: 1.0.0 -> 2.0.0
This matches GHC 9.12.5.
2026-06-09 15:49:31 +02:00
sterni
8c3d964e79 haskell.packages.ghc912: 9.12.3 -> 9.12.4.20260606 2026-06-09 13:54:57 +02:00
nixpkgs-ci[bot]
cadaf97e4e
Merge 3438114c15 into haskell-updates 2026-06-09 00:50:54 +00:00
nixpkgs-ci[bot]
593c21a56a
Merge f77c3e23e5 into haskell-updates 2026-06-08 00:57:17 +00:00
Wolfgang Walther
6306c15610
elmPackages.elm-format: jailbreak (#529072) 2026-06-07 10:03:20 +00:00
Marek Fajkus
884892c2c1
elmPackages.elm-format: jailbreak 2026-06-07 11:40:59 +02:00
nixpkgs-ci[bot]
627dd785ad
Merge 38d9adc8ca into haskell-updates 2026-06-07 00:56:22 +00:00
nixpkgs-ci[bot]
180157dfa4
Merge b99e1dabec into haskell-updates 2026-06-06 00:52:21 +00:00
Wolfgang Walther
0d1190abf7
haskellPackages.duckdb-simple: jailbreak (#528095) 2026-06-05 20:49:03 +00:00
nixpkgs-ci[bot]
c24d964453
Merge fcfb4d2c1c into haskell-updates 2026-06-05 00:55:21 +00:00
Allen Du
9ec4c8e1b6
haskellPackages.duckdb-simple: jailbreak
too strict bounds on QuickCheck <2.16
2026-06-04 15:30:54 -04:00
sternenseemann
b32a192bcf
mkjson: disable doctests and switch to Codeberg (#527977) 2026-06-04 14:05:55 +00:00
Troels Henriksen
338f88c94a mkjson: disable doctests and switch to Codeberg 2026-06-04 15:43:27 +02:00
sternenseemann
a262ae9474
haskellPackages.servant-mutlipart-core: jailbreak (#527963) 2026-06-04 12:56:45 +00:00
sterni
9f367b9af0 haskellPackages.hakyll-alectryon: allow hakyll 4.17 2026-06-04 14:50:03 +02:00
sterni
9227423f57 haskellPackages.hakyll-images: drop obsolete override
Test suite was fixed in 1.3.1
2026-06-04 14:48:33 +02:00
sorki
79b85a6061 haskellPackages.servant-mutlipart-core: jailbreak
Pending issue / PR
https://github.com/haskell-servant/servant-multipart/issues/76
https://github.com/haskell-servant/servant-multipart/pull/77
2026-06-04 14:47:10 +02:00
sterni
07837352f5 git-annex: build against filepath-bytestring instead of file-io
Unfortunately, file-io >= 0.2 is required which conflicts with the core
package shipped with GHC.
2026-06-04 12:51:17 +02:00
sterni
422b020e60 git-annex: update sha256 for 10.20260525 2026-06-04 12:50:48 +02:00
nixpkgs-ci[bot]
d58b43bad8
Merge 0cc225cd89 into haskell-updates 2026-06-04 01:02:38 +00:00
nixpkgs-ci[bot]
e4e45c45d7
Merge 52383c55bc into haskell-updates 2026-06-03 01:03:22 +00:00
Wolfgang Walther
a0811c1859
haskellPackages.dataframe: unpin from 0.3.3.6 (#526717) 2026-06-02 06:42:04 +00:00
nixpkgs-ci[bot]
41dec8b399
Merge e7713b176c into haskell-updates 2026-06-02 00:57:41 +00:00
Ai-Ya-Ya
4b9529d490
haskellPackages.pinch: jailbreak
bump already merged upstream, awaiting new Hackage release
2026-06-01 23:59:36 +00:00
Ai-Ya-Ya
eca559367a
haskellPackages.dataframe: unpin from 0.3.3.6
later version of dataframe removed dependency on random-1.3 so safe to
unpin
2026-06-01 18:48:15 +00:00
Wolfgang Walther
d217b14de6
haskellPackages.haskell-ci: 0.18.1 -> 0.19.20260331 (#525918) 2026-06-01 17:41:44 +00:00
nixpkgs-ci[bot]
5aafdde3a0
Merge 501880c9da into haskell-updates 2026-06-01 00:54:54 +00:00
nixpkgs-ci[bot]
9eb68607ef
Merge 78058c8132 into haskell-updates 2026-05-31 00:54:34 +00:00
sterni
430963bdf1 haskellPackages.haskell-ci: 0.18.1 -> 0.19.20260331
This plus a bunch of workarounds fixes the build of haskell-ci with
Stackage Nightly.
2026-05-30 13:03:39 +02:00
Wolfgang Walther
4ca20a7582
haskellPackages.xz: drop override
Fixed in a new revision on the latest hackage bump.
2026-05-30 12:31:51 +02:00
Wolfgang Walther
39ad1cb021
haskellPackages.psqueues: drop override
Fixed in a new revision on the latest hackage bump.
2026-05-30 12:30:57 +02:00
Wolfgang Walther
6ad984ce3d
haskellPackages.bitwise: drop override
Fixed in a new revision on the latest hackage bump.
2026-05-30 12:30:31 +02:00
sternenseemann
8b0587a6d1
haskellPackages.pdftotext: fix build (#525219) 2026-05-30 10:17:08 +00:00
sterni
668847dd15 haskellPackages.hoogle: unpin
This pin should _not_ have survived this long!
2026-05-30 11:42:25 +02:00
Wolfgang Walther
40f0c70593
postgrest: fix build (#524050) 2026-05-30 08:48:06 +00:00
nixpkgs-ci[bot]
265fda252f
Merge ce8325fa0e into haskell-updates 2026-05-30 00:50:33 +00:00
sterni
e1eeed9ea6 release-haskell.nix: test haddock-{api,library} on GHC < 9.12
At least where possible.
2026-05-29 12:45:02 +02:00
sterni
d3928686c3 haskell.packages.ghc96.haddock-api: ignore overly strict bounds 2026-05-29 12:45:02 +02:00
sterni
fb629a8712 haskell.packages.ghc94.haddock-{api,library}: provide matching versions
GHC >= 9.12 ships these libraries as a core package, so we need to manually
pick them for older package sets. Given that they depend on the ghc library,
they actually need to match.

The broken flag on haddock-api is pretty much bogus now, as it isn't
even built as part of the main package set anymore (but with ghc as a
core pkg), but haskell.packages.ghc9{8,10}.haddock-api need to be marked
as broken since no releases compatible with GHC 9.10 or 9.8 have been
made to Hackage.
2026-05-29 12:44:22 +02:00
sterni
1fa9545db7 haskell.packages.ghc94.file-io: don't try to provide
file-io depends on unix >= 2.8 which isn't included with GHC 9.4, so we
can't properly build file-io in this package set (without making it
inconsist). Our best shot at making packages “just work” is hoping the
use Cabal conditionals to depend on file-io, so file-io doesn't actually
wind up being necessary for GHC 9.4.

If file-io is absolutely necessary, manual package specific intervention
will be necessary either way.
2026-05-29 12:42:44 +02:00
sterni
7b203a8cdf haskell.packages.ghc9{0,4,6}.semaphore-compat: keep using 1.0.0
semaphore-compat 2.0.0 has just been released, but no GHC ships it as
a core package yet, so using 1.0.0 for GHC <9.8 makes more sense as it
matches Stackage Nightly.
2026-05-29 12:42:43 +02:00
sternenseemann
3080e495c5
haskellPackages.amazonka: fix build (#525212) 2026-05-29 09:53:03 +00:00
nixpkgs-ci[bot]
41a68a1180
Merge 7b97a86791 into haskell-updates 2026-05-29 00:53:02 +00:00
Marc Scholten
2c84961290 haskellPackages.pdftotext: fix build 2026-05-28 17:35:29 +01:00
Marc Scholten
eb378a86bf haskellPackages.amazonka: fix build 2026-05-28 15:59:22 +01:00
sternenseemann
b8880df8ac
haskell.packages.ghc902Binary: fix evaluation of package set (#496292) 2026-05-28 10:49:59 +00:00
sternenseemann
79a87d6750 haskell.packages.ghc902Binary: fix evaluation of package set
These attributes need to be present, so that callPackage doesn't fail
with an unrecoverable error on some members of the package set. This
is not necessary for any package Hydra builds, but helps for listing/
inspecting the package set.
2026-05-28 12:40:26 +02:00
sternenseemann
61b9e0b5f4
haskell.packages.microhs: fix eval after bump to nightly (#522940) 2026-05-28 10:28:38 +00:00
sternenseemann
2cb1137ad8
[haskell-updates] haskellPackages: stackage Nightly 2026-05-16 -> Nightly 2026-05-27 (#525157) 2026-05-28 10:24:12 +00:00
sterni
dc341cc322 haskell.packages.microhs: fix eval after bump to nightly 2026-05-28 12:23:16 +02:00
sternenseemann
7ef227eef6
haskellPackages.ghc-typelits-natnormalise: fix tests (#524100) 2026-05-28 10:17:40 +00:00
sterni
df2259de34 haskellPackages.os-string_2_0_10: drop obsolete jailbreak 2026-05-28 12:12:18 +02:00
sterni
fbfe792c92 haskellPackages: stackage Nightly 2026-05-16 -> Nightly 2026-05-27
all-cabal-hashes: 2026-05-16T18:12:46Z -> 2026-05-28T09:17:22Z

(generated by maintainers/scripts/haskell/update-package-set.sh)
2026-05-28 12:07:57 +02:00
nixpkgs-ci[bot]
18c743b5c9
Merge 8be06063cd into haskell-updates 2026-05-28 00:46:19 +00:00
Marc Scholten
1912d24658 haskellPackages.ghc-typelits-natnormalise: fix tests
Tests spawn ghc with -fplugin and need the package's in-place package database in NIX_GHC_PACKAGE_PATH_FOR_TEST.

Put the override in configuration-nix.nix so it applies across GHC package sets.

Assisted-by: OpenAI Codex (GPT-5)
2026-05-27 10:42:28 +01:00
nixpkgs-ci[bot]
8b3bed966a
Merge c0523a4c8f into haskell-updates 2026-05-27 00:51:00 +00:00
nixpkgs-ci[bot]
8ca5572327
Merge 0a6619d2fd into haskell-updates 2026-05-26 01:34:21 +00:00
nixpkgs-ci[bot]
f1cd3a542b
Merge 3ab9d06032 into haskell-updates 2026-05-26 00:48:54 +00:00
Wolfgang Walther
28ea7d3e94
postgrest: fix build
text-builder-dev 0.3.10 needs lawful-conversions < 0.2.

postgrest itself still depends on the older insert-ordered-containers <
0.3, but swagger2 - despite trying to provide a "compat" layer - fails
to build with that, so we pin both of them.
2026-05-25 16:51:13 +02:00
nixpkgs-ci[bot]
015d2be85f
Merge 7e18ec5706 into haskell-updates 2026-05-25 14:15:27 +00:00
nixpkgs-ci[bot]
dcd5f66215
Merge 68d9bb691b into haskell-updates 2026-05-25 00:50:42 +00:00
nixpkgs-ci[bot]
c990defdc1
Merge 89afca31a7 into haskell-updates 2026-05-24 00:49:43 +00:00
nixpkgs-ci[bot]
ef80ea96c0
Merge ee4a6d835b into haskell-updates 2026-05-23 00:48:26 +00:00
nixpkgs-ci[bot]
70b3bb6148
Merge 90b4a6bcd3 into haskell-updates 2026-05-22 00:49:41 +00:00
Michael Daniels
9f87b41bbc
Merge commit '8d0a7d4c04' into haskell-updates 2026-05-21 17:04:36 -04:00
Michael Daniels
9eab5d0982
Merge commit '4e39fb70d8' into haskell-updates 2026-05-19 21:10:08 -04:00
Wolfgang Walther
31b3654bd0
haskellPackages: various jailbreaks for QuickCheck 2.16 (#521243) 2026-05-18 09:51:21 +00:00
Wolfgang Walther
fd7118d37f
haskell.packages.ghc{94,96,98}.os-string: allow QuickCheck 2.16 2026-05-18 11:42:42 +02:00
Wolfgang Walther
3f0c2996b0
haskellPackages.test-framework: run tests 2026-05-18 11:42:41 +02:00
Wolfgang Walther
58545c6507
haskellPackages.finite-typelits: allow QuickCheck 2.16 2026-05-18 11:42:06 +02:00
Wolfgang Walther
bd20e4d544
haskellPackages.binary-instances: allow QuickCheck 2.16 2026-05-18 11:38:35 +02:00
Wolfgang Walther
40fdae7a02
haskellPackages.proto-lens-arbitrary: update comment 2026-05-18 11:38:34 +02:00
Wolfgang Walther
4dfddc5e2d
haskellPackages.hw-prim: update comment 2026-05-18 11:38:33 +02:00
Wolfgang Walther
a42cf3de47
haskellPackages.Unique: update comment 2026-05-18 11:38:32 +02:00
Wolfgang Walther
98472212df
haskellPackages.hspec-core: update comment
Upstream issue is resolved, QuickCheck comment outdated - but when I try
to enable the tests, I get infinite recursion.
2026-05-18 11:38:31 +02:00
Wolfgang Walther
1166f6d5fe
haskellPackages.xz: update comment 2026-05-18 11:38:30 +02:00
Wolfgang Walther
3100f81d11
haskellPackages.hgmp: drop jailbreak & unbreak
Builds fine for me.
2026-05-18 11:38:30 +02:00
Wolfgang Walther
cfae19b0e2
haskellPackages.io-sim: run tests 2026-05-18 11:38:29 +02:00
Wolfgang Walther
4c79be7954
haskellPackages.hedgehog-classes: allow hedgehog 1.6 2026-05-18 11:38:28 +02:00
Wolfgang Walther
a5d168008d
haskellPackages.algebraic-graphs: allow QuickCheck 2.16 2026-05-18 11:38:27 +02:00
Wolfgang Walther
8960ba3747
haskellPackages.lzma: allow QuickCheck 2.16 2026-05-18 11:38:26 +02:00
Wolfgang Walther
4bac4c007b
haskellPackages.bitwise: allow QuickCheck 2.16 2026-05-18 11:38:24 +02:00
Wolfgang Walther
449e33902d
haskellPackages.fgl: allow QuickCheck 2.16 2026-05-18 11:38:24 +02:00
Wolfgang Walther
cfb525e8c7
haskellPackages.uuid: allow QuickCheck 2.16 2026-05-18 11:38:23 +02:00
Wolfgang Walther
90e108c717
haskellPackages.nix-derivation: allow QuickCheck 2.16 2026-05-18 11:38:22 +02:00
Wolfgang Walther
a9c7731b36
haskellPackages.http-api-data: allow QuickCheck 2.16 2026-05-18 11:38:21 +02:00
Wolfgang Walther
0e972a63ef
haskellPackages.psqueues: allow QuickCheck 2.16 2026-05-18 11:38:19 +02:00
Wolfgang Walther
db6cdf8674
haskellPackages.{attoparsec,optparse-applicative,vecotr}: add upstream issue for QuickCheck 2.16 2026-05-18 11:38:18 +02:00
Wolfgang Walther
83742b85ed
haskellPackages.criterion: drop patch
Already applied.
2026-05-18 11:36:57 +02:00
Wolfgang Walther
7fe7f911c5
haskellPackages.algebraic-graphs: drop patch
Already applied upstream.
2026-05-18 10:20:46 +02:00
Wolfgang Walther
379b9966b6
haskellPackages.pandoc: drop patches
These are already applied after the update.
2026-05-18 10:20:45 +02:00
Michael Daniels
8e147a7423
Merge commit 'c45cb29917' into haskell-updates 2026-05-17 20:57:31 -04:00
sterni
e78b52efb2 haskell.packages.ghc914: drop obsolete package upgrades
We use these version by default now.
2026-05-17 15:51:05 +02:00
sternenseemann
9db26c0d78
maintainers/haskell/eval-pkg-sets.sh: add script for checking eval (#510902) 2026-05-17 13:14:33 +00:00
Wolfgang Walther
44c90f8b11
haskell.compiler.ghc{96,98,…}: drop obsolete workaround on darwin (#520191) 2026-05-17 12:41:08 +00:00
Wolfgang Walther
6ae08b4b8c
haskellPackages.hpc-codecov: run obsolete override
The upstream issue has been resolved.
2026-05-17 14:38:47 +02:00
Wolfgang Walther
e71086f1ad
haskellPackages: stackage LTS 24.38 -> Nightly 2026-05-16 / ghc: 9.10 -> 9.12 (#521235) 2026-05-17 12:20:08 +00:00
Wolfgang Walther
a9a7b4af3b
haskellPackages.ihp{,-*}: remove overrides
hasql had been updated in the Stackage bump to Nightly, so we can just
unmark all of these at the top-level.
2026-05-17 14:08:10 +02:00
Wolfgang Walther
6e6ee420cc
haskell.packages.ghc910.stack: fix eval 2026-05-17 14:05:11 +02:00
Wolfgang Walther
4f5821131d
haskell.packages.ghc910.ghc-exactprint: pin 1.10
This was previously pinned via Stackage, but the update to Nightly
bumped the default to 1.12, which matches GHC 9.12.
2026-05-17 14:05:10 +02:00
Wolfgang Walther
7c90da01b9
haskellPackages: stackage LTS 24.38 -> Nightly 2026-05-16
all-cabal-hashes: 2026-04-24T19:35:23Z -> 2026-05-16T18:12:46Z

(generated by maintainers/scripts/haskell/update-package-set.sh)

Includes all manual changes required to eval and run cabal2nix-unstable
on this branch.
2026-05-17 13:57:57 +02:00
Wolfgang Walther
87258e4b4c
maintainers/scripts/haskell/update-stackage: switch to Nightly
Switching to Nightly to start the upgrade process to GHC 9.12. We'll
eventually switch back to LTS once Stackage 25 is released.

Needs to be a separate commit, otherwise the script itself won't run.
2026-05-17 12:27:13 +02:00
Wolfgang Walther
07855b2421
ghc: 9.10 -> 9.12
Changing the default version of GHC ahead of switching to Stackage
Nightly in the next commits.
2026-05-17 12:27:07 +02:00
Wolfgang Walther
0ec79f0885
haskellPackages: regenerate hackage-packages
Generated by maintainers/scripts/haskell/regenerate-hackage-packages.sh
2026-05-17 11:58:18 +02:00
sterni
9adad48243
haskell.compiler.ghc{96,98,…}: drop obsolete workaround on darwin
The hadrian bindist configure script checks for the environment
variables we already set since https://gitlab.haskell.org/ghc/ghc/-/merge_requests/11649
This change has been backported to 9.6.2 and 9.8.2, so all hadrian
built GHCs we package are fixed.
2026-05-17 11:30:40 +02:00
Wolfgang Walther
2e0690adfb
Merge commit 'f9710d1500' into haskell-updates 2026-05-17 10:48:26 +02:00
Wolfgang Walther
e9724bc92f
git-annex: remove tasty workaround (#520973) 2026-05-17 08:37:33 +00:00
sterni
3b2f54505e git-annex: parallelize test suite
Uses git-annex custom mechanism which deals global state correctly
2026-05-16 17:20:08 +02:00
sterni
5498d6a4fe git-annex: remove tasty workaround
Has been fixed upstream
2026-05-16 17:19:28 +02:00
sternenseemann
b0f9043b9f
haskell.compiler.ghcHEAD: 9.15.20260322 -> 10.1.20260513 (#520202) 2026-05-16 10:05:13 +00:00
sterni
fcd62a690f haskell.compiler.ghcHEAD: 9.15.20260322 -> 10.1.20260513 2026-05-14 22:11:54 +02:00
sternenseemann
fe8e3efa4f maintainers/haskell/eval-pkg-sets.sh: add script for checking eval
This checks the eval of all package sets, even those neither CI nor
Hydra will evaluate (completely).
2026-04-19 23:17:45 +02:00
35 changed files with 16313 additions and 17593 deletions

View file

@ -0,0 +1,39 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash
#!nix-shell -p jq git
# shellcheck shell=bash
#
# Usage: eval-pkg-sets.sh [extra flags for nix-* commands ...]
#
# Must be executed in a git checkout of Nixpkgs.
set -euo pipefail
NIXPKGS="$(git rev-parse --show-toplevel)"
PKGSETS="$(nix-env --readonly-mode --json --drv-path -f "$NIXPKGS" -qaP -A haskell.compiler "$@" \
| jq -r 'to_entries | unique_by(.value.drvPath) .[] .key | sub("^haskell.compiler";"haskell.packages")')"
trap 'exit 1' SIGINT SIGTERM
set +e
badsets=""
for set in $PKGSETS; do
# Confirm an equivalent package set to haskell.compiler.$entry exists and is usable
if ! nix-instantiate --readonly-mode -A "$set.ghc" "$@" > /dev/null 2>&1; then
echo "Skipping $set... ($set.ghc does not evaluate)"
else
echo "Evaluating $set..."
if ! nix-env --readonly-mode -f "$NIXPKGS" -qaP --drv-path -A "$set" "$@" > /dev/null; then
badsets+="$set "
fi
fi
done
if [ -n "$badsets" ]; then
echo "Found potential eval issues in the following sets:" >&2
# shellcheck disable=SC2086
printf '%s\n' $badsets
exit 1
fi

View file

@ -33,7 +33,7 @@ fi
# Stackage solver to use, LTS or Nightly
# (should be capitalized like the display name)
SOLVER=LTS
SOLVER=Nightly
# Stackage solver verson, if any. Use latest if empty
VERSION=
TMP_TEMPLATE=update-stackage.XXXXXXX
@ -105,6 +105,7 @@ sed -r \
-e '/ hledger-ui /d' \
-e '/ hledger-web /d' \
-e '/ spacecookie /d' \
-e '/ hnix-store-core /d' \
< "${tmpfile_new}" >> $stackage_config
# Explanations:
# cabal2nix, distribution-nixpkgs, jailbreak-cabal, language-nix: These are our packages and we know what we are doing.

View file

@ -68,7 +68,7 @@ haskellPackages.mkDerivation {
hashable
isocline
lens
lsp_2_8_0_0
lsp
mtl
network
network-simple

View file

@ -1,7 +1,7 @@
{
mkDerivation,
lib,
fetchFromGitHub,
fetchFromCodeberg,
aeson,
base,
bytestring,
@ -26,7 +26,7 @@
mkDerivation rec {
pname = "mkjson";
version = "0.4.0";
src = fetchFromGitHub {
src = fetchFromCodeberg {
owner = "mfussenegger";
repo = "mkjson";
rev = "${version}";

View file

@ -1,2 +1,19 @@
{ haskell, haskellPackages }:
haskell.lib.justStaticExecutables (haskellPackages.callPackage ./generated.nix { })
{
haskell,
haskellPackages,
lib,
}:
let
inherit (haskell.lib.compose) justStaticExecutables overrideCabal;
# The mkjson-doctest suite depends on specific RNG results not provided by the
# GHC in Nixpkgs as of this writing.
overrides = {
testTargets = [ "mkjson-test" ];
};
raw-pkg = haskellPackages.callPackage ./generated.nix { };
in
lib.pipe raw-pkg [
(overrideCabal overrides)
justStaticExecutables
]

View file

@ -1,6 +1,6 @@
{
"commit": "3a3b69bdd8114e4503dc8cb9909a3b0ea32e6be6",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/3a3b69bdd8114e4503dc8cb9909a3b0ea32e6be6.tar.gz",
"sha256": "1qjd5gp9d4r4y6qjf52m7w9dzy9nq622aqv72ma8d4xlrxrrachp",
"msg": "Update from Hackage at 2026-04-24T19:35:23Z"
"commit": "f20db7cb21271c7dac7bbd1690b202d6028e002b",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/f20db7cb21271c7dac7bbd1690b202d6028e002b.tar.gz",
"sha256": "1awx95yj4wd9hf1vgc80mi2d05ja0nm4yz6cqnfwnlm5yhidnxr4",
"msg": "Update from Hackage at 2026-06-26T06:10:51Z"
}

View file

@ -12,6 +12,11 @@ pkgs.haskell.packages.ghc98.override {
# https://github.com/avh4/elm-format/blob/e7e5da37716acbfb4954a88128b5cc72b2c911d9/package/nix/generate_derivation.sh
elm-format = justStaticExecutables (
overrideCabal (drv: {
# jailbreak required due to optparse-applicative bounds
# optparse-applicative >=0.17.0.0 && <0.19
# upstream PR https://github.com/avh4/elm-format/pull/841
jailbreak = true;
postPatch = ''
mkdir -p ./generated
cat <<EOHS > ./generated/Build_elm_format.hs
@ -35,8 +40,14 @@ pkgs.haskell.packages.ghc98.override {
inherit elmPkgs;
# Needed for elm-format
avh4-lib = self.callPackage ./elm-format/avh4-lib.nix { };
elm-format-lib = self.callPackage ./elm-format/elm-format-lib.nix { };
# jailbreak required due to optparse-applicative bounds
# optparse-applicative >=0.17.0.0 && <0.19
# upstream PR https://github.com/avh4/elm-format/pull/841
elm-format-lib = pkgs.haskell.lib.doJailbreak (
self.callPackage ./elm-format/elm-format-lib.nix { }
);
elm-format-test-lib = self.callPackage ./elm-format/elm-format-test-lib.nix { };
elm-format-markdown = self.callPackage ./elm-format/elm-format-markdown.nix { };
};

View file

@ -0,0 +1,5 @@
import ./common-hadrian.nix {
version = "9.12.4.20260614";
url = "https://downloads.haskell.org/~ghc/9.12.5-rc2/ghc-9.12.4.20260614-src.tar.gz";
sha256 = "3ab5987e18dafff3bc8d62ea6934e2edc0dd2151454af044790cd1074070fd4b";
}

View file

@ -855,16 +855,6 @@ stdenv.mkDerivation (
preInstall = ''
pushd _build/bindist/*
''
# the bindist configure script uses different env variables than the GHC configure script
# see https://github.com/NixOS/nixpkgs/issues/267250 krank:ignore-line
# https://gitlab.haskell.org/ghc/ghc/-/issues/24211 krank:ignore-line
+ lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
export InstallNameToolCmd=$INSTALL_NAME_TOOL
export OtoolCmd=$OTOOL
''
# Replicate configurePhase
+ ''
$configureScript "''${configureFlags[@]}"
'';

View file

@ -1,5 +1,5 @@
import ./common-hadrian.nix {
version = "9.15.20260322";
rev = "44f118f09dcde49f64d03e427312df4732f2d4a4";
sha256 = "sha256-xby7HKyK5P1Y5DjKbVe62piDCY4Ujb4pbv8AJ7sQ0HI=";
version = "10.1.20260513";
rev = "38b76b2f1d918f10d2f9d3e57bd0459dfe671d4f";
sha256 = "sha256-b0AZsWVmGi6EaWEtPWPOQAxvTlxG2aBwegw5l5HBPDo=";
}

View file

@ -35,10 +35,10 @@
}:
mkDerivation {
pname = "cabal2nix";
version = "2.21.3-unstable-2026-03-30";
version = "2.21.3-unstable-2026-06-23";
src = fetchzip {
url = "https://github.com/NixOS/cabal2nix/archive/41239bcc0622a0975c6705a03a44dfeffeb56f23.tar.gz";
sha256 = "01qj6cvaif0810v83r6izcj1bbfpcqqxw4wybq04qsq92sqybpw2";
url = "https://github.com/NixOS/cabal2nix/archive/bb97bf4294097812718ab9a3f244c9d58c833ae1.tar.gz";
sha256 = "0bp5m83hzcsr3ga9zz5kq1jjs0n44mlh93x5j55avgw1rxvpfw32";
};
postUnpack = "sourceRoot+=/cabal2nix; echo source root reset to $sourceRoot";
isLibrary = true;
@ -106,5 +106,5 @@ mkDerivation {
'';
homepage = "https://github.com/nixos/cabal2nix#readme";
description = "Convert Cabal files into Nix build instructions";
license = lib.licensesSpdx."BSD-3-Clause";
license = lib.meta.getLicenseFromSpdxId "BSD-3-Clause";
}

View file

@ -18,10 +18,10 @@
}:
mkDerivation {
pname = "distribution-nixpkgs";
version = "1.7.1.1-unstable-2026-03-30";
version = "1.7.1.1-unstable-2026-06-23";
src = fetchzip {
url = "https://github.com/NixOS/cabal2nix/archive/41239bcc0622a0975c6705a03a44dfeffeb56f23.tar.gz";
sha256 = "01qj6cvaif0810v83r6izcj1bbfpcqqxw4wybq04qsq92sqybpw2";
url = "https://github.com/NixOS/cabal2nix/archive/bb97bf4294097812718ab9a3f244c9d58c833ae1.tar.gz";
sha256 = "0bp5m83hzcsr3ga9zz5kq1jjs0n44mlh93x5j55avgw1rxvpfw32";
};
postUnpack = "sourceRoot+=/distribution-nixpkgs; echo source root reset to $sourceRoot";
enableSeparateDataOutput = true;
@ -49,5 +49,5 @@ mkDerivation {
];
homepage = "https://github.com/NixOS/cabal2nix/tree/master/distribution-nixpkgs#readme";
description = "Types and functions to manipulate the Nixpkgs distribution";
license = lib.licensesSpdx."BSD-3-Clause";
license = lib.meta.getLicenseFromSpdxId "BSD-3-Clause";
}

View file

@ -16,10 +16,10 @@
}:
mkDerivation {
pname = "hackage-db";
version = "2.1.3-unstable-2026-03-30";
version = "2.1.3-unstable-2026-06-23";
src = fetchzip {
url = "https://github.com/NixOS/cabal2nix/archive/41239bcc0622a0975c6705a03a44dfeffeb56f23.tar.gz";
sha256 = "01qj6cvaif0810v83r6izcj1bbfpcqqxw4wybq04qsq92sqybpw2";
url = "https://github.com/NixOS/cabal2nix/archive/bb97bf4294097812718ab9a3f244c9d58c833ae1.tar.gz";
sha256 = "0bp5m83hzcsr3ga9zz5kq1jjs0n44mlh93x5j55avgw1rxvpfw32";
};
postUnpack = "sourceRoot+=/hackage-db; echo source root reset to $sourceRoot";
isLibrary = true;
@ -38,5 +38,5 @@ mkDerivation {
];
homepage = "https://github.com/NixOS/cabal2nix/tree/master/hackage-db#readme";
description = "Access cabal-install's Hackage database via Data.Map";
license = lib.licensesSpdx."BSD-3-Clause";
license = lib.meta.getLicenseFromSpdxId "BSD-3-Clause";
}

View file

@ -14,10 +14,10 @@
}:
mkDerivation {
pname = "language-nix";
version = "2.3.0-unstable-2026-03-30";
version = "2.3.0-unstable-2026-06-23";
src = fetchzip {
url = "https://github.com/NixOS/cabal2nix/archive/41239bcc0622a0975c6705a03a44dfeffeb56f23.tar.gz";
sha256 = "01qj6cvaif0810v83r6izcj1bbfpcqqxw4wybq04qsq92sqybpw2";
url = "https://github.com/NixOS/cabal2nix/archive/bb97bf4294097812718ab9a3f244c9d58c833ae1.tar.gz";
sha256 = "0bp5m83hzcsr3ga9zz5kq1jjs0n44mlh93x5j55avgw1rxvpfw32";
};
postUnpack = "sourceRoot+=/language-nix; echo source root reset to $sourceRoot";
libraryHaskellDepends = [
@ -39,5 +39,5 @@ mkDerivation {
];
homepage = "https://github.com/NixOS/cabal2nix/tree/master/language-nix#readme";
description = "Data types and functions to represent the Nix language";
license = lib.licensesSpdx."BSD-3-Clause";
license = lib.meta.getLicenseFromSpdxId "BSD-3-Clause";
}

View file

@ -88,11 +88,28 @@ with haskellLib;
inherit
(
let
haveSemaphoreCompat200 =
# ATTN: we assume that semaphore-compat isn't changed in cabalInstallOverlay!
lib.versionAtLeast (self.semaphore-compat.version or "0") "2.0.0"
|| (
lib.versionAtLeast self.ghc.version "9.12.4.20260606" # 9.12.5-rc1
&& lib.versionOlder self.ghc.version "9.14"
);
# !!! Use cself/csuper inside for the actual overrides
cabalInstallOverlay =
cself: csuper:
lib.optionalAttrs (lib.versionOlder csuper.ghc.version "9.14") {
Cabal = cself.Cabal_3_16_1_0;
lib.optionalAttrs (haveSemaphoreCompat200 || lib.versionOlder csuper.ghc.version "9.14") {
# Waiting on Cabal-3.18 with https://github.com/haskell/cabal/pull/11628
Cabal = appendPatches (lib.optionals haveSemaphoreCompat200 [
(pkgs.fetchpatch {
name = "Cabal-semaphore-compat-2.0.0.patch";
url = "https://github.com/haskell/cabal/commit/2cac53be5659a2a74f1748fd6ab1e00183a18765.diff?full_index=1";
hash = "sha256-+rcwBQILTc1ezcHb3VDampwMYGEG7S4HF1YKAk7QzUs=";
relative = "Cabal";
})
]) cself.Cabal_3_16_1_0;
Cabal-syntax = cself.Cabal-syntax_3_16_1_0;
};
in
@ -102,11 +119,23 @@ with haskellLib;
cabal-install = super.cabal-install.overrideScope cabalInstallOverlay;
scope = cabal-install.scope;
in
# Some dead code is not properly eliminated on aarch64-darwin, leading
# to bogus references to some dependencies.
overrideCabal (
old:
lib.optionalAttrs (pkgs.stdenv.hostPlatform.isDarwin && pkgs.stdenv.hostPlatform.isAarch64) {
{
patches = lib.optionals haveSemaphoreCompat200 [
# Waiting on cabal-install-3.18 with https://github.com/haskell/cabal/pull/11628
(pkgs.fetchpatch {
name = "cabal-install-semaphore-compat-2.0.0.patch";
url = "https://github.com/haskell/cabal/commit/2cac53be5659a2a74f1748fd6ab1e00183a18765.diff?full_index=1";
hash = "sha256-7unna/3+/MPbD/6f5MBgggvy254YRXhHnHIrFzJoboQ=";
relative = "cabal-install";
})
];
}
# Some dead code is not properly eliminated on aarch64-darwin, leading
# to bogus references to some dependencies.
// lib.optionalAttrs (pkgs.stdenv.hostPlatform.isDarwin && pkgs.stdenv.hostPlatform.isAarch64) {
postInstall = ''
${old.postInstall or ""}
remove-references-to -t ${scope.HTTP} "$out/bin/.cabal-wrapped"
@ -132,17 +161,34 @@ with haskellLib;
hackage-db-unstable
;
# Stack uses pure nix-shells for certain operations including HTTPS requests
# This patch makes stack add pkgs.cacert, so the certificate DB is available.
# https://github.com/commercialhaskell/stack/pull/6854 krank:ignore-line
stack =
appendPatches
[
# Bug fix that is also necessary for the following patches to apply
(pkgs.fetchpatch {
name = "stack-add-cacert-to-pure-shells.patch";
url = "https://github.com/commercialhaskell/stack/commit/e869263cbd84a9e59ce1fa467e82993c8e7fb1dd.patch";
hash = "sha256-O7GaNgcGBY6m6GHqVtejqOu2HCWWKWXARPnr/upT1RQ=";
includes = [ "src/Stack/Nix.hs" ];
name = "stack-dep-without-main-library.patch";
url = "https://github.com/commercialhaskell/stack/commit/591b6eb225b4cd2cfa4d282089fdb33e86bb14ad.patch";
hash = "sha256-GTUBGZ1KWQii60Yt9JpKcwMkzuIuSTdKLGd3aM0jXWw=";
})
# FIXME(@sternenseemann): these URLs are not stable (yet)
# Pick patches to support semaphore-compat >= 2.0
# from https://github.com/commercialhaskell/stack/pull/6935
# c.f. https://github.com/commercialhaskell/stack/issues/693
(pkgs.fetchpatch {
name = "stack-semaphore-compat-2.0.patch";
url = "https://github.com/commercialhaskell/stack/commit/c9e3cbc3f460de65d5abeffb583242255b41be23.patch";
includes = [ "src/**" ];
hash = "sha256-flf1f/QoBZAw9VRTzdNJQu+Zt1b+9q/pi7+1ukCad6c=";
})
(pkgs.fetchpatch {
name = "stack-semaphore-compat-compiler-paths.patch";
url = "https://github.com/commercialhaskell/stack/commit/02fa193245fc7210c6ce88646b2fa94ab39b9fc4.patch";
hash = "sha256-oE0GfXADSYlPceurzeZbq1Ix14gOtZEBssA8ZINv2qs=";
})
(pkgs.fetchpatch {
name = "stack-semaphore-ghc-compat-map.patch";
url = "https://github.com/commercialhaskell/stack/commit/960e704b9cd61094b75fad4689f0034b4435a268.patch";
hash = "sha256-zYIsttG3z4gbpfXgQsKz0PlkAEzODlLYiYdPpfBohvM=";
})
]
(
@ -150,7 +196,7 @@ with haskellLib;
# Stack's source files use CRLF
prePatch = ''
${drv.prePatch or ""}
sed -i -e 's/\r$//' src/Stack/Nix.hs
find doc src -type f -exec sed -i -e 's/\r$//' '{}' '+'
'';
}) super.stack
);
@ -169,25 +215,12 @@ with haskellLib;
}
);
# First to upgrade to lsp >= 2.8 while HLS hasn't yet had a compatible release
futhark = super.futhark.override {
lsp = self.lsp_2_8_0_0;
lsp-test =
overrideCabal
(old: {
testTargets = [
"tests"
"func-test"
];
})
(
self.lsp-test_0_18_0_0.override {
lsp = self.lsp_2_8_0_0;
lsp-types = self.lsp-types_2_4_0_0;
}
);
lsp-types = self.lsp-types_2_4_0_0;
};
lsp-test = overrideCabal (old: {
testTargets = [
"tests"
"func-test"
];
}) super.lsp-test;
#######################################
### HASKELL-LANGUAGE-SERVER SECTION ###
@ -251,7 +284,6 @@ with haskellLib;
haskell-language-server
hls-plugin-api
ghcide
lsp-types
;
# For -f-auto see cabal.project in haskell-language-server.
@ -268,6 +300,14 @@ with haskellLib;
})
] super.cabal-add;
stylish-haskell = appendPatches [
(pkgs.fetchpatch {
name = "bump-optparse-applicative.patch";
url = "https://github.com/haskell/stylish-haskell/commit/d1bc9bb91a0f9b122f2d4348022ce0fa1566124f.patch";
hash = "sha256-kRP4mABb1rlrx4GBPTozOS9fPudSzb36JcTKA8VMhgw=";
})
] super.stylish-haskell;
###########################################
### END HASKELL-LANGUAGE-SERVER SECTION ###
###########################################
@ -345,15 +385,6 @@ with haskellLib;
'';
}) super.streamly-core;
# Work around tasty >= 1.5.4 parallelism breaking the test suite
criterion = appendPatches [
(pkgs.fetchpatch {
name = "criterion-tasty-1.5.4.patch";
url = "https://github.com/haskell/criterion/commit/d555422d1779434432489efbc19d75011226c3e6.patch";
hash = "sha256-VRSfdzT/mzdRSMQmmIeycuChvRN/VDhYsHJQb0bRMaA=";
})
] super.criterion;
# Avoid rebinding to the same port with tasty >= 1.5.4 parallelism
# https://github.com/lpeterse/haskell-socket/pull/73
socket = appendPatches [
@ -382,6 +413,18 @@ with haskellLib;
# https://github.com/yesodweb/shakespeare/issues/294
shakespeare = dontCheck super.shakespeare;
# https://github.com/haskell-numerics/random-fu/issues/100
rvar = appendPatch (fetchpatch {
url = "https://github.com/adamConnerSax/random-fu/commit/51ba79d2cea5279821523a3861d4ec7196e71759.patch";
relative = "rvar";
hash = "sha256-YxGl81GaZ896SL+BuXkVZFFuu4DuwzQD+rssjkP7aPM=";
}) super.rvar;
random-fu = doJailbreak super.random-fu;
# Allow QuickCheck >= 2.16
# https://github.com/int-e/QuickCheck-safe/issues/3
QuickCheck-safe = doJailbreak super.QuickCheck-safe;
# Work around -Werror failures until a more permanent solution is released
# https://github.com/haskell-cryptography/HsOpenSSL/issues/88
# https://github.com/haskell-cryptography/HsOpenSSL/issues/93
@ -405,14 +448,6 @@ with haskellLib;
# There are numerical tests on random data, that may fail occasionally
lapack = dontCheck super.lapack;
# fpr-calc test suite depends on random >= 1.3
# see https://github.com/IntersectMBO/lsm-tree/issues/797
bloomfilter-blocked =
lib.warnIf (lib.versionAtLeast self.random.version "1.3")
"haskellPackages.bloomfilter-blocked: dontCheck can potentially be removed"
dontCheck
super.bloomfilter-blocked;
# Missing files necessary for test suite compilation
# https://github.com/brandonchinn178/kdl-hs/issues/33
kdl-hs = dontCheck super.kdl-hs;
@ -459,13 +494,9 @@ with haskellLib;
# https://github.com/sol/ghc-bench/issues/81
ghc-bench = dontCheck super.ghc-bench;
# Needs QuickCheck >= 2.16
# https://github.com/input-output-hk/io-sim/issues/248
io-sim = dontCheck super.io-sim;
# Test suites broken by hakyll 4.16, but lib is still okay
# https://github.com/LaurentRDC/hakyll-images/issues/14
hakyll-images = dontCheck super.hakyll-images;
# Too strict upper bound on hakyll (<4.17)
# https://gitlab.com/lysxia/hakyll-alectryon/-/work_items/2
hakyll-alectryon = doJailbreak super.hakyll-alectryon;
# 2024-06-23: Hourglass is archived and had its last commit 6 years ago.
# Patch is needed to add support for time 1.10, which is only used in the tests
@ -516,9 +547,12 @@ with haskellLib;
# 2025-02-14: Too strict bounds on attoparsec < 0.14
attoparsec-varword = doJailbreak (dontCheck super.attoparsec-varword);
# Fix t_iter test which fails randomly, but frequently. No upstream feedback so far.
# https://github.com/haskell/attoparsec/issues/232
attoparsec = overrideCabal (drv: {
# 2025-05-17: allow QuickCheck 2.16
# https://github.com/haskell/attoparsec/issues/236
jailbreak = true;
# Fix t_iter test which fails randomly, but frequently. No upstream feedback so far.
# https://github.com/haskell/attoparsec/issues/232
testFlags = drv.testFlags or [ ] ++ [
"-p"
"$0!=\"tests.buf.t_iter\""
@ -605,35 +639,6 @@ with haskellLib;
# if it's a bug, at least doesn't seem to be nixpkgs-specific.
nspace = dontCheck super.nspace;
# Unreleased commits relaxing bounds on various dependencies
gitit = appendPatches [
(fetchpatch {
name = "gitit-allow-hoauth2-2.14.patch";
url = "https://github.com/jgm/gitit/commit/58a226c48b37f076ccc1b94ad88a9ffc05f983cc.patch";
sha256 = "1fvfzbas18vsv9qvddp6g82hy9hdgz34n51w6dpkd7cm4sl07pjv";
})
(fetchpatch {
name = "gitit-allow-pandoc-3.6.patch";
url = "https://github.com/jgm/gitit/commit/c57c790fa0db81d383f22901a0db4ffe90f1bfcc.patch";
sha256 = "0nbzxyc9gkhkag1fhv3qmw5zgblhbz0axrlsismrcvdzr28amii8";
})
(fetchpatch {
name = "gitit-allow-zlib-0.7-network-3.2.patch";
url = "https://github.com/jgm/gitit/commit/efaee62bc32c558e618ad34458fa2ef85cb8eb1e.patch";
sha256 = "1ghky3afnib56w102mh09cz2alfyq743164mnjywwfl6a6yl6i5h";
})
(pkgs.fetchpatch {
name = "gitit-pandoc-3.7.patch";
url = "https://github.com/jgm/gitit/commit/211631ffdd8b520f368220e5cfbd8d64a28b43b6.patch";
hash = "sha256-eVjwiGNfEKmeamsUfTNCxJm7OJ7N9xuYHfFllwtwRi0=";
})
(pkgs.fetchpatch {
name = "gitit-xml-conduit-1.10.patch";
url = "https://github.com/jgm/gitit/commit/88d1a91795e08ea573d50f4f24e2e1c5d6da5002.patch";
hash = "sha256-LrP51+Uxp1VPKrDkIhVlm3kSAnYkodiENtLbWHxV3B4=";
})
] super.gitit;
# Cut off infinite recursion via test suites:
#
# tasty-quickcheck-0.11.1 (test) -> regex-tdfa-1.3.2.4 (test) -> doctest-parallel-0.4
@ -671,8 +676,10 @@ with haskellLib;
# check requires mysql server
mysql-simple = dontCheck super.mysql-simple;
# Requires file-io >= 0.2 if using OsPath flag (which we want for GHC >= 9.10)
git-annex = lib.pipe (super.git-annex.override { file-io = self.file-io_0_2_0; }) [
# Requires file-io >= 0.2 if using OsPath flag which is incompatible with the directory
# version shipped with GHC 9.12 and 9.14, so we're sticking with filepath-bytestring for now.
# TODO(@sternenseemann): look into restoring compat for file-io < 0.2 or upgrade to file-io
git-annex = lib.pipe (super.git-annex.override { file-io = self.filepath-bytestring; }) [
(overrideCabal (drv: {
# Hackage tarball only includes what is supported by `cabal install git-annex`,
# but we want e.g. completions as well. See
@ -682,7 +689,7 @@ with haskellLib;
name = "git-annex-${super.git-annex.version}-src";
url = "git://git-annex.branchable.com/";
tag = super.git-annex.version;
sha256 = "sha256-9DHaOZplSGuUQufra/hMdpykztbKKjDfu1Rp9zUs+tg=";
sha256 = "sha256-AfsPn3RS9fbcB+6MoAifjq0V/+h3dkjrgzs8qO+am2E=";
# delete android and Android directories which cause issues on
# darwin (case insensitive directory). Since we don't need them
# during the build process, we can delete it to prevent a hash
@ -704,13 +711,6 @@ with haskellLib;
--replace-fail 'InstallDesktopFile $(PREFIX)/bin/git-annex' \
'InstallDesktopFile git-annex'
'';
# Work around race condition in test suite exposed by tasty-1.5.4
# TODO(@sternenseemann): make testFlags arg usable with git-annex
preCheck = ''
${drv.preCheck or ""}
appendToVar checkFlags -j1
'';
}))
];
@ -776,13 +776,6 @@ with haskellLib;
})
] super.turtle;
# Allow inspection-testing >= 0.6 in test suite
algebraic-graphs = appendPatch (pkgs.fetchpatch2 {
name = "algebraic-graphs-0.7-allow-inspection-testing-0.6.patch";
url = "https://github.com/snowleopard/alga/commit/d4e43fb42db05413459fb2df493361d5a666588a.patch";
hash = "sha256-feGEuALVJ0Zl8zJPIfgEFry9eH/MxA0Aw7zlDq0PC/s=";
}) super.algebraic-graphs;
inspection-testing = overrideCabal (drv: {
broken =
with pkgs.stdenv.hostPlatform;
@ -832,15 +825,6 @@ with haskellLib;
# Tests require a Kafka broker running locally
haskakafka = dontCheck super.haskakafka;
# https://github.com/itchyny/qhs/issues/8
qhs = overrideSrc {
version = "0.4.3";
src = pkgs.fetchzip {
url = "mirror://hackage/qhs-0.4.3/qhs-0.4.3.tar.gz";
sha256 = "191015m47qdxzi8w5pvadgv95g8vk7v2gr76jzfgglyjy6zhb5wb";
};
} (warnAfterVersion "0.4.2" super.qhs);
# Fix build with time >= 1.10 while retaining compat with time < 1.9
mbox = appendPatch ./patches/mbox-time-1.10.patch (
overrideCabal {
@ -877,11 +861,15 @@ with haskellLib;
xmlgen = dontCheck super.xmlgen;
wai-cors = dontCheck super.wai-cors;
# Needs QuickCheck >= 2.16, but Stackage is currently on 2.15
integer-logarithms =
lib.warnIf (lib.versionAtLeast super.QuickCheck.version "2.16")
"override for haskellPackages.integer-logarithms may no longer be needed"
(dontCheck super.integer-logarithms);
# Apply patch from 3.2.1 (which we can't use yet due to mighttpd2)
# for compat with http-types >= 0.12.5
wai-app-file-cgi = appendPatches [
(pkgs.fetchpatch {
name = "wai-app-file-cgi-http-types-0.12.5.patch";
url = "https://github.com/kazu-yamamoto/wai-app-file-cgi/commit/45d749338c4125335ad8a605d6fa81553e81aad8.patch";
hash = "sha256-gchBTsGohgfJ+gJxE1VwgEQfsSLMuSUXJw1xAyNRqjc=";
})
] super.wai-app-file-cgi;
# Apply patch fixing an incorrect QuickCheck property which occasionally causes false negatives
# https://github.com/Philonous/xml-picklers/issues/5
@ -894,46 +882,8 @@ with haskellLib;
pandoc-crossref = lib.pipe super.pandoc-crossref [
# https://github.com/lierdakil/pandoc-crossref/issues/492
doJailbreak
# We are still using pandoc == 3.7.*
(appendPatch (
lib.warnIf (lib.versionAtLeast self.pandoc.version "3.8")
"haskellPackages.pandoc-crossref: remove revert of pandoc-3.8 patch"
pkgs.fetchpatch
{
name = "pandoc-crossref-revert-pandoc-3.8-highlight.patch";
url = "https://github.com/lierdakil/pandoc-crossref/commit/b0c35a59d5a802f6525407bfeb31699ffd0b4671.patch";
hash = "sha256-MIITL9Qr3+1fKf1sTwHzXPcYTt3YC+vr9CpMgqsBXlc=";
revert = true;
}
))
];
pandoc = overrideCabal (drv: {
patches = drv.patches or [ ] ++ [
# Adjust test fixtures for djot >= 0.1.2.3, patch extracted from unrelated change.
(pkgs.fetchpatch {
name = "pandoc-djot-0.1.2.3.patch";
url = "https://github.com/jgm/pandoc/commit/643712ca70b924c0edcc059699aa1ee42234be34.patch";
hash = "sha256-khDkb1PzC0fTaWTq3T04UvgoI+XefOJMaTV1d3Du8BU=";
includes = [ "test/djot-reader.native" ];
})
# Adjust tests for skylighting-format-blaze-html >= 0.1.2
(pkgs.fetchpatch {
name = "pandoc-skylighting-format-blaze-html-0.1.2.patch";
url = "https://github.com/jgm/pandoc/commit/cab682ba58f2eb7e940d1af508e196ff6b1c1112.patch";
hash = "sha256-lpddKGa8xs+Lhi62HhBgV04fUq2kkippA1xX2/b2ukM=";
includes = [ "test/Tests/Writers/HTML.hs" ];
})
# Resolve test suite race condition(s) due to tasty >= 1.5.4 and
# inDirectory, https://github.com/jgm/pandoc/issues/11566 krank:ignore-line
(pkgs.fetchpatch {
name = "pandoc-tests-fix-race-condition.patch";
url = "https://github.com/jgm/pandoc/commit/134296c54145ef8ea7de523774837055239e0b3d.patch";
hash = "sha256-s3v6ukoVZm8cvh9mAp0U+cQDT3p8QSu1F0oQD4Ks9F8=";
})
];
}) super.pandoc;
# Too strict upper bound on data-default-class (< 0.2)
# https://github.com/stackbuilders/dotenv-hs/issues/203
dotenv = doJailbreak super.dotenv;
@ -1110,9 +1060,6 @@ with haskellLib;
# This packages compiles 4+ hours on a fast machine. That's just unreasonable.
CHXHtml = dontDistribute super.CHXHtml;
# Avoid "QuickCheck >=2.3 && <2.10" dependency we cannot fulfill in lts-11.x.
test-framework = dontCheck super.test-framework;
# Test suite won't compile against tasty-hunit 0.10.x.
binary-parsers = dontCheck super.binary-parsers;
@ -1219,19 +1166,37 @@ with haskellLib;
tailfile-hinotify = doJailbreak (dontCheck super.tailfile-hinotify);
# 2025-09-01: Merged patch from upstream to fix bounds:
optics = appendPatch (fetchpatch {
name = "optics-fix-inspection-testing-bound";
url = "https://github.com/well-typed/optics/commit/d16b1ac5476c89cc94fb108fe1be268791affca6.patch";
sha256 = "sha256-w0L/EXSWRQkCkFnvXYel0BNgQQhxn6zATkD3GZS5gz8=";
relative = "optics";
}) super.optics;
optics = appendPatches [
(fetchpatch {
name = "optics-fix-inspection-testing-bound";
url = "https://github.com/well-typed/optics/commit/d16b1ac5476c89cc94fb108fe1be268791affca6.patch";
sha256 = "sha256-w0L/EXSWRQkCkFnvXYel0BNgQQhxn6zATkD3GZS5gz8=";
relative = "optics";
})
# Test suite changes from development branch which make it pass with GHC == 9.12.*
(fetchpatch {
name = "optics-inspection-testing-lower-bound.patch";
url = "https://github.com/well-typed/optics/commit/121554907e4216c4a88323d441c7c11f19016062.patch";
hash = "sha256-L7HEK3l7lGvu1Rp8ygkQEZFnJW9R+dgaYGz4c7zVYiE=";
relative = "optics";
})
(fetchpatch {
name = "optics-inspection-testing-ghc-9.12-changes.patch";
url = "https://github.com/well-typed/optics/commit/aa3cf444b881b7e19a6a9764bcc0462c9ab00724.patch";
hash = "sha256-n2hnZXJV3fjRbHTRaM/eabTyS61T/+4mSU4AZBsEEkM=";
relative = "optics";
})
(fetchpatch {
name = "optics-inspection-ghc-9.12-skips.patch";
url = "https://github.com/well-typed/optics/commit/397fcf242257a7e3553b845e48d4531015f0478d.patch";
hash = "sha256-r/NPdUckh37Ed9gA7OXmDdZmMp3zjuGCB+0P8/Ce4i4=";
relative = "optics";
})
] super.optics;
# 2025-02-10: Too strict bounds on text < 2.1
digestive-functors-blaze = doJailbreak super.digestive-functors-blaze;
# Too strict bound on QuickCheck <2.15
hgmp = doJailbreak super.hgmp;
# Z3 removed aliases for boolean types in 4.12
inherit
(
@ -1251,6 +1216,10 @@ with haskellLib;
hz3
;
# 2026-06-10: Too strict bounds on template-haskell <2.23 and time <1.13
# https://github.com/SupercedeTech/yesod-middleware-csp/issues/13
yesod-middleware-csp = doJailbreak super.yesod-middleware-csp;
# test suite requires git and does a bunch of git operations
restless-git = dontCheck super.restless-git;
@ -1301,12 +1270,6 @@ with haskellLib;
# The test suite runs for 20+ minutes on a very fast machine, which feels kinda disproportionate.
prettyprinter = dontCheck super.prettyprinter;
hpc-codecov = overrideCabal (drv: {
# Work around test suite race condition due to tasty >= 1.5.4
# https://github.com/8c6794b6/hpc-codecov/issues/52
testFlags = drv.testFlags or [ ] ++ [ "-j1" ];
}) super.hpc-codecov;
# sexpr is old, broken and has no issue-tracker. Let's fix it the best we can.
sexpr = appendPatch ./patches/sexpr-0.2.1.patch (
overrideCabal (drv: {
@ -1402,10 +1365,6 @@ with haskellLib;
'';
}) (addExtraLibrary self.QuickCheck super.Chart-tests);
# 2026-01-17: too strict bounds on QuickCheck < 2.15
# https://github.com/hasufell/lzma-static/pull/15
xz = doJailbreak super.xz;
ghcup =
lib.throwIf pkgs.config.allowAliases
"ghcup cannot be used to install the haskell tool chain on NixOS because there is no compatible bindist. Please install ghc etc. via Nix. On non-NixOS systems you can use the ghcup shell installer"
@ -1417,10 +1376,6 @@ with haskellLib;
# Therefore we jailbreak it.
hakyll-contrib-hyphenation = doJailbreak super.hakyll-contrib-hyphenation;
# The test suite depends on an impure cabal-install installation in
# $HOME, which we don't have in our build sandbox.
cabal-install-parsers = dontCheck super.cabal-install-parsers;
# Test suite requires database
persistent-mysql = dontCheck super.persistent-mysql;
@ -1439,6 +1394,14 @@ with haskellLib;
hash = "sha256-cwNH5+7YY8UbA9zHhTRfVaqtIMowZGfFT5Kj+wSlapA=";
relative = "dhall-lsp-server";
})
# Add support for lsp 2.8
(pkgs.fetchpatch {
name = "dhall-lsp-server-lsp-2.8.patch";
url = "https://github.com/dhall-lang/dhall-haskell/commit/1b54c6a0968b7ee989d239819a4938b7fd3a951e.patch";
sha256 = "sha256-4wqiYeBQDloGi5uSC0GdsQjSfN7t5FZBmVFlQbCFgFs=";
relative = "dhall-lsp-server";
})
] super.dhall-lsp-server;
# Tests disabled and broken override needed because of missing lib chrome-test-utils: https://github.com/reflex-frp/reflex-dom/issues/392
@ -1592,23 +1555,90 @@ with haskellLib;
# Break infinite recursion via optparse-applicative (alternatively, dontCheck syb)
prettyprinter-ansi-terminal = dontCheck super.prettyprinter-ansi-terminal;
# Released version prohibits QuickCheck >= 2.15 at the moment
optparse-applicative = appendPatches [
(pkgs.fetchpatch2 {
name = "optparse-applicative-0.18.1-allow-QuickCheck-2.15.patch";
url = "https://github.com/pcapriotti/optparse-applicative/commit/2c2a39ed53e6339d8dc717efeb7d44f4c2b69cab.patch";
hash = "sha256-198TfBUR3ygPpvKPvtH69UmbMmoRagmzr9UURPr6Kj4=";
})
] super.optparse-applicative;
# 2026-05-18: allow QuickCheck 2.16
# Already updated upstream, but not released on hackage, yet.
finite-typelits = warnAfterVersion "0.2.1.0" (doJailbreak super.finite-typelits);
# 2026-05-17: allow QuickCheck 2.16
# https://github.com/fizruk/http-api-data/issues/157
http-api-data = doJailbreak super.http-api-data;
# 2026-05-17: allow QuickCheck 2.16
# https://github.com/Gabriella439/Haskell-Nix-Derivation-Library/issues/30
nix-derivation = doJailbreak super.nix-derivation;
# 2026-05-17: allow QuickCheck 2.16
# https://github.com/haskell-hvr/uuid/issues/101
uuid = doJailbreak super.uuid;
# 2026-05-17: allow QuickCheck 2.16
# https://github.com/haskell/fgl/issues/119
fgl = doJailbreak super.fgl;
# 2026-06-28: allow QuickCheck 2.16
# https://codeberg.org/daniel-casanueva/graphviz/issues/7
graphviz = doJailbreak super.graphviz;
# 2026-07-02: allow QuickCheck 2.16
# https://github.com/maralorn/haskell-taskwarrior/issues/14
taskwarrior = doJailbreak super.taskwarrior;
# 2026-05-17: allow QuickCheck 2.16
# https://github.com/haskell-hvr/lzma/issues/45
lzma = doJailbreak super.lzma;
# 2026-05-17: allow QuickCheck 2.16
# https://github.com/snowleopard/alga/issues/324
algebraic-graphs = doJailbreak super.algebraic-graphs;
# 2026-05-18: allow QuickCheck 2.16
# https://github.com/haskellari/binary-instances/pull/34/changes#r3257818178
binary-instances = doJailbreak super.binary-instances;
# 2026-06-28: allow QuickCheck 2.16 (upstream currently bound to 2.18)
# https://github.com/haskell-servant/servant/pull/1875 # krank:ignore-line
servant-auth-client = doJailbreak super.servant-auth-client;
servant-auth-server = doJailbreak super.servant-auth-server;
# 2026-06-28: allow doctest 0.25
# https://github.com/haskell-servant/servant/issues/1890
servant-auth-docs = doJailbreak super.servant-auth-docs;
servant-swagger = doJailbreak super.servant-swagger;
# 2026-06-29: allow doctest 0.25
# https://github.com/sellout/yaya/issues/91
yaya = doJailbreak super.yaya;
yaya-containers = doJailbreak super.yaya-containers;
yaya-hedgehog = doJailbreak super.yaya-hedgehog;
yaya-lens = doJailbreak super.yaya-lens;
yaya-quickcheck = doJailbreak super.yaya-quickcheck;
yaya-unsafe = doJailbreak super.yaya-unsafe;
# 2026-07-02: allow doctest 0.25
# https://github.com/sellout/no-recursion/issues/46
no-recursion = doJailbreak super.no-recursion;
# https://github.com/ghcjs/jsaddle/pull/165
jsaddle-warp = appendPatch (fetchpatch {
name = "add-threaded-flag";
url = "https://github.com/ghcjs/jsaddle/commit/71942e99e33cec69bff307e6289d2b0e714f8279.patch";
relative = "jsaddle-warp";
sha256 = "sha256-mDztKB2rktARDA2gMM+zGyavnAEAlF1Ik23Ji52tGSE";
}) super.jsaddle-warp;
# https://github.com/fpco/http-reverse-proxy/pull/53/
http-reverse-proxy = appendPatch (fetchpatch {
name = "add-threaded-flag";
url = "https://github.com/fpco/http-reverse-proxy/commit/47f81a066b37115d5bd120583570d45345aab3e0.patch";
sha256 = "sha256-sLZTVlypqeI9i+3K/1IxAJFAywcxE4JM00giUGpJIKI";
}) super.http-reverse-proxy;
# chell-quickcheck doesn't work with QuickCheck >= 2.15 with no known fix yet
# https://github.com/typeclasses/chell/issues/5
system-filepath = dontCheck super.system-filepath;
gnuidn = dontCheck super.gnuidn;
# Tests rely on `Int` being 64-bit: https://github.com/hspec/hspec/issues/431.
# Also, we need QuickCheck-2.14.x to build the test suite, which isn't easy in LTS-16.x.
# So let's not go there and just disable the tests altogether.
# Avoids infinite recursion
hspec-core = dontCheck super.hspec-core;
update-nix-fetchgit =
@ -1674,6 +1704,24 @@ with haskellLib;
# https://github.com/biocad/servant-openapi3/issues/30
servant-openapi3 = dontCheck super.servant-openapi3;
# 2026-06-04: strict upper bound on random
# https://github.com/haskell-servant/servant-multipart/issues/76
# https://github.com/haskell-servant/servant-multipart/pull/77
servant-multipart-client = doJailbreak super.servant-multipart-client;
# 2026-07-02: allow ghc-events 0.21, optparse-applicative 0.19
# https://github.com/mpickering/eventlog2html/issues/195
eventlog2html = doJailbreak super.eventlog2html;
# 2026-07-02: allow ghc-events 0.21, transformers 0.6.3
# https://github.com/haskell/ThreadScope/issues/148
threadscope = doJailbreak super.threadscope;
# 2026-07-02: allow base 4.21 and template-haskell 2.23
# https://github.com/luke-clifton/shh/issues/85
shh = doJailbreak super.shh;
shh-extras = doJailbreak super.shh-extras;
# Disable test cases that were broken by insignificant changes in icu 76
# https://github.com/haskell/text-icu/issues/108
text-icu = overrideCabal (drv: {
@ -1773,6 +1821,11 @@ with haskellLib;
];
}) super.duckdb-ffi;
# 2026-06-04: too strict bounds on QuickCheck <2.16
# https://github.com/Tritlo/duckdb-haskell/pull/13
# TODO: remove after PR is merged
duckdb-simple = doJailbreak super.duckdb-simple;
spacecookie = overrideCabal (old: {
buildTools = (old.buildTools or [ ]) ++ [ pkgs.buildPackages.installShellFiles ];
# let testsuite discover the resulting binary
@ -1830,9 +1883,10 @@ with haskellLib;
# https://github.com/obsidiansystems/database-id/issues/1
database-id-class = doJailbreak super.database-id-class;
# Allow granite >= 0.4
dataframe = lib.pipe super.dataframe [
(warnAfterVersion "0.5.0.1")
# Too strict version bounds (<0.4) on network-run
# https://github.com/abhinav/pinch/pull/72
pinch = lib.pipe super.pinch [
(warnAfterVersion "0.5.2.0")
doJailbreak
];
@ -1898,29 +1952,47 @@ with haskellLib;
# https://github.com/minimapletinytools/linear-tests/issues/1
linear-tests = dontCheck super.linear-tests;
# 2023-04-09: haskell-ci needs Cabal-syntax 3.10
# 2024-03-21: pins specific version of ShellCheck
# 2025-03-10: jailbreak, https://github.com/haskell-CI/haskell-ci/issues/771
haskell-ci = doJailbreak (
super.haskell-ci.overrideScope (
self: super: {
Cabal-syntax = self.Cabal-syntax_3_10_3_0;
ShellCheck = self.ShellCheck_0_9_0;
haskell-ci = lib.pipe super.haskell-ci [
(warnAfterVersion "0.18.1")
(overrideSrc {
# ATTN: also update cabal-install-parsers version below
version = "0.19.20260331-unstable-2026-04-15";
src = pkgs.fetchFromGitHub {
owner = "haskell-CI";
repo = "haskell-ci";
rev = "30692865b767dcab15086e63f2f4fd3d3d1fe8a5";
hash = "sha256-t1urzATbWwdRWkpCygg2kLZ3i8/0qG9ZOjDsNpnUBt0=";
};
})
(addBuildDepends [ self.tasty-hunit ])
# https://github.com/haskell-CI/haskell-ci/issues/819
doJailbreak
(
haskell-ci:
haskell-ci.override {
ShellCheck = self.ShellCheck_0_10_0;
cabal-install-parsers = lib.pipe self.cabal-install-parsers [
(warnAfterVersion "0.6.3")
(overrideSrc {
version = "0.6.4-unstable-2026-04-15";
inherit (self.haskell-ci) src;
})
(overrideCabal {
# Too strict bounds on tree-diff, tar
# https://github.com/haskell-CI/haskell-ci/issues/807
jailbreak = true;
postUnpack = ''
sourceRoot+="/cabal-install-parsers"
'';
})
];
}
)
);
];
# ShellCheck < 0.10.0 needs to be adjusted for changes in fgl >= 5.8
# https://github.com/koalaman/shellcheck/issues/2677
ShellCheck_0_9_0 = doJailbreak (
appendPatches [
(fetchpatch {
name = "shellcheck-fgl-5.8.1.1.patch";
url = "https://github.com/koalaman/shellcheck/commit/c05380d518056189412e12128a8906b8ca6f6717.patch";
sha256 = "0gbx46x1a2sh5mvgpqxlx9xkqcw4wblpbgqdkqccxdzf7vy50xhm";
})
] super.ShellCheck_0_9_0
);
# Allow QuickCheck >= 2.16
ShellCheck_0_10_0 = doDistribute (doJailbreak super.ShellCheck_0_10_0);
# Too strict bound on hspec (<2.11)
utf8-light = doJailbreak super.utf8-light;
@ -1966,8 +2038,7 @@ with haskellLib;
hadolint = doJailbreak super.hadolint;
# Too strict bounds on
# QuickCheck (<2.15): https://github.com/kapralVV/Unique/issues/12
# hashable (<1.5): https://github.com/kapralVV/Unique/issues/11#issuecomment-3088832168
# extra <= 1.8
Unique = doJailbreak super.Unique;
# Too strict bound on tasty-quickcheck (<0.11)
@ -2049,6 +2120,10 @@ with haskellLib;
# GHC 9.10 patch plus lifted constraints for hashable
# https://hub.darcs.net/darcs/darcs-reviewed/patch/32646b190e019de21a103e950c4eccdd66f7eadc
./patches/darcs-stackage-lts-23.patch
# Support Cabal 3.14's Symbolic Path API
./patches/darcs-cabal-3.14.patch
# Lift bounds for GHC 9.12 / Stackage Nightly 2026-06-16
./patches/darcs-stackage-nightly-2026-06-16.patch
] super.darcs;
# 2025-02-11: Too strict bounds on hedgehog < 1.5, hspec-hedgehog < 0.2
@ -2162,12 +2237,8 @@ with haskellLib;
# https://github.com/haskell-works/hw-string-parse/issues/43
hw-string-parse = doJailbreak super.hw-string-parse;
# 2025-09-03: allow QuickCheck 2.15
# https://github.com/haskell-works/hw-prim/issues/150
hw-prim = lib.pipe super.hw-prim [
(warnAfterVersion "0.6.3.2")
doJailbreak
];
# 2026-06-10: pin validation to < 1.2 due to breaking API changes affecting geojson
validation = super.validation_1_1_5;
# too strict bounds on extra < 1.8
# https://github.com/georgefst/svgone/pull/3
@ -2324,17 +2395,6 @@ with haskellLib;
# https://github.com/phadej/crypt-sha512/issues/13
crypt-sha512 = dontCheck (doJailbreak super.crypt-sha512);
# Latest release depends on crypton-connection ==0.3.2 https://github.com/ndmitchell/hoogle/issues/435
hoogle = overrideSrc {
version = "unstable-2024-07-29";
src = pkgs.fetchFromGitHub {
owner = "ndmitchell";
repo = "hoogle";
rev = "8149c93c40a542bf8f098047e1acbc347fc9f4e6";
hash = "sha256-k3UdmTq8c+iNF8inKM+oWf/NgJqRgUSFS3YwRKVg8Mw=";
};
} super.hoogle;
inherit
(
let
@ -2477,26 +2537,14 @@ with haskellLib;
})
] super.heist;
# 2025-09-03: Disable tests until this is solved:
# https://github.com/clash-lang/ghc-typelits-extra/issues/60
ghc-typelits-extra = lib.pipe super.ghc-typelits-extra [
(warnAfterVersion "0.4.8")
dontCheck
];
# 2025-09-16: 0.5 adds support for GHC 9.12 and doesn't actually seem to contain a
# breaking change, so we can upgrade beyond Stackage.
# https://github.com/clash-lang/ghc-tcplugins-extra/pull/29#issuecomment-3299008674
# https://github.com/clash-lang/ghc-tcplugins-extra/compare/702dda2095c66c4f5148a749c8b7dbcc8a09f5c...v0.5.0
ghc-tcplugins-extra = doDistribute self.ghc-tcplugins-extra_0_5;
# 2025-09-11: Tests have been fixed in 0.7.12, but it requests ghc-tcplugins-extra >= 0.5
# which Stackage LTS won't update to, but we can.
ghc-typelits-natnormalise = doDistribute self.ghc-typelits-natnormalise_0_7_12;
# calls ghc in tests
# https://github.com/brandonchinn178/tasty-autocollect/issues/54
tasty-autocollect = dontCheck super.tasty-autocollect;
# 2026-06-17: wai-app-static >=3.1.7.1 && <3.2
# https://github.com/diogob/postgres-websockets/issues/115
postgres-websockets = doJailbreak super.postgres-websockets;
postgrest =
lib.pipe
(super.postgrest.overrideScope (
@ -2511,8 +2559,13 @@ with haskellLib;
hasql-notifications = unmarkBroken (dontCheck super.hasql-notifications_0_2_2_2);
hasql-pool = dontCheck super.hasql-pool_1_0_1;
hasql-transaction = dontCheck super.hasql-transaction_1_1_0_1;
insert-ordered-containers = super.insert-ordered-containers_0_2_7;
lawful-conversions = super.lawful-conversions_0_1_7;
swagger2 = doJailbreak super.swagger2_2_8_10; # jailbreak for QuickCheck 2.16
text-builder = super.text-builder_0_6_10;
text-builder-dev = super.text-builder-dev_0_3_10;
# This dependency was removed upstream and replaced with jose-jwt below
jose = null;
}
))
[
@ -2565,6 +2618,10 @@ with haskellLib;
hs-opentelemetry-instrumentation-yesod = doJailbreak super.hs-opentelemetry-instrumentation-yesod;
hs-opentelemetry-utils-exceptions = doJailbreak super.hs-opentelemetry-utils-exceptions;
# Too strict bounds on hedgehog
# https://github.com/fused-effects/fused-effects/issues/473
fused-effects = doJailbreak super.fused-effects;
html-charset = dontCheck super.html-charset;
# bytestring <0.11.0, optparse-applicative <0.13.0
@ -2647,22 +2704,43 @@ with haskellLib;
# https://github.com/phadej/zinza/pull/28
zinza = dontCheck super.zinza;
pdftotext = overrideCabal (drv: {
jailbreak = true;
postPatch = ''
pdftotext =
let
decodeSourceHutMboxPatch = lib.escapeShellArgs [
"${pkgs.perl}/bin/perl"
"-MMIME::QuotedPrint=decode_qp"
"-0777"
"-ne"
"print decode_qp($_)"
];
in
appendPatches [
# Fixes https://todo.sr.ht/~geyaeb/haskell-pdftotext/6
substituteInPlace pdftotext.cabal --replace-quiet c-sources cxx-sources
# Fix cabal ignoring cxx because the cabal format version is too old
substituteInPlace pdftotext.cabal --replace-quiet ">=1.10" 2.2
# Fix wrong license name that breaks recent cabal version
substituteInPlace pdftotext.cabal --replace-quiet BSD3 BSD-3-Clause
''
+ (drv.postPatch or "");
}) super.pdftotext;
(fetchpatch {
name = "pdftotext-use-cxx-sources-for-cxx-sources.patch";
url = "https://lists.sr.ht/~geyaeb/haskell-pdftotext/patches/69754/mbox";
decode = decodeSourceHutMboxPatch;
hash = "sha256-5DvNBFlbP0o5Hso+mzKweQAINUUTequPMoOJZfgeIzU=";
})
# Adapt the executable to range 1.0's Ranges API.
(fetchpatch {
name = "pdftotext-support-range-1.0-in-the-cli.patch";
url = "https://lists.sr.ht/~geyaeb/haskell-pdftotext/patches/69755/mbox";
decode = decodeSourceHutMboxPatch;
hash = "sha256-hZFMSI8Yyh5QIXMRs9VkBKPPP2IM+cbU2ILcqYc9oIw=";
})
# Relax stale dependency bounds, replacing jailbreak.
(fetchpatch {
name = "pdftotext-relax-dependency-bounds.patch";
url = "https://lists.sr.ht/~geyaeb/haskell-pdftotext/patches/69756/mbox";
decode = decodeSourceHutMboxPatch;
hash = "sha256-wYM0SsOk9eZXR+/g+VOkj7okhmy1sEONCLHcrHlV2EI=";
})
] super.pdftotext;
# QuickCheck <2.15
# Allow QuickCheck 2.16
# https://github.com/google/proto-lens/issues/403
proto-lens-arbitrary = doJailbreak super.proto-lens-arbitrary;
@ -2759,6 +2837,10 @@ with haskellLib;
# 2025-04-09: jailbreak to allow hedgehog >= 1.5
hw-int = warnAfterVersion "0.0.2.0" (doJailbreak super.hw-int);
# 2026-05-17: allow hedgehog 1.6
# https://github.com/hedgehogqa/haskell-hedgehog-classes/pull/65
hedgehog-classes = doJailbreak super.hedgehog-classes;
# 2025-04-09: jailbreak to allow tasty-quickcheck >= 0.11
bzlib = warnAfterVersion "0.5.2.0" (doJailbreak super.bzlib);
@ -2790,7 +2872,6 @@ with haskellLib;
]
) super)
what4
what4_1_7_3
;
copilot-theorem = lib.pipe super.copilot-theorem [
@ -2858,15 +2939,7 @@ with haskellLib;
(doJailbreak super.monad-bayes);
# 2025-04-13: jailbreak to allow th-abstraction >= 0.7
crucible = doJailbreak (
super.crucible.override {
what4 = self.what4_1_7_3;
}
);
crucible-llvm = super.crucible-llvm.override {
what4 = self.what4_1_7_3;
};
crucible = doJailbreak super.crucible;
# Test suite invokes cabal-install in a way incompatible with our generic builder
# (i.e. tries to re-use the ghc package db / environment from dist-newstyle).
@ -3015,13 +3088,13 @@ with haskellLib;
amazonkaSrc = pkgs.fetchFromGitHub {
owner = "brendanhay";
repo = "amazonka";
rev = "7645bd335f008912b9e5257486f622b674de7afa";
sha256 = "sha256-ObamDnJdcLA2BlX9iGIxkaknUeL3Po3madKO4JA/em0=";
rev = "c87e5cbb67d8116c8829c9f84db4f8da92734830";
sha256 = "sha256-mO9kbooiReW1cdnrG9t4yjAsm/qVQKhEN8CmCiEfJgY=";
};
setAmazonkaSourceRoot =
dir: drv:
(overrideSrc {
version = "2.0-unstable-2025-04-16";
version = "2.0-unstable-2026-05-20";
src = amazonkaSrc + "/${dir}";
})
drv;
@ -3392,9 +3465,14 @@ with haskellLib;
self.microlens-pro
])
];
amazonka = warnAfterVersion "2.0" (
setAmazonkaSourceRoot "lib/amazonka" (doJailbreak super.amazonka)
);
amazonka = lib.pipe super.amazonka [
(setAmazonkaSourceRoot "lib/amazonka")
(addBuildDepends [
self.tasty
self.tasty-hunit
])
(warnAfterVersion "2.0")
];
amazonka-test = warnAfterVersion "2.0" (
setAmazonkaSourceRoot "lib/amazonka-test" (doJailbreak super.amazonka-test)
);
@ -3435,42 +3513,3 @@ with haskellLib;
];
}
)
# 2026-04-01: IHP packages need hasql >= 1.10 (via hasql-mapping).
# The scope renames hasql-stack attrs to the 1.10 line and unmarks
# hasql-mapping, which only builds against hasql >= 1.10 and so stays
# broken at the top level. dontCheck for tests that need a live
# PostgreSQL lives in configuration-nix.nix on the versioned attrs.
// (
let
ihpHasqlScope = self: super: {
hasql = doDistribute super.hasql_1_10_3;
hasql-dynamic-statements = doDistribute super.hasql-dynamic-statements_0_5_1;
hasql-notifications = doDistribute super.hasql-notifications_0_2_5_0;
hasql-pool = doDistribute super.hasql-pool_1_4_2;
hasql-transaction = doDistribute super.hasql-transaction_1_2_2;
postgresql-binary = doDistribute super.postgresql-binary_0_15_0_1;
text-builder = doDistribute super.text-builder_1_0_0_5;
hasql-mapping = doDistribute (unmarkBroken super.hasql-mapping);
postgresql-simple-postgresql-types = doDistribute (
unmarkBroken super.postgresql-simple-postgresql-types
);
};
ihpPackages = [
"ihp"
"ihp-datasync"
"ihp-graphql"
"ihp-hspec"
"ihp-ide"
"ihp-job-dashboard"
"ihp-migrate"
"ihp-pglistener"
"ihp-ssc"
"ihp-typed-sql"
];
in
lib.genAttrs ihpPackages (
name: haskellLib.doDistribute (haskellLib.unmarkBroken (super.${name}.overrideScope ihpHasqlScope))
)
)

View file

@ -37,4 +37,21 @@ self: super: {
unix = null;
xhtml = null;
Win32 = null;
# core pkgs on later GHCs that we can reasonably provide a stub
# or Hackage released version for (though they may not build).
Cabal-syntax = self.Cabal-syntax_3_6_0_0;
semaphore-compat = self.semaphore-compat_2_0_0;
os-string = self.os-string_2_0_11;
file-io = self.file-io_0_2_0;
# Would need 2.25.*, but let's not bother
haddock-api = self.haddock-api_2_29_1;
haddock-library = self.haddock-library_1_11_0;
# core pkgs on later GHCs we can't provide at all
system-cxx-std-lib = null;
ghc-experimental = null;
ghc-internal = null;
ghc-platform = null;
ghc-toolchain = null;
}

View file

@ -65,54 +65,16 @@ in
xhtml = null;
Win32 = null;
# Become core packages in GHC >= 9.12
file-io = doDistribute self.file-io_0_2_0;
haddock-api = markBroken self.haddock-api_2_29_1; # no compatible release available
haddock-library = doJailbreak (doDistribute self.haddock-library_1_11_0);
ghc-exactprint = doDistribute self.ghc-exactprint_1_10_0_0;
# “Unfortunately we are unable to support GHC 9.10.”
apply-refact = dontDistribute (markBroken super.apply-refact);
stack =
# Setup.hs depends on Cabal-syntax >= 3.14
overrideCabal
(drv: {
setupHaskellDepends = drv.setupHaskellDepends or [ ] ++ [
self.Cabal-syntax_3_14_2_0
self.Cabal_3_14_2_0
];
# We need to tell GHC to ignore the Cabal core libraries while
# compiling Setup.hs since it depends on Cabal >= 3.14.
# ATTN: This override assumes we are using GHC 9.10.3 since we need
# to give an exact Cabal version at the GHC (!) command line.
# FIXME(@sternenseemann): make direct argument to generic-builder.nix
env = drv.env or { } // {
setupCompileFlags = lib.concatStringsSep " " [
"-hide-package"
"Cabal-syntax-3.12.1.0"
"-hide-package"
"Cabal-3.12.1.0"
];
};
})
# Stack itself depends on Cabal >= 3.14 which also needs to be updated for deps
(
super.stack.overrideScope (
sself: ssuper:
let
upgradeCabal =
drv:
lib.pipe drv [
(addBuildDepends [ sself.Cabal_3_14_2_0 ])
(appendConfigureFlags [ "--constraint=Cabal>=3.14" ])
];
in
{
pantry = upgradeCabal ssuper.pantry_0_11_2;
rio-prettyprint = upgradeCabal ssuper.rio-prettyprint;
hackage-security = upgradeCabal ssuper.hackage-security;
hpack = upgradeCabal sself.hpack_0_39_1;
stack = upgradeCabal ssuper.stack;
}
)
);
#
# Version upgrades
#
@ -124,10 +86,6 @@ in
# Jailbreaks
#
floskell = doJailbreak super.floskell; # base <4.20
# 2025-04-09: filepath <1.5
haddock-library =
assert super.haddock-library.version == "1.11.0";
doJailbreak super.haddock-library;
tree-sitter = doJailbreak super.tree-sitter; # containers <0.7, filepath <1.5
#

View file

@ -73,7 +73,6 @@ with haskellLib;
#
extensions = doDistribute self.extensions_0_1_1_0;
ghc-exactprint = doDistribute self.ghc-exactprint_1_12_0_0;
#
# Jailbreaks
@ -87,15 +86,6 @@ with haskellLib;
'';
}) super.cpphs;
cabal-install-parsers = doJailbreak super.cabal-install-parsers; # base, Cabal-syntax, etc.
ghc-exactprint_1_12_0_0 = addBuildDepends [
# cabal2nix drops conditional block: impl (ghc >= 9.12)
self.Diff
self.extra
self.ghc-paths
self.silently
self.syb
self.HUnit
] super.ghc-exactprint_1_12_0_0;
timezone-series = doJailbreak super.timezone-series; # time <1.14
timezone-olson = doJailbreak super.timezone-olson; # time <1.14
cabal-plan = doJailbreak super.cabal-plan; # base <4.21
@ -122,9 +112,6 @@ with haskellLib;
'';
}) super.alex;
# https://github.com/sjakobi/newtype-generics/pull/28/files
newtype-generics = warnAfterVersion "0.6.2" (doJailbreak super.newtype-generics);
# Test failure because of GHC bug:
# https://gitlab.haskell.org/ghc/ghc/-/issues/25937
# https://github.com/sol/interpolate/issues/20

View file

@ -81,13 +81,6 @@ with haskellLib;
#
ghc-exactprint = doDistribute self.ghc-exactprint_1_14_0_0;
hedgehog = doDistribute self.hedgehog_1_7;
hie-bios = doDistribute (dontCheck self.hie-bios_0_19_0); # Tests access homeless-shelter.
lifted-async = doDistribute self.lifted-async_0_11_0;
parallel = doDistribute self.parallel_3_3_0_0;
tagged = doDistribute self.tagged_0_8_10;
unordered-containers = doDistribute self.unordered-containers_0_2_21;
HTTP = doDistribute self.HTTP_4000_5_0;
#
# Jailbreaks
@ -134,9 +127,6 @@ with haskellLib;
] super.serialise
);
# https://github.com/sjakobi/newtype-generics/pull/28/files
newtype-generics = warnAfterVersion "0.6.2" (doJailbreak super.newtype-generics);
# haskell-debugger only works with ghc 9.14+
haskell-debugger-view = doDistribute (unmarkBroken super.haskell-debugger-view);
haskell-debugger = doDistribute (doJailbreak super.haskell-debugger); # hie-bios < 0.18, random >=1.3.1
@ -147,7 +137,6 @@ with haskellLib;
self.extra
self.ghc-paths
self.silently
self.syb
self.HUnit
] super.ghc-exactprint_1_14_0_0;

View file

@ -49,14 +49,21 @@ self: super: {
unix = null;
# GHC only bundles the xhtml library if haddock is enabled, check if this is
# still the case when updating: https://gitlab.haskell.org/ghc/ghc/-/blob/0198841877f6f04269d6050892b98b5c3807ce4c/ghc.mk#L463
xhtml = if self.ghc.hasHaddock or true then null else doDistribute self.xhtml_3000_4_0_0;
xhtml = if self.ghc.hasHaddock or true then null else doDistribute self.xhtml_3000_4_1_0;
Win32 = null;
# Becomes a core package in GHC >= 9.8
semaphore-compat = doDistribute self.semaphore-compat_1_0_0;
semaphore-compat = doDistribute self.semaphore-compat_2_0_0;
# Becomes a core package in GHC >= 9.10
os-string = doDistribute self.os-string_2_0_10;
os-string = doDistribute self.os-string_2_0_11;
# Become core packages in GHC >= 9.12
haddock-library = doDistribute (doJailbreak self.haddock-library_1_11_0);
haddock-api = doDistribute (doJailbreak self.haddock-api_2_27_0);
# Becomes a core package in GHC >= 9.12, but needs unix >= 2.8
file-io = null;
# Become core packages in GHC >= 9.10, no release compatible with GHC < 9.10 is available
ghc-experimental = null;
@ -138,7 +145,6 @@ self: super: {
# https://github.com/kowainik/relude/issues/436
relude = dontCheck super.relude;
haddock-library = doJailbreak super.haddock-library;
path = self.path_0_9_5;
haskell-language-server =

View file

@ -64,10 +64,10 @@ in
iserv-proxy = addBuildDepend self.libiserv super.iserv-proxy;
# Becomes a core package in GHC >= 9.8
semaphore-compat = doDistribute self.semaphore-compat_1_0_0;
semaphore-compat = doDistribute self.semaphore-compat_2_0_0;
# Becomes a core package in GHC >= 9.10
os-string = doDistribute self.os-string_2_0_10;
os-string = doDistribute self.os-string_2_0_11;
# Become core packages in GHC >= 9.10, no release compatible with GHC < 9.10 is available
ghc-experimental = null;
@ -76,6 +76,11 @@ in
ghc-toolchain = null;
ghc-platform = null;
# Become core packages in GHC >= 9.12
file-io = doDistribute self.file-io_0_2_0;
haddock-api = doDistribute (doJailbreak self.haddock-api_2_29_1);
haddock-library = doJailbreak (doDistribute self.haddock-library_1_11_0);
# Needs base-orphans for GHC < 9.8 / base < 4.19
some = addBuildDepend self.base-orphans super.some;
@ -105,9 +110,6 @@ in
cabal-install-solver = doJailbreak super.cabal-install-solver;
cabal-install = doJailbreak super.cabal-install;
# Forbids base >= 4.18, fix proposed: https://github.com/sjakobi/newtype-generics/pull/25
newtype-generics = warnAfterVersion "0.6.2" (doJailbreak super.newtype-generics);
# Jailbreaks for servant <0.20
servant-lucid = doJailbreak super.servant-lucid;
@ -208,7 +210,6 @@ in
ghc-lib = doDistribute self.ghc-lib_9_8_5_20250214;
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_8_5_20250214;
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_8_0_2;
haddock-library = doJailbreak super.haddock-library;
inherit
(
let
@ -227,13 +228,16 @@ in
self.retrie
self.floskell
self.markdown-unlit
self.stan
self.trial
] super.haskell-language-server;
hls-plugin-api = super.hls-plugin-api;
hlint = self.hlint_3_8;
lsp-types = super.lsp-types;
ormolu = self.ormolu_0_7_4_0;
ormolu = doJailbreak self.ormolu_0_7_4_0;
retrie = doJailbreak (unmarkBroken super.retrie);
stylish-haskell = self.stylish-haskell_0_14_6_0;
stan = super.stan;
stylish-haskell = doJailbreak self.stylish-haskell_0_14_6_0;
}
)
apply-refact
@ -246,6 +250,7 @@ in
lsp-types
ormolu
retrie
stan
stylish-haskell
;
}

View file

@ -64,7 +64,7 @@ in
Win32 = null;
# Becomes a core package in GHC >= 9.10
os-string = doDistribute self.os-string_2_0_10;
os-string = doDistribute self.os-string_2_0_11;
# Become core packages in GHC >= 9.10, no release compatible with GHC < 9.10 is available
ghc-experimental = null;
@ -73,6 +73,11 @@ in
ghc-toolchain = null;
ghc-platform = null;
# Become core packages in GHC >= 9.12
file-io = doDistribute self.file-io_0_2_0;
haddock-api = markBroken self.haddock-api_2_29_1; # no compatible release available
haddock-library = doJailbreak (doDistribute self.haddock-library_1_11_0);
#
# Version upgrades
#
@ -106,7 +111,6 @@ in
# A given major version of ghc-exactprint only supports one version of GHC.
ghc-exactprint = doDistribute super.ghc-exactprint_1_8_0_0;
haddock-library = doJailbreak super.haddock-library;
ghc-lib = doDistribute self.ghc-lib_9_8_5_20250214;
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_8_5_20250214;
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_8_0_2;
@ -128,13 +132,16 @@ in
self.retrie
self.floskell
self.markdown-unlit
self.stan
self.trial
] super.haskell-language-server;
hls-plugin-api = super.hls-plugin-api;
hlint = self.hlint_3_8;
lsp-types = super.lsp-types;
ormolu = self.ormolu_0_7_4_0;
ormolu = doJailbreak self.ormolu_0_7_4_0;
retrie = doJailbreak (unmarkBroken super.retrie);
stylish-haskell = self.stylish-haskell_0_14_6_0;
stan = super.stan;
stylish-haskell = doJailbreak self.stylish-haskell_0_14_6_0;
}
)
apply-refact
@ -147,6 +154,7 @@ in
lsp-types
ormolu
retrie
stan
stylish-haskell
;
}

View file

@ -2409,7 +2409,6 @@ broken-packages:
- HackMail # failure in job https://hydra.nixos.org/build/233215224 at 2023-09-02
- hactor # failure in job https://hydra.nixos.org/build/233254977 at 2023-09-02
- hactors # failure in job https://hydra.nixos.org/build/233218599 at 2023-09-02
- haddock-api # failure in job https://hydra.nixos.org/build/233216515 at 2023-09-02
- haddock-leksah # failure in job https://hydra.nixos.org/build/233206878 at 2023-09-02
- haddock-test # failure in job https://hydra.nixos.org/build/233246641 at 2023-09-02
- hadoop-formats # failure in job https://hydra.nixos.org/build/233224647 at 2023-09-02
@ -2628,7 +2627,6 @@ broken-packages:
- hasql-explain-tests # failure in job https://hydra.nixos.org/build/233247034 at 2023-09-02
- hasql-generate # failure in job https://hydra.nixos.org/build/324107360 at 2026-03-15
- hasql-generic # failure in job https://hydra.nixos.org/build/233204654 at 2023-09-02
- hasql-mapping # failure in job https://hydra.nixos.org/build/324107379 at 2026-03-15
- hasql-migration # failure in job https://hydra.nixos.org/build/295094132 at 2025-04-22
- hasql-mover # failure in job https://hydra.nixos.org/build/295094128 at 2025-04-22
- hasql-pipes # failure in job https://hydra.nixos.org/build/295094119 at 2025-04-22
@ -2773,7 +2771,6 @@ broken-packages:
- hGelf # failure in job https://hydra.nixos.org/build/233203909 at 2023-09-02
- hgeometric # failure in job https://hydra.nixos.org/build/233197856 at 2023-09-02
- hgis # failure in job https://hydra.nixos.org/build/233200418 at 2023-09-02
- hgmp # failure in job https://hydra.nixos.org/build/307519217 at 2025-09-19
- hgom # failure in job https://hydra.nixos.org/build/233255569 at 2023-09-02
- hgopher # failure in job https://hydra.nixos.org/build/233222066 at 2023-09-02
- HGraphStorage # failure in job https://hydra.nixos.org/build/233217988 at 2023-09-02
@ -3296,7 +3293,6 @@ broken-packages:
- ihaskell-parsec # failure in job https://hydra.nixos.org/build/233244271 at 2023-09-02
- ihaskell-plot # failure in job https://hydra.nixos.org/build/233255936 at 2023-09-02
- ihaskell-widgets # failure in job https://hydra.nixos.org/build/265955663 at 2024-07-14
- ihp-pglistener # failure in job https://hydra.nixos.org/build/325267877 at 2026-04-12
- illuminate # failure in job https://hydra.nixos.org/build/233219478 at 2023-09-02
- image-type # failure in job https://hydra.nixos.org/build/233251466 at 2023-09-02
- imagemagick # failure in job https://hydra.nixos.org/build/233598237 at 2023-09-02
@ -4979,7 +4975,6 @@ broken-packages:
- postgresql-simple-interval # failure in job https://hydra.nixos.org/build/307611243 at 2025-09-19
- postgresql-simple-named # failure in job https://hydra.nixos.org/build/233202481 at 2023-09-02
- postgresql-simple-opts # failure in job https://hydra.nixos.org/build/252718901 at 2024-03-16
- postgresql-simple-postgresql-types # failure in job https://hydra.nixos.org/build/327522032 at 2026-04-30
- postgresql-simple-sop # failure in job https://hydra.nixos.org/build/233249757 at 2023-09-02
- postgresql-simple-url # failure in job https://hydra.nixos.org/build/295096191 at 2025-04-22
- postgresql-tx # failure in job https://hydra.nixos.org/build/252717914 at 2024-03-16
@ -7445,7 +7440,6 @@ broken-packages:
- yesod-links # failure in job https://hydra.nixos.org/build/233257763 at 2023-09-02
- yesod-lucid # failure in job https://hydra.nixos.org/build/233231687 at 2023-09-02
- yesod-media-simple # failure in job https://hydra.nixos.org/build/307611606 at 2025-09-19
- yesod-middleware-csp # failure in job https://hydra.nixos.org/build/295098382 at 2025-04-22
- yesod-paginate # failure in job https://hydra.nixos.org/build/233218563 at 2023-09-02
- yesod-pagination # failure in job https://hydra.nixos.org/build/233204022 at 2023-09-02
- yesod-pnotify # failure in job https://hydra.nixos.org/build/233258047 at 2023-09-02

View file

@ -27,19 +27,16 @@
default-package-overrides:
- chs-cabal == 0.1.1.2 # matches Cabal 3.12 (GHC 9.10)
- clash-lib-hedgehog < 1.9 # needs to match clash-lib from Stackage
# 2026-01-23: dataframe >= 0.3.3.7 uses random-1.3, which breaks dependency coherence on 25.11, whose default version is random-1.2
# TODO: when (likely in 25.x) Stackage bumps random to 1.3, review
- dataframe == 0.3.3.6
# 2025-12-26: Needs to match egison-pattern-src from Stackage LTS
- egison-pattern-src-th-mode < 0.2.2
- extensions == 0.1.0.2 # matches Cabal 3.12 (GHC 9.10)
# 2026-06-29: needs to match futhark-0.26.3
- futhark-manifest == 1.8.0.0
# 2026-01-30: Needs to match hasql from Stackage LTS 24
- hasql-notifications < 0.2.5.0
# 2026-02-04: as requested by ghcide >= 2.13
- hie-bios < 0.18.0
- hiedb < 0.8.0
# 2025-09-13: hnix 0.17.0 doesn't support hnix-store-core >= 0.8
# https://github.com/haskell-nix/hnix/pull/1112
# Note: When removing this, also remove hnix-store-core from maintainers/scripts/haskell/update-stackage.sh
- hnix-store-core < 0.7
- hnix-store-remote < 0.7
# 2025-08-03: need to match stackage version of hosc
@ -51,10 +48,6 @@ default-package-overrides:
# liquidhaskell(-boot) support one GHC at a time, so we choose the one matching the current GHC (9.10)
- liquidhaskell == 0.9.10.*
- liquidhaskell-boot == 0.9.10.*
# 2025-03-07: HLS and many other pkgs don't support lsp >= 2.8 (yet)
- lsp < 2.8
- lsp-test < 0.18
- lsp-types < 2.4
# Needs to match microlens == 0.4.* in Stackage LTS 24
- microlens-pro < 0.2.0.4
# 2026-04-06: 4.0.10 merely adjusts to dependencies that are incompatible with our LTS
@ -64,6 +57,8 @@ default-package-overrides:
- pandoc-crossref == 0.3.21
# 2025-12-19: Needs to match Stackage version of rhine
- rhine-bayes < 1.6
# 2026-06-24: compatibility with mighttpd2-4.0.9
- wai-app-file-cgi < 3.2
# 2026-02-08: compatibility with crypton-x509* in Stackage LTS 24
- x509-ocsp < 0.4.1.0
# keep-sorted end
@ -77,6 +72,7 @@ extra-packages:
- Cabal == 3.14.*
- Cabal == 3.16.* # version required for cabal-install and other packages
- cabal-add == 0.1 # 2025-09-09: Only needed for hls 2.11 can be removed once we are past it.
- Cabal-syntax == 3.6.* # required for the GHC 9.0.2 package set
- Cabal-syntax == 3.10.*
- Cabal-syntax == 3.12.*
- Cabal-syntax == 3.14.*
@ -89,7 +85,7 @@ extra-packages:
- ghc-exactprint == 1.6.* # 2023-03-30: needed for GHC == 9.4
- ghc-exactprint == 1.7.* # 2025-03-09: needed for GHC == 9.6
- ghc-exactprint == 1.8.* # 2024-05-20: needed for GHC == 9.8
- ghc-exactprint == 1.9.* # 2024-08-27: needed for GHC == 9.10
- ghc-exactprint == 1.10.* # 2024-08-27: needed for GHC == 9.10
- ghc-exactprint == 1.12.* # 2025-10-15: needed for GHC == 9.12
- ghc-lib == 9.6.* # 2022-02-17: preserve for GHC 9.4
- ghc-lib == 9.8.* # 2025-12-11: preserve for GHC 9.6, 9.8
@ -100,7 +96,7 @@ extra-packages:
- ghc-lib-parser-ex == 9.8.* # 2024-12-26: preserve for GHC 9.6, 9.8
- ghc-tags == 1.7.* # 2023-02-18: preserve for ghc-lib == 9.6.*
- ghc-tags == 1.8.* # 2023-02-18: preserve for ghc-lib == 9.8.*
- ghc-typelits-natnormalise < 0.8 # 2025-09-15: Stackage is stuck at 0.7.10
- haddock-api == 2.27.* # 2026-05-22: latest version compatible with GHC 9.4
- happy == 1.20.* # for ghc-lib-parser == 9.6.*
- hashable < 1.5 # 2025-07-30: hashable >= 1.5 requires GHC >= 9.6
- hasql < 1.7 # 2025-01-19: Needed for building postgrest
@ -112,21 +108,25 @@ extra-packages:
- hlint == 3.6.* # 2025-04-14: needed for hls with ghc-lib-parser 9.6
- hlint == 3.8.* # 2025-09-21: needed for hls with ghc-lib-parser 9.8
- hpack == 0.39.1 # 2026-03-15: to match upstream stack-3.9.3
- insert-ordered-containers < 0.3 # 2026-05-25: Needed for building postgrest
- language-javascript == 0.7.0.0 # required by purescript
- lawful-conversions < 0.2 # 2026-05-25: Needed for building postgrest
- network-run == 0.4.0 # 2024-10-20: for GHC 9.10/network == 3.1.*
- ormolu == 0.7.2.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
- ormolu == 0.7.4.0 # 2023-09-21: for ghc-lib-parser 9.8 compat
- path == 0.9.5 # 2025-09-21: Pin for hls on ghc 9.4
- postgresql-binary < 0.14 # 2025-01-19: Needed for building postgrest
- shake-cabal < 0.2.2.3 # 2023-07-01: last version to support Cabal 3.6.*
- ShellCheck == 0.9.0 # 2024-03-21: pinned by haskell-ci
- ShellCheck == 0.10.0 # 2026-05-30: pinned by haskell-ci
- simple-get-opt < 0.5 # 2025-05-01: for crux-0.7.2
- stylish-haskell == 0.14.5.0 # 2025-04-14: needed for hls with ghc-lib 9.6
- stylish-haskell == 0.14.6.0 # 2025-09-21: needed for hls with ghc-lib 9.8
- stylish-haskell == 0.15.0.1 # 2025-04-14: needed for hls with ghc-lib 9.10
- swagger2 < 2.9 # 2026-05-25: Needed for building postgrest
- tar == 0.6.3.0 # 2025-08-17: last version to not require file-io and directory-ospath-streaming (for GHC < 9.6)
- text-builder < 1 # 2025-08-27: Needed for building postgrest
- text-builder-dev < 0.4 # 2025-08-27: Needed for building postgrest
- validation == 1.1.5 # 2026-06-10: Needed for building geojson 4.1
# keep-sorted end
# keep-sorted start skip_lines=1 case=no
@ -141,11 +141,14 @@ package-maintainers:
- basic-sop
- commutative-semigroups
- generics-sop
- ghcide
- ghcjs-base
- ghcjs-dom
- ghcjs-dom-javascript
- ghcjs-dom-jsaddle
- haskell-debugger
- hie-bios
- hiedb
- jsaddle
- jsaddle-clib
- jsaddle-dom
@ -156,6 +159,9 @@ package-maintainers:
- large-records
- lens-sop
- linux-namespaces
- lsp
- lsp-test
- lsp-types
- monoidal-containers
- proto-lens-arbitrary
- proto3-suite
@ -377,7 +383,6 @@ package-maintainers:
- Agda
- agda2hs
- irc-client
- lambdabot
- shake
nomeata:
- cabal-plan-bounds

View file

@ -136,6 +136,8 @@ dont-distribute-packages:
- ast-monad-json
- astview
- async-ajax
- atelier-db
- atelier-testing
- aterm-utils
- atlassian-connect-core
- atmos-dimensional-tf
@ -189,6 +191,11 @@ dont-distribute-packages:
- babylon
- backblaze-b2-hs
- backdropper
- baikai
- baikai-claude
- baikai-effectful
- baikai-openai
- baikai-trace-otel
- balkon
- ballast
- bamboo
@ -213,6 +220,7 @@ dont-distribute-packages:
- battleships
- bayes-stack
- bbi
- bcp47-orphans
- bdcs
- bdcs-api
- beam-th
@ -448,6 +456,9 @@ dont-distribute-packages:
- claferIG
- claferwiki
- clash
- clash-protocols
- clash-protocols-base
- clash-vexriscv
- classify-frog
- classy-effects
- classy-effects-th
@ -592,6 +603,7 @@ dont-distribute-packages:
- CPBrainfuck
- cprng-aes
- cprng-aes-effect
- cql
- cql-io-tinylog
- cqrs-example
- cqrs-memory
@ -639,6 +651,7 @@ dont-distribute-packages:
- dahdit-network
- dahdit-test
- daino
- danecheck
- Dangerous
- dapi
- darcs-benchmark
@ -649,7 +662,6 @@ dont-distribute-packages:
- darcswatch
- darkplaces-demo
- darkplaces-rcon-util
- dash-haskell
- data-basic
- data-cycle
- data-default-extra
@ -664,6 +676,10 @@ dont-distribute-packages:
- datadog-tracing
- datafix
- dataflow
- dataframe
- dataframe-lazy
- dataframe-parquet
- dataframe-parquet-th
- datasets
- date-conversions
- dbjava
@ -689,6 +705,7 @@ dont-distribute-packages:
- ddci-core
- dde
- debug
- decidable
- decimal-arithmetic
- dedukti
- DeepArrow
@ -762,6 +779,7 @@ dont-distribute-packages:
- DMuCheck
- DnaProteinAlignment
- dnf-repo
- dnsbase
- dobutokO-poetry
- dobutokO-poetry-general
- dobutokO-poetry-general-languages
@ -821,10 +839,12 @@ dont-distribute-packages:
- EditTimeReport
- effect-monad
- effective-aspects-mzv
- eigen-hhlo
- ekg-carbon
- elasticsearch-interchange
- electrs-client
- elerea-examples
- eliminators
- elliptic-curve
- elsa
- ema-extra
@ -853,6 +873,9 @@ dont-distribute-packages:
- ersatz-viz
- esotericbot
- EsounD
- esqueleto
- esqueleto-compat
- esqueleto-postgis
- esqueleto-streaming
- estreps
- Etage-Graph
@ -892,6 +915,11 @@ dont-distribute-packages:
- every-bit-counts
- exact-kantorovich
- exference
- exinst-aeson
- exinst-base
- exinst-bytes
- exinst-cereal
- exinst-serialise
- exist-instances
- existential
- expand
@ -1052,6 +1080,7 @@ dont-distribute-packages:
- functor
- functor-combo
- functor-monad
- functor-products
- funflow
- funflow-nix
- funion
@ -1265,7 +1294,6 @@ dont-distribute-packages:
- hackage2twitter
- hackmanager
- haddock
- haddocset
- hadoop-tools
- haggis
- hails-bin
@ -1279,6 +1307,7 @@ dont-distribute-packages:
- halma-gui
- halma-telegram-bot
- hamusic
- hanalyze
- hans-pcap
- happlets-lib-gtk
- HAppS-Data
@ -1327,9 +1356,10 @@ dont-distribute-packages:
- haskell-admin-health
- haskell-admin-managed-functions
- haskell-aliyun
- haskell-bee-redis
- haskell-bee-stm
- haskell-bitmex-client
- haskell-debugger
- haskell-docs
- haskell-eigen-util
- haskell-ftp
- haskell-lsp
@ -1337,6 +1367,7 @@ dont-distribute-packages:
- haskell-opentimestamps
- haskell-opentimestamps-client
- haskell-pdf-presenter
- haskell-pgmq
- haskell-platform-test
- haskell-reflect
- haskell-src-exts-observe
@ -1384,6 +1415,7 @@ dont-distribute-packages:
- haskoin-crypto
- haskoin-protocol
- haskoin-script
- haskoin-wallet
- haskoon
- haskoon-httpspec
- haskoon-salvia
@ -1402,7 +1434,6 @@ dont-distribute-packages:
- hasloGUI
- hasql-postgres
- hasql-postgres-options
- hasql-postgresql-types
- hasql-queue
- hasql-streams-core
- hasql-streams-example
@ -1423,6 +1454,7 @@ dont-distribute-packages:
- Hayoo
- hback
- hbayes
- hbayesian
- hbb
- hbf
- hbro
@ -1438,7 +1470,6 @@ dont-distribute-packages:
- hdbi-tests
- hdiff
- hdirect
- hdocs
- hdph
- heart-app
- heatitup
@ -1551,8 +1582,8 @@ dont-distribute-packages:
- hmeap-utils
- hmep
- HMock
- hMPC
- hmt-diagrams
- hnix-store-db
- HNM
- hnormalise
- hob
@ -1657,6 +1688,7 @@ dont-distribute-packages:
- hspec-pg-transact
- hspec-setup
- hspec-shouldbe
- hspec-webdriver
- hspecVariant
- hsprocess
- hsql-mysql
@ -1667,6 +1699,7 @@ dont-distribute-packages:
- hsqml-demo-morris
- hsqml-morris
- hsreadability
- hsrs
- hssourceinfo
- hssqlppp-th
- hstar
@ -1759,6 +1792,7 @@ dont-distribute-packages:
- iException
- ige-mac-integration
- igrf
- ihaskell-dataframe
- ihaskell-inline-r
- ihaskell-rlangqq
- ihaskell-symtegration
@ -1942,6 +1976,8 @@ dont-distribute-packages:
- KiCS-debugger
- KiCS-prophecy
- kif-parser
- kind-integer
- kind-rational
- kit
- kmeans-par
- kmeans-vector
@ -2064,6 +2100,7 @@ dont-distribute-packages:
- list-t-attoparsec
- list-t-html-parser
- list-tuple
- list-witnesses
- listenbrainz-client
- liszt
- lit
@ -2224,6 +2261,7 @@ dont-distribute-packages:
- minirotate
- mismi-kernel
- mismi-s3-core
- miso-css
- miss
- miss-porcelain
- missing-py2
@ -2262,6 +2300,12 @@ dont-distribute-packages:
- mongrel2-handler
- monky
- Monocle
- monoidmap
- monoidmap-aeson
- monoidmap-examples
- monoidmap-hashable
- monoidmap-internal
- monoidmap-quickcheck
- monomer
- monomer-flatpak-example
- monomer-hagrid
@ -2350,6 +2394,7 @@ dont-distribute-packages:
- mysql-simple-typed
- myTestlll
- mywatch
- n-tuple
- n2o-web
- NaCl
- nakadi-client
@ -2417,6 +2462,7 @@ dont-distribute-packages:
- nonlinear-optimization-ad
- nonlinear-optimization-backprop
- NoSlow
- nostr
- not-gloss
- not-gloss-examples
- notmuch-web
@ -2483,6 +2529,7 @@ dont-distribute-packages:
- optimal-blocks
- optimusprime
- optparse-enum
- orbits
- orchid
- orchid-demo
- order-maintenance
@ -2561,7 +2608,11 @@ dont-distribute-packages:
- persistent-hssqlppp
- persistent-iproute
- persistent-map
- persistent-pagination
- persistent-postgresql
- persistent-protobuf
- persistent-sql-lifted
- persistent-typed-db
- persona-idp
- peyotls
- peyotls-codec
@ -2621,6 +2672,10 @@ dont-distribute-packages:
- plugins-auto
- pms-application-service
- pms-domain-service
- pms-infra-agent-process
- pms-infra-agent-serial
- pms-infra-agent-server
- pms-infra-agent-socket
- pms-infra-cmdrun
- pms-infra-filesystem
- pms-infra-procspawn
@ -2672,6 +2727,7 @@ dont-distribute-packages:
- poseidon
- poseidon-postgis
- postgresql-common-persistent
- postgresql-migration-persistent
- postgresql-pure
- postgresql-simple-ltree
- postgresql-simple-queue
@ -2778,7 +2834,10 @@ dont-distribute-packages:
- queuelike
- quic-simple
- quick-process
- quickcheck-groups
- quickcheck-monoid-subclasses
- quickcheck-poly
- quickcheck-quid
- quickcheck-regex
- quickcheck-relaxng
- quicktest
@ -2977,6 +3036,7 @@ dont-distribute-packages:
- rv
- s-expression
- S3
- safe-coloured-text-layout-gen
- safe-coupling
- safe-failure-cme
- safe-plugins
@ -3133,6 +3193,16 @@ dont-distribute-packages:
- shibuya-kafka-adapter
- shibuya-metrics
- shibuya-pgmq-adapter
- shikumi
- shikumi-cache
- shikumi-cache-postgres
- shikumi-cache-redis
- shikumi-compile
- shikumi-eval
- shikumi-optimize
- shikumi-tools
- shikumi-trace
- shikumi-trace-otel
- shine-varying
- short-vec
- short-vec-lens
@ -3171,6 +3241,9 @@ dont-distribute-packages:
- SimpleLog
- SimpleServer
- simseq
- singleton-nats
- singletons-base
- singletons-default
- singletons-presburger
- siphon
- siren-json
@ -3481,6 +3554,7 @@ dont-distribute-packages:
- toxcore-c
- toysolver
- tpb
- tpdb
- trace-embrace
- tracing-control
- trajectory
@ -3545,6 +3619,7 @@ dont-distribute-packages:
- type-sub-th
- TypeClass
- typed-encoding-encoding
- typed-fsm
- typed-streams
- typedflow
- TypeIlluminator
@ -3578,6 +3653,8 @@ dont-distribute-packages:
- uniqueness-periods-vector-filters
- uniqueness-periods-vector-general
- uniqueness-periods-vector-properties
- units
- units-defs
- unitym-servant
- unitym-yesod
- universal
@ -3677,6 +3754,7 @@ dont-distribute-packages:
- waldo
- warp-grpc
- warp-quic
- warp-s2n-tls
- warped
- warpZ-tls
- WashNGo
@ -3695,7 +3773,9 @@ dont-distribute-packages:
- WebBits-multiplate
- WebCont
- webcrank-wai
- webdriver
- webdriver-w3c
- webdriver-wrapper
- webify
- webserver
- websnap

View file

@ -38,6 +38,7 @@ self: super: {
Cabal-syntax = doDistribute self.Cabal-syntax_3_16_1_0;
containers = doDistribute self.containers_0_8;
exceptions = doDistribute self.exceptions_0_10_12;
file-io = markBroken self.file-io_0_2_0;
filepath = doDistribute self.filepath_1_5_5_0;
ghc-bignum = null;
ghc-boot = null;
@ -49,12 +50,14 @@ self: super: {
ghc-platform = null;
ghc-prim = null;
ghci = null;
haddock-api = markBroken self.haddock-api_2_29_1; # depends on ghc
haddock-library = markBroken self.haddock-library_1_11_0; # depends on ghc
haskeline = doDistribute self.haskeline_0_8_4_1;
hpc = markBroken self.hpc_0_7_0_2;
integer-gmp = markBroken self.integer-gmp_1_1;
libiserv = null;
mtl = doDistribute self.mtl_2_3_2;
os-string = doDistribute self.os-string_2_0_10;
os-string = doDistribute self.os-string_2_0_11;
parsec = doDistribute self.parsec_3_1_18_0;
pretty = markBroken self.pretty_1_1_3_6;
rts = null;
@ -63,10 +66,10 @@ self: super: {
system-cxx-std-lib = null;
template-haskell = null;
terminfo = doDistribute self.terminfo_0_4_1_7;
time = doDistribute self.time_1_15;
time = doDistribute self.time_1_16;
transformers = doDistribute self.transformers_0_6_3_0;
unix = markBroken self.unix_2_8_8_0;
xhtml = markBroken self.xhtml_3000_4_0_0;
xhtml = markBroken self.xhtml_3000_4_1_0;
# MicroHs replacements for widely used libraries
array = self.array-mhs;

View file

@ -130,6 +130,10 @@ builtins.intersectAttrs super {
# Tests access homeless-shelter.
hie-bios = dontCheck super.hie-bios;
# The test suite depends on an impure cabal-install installation in
# $HOME, which we don't have in our build sandbox.
cabal-install-parsers = dontCheck super.cabal-install-parsers;
###########################################
### END HASKELL-LANGUAGE-SERVER SECTION ###
###########################################
@ -1139,13 +1143,6 @@ builtins.intersectAttrs super {
];
}) super.lsp-test;
lsp_2_8_0_0 = doDistribute (
super.lsp_2_8_0_0.override {
lsp-types = self.lsp-types_2_4_0_0;
}
);
lsp-types_2_4_0_0 = doDistribute super.lsp-types_2_4_0_0;
# the test suite attempts to run the binaries built in this package
# through $PATH but they aren't in $PATH
dhall-lsp-server = dontCheck super.dhall-lsp-server;
@ -1286,6 +1283,8 @@ builtins.intersectAttrs super {
ln -sf git-annex git-remote-tor-annex
PATH+=":$PWD"
checkFlagsArray+=("-J$NIX_BUILD_CORES")
echo checkFlags: $checkFlags ''${checkFlagsArray:+"''${checkFlagsArray[@]}"}
# Doesn't use Cabal's test mechanism
@ -1671,6 +1670,15 @@ builtins.intersectAttrs super {
(disableCabalFlag "icu")
];
# Tests spawn ghc with -fplugin and need this package's in-place package db.
# The trailing colon keeps GHC's default package db in the package path.
# https://hydra.nixos.org/build/329190094
ghc-typelits-natnormalise = overrideCabal (drv: {
preCheck = (drv.preCheck or "") + ''
export NIX_GHC_PACKAGE_PATH_FOR_TEST=$PWD/dist/package.conf.inplace/:$packageConfDir:
'';
}) super.ghc-typelits-natnormalise;
# based on https://github.com/gibiansky/IHaskell/blob/aafeabef786154d81ab7d9d1882bbcd06fc8c6c4/release.nix
ihaskell = overrideCabal (drv: {
# ihaskell's cabal file forces building a shared executable, which we need

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,85 @@
diff -rN -u old-darcs.net/darcs.cabal new-darcs.net/darcs.cabal
--- old-darcs.net/darcs.cabal 2025-09-13 02:45:32.790227974 +0200
+++ new-darcs.net/darcs.cabal 2025-09-13 02:45:32.791227985 +0200
@@ -124,7 +124,7 @@
custom-setup
setup-depends: base >= 4.10 && < 4.21,
- Cabal >= 2.4 && < 3.13,
+ Cabal >= 2.4 && < 3.15,
process >= 1.2.3.0 && < 1.7,
filepath >= 1.4.1 && < 1.5.0.0,
directory >= 1.2.7 && < 1.4
--- old-darcs.net/Setup.hs 2026-06-22 14:55:26.775706597 +0200
+++ new-darcs.net/Setup.hs 2026-06-22 14:56:31.996746207 +0200
--- tmp2.hs 2026-06-22 14:55:26.775706597 +0200
+++ /home/lukas/tmp.hs 2026-06-22 15:25:23.957579360 +0200
--- tmp2.hs 2026-06-22 14:55:26.775706597 +0200
+++ /home/lukas/tmp.hs 2026-06-22 15:28:17.448848236 +0200
@@ -2,6 +2,7 @@
-- portions copyright (c) 2008 David Roundy
-- portions copyright (c) 2007-2009 Judah Jacobson
{-# OPTIONS_GHC -Wall #-}
+{-# LANGUAGE CPP #-}
import Distribution.Simple
( defaultMainWithHooks, UserHooks(..), simpleUserHooks )
import Distribution.PackageDescription ( PackageDescription )
@@ -25,8 +26,17 @@
import System.IO ( openFile, IOMode(..) )
import System.Process (callProcess, runProcess)
import Data.List( isInfixOf )
+#if MIN_VERSION_Cabal_syntax(3,14,0)
+import Distribution.Utils.Path ( (</>), interpretSymbolicPathCWD, makeRelativePathEx )
+#else
import System.FilePath ( (</>) )
+-- Shims so we can use the Cabal >= 3.14 API
+interpretSymbolicPathCWD, makeRelativePathEx :: FilePath -> FilePath
+interpretSymbolicPathCWD = id
+makeRelativePathEx = id
+#endif
+
import qualified Control.Exception as Exception
catchAny :: IO a -> (Exception.SomeException -> IO a) -> IO a
@@ -73,22 +83,26 @@
buildManpage :: LocalBuildInfo -> IO ()
buildManpage lbi = do
- have_darcs_exe_dir <- doesDirectoryExist (buildDir lbi </> "darcs")
+ have_darcs_exe_dir <- doesDirectoryExist
+ $ interpretSymbolicPathCWD (buildDir lbi </> makeRelativePathEx "darcs")
when have_darcs_exe_dir $ do
- let darcs = buildDir lbi </> "darcs/darcs"
- manpage = buildDir lbi </> "darcs/darcs.1"
+ let darcs = interpretSymbolicPathCWD
+ $ buildDir lbi </> makeRelativePathEx "darcs/darcs"
+ manpage = interpretSymbolicPathCWD
+ $ buildDir lbi </> makeRelativePathEx "darcs/darcs.1"
manpageHandle <- openFile manpage WriteMode
void $ runProcess darcs ["help","manpage"]
Nothing Nothing Nothing (Just manpageHandle) Nothing
installManpage :: PackageDescription -> LocalBuildInfo -> Verbosity -> CopyDest -> IO ()
installManpage pkg lbi verbosity copy = do
- have_manpage <- doesFileExist (buildDir lbi </> "darcs" </> "darcs.1")
+ have_manpage <- doesFileExist
+ $ interpretSymbolicPathCWD (buildDir lbi </> makeRelativePathEx "darcs/darcs.1")
when have_manpage $
copyFiles
verbosity
(mandir (absoluteInstallDirs pkg lbi copy) </> "man1")
- [(buildDir lbi </> "darcs", "darcs.1")]
+ [(interpretSymbolicPathCWD (buildDir lbi </> makeRelativePathEx "darcs"), "darcs.1")]
-- ---------------------------------------------------------------------
-- version module
@@ -124,7 +138,7 @@
generateVersionModule :: Verbosity -> LocalBuildInfo -> String -> String -> IO ()
generateVersionModule verbosity lbi version state = do
- let dir = autogenPackageModulesDir lbi
+ let dir = interpretSymbolicPathCWD (autogenPackageModulesDir lbi)
createDirectoryIfMissingVerbose verbosity True dir
ctx <- context verbosity
hash <- weakhash verbosity

View file

@ -0,0 +1,29 @@
--- old-darcs.net/darcs.cabal 1970-01-01 01:00:01.000000000 +0100
+++ new-darcs.net/darcs.cabal 2026-06-22 16:10:41.137461887 +0200
@@ -416,7 +416,7 @@
build-depends: unix >= 2.7.1.0 && < 2.9,
directory >= 1.2.7 && < 1.4
- build-depends: base >= 4.10 && < 4.21,
+ build-depends: base >= 4.10 && < 4.22,
safe >= 0.3.20 && < 0.4,
stm >= 2.1 && < 2.6,
binary >= 0.5 && < 0.11,
@@ -436,7 +436,7 @@
base16-bytestring >= 1.0 && < 1.1,
utf8-string >= 1 && < 1.1,
vector >= 0.11 && < 0.14,
- tar >= 0.5 && < 0.7,
+ tar >= 0.5 && < 0.8,
data-ordlist == 0.4.*
if impl(ghc < 8.10)
@@ -462,7 +462,7 @@
network >= 2.6 && < 3.3,
conduit >= 1.3.0 && < 1.4,
http-conduit >= 2.3 && < 2.4,
- http-types >= 0.12.1 && < 0.12.5,
+ http-types >= 0.12.1 && < 0.13,
exceptions >= 0.6 && < 0.11,
terminal-size >= 0.3.4 && < 0.4

View file

@ -15,8 +15,8 @@ mkDerivation {
version = "0.19.0.0";
src = fetchgit {
url = "https://github.com/hercules-ci/optparse-applicative.git";
sha256 = "068rsq9j0afrywbcqf6vg4ivfxbb68ab7f0lvg1na81mfn7sfakk";
rev = "b55bb38a2aea0cf776aec707cdce7c7418146077";
sha256 = "sha256-tO0V+TKS+ng6OJ8BztKwmV0tV4TnUXOD01ocTyO0sq0=";
rev = "0.19.0.0-fork-1";
fetchSubmodules = true;
};
libraryHaskellDepends = [

View file

@ -3708,14 +3708,13 @@ with pkgs;
haskellPackages = recurseIntoAttrs (
# Prefer native-bignum to avoid linking issues with gmp;
# GHC 9.10 doesn't work too well with iserv-proxy.
if stdenv.hostPlatform.isStatic then
haskell.packages.native-bignum.ghc912
# JS backend can't use gmp
else if stdenv.hostPlatform.isGhcjs then
haskell.packages.native-bignum.ghc910
haskell.packages.native-bignum.ghc912
else
haskell.packages.ghc910
haskell.packages.ghc912
);
# haskellPackages.ghc is build->host (it exposes the compiler used to build the
@ -3729,14 +3728,13 @@ with pkgs;
ghc =
targetPackages.haskellPackages.ghc or (
# Prefer native-bignum to avoid linking issues with gmp;
# GHC 9.10 doesn't work too well with iserv-proxy.
if stdenv.hostPlatform.isStatic then
haskell.compiler.native-bignum.ghc912
# JS backend can't use GMP
else if stdenv.targetPlatform.isGhcjs then
haskell.compiler.native-bignum.ghc910
haskell.compiler.native-bignum.ghc912
else
haskell.compiler.ghc910
haskell.compiler.ghc912
);
# TODO(@NixOS/haskell): deprecate this alias?

View file

@ -66,7 +66,7 @@ let
ghc96 = sets.ghc967;
ghc98 = sets.ghc984;
ghc910 = sets.ghc9103;
ghc912 = sets.ghc9123;
ghc912 = sets.ghc9125;
ghc914 = sets.ghc9141;
microhs_0_15 = sets.microhs_0_15_4_0;
@ -177,6 +177,14 @@ in
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
inherit buildTargetLlvmPackages llvmPackages;
};
ghc9125 = callPackage ../development/compilers/ghc/9.12.5.nix {
bootPkgs =
# No suitable bindist packaged yet
bb.packages.ghc9103;
inherit (buildPackages.python3Packages) sphinx;
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
inherit buildTargetLlvmPackages llvmPackages;
};
ghc9141 = callPackage ../development/compilers/ghc/9.14.1.nix {
bootPkgs =
# No suitable bindist packaged yet
@ -284,6 +292,11 @@ in
ghc = bh.compiler.ghc9124;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.12.x.nix { };
};
ghc9125 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc9125;
ghc = bh.compiler.ghc9125;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.12.x.nix { };
};
ghc9141 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc9141;
ghc = bh.compiler.ghc9141;

View file

@ -67,7 +67,7 @@ let
ghc967
ghc984
ghc9103
ghc9123
ghc9125
];
# packagePlatforms applied to `haskell.packages.*`
@ -529,7 +529,7 @@ let
] released;
Cabal_3_10_3_0 = lib.subtractLists [
# time < 1.13 conflicts with time == 1.14.*
compilerNames.ghc9123
compilerNames.ghc9125
] released;
Cabal_3_12_1_0 = released;
Cabal_3_14_2_0 = released;
@ -537,14 +537,24 @@ let
cabal2nix = released;
cabal2nix-unstable = released;
funcmp = released;
# haddock-{api,library} are core packages as of GHC >= 9.12
haddock-api = [
compilerNames.ghc94
compilerNames.ghc96
# No version compatible with 9.8 nor 9.10 released to Hackage
];
haddock-library = [
compilerNames.ghc94
compilerNames.ghc96
compilerNames.ghc98
compilerNames.ghc910
];
haskell-debugger = [
compilerNames.ghc9141
];
haskell-language-server = released;
hoogle = released;
hlint = lib.subtractLists [
compilerNames.ghc9123
] released;
hlint = released;
hpack = released;
hsdns = released;
iserv-proxy = released;
@ -555,12 +565,8 @@ let
ghc-lib = released;
ghc-lib-parser = released;
ghc-lib-parser-ex = released;
ghc-source-gen = lib.subtractLists [
compilerNames.ghc9123
] released;
ghc-tags = lib.subtractLists [
compilerNames.ghc9123
] released;
ghc-source-gen = released;
ghc-tags = released;
hashable = released;
primitive = released;
scrod = [
@ -571,9 +577,7 @@ let
# requires unix >= 2.8.1.0 which implies GHC >= 9.6 for us.
compilerNames.ghc967
];
weeder = lib.subtractLists [
compilerNames.ghc9123
] released;
weeder = released;
# MicroHs core packages
ghc-compat = [