!OqhvaDMJdKYUicLDiE:nixos.org

Nixpkgs Stdenv

221 Members
68 Servers

Load older messages


SenderMessageTime
13 Feb 2026
@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
@emilazy:matrix.orgemilyIMO we should just control the default with that rather than with wrapper flags. though on macOS we are not building libc++ anyway15:52:41
@r_i_s:matrix.orgris_ interesting - we might have to do some hackery as I wouldn't expect _LIBCPP_HARDENING_MODE_DEFAULT to be designed to be set from the cli 17:31:34
@emilazy:matrix.orgemilyno I just mean we should set it in our libc++ build :)17:58:50
@emilazy:matrix.orgemilylike how we do PIE by default in our GCC and Clang builds17:59:13
@emilazy:matrix.orgemilyoverriding for an individual package can be flag driven17:59:26
@emilazy:matrix.orgemilythough I think NIX_CFLAGS_COMPILE is probably sufficient interface there18:00:02
@r_i_s:matrix.orgris_i seeee18:02:04

Show newer messages


Back to Room ListRoom Version: 9