| 26 Apr 2025 |
sterni (he/him) | aleksana 🏳️⚧️ (force me to bed after 18:00 UTC): native-bignum is just GHC without gmp, no relation to the build system | 11:25:07 |
Find me at aleksana:qaq.li | In reply to @sternenseemann:systemli.org aleksana 🏳️⚧️ (force me to bed after 18:00 UTC): native-bignum is just GHC without gmp, no relation to the build system I don't get it why native bignum is an option alongside hadrian | 11:26:11 |
sterni (he/him) | it's not along side hadrian at all | 11:26:50 |
sterni (he/him) | native-bignum is the name for the bignum library GHC has which is native, i.e. written in Haskell | 11:27:16 |
sterni (he/him) | it can be used as an alternative to gmp which is the default | 11:27:28 |
sterni (he/him) | hadrian is the build system of GHC which was made the default in 9.4 and exclusive in 9.6 | 11:27:46 |
Find me at aleksana:qaq.li | In reply to @sternenseemann:systemli.org it's not along side hadrian at all But you see every version is either defined with import common-hadrian.nix or import common-make-native-bignum.nix | 11:27:54 |
Find me at aleksana:qaq.li | What does this mean | 11:28:17 |
sterni (he/him) | it's named like that because alongside common-make-native-bignum.nix there would be common-make-integer-simple.nix, but since we only have one GHC that would use it (8.10.7.nix) I never bothered to make a common file | 11:29:17 |
sterni (he/him) | and they are basically the same, they just renamed integer-simple to native-bignum at some point, so some inputs in the nix expression change which makes it annoying to make a common expression for both | 11:30:01 |
sterni (he/him) | (it would be kind of a good project to make some cross compiled GHCs and upload them to tarballs.nixos.org before 25.11, doesn't look like we can keep around GHC 9.4 for that long) | 11:32:32 |
Find me at aleksana:qaq.li | In reply to @sternenseemann:systemli.org (it would be kind of a good project to make some cross compiled GHCs and upload them to tarballs.nixos.org before 25.11, doesn't look like we can keep around GHC 9.4 for that long) But the current expression is a bunch of spaghetti and I don't think I can jump across all the cases as I'm not the writer of that | 11:35:30 |
Find me at aleksana:qaq.li | Plus I don't understand haskell yet | 11:35:45 |
sterni (he/him) | Yeah, I did not mean you should do it. | 11:36:01 |
Alyssa Ross | the most pragmatic approach might be to focus on other loongarch64 things for now and hope upstream has bootstrap binaries before too long. | 11:36:32 |
Find me at aleksana:qaq.li | I'm bootstrapping from ghc package in debian ports, hopefully this could work | 11:37:21 |
sterni (he/him) | As I was saying, Adam Joseph did try this in the past and concluded that it's too big a pain to get to work | 11:38:27 |
sterni (he/him) | but it may be possible, not sure. | 11:38:32 |
Find me at aleksana:qaq.li | I can also let loongson guys to compile an ideal binary tarball if it really doesn't work | 11:39:58 |
emily | we don't put anything not built by Hydra on tarballs.nixos.org | 12:01:20 |
emily | I guess just fetchurling something wouldn't be the end of the world though, we already have some mystery-meat third-party binaries in tree… | 12:01:38 |
emily | but we'd really prefer to avoid it if at all possible of course | 12:01:53 |
emily | binaries from Hydra >> binaries from upstream >>> all other binaries | 12:02:16 |
Find me at aleksana:qaq.li | => nix-build -A pkgsCross.loongarch64-linux.haskell.packages.ghc984.ghc
evaluation warning: build: x86_64-linux host: x86_64-linux target: loongarch64-linux
this derivation will be built:
/nix/store/dpwqr9489b1mkgmili5fpxci31if3n2a-loongarch64-unknown-linux-gnu-ghc-9.8.4.drv
Well | 12:49:15 |
emily | huh. host should be loongarch64-linux unless you use buildPackages? | 12:50:47 |
emily | splicing issue maybe? | 12:51:02 |
Find me at aleksana:qaq.li | In reply to @emilazy:matrix.org splicing issue maybe? Very likely | 12:51:29 |
Find me at aleksana:qaq.li | Because the attribute is referenced from buildPackages: https://github.com/NixOS/nixpkgs/blob/master/pkgs/top-level/haskell-packages.nix#L482 | 13:04:18 |
sterni (he/him) | haskell.packages.*.ghc is like stdenv.cc | 13:04:56 |
sterni (he/him) | haskell.compiler.* would be cross compiled | 13:05:10 |