!OqhvaDMJdKYUicLDiE:nixos.org

Nixpkgs Stdenv

230 Members
73 Servers

Load older messages


SenderMessageTime
13 Feb 2026
@emilazy:matrix.orgemily doesn't sound like it should be too bad 03:27:33
@emilazy:matrix.orgemilyspecifically marked as suitable for production at least03:27:56
@emilazy:matrix.orgemily fwiw the main user of libc++ in Nixpkgs is macOS and _LIBCPP_HARDENING_MODE_DEFAULT is already 2 (fast) on that platform 03:29:42
@emilazy:matrix.orgemily so libcxxhardeningfast is just a nop 03:30:04
@hoplophfeil:matrix.orghoplopf joined the room.10:25:27
@r_i_s:matrix.orgris_hmmmmmmmmmmmm21:51:10
@r_i_s:matrix.orgris_well.. open to opinions. i should at least update the documentation to correspond to reality21:51:54
@emilazy:matrix.orgemilyI like hardening, but I'm also okay with us matching the platform default here22:20:08
@emilazy:matrix.orgemilynot sure if nobody noticing means that the impact is minimal or that nobody is monitoring Nixpkgs package perf 🫣22:20:30
@r_i_s:matrix.orgris_i fear the latter22:33:54
@xokdvium:matrix.orgSergei Zimmerman (xokdvium)
In reply to @emilazy:matrix.org
not sure if nobody noticing means that the impact is minimal or that nobody is monitoring Nixpkgs package perf 🫣
I sure am monitoring nix perf :) glibcxx assertions absolutely tank inlining in the parser
23:54:31
@emilazy:matrix.orgemilyI don't think that cleanly maps to libc++ hardening though23:55:00
@emilazy:matrix.orgemily(and probably ~nobody is using Nix with libc++ on Linux)23:55:14
@xokdvium:matrix.orgSergei Zimmerman (xokdvium)I think glibcxx assertions are roughly second level libc++ hardening. At least that’s what meson enables with n_debug23:56:14
@xokdvium:matrix.orgSergei Zimmerman (xokdvium)In my experience the overhead is enough to necessitate disabling hardening for some translation units that are just too hot and aren’t security sensitive23:57:38
@emilazy:matrix.orgemily second level = fast (numeric value 2) or extensive? 23:58:24
@emilazy:matrix.orgemily because macOS upstream default is fast so we certainly wouldn't go below that OOTB 23:58:31
@emilazy:matrix.orgemilywould be interesting to see if 25.05 → 25.11 regresses macOS Nix perf anyway23:59:07
@emilazy:matrix.orgemily(but controlling for version might be hard?)23:59:12
@xokdvium:matrix.orgSergei Zimmerman (xokdvium)
In reply to @emilazy:matrix.org
because macOS upstream default is fast so we certainly wouldn't go below that OOTB
As in the llvm toolchain enables that by default?
23:59:13
14 Feb 2026
@emilazy:matrix.orgemily

yes:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__config_site
43:#define _LIBCPP_HARDENING_MODE_DEFAULT 2
00:00:26
@emilazy:matrix.orgemily (2 is fast) 00:00:29
@xokdvium:matrix.orgSergei Zimmerman (xokdvium)
In reply to @emilazy:matrix.org
would be interesting to see if 25.05 → 25.11 regresses macOS Nix perf anyway
Hm, I guess the only way to tell is to benchmarking :) I could see about how that would affect nix itself. Undefing the flag should be easy enough
00:05:09
@r_i_s:matrix.orgris_i'm going to prepare a PR to switch back to fast11:04:39
@r_i_s:matrix.orgris_ this does make me wonder how libcxxhardening* should interact with _LIBCPP_HARDENING_MODE_DEFAULT though 11:30:03
@r_i_s:matrix.orgris_https://github.com/NixOS/nixpkgs/pull/49035812:07:04
4 Aug 2022
@winterqt:nixos.devWinter (she/her) joined the room.03:27:09
@0x4a6f:matrix.org[0x4A6F] joined the room.22:08:01
6 Aug 2022
@winterqt:nixos.devWinter (she/her)

Does anyone know where the fact that the Darwin stdenv builds CMake twice comes from? As far as I can tell, it's from stage 0, and then just gets used in the other stages from there. Am I missing something here, is it something with the overrides? It looks like it might be, but then the fact that those are only allowed in the final stage (per booter.nix) (when that doesn't seem true, since then they wouldn't be defined...?) comes up.

(Isn't this the same pattern (defining in one stage and referencing in the others) that makes Glibc only build a limited number of times in the Linux stdenv?)

08:00:17
@trofi:matrix.orgtrofi

You think cmake should be rebuild less? Or more?

glibc's is probably a bit different as it's a part of stdenv.cc.libc and mainly used by that I would guess. Also, if depends if the package is used or not by other packages in the derivation would affect rebuild count as well.

14:59:09

Show newer messages


Back to Room ListRoom Version: 9