!RbXGJhHMsnQcNIDFWN:nixos.org

Haskell in Nixpkgs/NixOS

721 Members
For discussions and questions about Haskell with Nix, cabal2nix and haskellPackages in nixpkgs | Current Docs: https://haskell4nix.readthedocs.io/ | More Nix: #community:nixos.org | More Haskell: #haskell-space:matrix.org144 Servers

Load older messages


SenderMessageTime
13 Jan 2025
@kspatlas:tchncs.deKSP Atlas joined the room.09:55:20
@collinarnett:matrix.orgCollin ArnettRedacted or Malformed Event11:11:03
@alexfmpe:matrix.orgalexfmpeI had something similar looking once but for a symbol from a dependency. Whatever the cause was, it got fixed by overriding that dep to use cabal 3.6+15:47:50
@alexfmpe:matrix.orgalexfmpeBut I was using an older nixpkgs, it wasn't happening on newer ones15:48:15
@alexfmpe:matrix.orgalexfmpehmm do you maybe have some conditionals in .cabal that look relevant? cabal2nix isn't great at handling them15:49:14
@alexfmpe:matrix.orgalexfmpe huuh how is it that nix-build -A haskell.packages.ghc910.aeson-gadt-th works even though https://hackage.haskell.org/package/aeson-gadt-th has base <4.20 ? 23:21:08
@maralorn:maralorn.demaralornNormally jailbreak23:21:39
@maralorn:maralorn.demaralornI guess you know that 😃23:22:14
@alexfmpe:matrix.orgalexfmpeah derp it was hidden on configuration.nix-nix23:22:14
@alexfmpe:matrix.orgalexfmpe* ah derp it was hidden on configuration-nix.nix23:22:22
14 Jan 2025
@sternenseemann:systemli.orgsterni (he/him)

Cabal 3.14.1.1 breaks GHC 9.12 bootstrap and it's kind of interesting how this happened

  1. So to begin with GHC 9.12 arbitrarily requests Cabal 3.14 for hadrian because they need it for some feature. Since no previous GHC actually ships this version of Cabal, you can't use the core package.
  2. Cabal 3.14.1.1 newly introduces a constraint on unix that is supposed to prevent building it with a buggy version of unix (a bug that apparently only affects 32bit platforms). I must say that these is a questionable decision and seems like abusing the constraint system. It's also strange that even though the bug only affects certain platforms, the constraint isn't conditional. (https://github.com/haskell/unix/pull/318)
  3. Since GHC 9.10 which we use for bootstrapping ships an affected version of Unix we get a violated constraint.

Which goes to show that making your bootstrapping process more complex, things will go wrong as soon as someone steps just a tiny bit away from the CI tested bootstrap plans that pin every dependency.

13:13:17
@maralorn:maralorn.demaralornPhew13:15:20
@maralorn:maralorn.demaralorn sterni: Can we override Cabal and unix? 13:17:13
@sternenseemann:systemli.orgsterni (he/him)yes, but it's a massive headache becasue unix is also used by other libraries13:17:32
@sternenseemann:systemli.orgsterni (he/him)The patch for unix is trivial we can probably just pick it onto every GHC we ship.13:17:55
@maralorn:maralorn.demaralornSounds good13:18:16
@sternenseemann:systemli.orgsterni (he/him)

The question is whether we even need it

On that platform (as well as any other glibc/musl platform), however, CTimeVal isn't used for anything at all because there are #ifdefs that prefer using utimensat which takes CTimeSpec instead. This fix is therefore quite theoretical, as it is unknown whether there are any platforms actually affected.

13:18:18
@maralorn:maralorn.demaralornStill annoying13:18:20
@maralorn:maralorn.demaralorn😆13:18:33
@sternenseemann:systemli.orgsterni (he/him)It seems very unnecessary, yes.13:18:34
@maralorn:maralorn.demaralornI wonder which bug this is supposed to prevent.13:23:03
@maralorn:maralorn.demaralornThat is a super cautious bound bump.13:23:36
@sternenseemann:systemli.orgsterni (he/him)it broke ghcup on debian13:23:52
@maralorn:maralorn.demaralornOh13:24:06
@sternenseemann:systemli.orgsterni (he/him)but it seems a little extreme still13:24:20
@sternenseemann:systemli.orgsterni (he/him)our i686-linux at least still uses 32bit time_t etc.13:24:47
@sternenseemann:systemli.orgsterni (he/him)going to make the patch PR at some later point13:25:43
@sternenseemann:systemli.orgsterni (he/him)also uh https://github.com/haskell/ghcup-hs/issues/1107#issuecomment-257133075813:26:24
@sternenseemann:systemli.orgsterni (he/him)?!?!!!?13:26:27
@alexfmpe:matrix.orgalexfmpeWhen I am king, everyone not using nix will pay an extra tax 13:33:15

Show newer messages


Back to Room ListRoom Version: 6