!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.org143 Servers

Load older messages


SenderMessageTime
25 Aug 2025
@maralorn:maralorn.demaralornYeah. I would expect this to just work(TM) as a default.nix with nix-build.15:52:52
@sternenseemann:systemli.orgsterni (he/him) Pierre Thierry: As I've outlined in my response in the thread. developPackage behaves differently based on whether IN_NIX_SHELL is set. direnv presumably inherits this variable when exporting the variables set in the shell environment. nix-build does not unset this environment variable. If you want to continue using developPackage, I'd recommend manually unsetting IN_NIX_SHELL after the use nix directive in .envrc 16:09:49
@sternenseemann:systemli.orgsterni (he/him) This is more or less why I wouldn't recommend using developPackage anymore. It tries to do the right thing magically, but is not very flexible. Also nowadays, code relying on IN_NIX_SHELL (see lib.inNixShell) has become rare (since there is no equivalent in pure-eval, flakes etc. which grow increasingly popular), so users no longer expect this behavior. 16:11:12
@sternenseemann:systemli.orgsterni (he/him)https://nixos.org/manual/nixpkgs/stable/#function-library-lib.trivial.inNixShell now that's a bad docstring16:27:41
@sternenseemann:systemli.orgsterni (he/him)https://github.com/NixOS/nixpkgs/issues/43681417:49:55
@emilazy:matrix.orgemilyit looks like nothing but Haskell uses it?18:06:05
@morgan.arnold:matrix.orgmra Unfortunately, this doesn't seem to straight-up work? If I look in the sources from the template: https://github.com/clash-lang/clash-starters/blob/main/simple-nix/nix/sources.json, and then copy the link to the version of nixpkgs that they used into my flake, I just get a new error: "Package ‘clash-prelude-1.6.6’ in [...] is marked as broken, refusing to evaluate.". Would it be possible to just copy the nix directory into my project, and then import ./nix/nixpkgs.nix or something to use as the nixpkgs input for my flake? 19:22:03
@maralorn:maralorn.demaralornOh, apparently they have a ton of overlays there to fix stuff.20:32:19
@maralorn:maralorn.demaralornYes, somehow getting the niv folder in there should work. But flakes is kinda meant to be an alternative to nix.20:33:04
@maralorn:maralorn.demaralornTranslating pins from upstream into a different dependency mechanism to track dependencies is kinda going a bit against the grain.20:33:42
@maralorn:maralorn.demaralorn* Translating pins from upstream into a different mechanism to track dependencies is kinda going a bit against the grain.20:33:54
26 Aug 2025
@morgan.arnold:matrix.orgmra Hm, maybe I'm being a bit stupid trying to turn this into a flake. I guess I could just keep the existing nix stuff from the template? I'm just mildly annoyed about not being able to use nix develop. I thought that I would just be able to do something like inputs.nixpkgs = import ./nix/nixpkgs {};, in my flake but if I do this I get the error "expected a set but got a thunk", so I guess I've misunderstood something? 02:54:59
@morgan.arnold:matrix.orgmraSorry if it's not obvious, but I'm not exactly an expert with Nix :P02:55:14
@maralorn:maralorn.demaralorn
In reply to @morgan.arnold:matrix.org
Hm, maybe I'm being a bit stupid trying to turn this into a flake. I guess I could just keep the existing nix stuff from the template? I'm just mildly annoyed about not being able to use nix develop. I thought that I would just be able to do something like inputs.nixpkgs = import ./nix/nixpkgs {};, in my flake but if I do this I get the error "expected a set but got a thunk", so I guess I've misunderstood something?
Well. The problem causing your error message is that flakes only look like nix but only a subset is allowed.
07:09:25
@maralorn:maralorn.demaralornThe problem from what I can tell is that the template uses multiple overrides to fix the build not just pinning nixpkgs. That's why you still encountered an error when you pinned the correct nixpkgs.07:10:13
@maralorn:maralorn.demaralornThe old style equivalent to nix develop would be nix-shell07:11:09
27 Aug 2025
@artem.types:matrix.orgArtemThanks guys for posting all the updates on the 9.8->9.10 PR. Very informative and helpful for explaining how the many processes work. ❤️00:39:27
@thibaut:fsl.shThibaut joined the room.13:35:37
@thibaut:fsl.shThibautHello! Is this the space to ask for a package update? I am interested in the dhall packages 🙏13:39:23
@toonn:matrix.orgtoonn Thibaut: Aren't they part of Stackage? 13:42:26
@thibaut:fsl.shThibautI wasn't sure what was Stackage reading the nixpkgs stuff, indeed it is! I guess it is normal that the stackage version is different from the last github's release? apparently it is, 1.42.2 matches github's version 23.1.0, so it looks up to date?13:46:22
@toonn:matrix.orgtoonn Thibaut: It depends on the Stackage snapshot. But Nixpkgs is more or less a recent Stackage snapshot with everything else filled in from Hackage. 13:51:16
@toonn:matrix.orgtoonn It is geared towards supporting Haskell packages in Nixpkgs rather than Haskell development. 13:51:44
@toonn:matrix.orgtoonn For development without the goal of packaging for Nixpkgs, I'd recommend simply using Cabal or Stack as you would on any other system. 13:52:43
@thibaut:fsl.shThibautThanks. I understand now 👍️13:52:45
@thibaut:fsl.shThibautI just use the dhall tools so it's fine for me13:53:01
28 Aug 2025
@bglgwyng:matrix.orgbglgwyng It seems haskell.nix doesn't handle private repository in cabal.project(repository ... stanza) correctly 06:22:32
@bglgwyng:matrix.orgbglgwyngIt tries to download the package while building which leads the build to failure06:23:00
@bglgwyng:matrix.orgbglgwyng* It tries to download packages from the private repository while building which leads the build to failure06:23:15
@maralorn:maralorn.demaralorn bglgwyng: The haskell.nix maintainers don’t follow this channel very actively I think. 08:27:12

Show newer messages


Back to Room ListRoom Version: 6