Haskell in Nixpkgs/NixOS | 728 Members | |
| For discussions and questions about Haskell with Nix, cabal2nix and haskellPackages in nixpkgs | Current Docs: https://haskell4nix.readthedocs.io/ | 147 Servers |
| Sender | Message | Time |
|---|---|---|
| 28 Jan 2026 | ||
| Hey guys. We're looking at trying to include the cardano-node in nixpkgs. I'm thinking of ways to do this and obviously since it involves CHaP and also significantly deviates from stackage just on the hackage dependencies I'm wondering if you have any thoughts on what you would accept as a way to this. | 11:35:25 | |
| * Hey guys. We're looking at trying to include the cardano-node in nixpkgs. I'm thinking of ways to do this and obviously since it involves CHaP and also significantly deviates from stackage just on the hackage dependencies I'm wondering if you have any thoughts on what you would accept as a way to do this. | 11:35:37 | |
| What’s CHaP? | 11:39:30 | |
| I am pretty sure there are examples on how to package non-hackage packages in nixpkgs. | 11:40:13 | |
| Including some with a non-neglectable number of overrides. | 11:40:47 | |
| Actually I think even cachix does it. | 11:41:01 | |
| 11:48:38 | ||
| https://github.com/IntersectMBO/cardano-haskell-packages | 11:49:23 | |
| We could be looking at more than 50% of the build plan would be custom, so 300 or more packages. | 11:52:13 | |
| Oooh. | 11:54:09 | |
| I mean I wonder how large that would be in comparison to other large derivation packages in nixpkgs. Like those with a checked in npm or cargo lock. | 11:55:36 | |
| It would be more or less exactly the same size as the equivalent horizon expression here. https://gitlab.horizon-haskell.net/package-sets/horizon-cardano
| 11:57:33 | |
| If you can encapsulate it cleanly (i.e. without interfering with the rest of haskellPackages) and the size is manageable it seems fine-ish. Of course there is then also the matter of maintainership. It mustn’t become a burden on the haskell team. | 11:57:39 | |
That would be one option to just upstream the whole horizon expression under haskellPackages.horizon.cardano, if that's something nixpkgs would accept. | 11:58:10 | |
| Would be much easier than trying to solve which parts of nixpkgs could be reused. | 11:58:36 | |
| * It would be more or less exactly the same size as the equivalent horizon expression here. https://gitlab.horizon-haskell.net/package-sets/horizon-cardano
| 11:58:56 | |
| I am sceptical. Also curious what the others think. | 12:01:00 | |
| Maybe we can have this discussion more organized on a GitHub issue? | 12:01:32 | |
| It would basically be a wholly independent package set. It might reuse the ghc definition but nothing else. | 12:01:42 | |
| Sure. I'll write it up. | 12:01:46 | |
| What is the goal? Are there existing dependents that would be desirable to package for users? | 12:03:40 | |
| End-users, not developer-users. | 12:03:54 | |
The goal is to package cardano-node for end users yes, not developers. But maintaining the build plan for cardano-node manually in nixpkgswith overrides and whatnot would be infeasible. | 12:05:21 | |
Occasionally dropping a new horizon expression as a separate package set expression into nixpkgs, one that didn't interfere with haskellPackages proper, would be quite easy for me to automate, it just depends whether that's OK or not. | 12:08:34 | |
| 29 Jan 2026 | ||
| when using
however there's a few odd ones where
unsurprisingly, these all fail with | 01:25:46 | |
but where are these random .dyn_o coming from? | 01:26:03 | |
| we're passing both
| 01:27:58 | |
| these / language-nix got pretty much the same configureFlags, save for the package-db | 01:39:34 | |
| 01:39:37 | |
| curiously I can trigger the same by enabling haddocks for pkgsStatic, but for a different set of packages | 02:02:00 | |