| 9 Nov 2024 |
Artturin | In reply to @rosscomputerguy:matrix.org I tried fixing it with overriding stdenv but that didn't help Overriding the stdenv can change the systems but won't change the cc system | 15:50:50 |
Artturin | In reply to @rosscomputerguy:matrix.org Then why does the update script now fetch aarch64-linux for x86_64-linux while host is aarch64-linux. Where is it | 15:50:59 |
Tristan Ross | In reply to @artturin:matrix.org Overriding the stdenv can change the systems but won't change the cc system I don't need CC for source fetching | 15:51:09 |
emily | In reply to @rosscomputerguy:matrix.org Then why does the update script now fetch aarch64-linux for x86_64-linux while host is aarch64-linux. something else must have changed. stdenv.isDarwin is the same as stdenv.hostPlatform.isDarwin | 15:51:12 |
emily | Artturin's PR was 0 rebuilds | 15:51:32 |
Tristan Ross | In reply to @artturin:matrix.org Where is it https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/compilers/flutter/update/get-engine-hashes.nix.in | 15:52:09 |
Tristan Ross | In reply to @emilazy:matrix.org Artturin's PR was 0 rebuilds 0 rebuilds doesn't affect update scripts tho | 15:52:26 |
emily | the PR didn't even touch this script. | 15:52:40 |
Tristan Ross | Because I had to change the script since the PR broke it | 15:53:24 |
emily | In reply to @emilazy:matrix.org something else must have changed. stdenv.isDarwin is the same as stdenv.hostPlatform.isDarwin ah, I was thinking of another PR. https://github.com/NixOS/nixpkgs/commit/95c1043ff5531b4348c50fa92763954df98399ed touched the flutter stuff | 15:53:31 |
emily | the inherit stuff I guess | 15:53:52 |
emily | why is this using templated Nix files? | 15:54:04 |
Tristan Ross | Because the python update script fills in the template | 15:54:23 |
emily | I don't quite understand what the Nix is for but surely all the parameterization here could just be --argstr? | 15:55:43 |
Tristan Ross | It fetches the source so the hash can be determined | 15:56:55 |
Tristan Ross | The hashes are written out into a JSON file and gets imported later on | 15:57:15 |
Tristan Ross | I also didn't originally write the updater, I only changed it once I added the flutter engine built from source lol | 15:59:22 |
emily | yeah, but I mean, Nix is a programming language. you don't need to do "@foo@", you can just… take foo as an argument and pass it with --arg/--argstr when evaluating/building. | 16:06:21 |
| 10 Nov 2024 |
emily | help: is it normal that gcc and gcc13 are wrapping different GCCs (different bootstrap stages seemingly) with different options even though gcc = pkgs.${"gcc${toString 13}"} | 12:53:26 |
trofi | At least stdenv.cc is gcc :) | 16:56:41 |
emily | indeed | 16:57:25 |
emily | but I can't figure out why | 16:57:28 |
emily | some stdenv overlay stuff I don't understand, I presume? | 16:57:33 |
emily | it's breaking Alyssa's PR https://github.com/NixOS/nixpkgs/pull/344239 | 16:57:46 |
emily | this is only applying to actual gcc13, not the GCC that's actually used :/ | 16:57:56 |
emily | (also, it seems weird that the builder of the unwrapped gcc is a bootstrap tools Bash – I thought the bootstrap tools were meant to be rinsed out by the late stdenv stages?) | 16:58:19 |
trofi | gcc needs stdenv. sdtenv needs gcc. I don't think they can be defined in a single bootstrap phase. | 16:58:45 |
trofi | gcc gets clobbered by a last stage of the bootstrap: https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/linux/default.nix#L683 | 17:01:08 |
emily | makes sense | 17:03:24 |
emily | what's the correct way to adjust the wrapping options of the C compiler that's actually used? I couldn't find where the wrapping happens in the bootstrap. | 17:03:40 |