!RbXGJhHMsnQcNIDFWN:nixos.org

Haskell in Nixpkgs/NixOS

716 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
@bglgwyng:matrix.orgbglgwyng
> Using Parsec parser
       > Did not find a GI repository for GLib-2.0 in ["/nix/store/367sp8xqvk70a050fm6f8a93lig0gx41-ghc-9.10.1/share/gir-1.0","/nix/store/6zdgga8jx741p46wmx8xyibwz3x3fps6-ncurses-6.5/share/gir-1.0","/nix/store/hnzqas16kwcvaj2j5wb4izxdh692f9vn-elfutils-0.193/share/gir-1.0","/nix/store/05h9vfzhqf7l6w1xczixici2ldw9y788-pkg-config-wrapper-0.29.2/share/gir-1.0","/nix/store/c38cqq7a91inmdgciv3r22kmx49y6axj-attoparsec-0.14.4/share/gir-1.0","/nix/store/xwfxs15j96m3jbgxj2r0swvckj2x0xj7-vector-0.13.2.0/share/gir-1.0","/nix/store/gx2l0rnp3qcnysdddkg9dqnh2mz6w08k-patchelf-0.15.2/share/gir-1.0","/opt/homebrew/share/gir-1.0"].
       > CallStack (from HasCallStack):
       >   error, called at lib/Data/GI/GIR/Repository.hs:94:20 in haskell-gi-0.26.17-J7744VfCWJN7HmDfsyCDMT:Data.GI.GIR.Repository
       For full logs, run:
         nix log /nix/store/2gwlmv6cq5bw8ra7jriga1i0gyjmq5p4-gi-glib-2.0.30.drv

Does anyone know what it means? I tried to build cabal2nix result of gi-glib(+ some configurations) and found this error.

02:42:19
@alexfmpe:matrix.orgalexfmpeRedacted or Malformed Event06:29:24
@alexfmpe:matrix.orgalexfmpe
In reply to @sternenseemann:systemli.org
We should probably eventually look into that again…
I threw a day or two at this a couple months back trying to cargo cult what haskell.nix did, only with nixpkgs' general emulation utils rather than hardcode qemu/wine etc.
06:32:18
@alexfmpe:matrix.orgalexfmpeMy motivation was mobile so I tried doing it for android TH but got stuck on some linkage shenanigans I don't remember06:32:44
@alexfmpe:matrix.orgalexfmpeAnd think I couldn't try with windows due to executables not building properly06:33:13
@alexfmpe:matrix.orgalexfmpeBut now that I think about it, maybe I can try some other cross just to get the general shape of things out the door06:33:57
@alexfmpe:matrix.orgalexfmpeThe emulation stuff can also be used for cross testing, but a lot of suites use TH for test discovery so that needs to work first06:35:17
@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

Show newer messages


Back to Room ListRoom Version: 6