!lheuhImcToQZYTQTuI:nixos.org

Nix on macOS

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

Load older messages


SenderMessageTime
2 Dec 2025
@emilazy:matrix.orgemilysee also https://github.com/NixOS/nixpkgs/pull/431202#issuecomment-3193168883 linked from there19:10:13
@weethet:catgirl.cloudWeetHetRedacted or Malformed Event19:11:16
@weethet:catgirl.cloudWeetHet * Doesn't __darwinAllowLocalNetworking already allow that anyways? 19:11:48
@weethet:catgirl.cloudWeetHet __darwinAllowLocalNetworking also allows almost unrestricted communications, no? 19:13:41
@emilazy:matrix.orgemily pf has enough juice to make that solvable in principle 19:14:05
@emilazy:matrix.orgemilycould not find anything that would let you do that with SysV IPC19:14:17
@emilazy:matrix.orgemilyafaik it is basically only Postgres that needs this and they are open to fixes for that19:14:35
@weethet:catgirl.cloudWeetHetpostgres can build with POSIX semaphores, they just don't do that bc they need an FD per every semaphore19:15:08
@weethet:catgirl.cloudWeetHetI guess a better option would be to add a postgres with posix semaphores to nixpkgs and just use that in tests19:15:43
@emilazy:matrix.orgemilysee https://www.postgresql.org/message-id/flat/a90b5411-705f-4286-bd81-a26c520a6cfb%40technowledgy.de19:26:06
@niklaskorz:matrix.orgniklaskorzwow just when I found this through the postgres archive search you post the direct link... 😂19:29:38
@emilazy:matrix.orgemilyit's linked in the Lix issue I linked :)19:30:07
@niklaskorz:matrix.orgniklaskorzwell at least I now know there is a postgres archive search19:30:43
@weethet:catgirl.cloudWeetHetIs there an alternative to sysv shared memory on macOS?19:32:30
@weethet:catgirl.cloudWeetHetThere's POSIX but it's much more limited19:32:47
@weethet:catgirl.cloudWeetHetAnd postgres is using SysV on Linux as well19:33:02
@reckenrode:matrix.orgRandy EckenrodeThe reply in the linked issue suggested Darwin futexes.19:33:23
@reckenrode:matrix.orgRandy Eckenrode * 19:33:31
@reckenrode:matrix.orgRandy Eckenrode

The next problem will be System V semaphores. I posted a patch[4] that uses macOS futexes to implement semaphores (pretty much the same way libc does on some other systems), which would fix that version of the problem. But you could presumably already use the more wasteful
named POSIX semaphores.

19:34:15
@reckenrode:matrix.orgRandy Eckenrodehttps://www.postgresql.org/message-id/flat/CA+hUKGKRQrJhVYBkmLJZsScJ434qiduWzzpB0-0_FW8z1kTjcw@mail.gmail.com#19f7d84d058a908865bafbf82233a07f19:34:40
@weethet:catgirl.cloudWeetHetFor semaphores sure but semaphores aren't the biggest problem here19:34:44
@weethet:catgirl.cloudWeetHetShared memory is19:34:48
@reckenrode:matrix.orgRandy EckenrodeThe issue is what they’re using it for, isn’t it?19:35:09
@reckenrode:matrix.orgRandy EckenrodeFutexes can be shared between processes. The MSYNC patch for Wine did something similar.19:35:33
@weethet:catgirl.cloudWeetHethttps://github.com/postgres/postgres/blob/master/src/backend/port/sysv_shmem.c19:35:50
@reckenrode:matrix.orgRandy Eckenrodehttps://github.com/marzent/wine-msync19:36:16
@weethet:catgirl.cloudWeetHetI'm surprised that only postgres is running into these issues19:38:50
@weethet:catgirl.cloudWeetHetI would expect most databases to use shared memory in one way or another19:39:04
@reckenrode:matrix.orgRandy EckenrodeUse one of the other shared memory types for shared memory and futexes for protecting the data directory?19:39:09
@reckenrode:matrix.orgRandy Eckenrode * 19:39:54

Show newer messages


Back to Room ListRoom Version: 6