!lheuhImcToQZYTQTuI:nixos.org

Nix on macOS

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

Load older messages


SenderMessageTime
9 May 2026
@k900:0upti.meK900Can we not somehow sandbox them away17:15:57
@emilazy:matrix.orgemilybecause no FS namespaces on macOS17:16:02
@k900:0upti.meK900So is the answer just literally no?17:16:20
@emilazy:matrix.orgemilyyou would have to ban builds when any outputs are present17:16:25
@emilazy:matrix.orgemilywhich might be okay in practice17:16:29
@emilazy:matrix.orgemilywould also likely mean not GCing outputs separately probably17:16:45
@k900:0upti.meK900For Hydra it's probably fine to just kill the outputs in a prebuild hook or something17:16:57
@emilazy:matrix.orgemilywell no since other things could depend on them17:17:03
@emilazy:matrix.orgemily but they should just get substituted 17:17:07
@reckenrode:matrix.orgRandy Eckenrode

Yeah. Found a leaf package that can be used to reproduce.

$ nix build --no-link -f . darwin.dyld
$ nix store delete $(nix eval --raw -f . darwin.dyld.out)
1 store paths deleted, 2.92 MiB freed

$ nix build --no-link -f . darwin.dyld
$ result/bin/dsc_extractor
fish: Job 1, 'result/bin/dsc_extractor' terminated by signal SIGKILL (Forced quit)
17:17:09
@emilazy:matrix.orgemilythe question is why that's not happening. it could be an upload-side issue17:17:12
@emilazy:matrix.orgemily I've asked about it in #infra:nixos.org 17:17:16
@reckenrode:matrix.orgRandy Eckenrode *

Yeah. Found a leaf package that can be used to reproduce.

$ nix build --no-link -f . darwin.dyld
$ nix store delete $(nix eval --raw -f . darwin.dyld.out)
1 store paths deleted, 2.92 MiB freed

$ nix build -f . darwin.dyld
$ result/bin/dsc_extractor
fish: Job 1, 'result/bin/dsc_extractor' terminated by signal SIGKILL (Forced quit)
17:17:18
@emilazy:matrix.orgemilybecause I don't know Hydra well enough to guess at the likely causes17:17:22
@k900:0upti.meK900I know the outputs are pushed one by one17:17:33
@emilazy:matrix.orgemilyright17:17:44
@emilazy:matrix.orgemilybut is it really likely for an upload to just die and immediately give up half-way through outputs?17:17:52
@emilazy:matrix.orgemilysounds weird to me, but I don't know17:17:59
@emilazy:matrix.orgemilyhypotheses that involve "Hydra's connection to S3 is just weirdly flaky" don't immediately strike me as plausible which is why I thought the whole thing was probably a hallucinated red herring going in17:18:27
@k900:0upti.meK900No but I wonder if it's possible we're firing off a build before all the outputs are fully done and committed17:18:32
@emilazy:matrix.orgemilyoh, yeah17:18:43
@emilazy:matrix.orgemilythe race condition seems plausible since we do get multiple builds happening on Hydra, I did mention that in an earlier comment17:18:57
@emilazy:matrix.orgemilybut I guess forgot :)17:19:01
@reckenrode:matrix.orgRandy Eckenrode

This reproduces from master.

$ nix shell github:NixOS/nixpkgs#darwin.dyld --command dsc_extractor
$ nix develop github:NixOS/nixpkgs#darwgithub:NixOS/nixpkgs#darwin.dyld —command dsc_extractor/nixpkgs#darwin.dyld.out)
$ nix shell --option substitute false github:NixOS/nixpkgs#darwin.dyld —command dsc_extractor
17:24:11
@reckenrode:matrix.orgRandy Eckenrode *

This reproduces from master.

$ nix shell github:NixOS/nixpkgs#darwin.dyld --command dsc_extractor
$ nix store delete $(nix eval --raw github:NixOS/nixpkgs#darwin.dyld.out)
$ nix develop github:NixOS/nixpkgs#darwgithub:NixOS/nixpkgs#darwin.dyld —command dsc_extractor/nixpkgs#darwin.dyld.out)
$ nix shell --option substitute false github:NixOS/nixpkgs#darwin.dyld —command dsc_extractor
17:24:40
@reckenrode:matrix.orgRandy Eckenrode *

This reproduces from master.

$ nix shell github:NixOS/nixpkgs#darwin.dyld --command dsc_extractor
$ nix store delete $(nix eval --raw github:NixOS/nixpkgs#darwin.dyld.out)
$ nix develop github:NixOS/nixpkgs#darwgithub:NixOS/nixpkgs#darwin.dyld —command dsc_extractor
$ nix shell --option substitute false github:NixOS/nixpkgs#darwin.dyld —command dsc_extractor
17:25:00
@emilazy:matrix.orgemily yeah, I mean it's unsurprising that this does break things, it's the same as --rebuild 17:25:03
@emilazy:matrix.orgemilywhat surprises me is that there's at least one piece of evidence that it's what's causing the persistent Hydra issues17:25:14
@reckenrode:matrix.orgRandy Eckenrode *

This reproduces from master.

$ nix shell github:NixOS/nixpkgs#darwin.dyld --command dsc_extractor
$ nix store delete $(nix eval --raw github:NixOS/nixpkgs#darwin.dyld.out)
$ nix develop github:NixOS/nixpkgs#darwgithub:NixOS/nixpkgs#darwin.dyld --command dsc_extractor
$ nix shell --option substitute false github:NixOS/nixpkgs#darwin.dyld --command dsc_extractor
17:25:18
@emilazy:matrix.orgemilygiven ^, it didn't seem like there would be common cases where Hydra would be building only some outputs17:25:32

Show newer messages


Back to Room ListRoom Version: 6