!OqhvaDMJdKYUicLDiE:nixos.org

Nixpkgs Stdenv

226 Members
74 Servers

Load older messages


SenderMessageTime
12 Dec 2024
@artturin:matrix.orgArtturin
In reply to @truby:matrix.org
If this was fixed before in master and the fix was removed for a version bump, why is the removal of the fix in master while the fix is still in staging? Sorry if this is a naieve question 😅
The creator of https://github.com/NixOS/nixpkgs/pull/360044 put it in the wrong branch
20:45:01
@truby:matrix.orgtrubyI do seem to be getting further after pinning to the parent of that commit :)21:00:19
13 Dec 2024
@rosscomputerguy:matrix.orgTristan Ross I'm curious as to why we do use${compiler} to change the compiler out instead of something like cc = "clang". I probably could work on a PR to do that. It probably would work better with composing with the other various pkgs. 18:17:54
@sternenseemann:systemli.orgsterni More often than not, swapping out things doesn't work individually useLLVM for example implies some sort of whole LLVM toolchain. 22:17:42
@sternenseemann:systemli.orgsterniThe weird API is because the implicit assumption is of course that every platform has its own toolchain and not multiple alternative ones22:18:20
@sternenseemann:systemli.orgsterniIdeally we'd allow switching out things individually, but there are limits e.g. clang and GNU binutils only work together to an extent (only C, no LTO)22:18:53
@sternenseemann:systemli.orgsterni Tristan Ross: If you want to start on this, I'd recommend you'd try to wire up linker. That is a plain string in the platform set, but changing it doesn't do anything. It's just informational, telling you what the linker is, but it doesn't change anything if you set it explicitly 22:20:05
@sternenseemann:systemli.orgsterni (at least as far as I recall, maybe it just was that linker = "ld.gold" doesn't do anything 22:20:32
@sternenseemann:systemli.orgsterni * (at least as far as I recall, maybe it just was that linker = "ld.gold" doesn't do anything) 22:20:37
@rosscomputerguy:matrix.orgTristan Ross
In reply to @sternenseemann:systemli.org
More often than not, swapping out things doesn't work individually useLLVM for example implies some sort of whole LLVM toolchain.
Yeah, I kinda thought about it more while driving to my grandma's.
22:31:24
@rosscomputerguy:matrix.orgTristan Ross We probably could have multiple flags with an encompassing one 22:31:38
@rosscomputerguy:matrix.orgTristan Ross toolschain, cc, linker, and bintools 22:31:50
@rosscomputerguy:matrix.orgTristan Ross My hope is to make nixpkgs more flexible with possible options and ways you can tune it or modify the compilation. 22:40:59
@rosscomputerguy:matrix.orgTristan RossWe have the ability to make it possible so why not have it as an actual feature.22:41:17
@rosscomputerguy:matrix.orgTristan RossImproving the UX on changing the compilers might be the first thing before I start work towards a pure LLVM Linux toolchain.22:41:54
@rosscomputerguy:matrix.orgTristan Ross * Improving the UX on changing the compilers might be the first thing before I start work towards a pure LLVM Linux bootstrap.22:42:06
@rosscomputerguy:matrix.orgTristan Rosshttps://github.com/NixOS/nixpkgs/pull/36505723:58:40
14 Dec 2024
@rosscomputerguy:matrix.orgTristan Ross Randy Eckenrode: I get a Darwin CI failure with infinite recursion and I'm not familiar enough with Darwin to fix it. Any ideas? 00:15:03
@rosscomputerguy:matrix.orgTristan RossOh, I fixed it00:19:50
@rosscomputerguy:matrix.orgTristan Ross I accidentally used *Platform.cc instead of *Platform.toolchain 00:20:15
@rosscomputerguy:matrix.orgTristan RossSo it must've included a dependency badly in the wrong stage00:20:33
@reckenrode:matrix.orgRandy EckenrodeI would rather the stdenv not have compilers than to double down by wiring more compiler assumptions into it.00:26:26
@rosscomputerguy:matrix.orgTristan RossI'm not sure I understand what you mean.00:32:01
@rosscomputerguy:matrix.orgTristan Rosshttps://github.com/NixOS/nixpkgs/pull/364050 we probably should get this done05:56:15
@truby:matrix.orgtruby I managed to get my environment with libcxxStdenv and C++ dependencies built with libc++ working, but I had a few issues that I think might need fixing; I am not sure why I have to specify clang-scan-deps here like this, and can't just use llvmPackages.clang-tools. I've had this issue before when switching to a newer GCC version too (that the wrong gcc stdlib is selected).
Also, cmake can't find clang-scan-deps automatically, I have to pass -DCMAKE_CXX_COMPILER_CLANG_SCAN_DEPS=clang-scan-deps, even though it's on my path. Not sure why exactly that's happening.
14:49:55
@truby:matrix.orgtrubyAnyone got ideas here? I mean at least it works now, so I'm happy with that 😄14:50:29
@reckenrode:matrix.orgRandy Eckenrode
In reply to @rosscomputerguy:matrix.org
I'm not sure I understand what you mean.
Maybe I’m misunderstanding, but is the proposal to change compiler by specifying it in the attrset (e.g., cc = "clang")?
14:52:42
@reckenrode:matrix.orgRandy Eckenrode In general, I don’t like how C is given a privileged position in the stdenv. I would rather that you have to add, e.g., autotoolsHook to build an autotools package just like you would one using Meson or CMake or cargo or whatever. 14:53:50
@rosscomputerguy:matrix.orgTristan Ross
In reply to @reckenrode:matrix.org
Maybe I’m misunderstanding, but is the proposal to change compiler by specifying it in the attrset (e.g., cc = "clang")?
Yeah, that's how you can switch out the compiler. But you can change the toolchain using the toolchain attribute. The idea is to prevent things from not applying right in pkgs/stdenv/cross/default.nix. Before, it would depend on the order of the if statements. Now, since it's like an enum it would work better. Stacking different pkgs* works better now because of the changes.
14:57:55
@rosscomputerguy:matrix.orgTristan Ross
In reply to @reckenrode:matrix.org
In general, I don’t like how C is given a privileged position in the stdenv. I would rather that you have to add, e.g., autotoolsHook to build an autotools package just like you would one using Meson or CMake or cargo or whatever.
I'm not sure how we can have an stdenv without including CC for C packages. Including it probably makes the amount of copying and passing less because there are less duplicate lines.
14:59:27

Show newer messages


Back to Room ListRoom Version: 9