!RbXGJhHMsnQcNIDFWN:nixos.org

Haskell in Nixpkgs/NixOS

746 Members
For discussions and questions about Haskell with Nix, cabal2nix and haskellPackages in nixpkgs | Current Docs: https://haskell4nix.readthedocs.io/148 Servers

Load older messages


SenderMessageTime
2 May 2026
@tks_123:matrix.orgtks_123Why?16:55:49
@tks_123:matrix.orgtks_123I thought... the haskellPkgs in Nix was supposed to tell cabal about all known Haskell packages?16:56:16
@tks_123:matrix.orgtks_123So why was a cabal.project needed to make this work?16:56:23
@ijouw:matrix.orgijouwI would assume you need two flakes if you want to package them individually, but i am neither very proficient in flakes nor nix so i might be mistaken.17:54:03
@alexfmpe:matrix.orgalexfmpeI think shellFor won't add `packages` to `ghc-pkg list` since you're asking for a shell for iterating on them19:18:29
@alexfmpe:matrix.orgalexfmpeSo you need cabal.project to tell cabal about the other project19:18:56
@alexfmpe:matrix.orgalexfmpeYou could also just have the library and the executable in the same package and not worry about this19:19:35
3 May 2026
@maralorn:maralorn.demaralornAlso if nix would compile your library and provide it to the other package it would be that snapshot and not live.07:17:57
@tks_123:matrix.orgtks_123Great insights, thank you07:18:57
@tks_123:matrix.orgtks_123 So technically cabal.project is "orthogonal" (unrelated, separate) concept entirely from what packages haskellPkgs will end up available for Haskell? 07:20:07
@tks_123:matrix.orgtks_123I'm not sure where I got the idea those were somehow related07:20:28
@andremesquitap:matrix.organdremesquitap joined the room.22:52:58
4 May 2026
@srk:matrix.distrap.orgsrk ⚡️what's the deal with staging being stuck in staging for weeks? branchoff?05:25:51
@srk:matrix.distrap.orgsrk ⚡️ye https://github.com/NixOS/nixpkgs/issues/50339105:28:52
@innocentzer0:cyberia.clubinnocentzer0 joined the room.12:44:17
5 May 2026
@root:sandwitch.devSand Witch changed their profile picture.18:28:45
@innocentzer0:cyberia.clubinnocentzer0 set a profile picture.20:34:46
@alexfmpe:matrix.orgalexfmpehuh, our friends down the aisle seem to be doing just this21:06:43
@alexfmpe:matrix.orgalexfmpehttps://github.com/input-output-hk/haskell.nix/blob/19b9a5110faef1e11ea1cf723af122a532f7ef10/docs/dev/builder-v2.md21:06:47
6 May 2026
@yoganshsharma:matrix.orgYogansh set a profile picture.03:32:52
@artem.types:matrix.orgArtem so, the doctest package now provides a separate executable cabal-doctest which enjoys cabal integration via the external command interface: if you have cabal-doctest in your PATH, you can run cabal doctest, which is nice. We rely on it in Cabal development. The issue is that the cabal-doctest executable is gated by a flag. So, to install it with cabal we do something like this: cabal install doctest --flag cabal-doctest. Is there an easy way to add such a flag-gated executable in my nix-shell? For sure, a simple haskellPackagges.doctest won't cut it... 13:46:41
@artem.types:matrix.orgArtem * so, the doctest package now provides a separate executable cabal-doctest which enjoys cabal integration via the external command interface: if you have cabal-doctest in your PATH, you can run cabal doctest, which is nice. We rely on it in Cabal development. The issue is that the cabal-doctest executable is gated by a flag. So, to install it with cabal we do something like this: cabal install doctest --flag cabal-doctest. Is there an easy way to add such a flag-gated executable in my nix-shell? For sure, a simple haskellPackages.doctest won't cut it... 13:47:14
@srk:matrix.distrap.orgsrk ⚡️I have a PR fixing the sublib issue here, feedback welcome https://github.com/haskell/cabal/pull/1178814:03:31
@srk:matrix.distrap.orgsrk ⚡️* I have a PR fixing the sublib issue, feedback welcome https://github.com/haskell/cabal/pull/1178814:04:55
@alexfmpe:matrix.orgalexfmpe
In reply to @artem.types:matrix.org
so, the doctest package now provides a separate executable cabal-doctest which enjoys cabal integration via the external command interface: if you have cabal-doctest in your PATH, you can run cabal doctest, which is nice. We rely on it in Cabal development. The issue is that the cabal-doctest executable is gated by a flag. So, to install it with cabal we do something like this: cabal install doctest --flag cabal-doctest. Is there an easy way to add such a flag-gated executable in my nix-shell? For sure, a simple haskellPackages.doctest won't cut it...
enableCabalFlag "cabal-doctest" super.doctest
18:09:52
@alexfmpe:matrix.orgalexfmpeSomething like that, see configuration-nix.nix or so for examples18:10:10
@artem.types:matrix.orgArtemnice, will try, thank you18:10:28
@artem.types:matrix.orgArtem alexfmpe: in a standalone shell.nix, how do i get to that haskellLib that seems to define enableCabalFlag? 18:18:37
@artem.types:matrix.orgArtem
  doctest = pkgs.haskell.lib.enableCabalFlag "cabal-doctest" super.doctest;

seems to go further but fails with "error: expected a set but found a string: "cabal-doctest"" while the examples in haskellPackages do use strings there (e.g. https://github.com/NixOS/nixpkgs/blob/1345ea31ceb06f9f74417083b2ec2d4e7d911e0b/pkgs/development/haskell-modules/configuration-nix.nix#L926)

18:22:01
@alexfmpe:matrix.orgalexfmpe try flipping the arguments, that set is likely supposed to be super.doctest 18:35:57

Show newer messages


Back to Room ListRoom Version: 6