| 18 Mar 2026 |
colemickens | all the same, this is the derivation that fails: riscv64-unknown-linux-gnu-ghc-9.10.3 | 01:56:30 |
colemickens | I updated so it's latest nixos-unstable. I also confirmed by tracing the nodes in flake.lock and it reports 5b2c2d84341b2afb5647081c1386a80d7a8d8605 | 01:57:47 |
Alex | Do you have a reproducer that only requires the Nix CLI? | 01:59:33 |
colemickens | I've just replaced my flake.{nix,lock}. Going to send it through the expensinve fat github runners to confirm output first, then I gist the flake.{nix,lock} | 02:08:46 |
colemickens | okay, it reprod: https://gist.github.com/colemickens/78af9a28c01b888726322ca6628b27f5 | 02:12:22 |
Alex | Oh sorry, I thought you were talking about an error during eval not during realisation.
Yes, I can definitely reproduce it now. | 02:24:15 |
Alex | I've asked about it in #haskell:nixos.org.
I will see if I can fix it or at least track down the cause. | 02:29:37 |
JamieMagee | I bumped into another issue while building OpenSSL
https://github.com/NixOS/nixpkgs/pull/501061 | 16:07:37 |
dramforever | what platform is this? are you building on qemu-user? | 16:32:17 |
JamieMagee | Yes, it's on QEMU | 16:32:44 |
dramforever | the binfmt thing, right? | 16:36:27 |
dramforever | i don't think i can in good conscience accept this. so many packages fail tests in qemu-user that we'll keep adding these, until the real riscv machine gets good then these would be obsolete | 16:40:52 |
dramforever | * | 16:41:04 |
dramforever | as an example, a good while back even coreutils fails tests under qemu-user | 16:41:20 |
dramforever | a while back i wrote a hydra hack to schedule builds based on derivation meta | 16:43:15 |
dramforever | it still needs some weird extra hacks on top but it avoids changing hash | 16:43:32 |
dramforever | https://github.com/dramforever/hydra/tree/description-feature-hack | 16:44:16 |
dramforever | this plus marking them in meta plus adding them into actual hydra jobs lets you schedule these failing derivations into a full system emulation or real riscv64 machine | 16:45:27 |
dramforever | it "worked", but nobody got around to actually marking stuff... | 16:45:48 |
Alyssa Ross | globally disable checking if using binfmt imo 😈️ | 16:49:41 |
dramforever | i need to get nix --binfmt-misc pr'd into nix some time... | 16:50:49 |
dramforever | if you haven't seen, https://github.com/dramforever/nix/pull/25 | 16:51:16 |
dramforever | it's just a little bit too hacky, and the rabbit hole got so deep i sent a patch to linux man-pagea | 16:51:55 |
dramforever | * it's just a little bit too hacky, and the rabbit hole got so deep i sent a patch to linux man-pages | 16:52:02 |
JamieMagee | Yeah, qemu-user | 17:39:14 |
| 19 Mar 2026 |
JamieMagee | I appreciate you taking the time to look into it with me. I've closed out my PR and I'll workaround it locally with an overlay. | 05:20:07 |
Alex | Frankly, I'm surprised that QEMU continues to get RISC-V emulation subtly wrong. | 06:13:22 |
Alex | Or is the issue unrelated to QEMU in that some things behave weirdly when userspace and kernelspace are on different architectures? | 06:15:15 |
Alyssa Ross | often qemu-user just doesn't implement certain stuff — remember it's not just emulating the architecture; it has to emulate the whole Linux API | 06:23:38 |
dramforever | -ENOSYS is one of the least subtle wrongs qemu-user commits | 12:39:17 |