!OqhvaDMJdKYUicLDiE:nixos.org

Nixpkgs Stdenv

210 Members
66 Servers

Load older messages


SenderMessageTime
25 May 2025
@rosscomputerguy:matrix.orgTristan RossThen we could overlay that and it hopefully wouldn't have to eval stages before the new stages.15:44:26
@reckenrode:matrix.orgRandy EckenrodeI’d prefer to view the stdenv bootstrap as a black box so that implementation details don’t become fixed API.15:47:48
@rosscomputerguy:matrix.orgTristan RossTrue though we'd have to do something to the stdenv for it to be able to do cross unless we split CC away from the stdenv.15:48:47
@reckenrode:matrix.orgRandy EckenrodeDarwin’s stdenv bootstrap has changed a lot. The SDK update dropped several stages last fall.15:49:04
@reckenrode:matrix.orgRandy EckenrodeI wish the stdenv bootstrap could be structured like a cross from bootstrap tools to final environment.15:49:17
@reckenrode:matrix.orgRandy EckenrodeLet the standard cross-compilation machinery take care of building things for the right platforms instead of having to micromanage a bunch of overrides.15:49:38
@reckenrode:matrix.orgRandy EckenrodeThen from there you could cross to another platform.15:49:53
@reckenrode:matrix.orgRandy Eckenrode I wonder if some of the hard-coded stuff could be removed. Right now, stdenvNoCC is an override of stdenv. Could it be the other way? stdenv is stdenvNoCC with the requisite compilers as extra packages? 15:51:19
@rosscomputerguy:matrix.orgTristan Ross Yeah, that's what I'm thinking 15:51:36
@reckenrode:matrix.orgRandy EckenrodeIIRC wasn’t there some talk about that for libc++ once libstdc++ gets split out of gcc?15:51:42
@rosscomputerguy:matrix.orgTristan Ross Idk but probably 15:52:01
@rosscomputerguy:matrix.orgTristan Ross It would be nice to be able to view the stdenv as just tools and CC as the actual C toolchain 15:52:42
@rosscomputerguy:matrix.orgTristan RossAnd you could override the unwinder, cxxlib, etc15:53:00
@rosscomputerguy:matrix.orgTristan Ross I think I've seen clang get rebuilt for cross so being able to not have to rebuild clang when doing cross would be nice 15:54:05
@reckenrode:matrix.orgRandy EckenrodeClang shouldn’t be rebuilt for cross anymore. Only the wrapper now.16:44:06
@reckenrode:matrix.orgRandy EckenrodeDarwin bintools shouldn’t need rebuilding either, but that work hadn’t been done yet.16:45:14
@rosscomputerguy:matrix.orgTristan Ross
In reply to @reckenrode:matrix.org
Clang shouldn’t be rebuilt for cross anymore. Only the wrapper now.
Huh, it's rebuilt for me when I tried getting it to work with crossStdenv. But I've found a problem where the bintools wrapper for LLVM doesn't include as for target lol.
16:52:05
@reckenrode:matrix.orgRandy EckenrodeWeird. There was work done early in the 25.05 cycle to reduce the Clang rebuilds.16:52:38
@reckenrode:matrix.orgRandy Eckenrodehttps://github.com/NixOS/nixpkgs/pull/355532 https://github.com/NixOS/nixpkgs/pull/356162 https://github.com/NixOS/nixpkgs/pull/35763316:53:28
@reckenrode:matrix.orgRandy Eckenrode

On Darwin, I get /nix/store/5ibsf7mwyci07f5kdxrzww43204y7ysv-clang-20.1.4.drv for every:

$ nix-instantiate . -A pkgsCross.gnu64.llvmPackages.libcxxStdenv.cc.cc
$ nix-instantiate . -A pkgsCross.gnu64.pkgsLLVM.stdenv.cc.cc
$ nix-instantiate . -A pkgsCross.x86_64-darwin.stdenv.cc.cc
$ nix-instantiate . -A stdenv.cc.cc
$ nix-instantiate . -A clang.cc
$ nix-instantiate . -A llvmPackages.clang.cc
$ nix-instantiate . -A llvmPackages_20.clang.cc
16:55:03
@rosscomputerguy:matrix.orgTristan Ross Yeah, it's something which started when I made glibc actually handle cross correctly in crossStdenv 16:57:10
@rosscomputerguy:matrix.orgTristan Ross Which also led me to discovering that GCC with no libc to handle glibc is actually borked in crossStdenv.predicated.useLLVM.native 16:57:59
@rosscomputerguy:matrix.orgTristan Ross One of the things I'm thinking now is, what if we had top-level attributes which could handle some cross logic without inheritly using the top-level stdenv's targetPlatform so pkgs/top-level/cross-stdenv.nix is less of a mess 17:00:31
@rosscomputerguy:matrix.orgTristan Ross @[Randy Eckenrode] @[Alyssa Ross] Would you be inclined in writing a design doc with me of all the changes we need to make the stdenv and CC better? I'm hoping all the stdenv team could work together on it. 17:23:14
@aleksana:mozilla.orgaleksana 🏳️‍⚧️ (force me to bed after 18:00 UTC)hedgedoc time!17:24:15
@qyliss:fairydust.spaceAlyssa RossI could possibly give feedback but for now I'm still focusing on trying to catch up with the last several weeks of GitHub notifications that accumulated while I was recovering from dental surgeru17:25:37
@qyliss:fairydust.spaceAlyssa Ross * 17:25:40
@rosscomputerguy:matrix.orgTristan Ross Gotcha, yeah I think these changes will span across multiple versions because it'll be quite a lot of work 17:27:13
@rosscomputerguy:matrix.orgTristan Ross
In reply to @aleksana:mozilla.org
hedgedoc time!
Is that what pad.lassul.us is lol
17:29:34
@rosscomputerguy:matrix.orgTristan RossIs there someone here who could pin a message? I'm thinking it might be good to pin the link to the design doc on the new stdenv & CC improvements.17:36:37

Show newer messages


Back to Room ListRoom Version: 9