!RbXGJhHMsnQcNIDFWN:nixos.org

Haskell in Nixpkgs/NixOS

719 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.org142 Servers

Load older messages


SenderMessageTime
12 Sep 2025
@oak:universumi.fioak 🏳️‍🌈♥️ Actually I think it happens while regenerate-hackage-packages.sh calls regenerate-transitive-broken-packages.sh 13:14:27
@oak:universumi.fioak 🏳️‍🌈♥️ https://github.com/NixOS/nixpkgs/issues/400784 I see there's this issue which was closed by sterni last week, I was able to reproduce it :D I have nix (Nix) 2.28.4 14:08:19
@oak:universumi.fioak 🏳️‍🌈♥️ * https://github.com/NixOS/nixpkgs/issues/400784 I see there's this issue which was opened by sterni which was closed last week, I was able to reproduce it :D I have nix (Nix) 2.28.4. I'm trying to update to 2.28.5 which seems to be the latest on stable 14:11:55
@oak:universumi.fioak 🏳️‍🌈♥️Seems to happen also with Nix version 2.30.2 and 2.30.3, I first saw this on my macOS system and then I switched to NixOS to see it also happening there14:24:34
@jean-paul.:matrix.orgjean-paul.

Anyone recognize this?

network>   tests/Network/SocketSpec.hs:111:9:
network>   1) Network.Socket.getAddrInfo works for IPv6 address
network>        uncaught exception: IOException of type NoSuchThing
network>        Network.Socket.getAddrInfo (called with preferred socket type/protocol: AddrInfo {addrFlags = [AI_NUMERICHOST,AI_ADDRCONFIG], addrFamily = AF_UNSPEC, addrSocketType = NoSocketType, addrProtocol = 0, addrAddress = 0.0.0.0:0, addrCanonName = Nothing}, host name: "2001:0db8:85a3:0000:0000:8a2e:0370:7334", service name: Nothing): does not exist (Address family for hostname not supported)
network>   To rerun use: --match "/Network.Socket/getAddrInfo/works for IPv6 address/" --seed 102858746
network>   tests/Network/Socket/ByteStringSpec.hs:268:9:
network>   2) Network.Socket.ByteString.recvMsg receives control messages for IPv6
network>        uncaught exception: IOException of type UnsupportedOperation
network>        Network.Socket.bind: unsupported operation (Cannot assign requested address)
network>   To rerun use: --match "/Network.Socket.ByteString/recvMsg/receives control messages for IPv6/" --seed 102858746

From 092c565d333be1e17b4779ac22104338941d913f (~5 days ago)

20:37:13
@sternenseemann:systemli.orgsterni (he/him)darwin?21:04:11
@jean-paul.:matrix.orgjean-paul.nope, Linux - but CircleCI21:20:02
@alex:tunstall.xyzAlex
In reply to @jean-paul.:matrix.org
nope, Linux - but CircleCI

Just guessing, but is it because the kernel has IPv6 disabled via sysctl or perhaps even via kconfig?

Nix builds are sensitive to the host kernel.

22:17:23
13 Sep 2025
@oak:universumi.fioak 🏳️‍🌈♥️ changed their profile picture.09:46:10
@teoc:matrix.orgTeo (he/him)I know the nixpkgs build of GHC edits the settings file, so I wanted to give y'all a heads up that the ghc-toolchain line of work is replacing the settings file, so it's likely that you'll need to make some changes here. See: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/1450013:48:05
@teoc:matrix.orgTeo (he/him)* I know the nixpkgs build of GHC edits the settings file, so I wanted to give y'all a heads up that the ghc-toolchain line of work is replacing the settings file, so it's likely that you'll need to make some changes here. See: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/1455413:48:56
@jean-paul.:matrix.orgjean-paul.Seems likely I guess. I don't know how to learn about CircleCI's kernel configuration. Annoyingly, zlib test suite also fails. Seems like that should be less sensitive to the kernel but 🤷14:45:54
@jean-paul.:matrix.orgjean-paul.I assume more folks than me want to use Nix on CircleCI14:46:10
@sternenseemann:systemli.orgsterni (he/him)Now I'm scared about arithmetic regressions in 9.10.3… https://github.com/Bodigrim/arithmoi/issues/22314:58:30
@sternenseemann:systemli.orgsterni (he/him)so far nothings else like that happened, though14:59:08
@validitymaiden:matrix.orgvaliditymaiden joined the room.17:21:40
@validitymaiden:matrix.orgvaliditymaiden set a profile picture.17:31:40
@validitymaiden:matrix.orgvaliditymaiden changed their profile picture.17:32:21
@sternenseemann:systemli.orgsterni (he/him)was nothing apparently22:07:02
14 Sep 2025
@ret2pop:matrix.nullring.xyzret2pop ⚡️ joined the room.03:18:20
@emma:rory.gay@emma:rory.gay joined the room.08:39:56
15 Sep 2025
@bglgwyng:matrix.orgbglgwyng Can we override argument passed to cabal2nix result with haskellPackages.override?
For example, if I want to replace native zlib used by haskell package zlib, I can use overrideCabal to modify librarySystemDepends.
However, is it possible to just override the value passed to cabal2nix, which is a lambda with arguments { mkDervation, base, ..., zlib}?
03:38:50
@alex:tunstall.xyzAlex
In reply to @bglgwyng:matrix.org
Can we override argument passed to cabal2nix result with haskellPackages.override?
For example, if I want to replace native zlib used by haskell package zlib, I can use overrideCabal to modify librarySystemDepends.
However, is it possible to just override the value passed to cabal2nix, which is a lambda with arguments { mkDervation, base, ..., zlib}?
cabal2nix produces a Nix script. If you mean overriding what gets passed to that script when you use callCabal2nix or callPackage then the answer is yes: put it in the attrset argument.
03:44:27
@alex:tunstall.xyzAlex overrideCabal also works as with any other Haskell package because cabal2nix uses the same builder. 03:46:00
@bglgwyng:matrix.orgbglgwyng Yes. but haskellPackages.override { overrides = self: super: zlib = super.zlib.override { zlib = my-zlib}} doesn't work, since super.zlib is not the lambda argument, but the result of callPackages. So it's late. 03:54:48
@bglgwyng:matrix.orgbglgwyng From my understanding, when we use nixpkgs haskellPackages 03:55:27
@bglgwyng:matrix.orgbglgwyng * From my understanding, when we use nixpkgs's haskellPackages, we usually deal with the result of callPackage cabal2nix-lambda rather than cabal2nix-lambda itself? 03:56:00
@bglgwyng:matrix.orgbglgwyng
{
  "zlib" = callPackage
    ({ mkDerivation, base, bytestring, QuickCheck, tasty
     , tasty-quickcheck, zlib
     }:
     mkDerivation {
       pname = "zlib";
       version = "0.6.3.0";
       sha256 = "1nh4xsm3kgsg76jmkcphvy7hhslg9hx1s75mpsskhi2ksjd9ialy";
       revision = "5";
       editedCabalFile = "0mj3f7ql54p0pfa5a6q4xv4ci8xf00616ls0nyadpmlqbb4qilwn";
       libraryHaskellDepends = [ base bytestring ];
       librarySystemDepends = [ zlib ];
       testHaskellDepends = [
         base bytestring QuickCheck tasty tasty-quickcheck
       ];
       description = "Compression and decompression in the gzip and zlib formats";
       license = lib.licenses.bsd3;
     }) {inherit (pkgs) zlib;};
}

this is from hackage-pacakges.nix, and I'm not sure if I have any chance to override zlib when callPackage is already called.

03:57:11
@alex:tunstall.xyzAlex

So you want to be able to e.g. add extra arguments to the cabal2nix command?

IIRC that's possible with callCabal2nix and obviously if you implement the command yourself. Overriding is trickier but should still be possible through overriding callCabal2nix (this isn't pretty).

I'm having trouble understanding why overriding the result is insufficient in your case.

04:02:48
@bglgwyng:matrix.orgbglgwyng Hmm, I tried such a thing splitmix = super.splitmix.override { testu01 = null; }; but it didn't work. 04:06:32

Show newer messages


Back to Room ListRoom Version: 6