!lheuhImcToQZYTQTuI:nixos.org

Nix on macOS

1179 Members
“There are still many issues with the Darwin platform but most of it is quite usable.” — http://yves.gnu-darwin.org194 Servers

You have reached the beginning of time (for this room).


SenderMessageTime
28 Dec 2025
@flokli:matrix.orgfloklihuuurgh: https://github.com/aws/aws-lc-rs/blob/e0aa4187a8e00e2ec69dc4efb8a10a824863f586/aws-lc-sys/builder/main.rs#L492-L50700:15:07
@flokli:matrix.orgfloklihttps://github.com/NixOS/nixpkgs/pull/47467500:23:12
@reckenrode:matrix.orgRandy EckenrodeNext in my Swift work is a detour to make XCTest and Swift Testing work on Darwin, then I want to work on the stdlib. I’m probably done for tonight though.00:50:09
@anton:nobrainer.zoneanton joined the room.08:53:51
@ihar.hrachyshka:matrix.orgIhar Hrachyshkawhere does one define common CFLAGS / CPPFLAGS for darwin?23:17:43
@ihar.hrachyshka:matrix.orgIhar Hrachyshka* where does one define common CFLAGS / CPPFLAGS for darwin? (for all nixpkgs)23:18:00
@reckenrode:matrix.orgRandy EckenrodeUsually in the wrapper. What flags?23:21:52
@ihar.hrachyshka:matrix.orgIhar Hrachyshkathe ones for SET_FDSIZE increase23:52:09
@ihar.hrachyshka:matrix.orgIhar Hrachyshkais it the wrapper postFixup?23:54:47
29 Dec 2025
@ihar.hrachyshka:matrix.orgIhar Hrachyshkais it something like this? https://github.com/NixOS/nixpkgs/pull/47491400:01:45
@reckenrode:matrix.orgRandy EckenrodeThat looks reasonable.00:28:13
@emilazy:matrix.orgemilycan you explain "except the need to pass POSIX certification"?00:38:13
@reckenrode:matrix.orgRandy Eckenrode POSIX requires that select return EINVAL when nfds is larger than SET_FDSIZE. 00:39:37
@ihar.hrachyshka:matrix.orgIhar Hrachyshkathere's some more info in https://gitlab.gnome.org/GNOME/glib/-/merge_requests/4953 but basically "POSIX requires EINVAL if nfds >= FD_SETSIZE"00:39:45
@reckenrode:matrix.orgRandy EckenrodeWhich is 1024 AFAIK for historical reasons.00:40:02
@reckenrode:matrix.orgRandy EckenrodeDarwin has a way to allow bigger sizes, but you have to opt into it.00:40:53
@emilazy:matrix.orgemily I'm not a fan of setting global compiler flags that diverge from the platform defaults and that can result in programs having hidden security vulnerabilities when compiled with standard flags. _DARWIN_UNLIMITED_SELECT especially is a kind of crazy hack 00:41:10
@emilazy:matrix.orgemilyprograms that need/can handle such a definition should set the flags themselves in their own build systems00:41:28
@reckenrode:matrix.orgRandy EckenrodeThe only issue I can see with forcing a larger size for all packages is what happens when packages request their own size (e.g., a smaller one).00:42:00
@emilazy:matrix.orgemily

This will not resolve the issue of fds limited to 1024 per se but only
disable the fault trap in libSystem. To increase the number of fds
supported by select, one also has to increase FD_SETSIZE macro value
during compilation, making sure it's defined before select header is
included.

I believe the idea is actually that you pass a heap-allocated fd buffer instead

00:42:21
@emilazy:matrix.orgemilyand then it checks whether it's on the stack or not00:42:34

Show newer messages


Back to Room ListRoom Version: 6