I must admit to some surprise just how much of a struggle I'm having using haskell in nixos (example: I want to use the net-mqtt library). I thought haskell was approximately a first-class citizen of nix

Obviously part of this is just not knowing Haskell at all well. Haskell-in-Nix seems to add to the things I need to learn (e.g. all the dependency management is explained in terms of how it works with/replaces cabal/stack etc => I need to know those things first)

Show thread

and it's partly also my own bloody-mindedness in wanting to do things locally without having to mess around with the per-user config (~/.config/nix) or per-machine config (/etc/nixos/configuration.nix)

Show thread

@dan You could use a nix-shell for your project or even automate that with direnv and lorri.

@schmittlauch@toot.matereal.eu you mean run cabal inside a nix shell? sure, but how in that case is nix helping me?


@dan Maybe together with cabal2nix, that could help you make your transition to using Nix for dependency management.

@schmittlauch@toot.matereal.eu I expect that's the path I will take, but given that the package I want to use (net-mqtt) is marked broken in nixpkgs, I think it's some way off.

Look, I get the whole "free-software keep-both-parts-if-you-break-it get-what-you-paid-for" thing, I've been involved in free software since before Linux was 1.0 and I've been running (and writing stuff for) Nix systems for a few years too, so I'm not demanding that anyone stop what they're doing and fix my shit for free. I'm just a bit surprised at the apparent lack of polish in an area that I thought was a focus for a non-zero number of Nix folk.

also (full disclosure) I am tired and cranky because it's almost midnight and so is my 2yo child, and there is also something wrong with my mqtt broker or the way I expect it to work because it seems to be dropping all my test messages on the floor.

Sign in to participate in the conversation

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!