!RbXGJhHMsnQcNIDFWN:nixos.org

Haskell in Nixpkgs/NixOS

681 Members
For discussions and questions about Haskell with Nix, cabal2nix and haskellPackages in nixpkgs | Current Docs: https://nixos.org/manual/nixpkgs/unstable/#haskell | Current PR: https://github.com/nixos/nixpkgs/pulls?q=is%3Apr+is%3Aopen+head%3Ahaskell-updates | Maintainer Docs: https://github.com/NixOS/nixpkgs/blob/haskell-updates/pkgs/development/haskell-modules/HACKING.md | More Nix: #community:nixos.org | More Haskell: #haskell-space:matrix.org | Merger Schedule: https://cloud.maralorn.de/apps/calendar/p/H6migHmKX7xHoTFa/dayGridMonth/now | Join #haskell.nix:libera.chat for question about the alternative haskell.nix infrastructure133 Servers

You have reached the beginning of time (for this room).


SenderMessageTime
15 Sep 2025
@emilazy:matrix.orgemilyimplicit parameters don't screw with the semantics of normal type classes13:37:03
@mangoiv.:matrix.orgMangoIVyeah but they're special cased in all kinds of ways 13:37:24
@emilazy:matrix.orgemilyis there an obstacle to still using Hadrian to build one stage but then layering those with Nix?13:37:39
@emilazy:matrix.orgemilyif that could solve cross then it feels like an easier intermediate step13:37:51
@mangoiv.:matrix.orgMangoIV you can just --freeze-stagen 13:38:18
@sternenseemann:systemli.orgsterni more packages are just normal cabal packages in tree now, something that John Ericson has worked on. There is an effort to utilize this for building GHC https://github.com/stable-haskell/ghc/pull/89, though they are using cabal.project files instead of Nix which apparently also causes its own issues. 13:38:34
@emilazy:matrix.orgemilywell I'm guessing it's tricky in some way or it'd have already been done13:38:40
@teoc:matrix.orgteo (they/he) I don't think so! I think that would be a great way to get started. Build stage1 with Hadrian and then let nix build stage2. Or even easier, build stage2 with hadrian and then build a stage3 with nix 13:38:43
@mangoiv.:matrix.orgMangoIVwhat's the point of building GHC with cabal, btw? there are some people that want that 13:39:03
@emilazy:matrix.orgemilyI was thinking build stage2 and stage3 with Hadrian but just, separately13:39:13
@teoc:matrix.orgteo (they/he)There is a CI test that builds a stage3 GHC with cabal-install but it has been broken for silly reasons for ages on the GHC gitlab13:39:28
@emilazy:matrix.orgemilybut I'm guessing it's not wired up for this13:39:29
@teoc:matrix.orgteo (they/he) yeah that would also be good 13:39:42
@emilazy:matrix.orgemilyer sorry I meant stage1 and stage213:39:45
@emilazy:matrix.orgemilythe question is whether that would work for a cross-compiled GHC13:40:05
@emilazy:matrix.orgemily(again as distinct from a cross-compiling GHC)13:40:16
@teoc:matrix.orgteo (they/he) I think the main advantages to Hadrian are to do with devex like nice recomp support, etc. And when you are a distributor all you are left with is complexity and cost 13:40:40
@alex:tunstall.xyzAlex
In reply to @emilazy:matrix.org
we talked about this recently and I suggested a package set would be interesting for exploring future GHC bootstrap

How should I structure this btw?

Should Nixpkgs expose:

  • Any Hugs-interpreted boot tools (probably not, likely fragile)?
  • Stage 1 compiler built via Hugs (should be as good as a stage 2)?
13:40:43
@emilazy:matrix.orgemilyI didn't realize it was that close to "just" being cabal-installable13:40:46
@emilazy:matrix.orgemilyI assumed you'd need a lot more glue. cool13:40:52
@mangoiv.:matrix.orgMangoIVbut it would for sure require support of cabal upstream, right? I don't think that that's a good idea at all tbh. 13:41:25
@teoc:matrix.orgteo (they/he) This didn't actually achieve it but we had this MR ages ago: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/5965 13:42:24

Show newer messages


Back to Room ListRoom Version: 6