!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
17 Sep 2025
@alexfmpe:matrix.orgalexfmpe
In reply to @mangoiv.:matrix.org
I think haskell.nix can do Windows cross, I wasn't aware nixpkgs can do that
https://github.com/NixOS/nixpkgs/pull/357744#issue-2677729790
06:39:45
@bglgwyng:matrix.orgbglgwyngCan someone help me with this?12:28:23
@bglgwyng:matrix.orgbglgwyngI made a reproducer here https://github.com/bglgwyng/override-haskell-gi-base/blob/main/flake.nix#L1912:28:29
@bglgwyng:matrix.orgbglgwyng What I found weird is that the gi-glib definitions is virtually the same with the haskellPackages.gi-glib which is build successfully 12:29:13
@bglgwyng:matrix.orgbglgwyng I just copied haskell-gi-base code and override it. If I understand correctly, there should not be any difference in the behavior. 12:30:06
@bglgwyng:matrix.orgbglgwyng

I found

haskell-gi-base = addBuildDepend pkgs.gobject-introspection super.haskell-gi-base;

in configuration-nix.nix

14:42:44
@bglgwyng:matrix.orgbglgwyng *

I found

{ haskell-gi-base = addBuildDepend pkgs.gobject-introspection super.haskell-gi-base; }

in configuration-nix.nix

14:42:52
@bglgwyng:matrix.orgbglgwyngHmm... can we remove this quick fix modifying haskell-gi-base.cabal? I don't mean I'm going to do though.14:57:08
@sternenseemann:systemli.orgsterni (he/him)cabal doesn't allow declaring dependencies on non-Haskell build tools iirc16:08:03
@sternenseemann:systemli.orgsterni (he/him)the idea behind configuration-nix was that you would apply this configuration to your package set even if you are building a downstream package set, but I'm not sure if this actually works out in practice. Most likely too many assumptions in there.16:09:22
@sternenseemann:systemli.orgsterni (he/him)sounds like a nice idea. I think amjoseph tried it before and ran into a lot of problems, but maybe he tried to get powerpc64le-linux to work and ran into some unrelated issues16:10:24
@sternenseemann:systemli.orgsterni (he/him)an alternative/complementary approach to this is "postprocessing" in cabal2nix which can almost arbitrarily modify the generated package expressions. We are trying to slowly remove that feature though as it is a bit of a nightmare to maintain16:12:31
18 Sep 2025
@mequbic:matrix.orgiqubic (she/her) So, I'm looking to use XMobar on my NixOS system. I'm already quite familiar with Haskell and the XMobar config style. The main issue I'm running into is that the ALSA module says "to activate this plugin you must pass the with_alsa flag during compilation." How do I do that? 19:16:21
@mequbic:matrix.orgiqubic (she/her)I'm enabling XMobar via Home Manager and it gives me an option for "programs.xmobar.package" which defaults to "pkgs.haskellPackages.xmobar"19:17:19
@mequbic:matrix.orgiqubic (she/her)So, my question is... how do I override a Haskell package like this?19:17:33
@mequbic:matrix.orgiqubic (she/her) Nevermind... I'm a moron. Looking at the code in Nixpkgs, with_alsa is a default flag for this package. 19:20:34
19 Sep 2025
@bglgwyng:matrix.orgbglgwyng I found that plan.josn doesn't contain .cabal's default-extensions information. Doesn't it indicate that it's not possible to reproduce cabal build only with plan.json + ghc? 08:22:36
@sternenseemann:systemli.orgsterni (he/him) iqubic (she/her): otherwise haskell.lib.compose.enableCabalFlag would be the answer. 10:21:39
@sternenseemann:systemli.orgsterni (he/him) bglgwyng: yes and there are also other tasks that Cabal needs to do which is required for some packages to work 10:23:00
@sternenseemann:systemli.orgsterni (he/him)e.g. autogen-modules. I don't know if there are even more basic things Cabal needs to do, not really familiar with the details10:23:45
@bglgwyng:matrix.orgbglgwyng it seems generic-builder runs Setup.hs to build cabal packages. 11:00:03
@bglgwyng:matrix.orgbglgwyng Do we have modificatino related to ghcWithPacakges between nixpkgs/nixos-25.05 and nixpkgs/HEAD? With nixos-25.05, I found ghcWithPackages builds two random packages with the same version, but with HEAD, it doesnt'. 11:09:43
@bglgwyng:matrix.orgbglgwyng * Do we have modificatino related to ghcWithPacakges between nixpkgs/nixos-25.05 and nixpkgs/HEAD? With nixos-25.05, I found ghcWithPackages builds two random packages with the same version, but with HEAD, it builds only one. 11:11:42
@maralorn:maralorn.demaralornI mean it’s generally much more likely that this is to due to differences in a specific package. But I remember vaguely that we merged something related to ghcWithPackages in the last months.11:12:26
@bglgwyng:matrix.orgbglgwyngCould you share the commit ref please? I want to compare before and after.11:13:43
@maralorn:maralorn.demaralornHuh, er maybe we didn’t merge it and it was just a PR.11:13:50
@bglgwyng:matrix.orgbglgwyngHm... then now I am going to start binary search over then lol11:14:20
@maralorn:maralorn.demaralornHuh, I can’t find anything that makes sense.11:16:13
@maralorn:maralorn.demaralornCould be d3e4f784aa1bb95ad8a13cadc7073e6617658f2f, but seems highly unlikely.11:16:32
@maralorn:maralorn.demaralornGood luck with that. I find it somehow very satisfying to do that even though it takes much time. It’s so cool when the power of the logarithm works for you. 😄11:17:36

Show newer messages


Back to Room ListRoom Version: 6