| 19 May 2025 |
emily | * this is a silly question but… how do you actually specify all of build/host/target when instantiating Nixpkgs? | 13:25:16 |
K900 | You don't | 13:28:53 |
K900 | You pass in system and crossSystem | 13:29:02 |
K900 | You can't actually specify all three | 13:29:07 |
emily | right, but then… | 13:31:50 |
emily | how do you actually build stuff for that combo? | 13:31:54 |
K900 | What do you mean? | 13:32:04 |
emily | let's say I want to build an x86 Linux rustc that targets AArch64 Linux on Darwin. how do I do that? | 13:32:10 |
K900 | I don't think we really expose Canadian cross like that | 13:32:54 |
emily | then how come we even support it :P | 13:33:11 |
emily | can you make it happen with pkgsCross? | 13:33:17 |
emily | looks like no | 13:34:16 |
emily | at least not in the obvious way | 13:34:22 |
K900 | We don't really | 13:34:33 |
Alyssa Ross | pkgsCross is just wrapping instantiating nixpkgs with a crossSystem | 13:34:39 |
emily | we kinda do considering how much logic we have for three cross platforms… | 13:34:54 |
K900 | The whole build/host/target thing doesn't actually mean you can instantiate a nixpkgs for arbitrary build/host/target | 13:35:09 |
K900 | Honestly I still want to kill off target at some point | 13:35:32 |
emily | why not? in most cases we handle it correctly | 13:35:39 |
K900 | I forgot why it blows up the platform offset logic but it does | 13:36:44 |
K900 | Honestly that whole thing is the primary reason I really want to kill target | 13:37:09 |
emily | well that's dumb | 13:37:09 |
K900 | Having just two platform offsets and having them saturate makes things SO much easier | 13:37:22 |
emily | targetPlatform is bad, but I thought we were at least getting value out of it | 13:37:21 |
K900 | To reason about | 13:37:26 |
emily | GCC and wrappers should just take a target argument. | 13:37:47 |
emily | it's rough when you need to build libraries for target though | 13:37:58 |
K900 | Yeah, that's what I was thinking as well | 13:38:00 |
K900 | Anything that's explicitly-targeted can just require specifying a target | 13:38:21 |
K900 | Actually that also blows up Canadian cross | 13:38:38 |