{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreiff6kuf7bjqwmyn6g5lvcip6d2n2idk6lk3lx72lewmghmyugdive",
"uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3mi3nruty6ga2"
},
"path": "/t/users-of-stack-and-nix-seeking-feeback-on-sensible-defaults/13826#post_3",
"publishedAt": "2026-03-27T12:01:02.000Z",
"site": "https://discourse.haskell.org",
"textContent": "In my experience, the nix integration in stack is a footgun that I have always wanted to turn off.\n\nIn general, when using nix, I tend to have a nix-shell which provides both `stack` and `ghc` along with all my C dependencies.\n\nI think fundamentally what this integration is trying to do is a layering violation. You normally want nix to be the top layer (for managing system packages) and then for stack to be below that (for managing Haskell packages). This tries to do magic that violates this and I just don’t think that can work well, especially if you are in a multi-language context where let’s say you also want to have some nodejs things installed by nix.\n\nSo, I would be in favour of removing this integration.",
"title": "Users of Stack and Nix: seeking feeback on sensible defaults"
}