| 12 Sep 2025 |
bglgwyng | What is the proper way to override the package that cabal depends on? | 07:32:54 |
bglgwyng | Hmm it's not relavent to the override of hackage-security. Just putting hackage-security into build-depends in cabal cauase the same problem | 08:02:31 |
maralorn | Oh, that’s a ghastly one. If you have any chance: Try to just not build cabal-install from your override package set. | 08:21:17 |
maralorn | The problem is that we already apply complicated overrides to cabal-install inside of nixpkgs to get it to build in the first place. And how those overrides then all interact is kinda black magic. | 08:23:27 |
bglgwyng | How can it be achievable? | 08:24:07 |
maralorn | Use pkgs.cabal-install? | 08:24:22 |
maralorn | Or does the project you are trying to build depend on cabal-install? | 08:24:53 |
bglgwyng | yes | 08:25:07 |
bglgwyng | Do you mean that it's possible to override 'cabal2nix' value with caba-insstall, which is used to build the haskell package, | 08:25:51 |
bglgwyng | * Do you mean that it's possible to override 'cabal2nix' value with caba-insstall, which is used to build the haskell package? | 08:25:54 |
maralorn | Well, no. If your project actually needs cabal-install as a Haskell dependency (not just as a build tool), then you will have to figure out how to massage the override in a way that cabal-install works. | 08:27:27 |
maralorn | If however you only need cabal-install as a tool dependency then you should really just use the cached pkgs.cabal-install without any overrides. | 08:28:14 |
bglgwyng | I need cabal-install as dependency | 08:28:39 |
maralorn | If you have to do that then you need to understand why configure is pulling two different version of hackage-security in. | 08:29:11 |
bglgwyng | Yes I agree | 08:29:54 |
maralorn | There is one other possibility. 1. Only override hackage-security on your project not on the whole dependency closure. 2. Enable "allowInconsistentDependencies". 3. Hope that the types from the two different hackage-security versions never meet during compilation.
However last time I tried something like this I failed. So it’s probably not a good idea. | 08:31:25 |