!lheuhImcToQZYTQTuI:nixos.org

Nix on macOS

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

Load older messages


SenderMessageTime
12 Jan 2026
@emilazy:matrix.orgemily Randy Eckenrode: how valuable are the libiconv tests? 16:12:35
@emilazy:matrix.orgemily it looks like ATF pulls in Lua and soon Tcl to the bootstrap because of running them. maybe they could just be a passthru.tests instead? 16:13:49
@emilazy:matrix.orgemilythe Tcl would be via SQLite; if we can disable SQLite in our bootstrap Python then we get SQLite out of the bootstrap and avoid Tcl16:14:12
@emilazy:matrix.orgemily(will try to review the LLVM override PR today btw, swamped…)16:14:26
@reckenrode:matrix.orgRandy Eckenrode I implemented them as a check to make sure it’s working correctly. We could move them passthru.tests as long as they are run at some point. 16:27:43
@reckenrode:matrix.orgRandy EckenrodeI’m pretty sure I address all feedback. It’s not required for Swift 6.2, but it may be for Swift 6.3.16:28:27
@emilazy:matrix.orgemily samasaur: if you would like an exploratory stdenv errand to get your feet wet, it would be interesting to float darwin.libiconv's doInstallCheck to a package parameter, turn it off by default, add a passthru.tests that overrides it on, disable withSqlite in the pkgs/stdenv/darwin/default.nix Python, and then a bunch of stuff can probably be dropped from stage1Packages (e.g. kyua, sqlite, atf at least) and the use of bootstrapStdenv in atf 16:47:50
@emilazy:matrix.orgemily and then we can see how much that drops from nix-store -qR <stdenv.drv> | sed 's|/nix/store/[a-z0-9]*-||' | sort 16:48:22
@emilazy:matrix.orgemily(of course we need to make sure it actually builds too)16:48:27
@samasaur:matrix.orgsamasaurthat seems straightforward enough (🤞), will give it a shot later today17:57:14
@emilazy:matrix.orgemilyfeel free to ping me if you need any help :)18:06:02
@emilazy:matrix.orgemily looks like there's already overrides/stage1Packages in there that are no longer used… e.g. scons 18:06:51
@emilazy:matrix.orgemily Randy Eckenrode: do you think there's a way we could make stage1Packages error out if packages aren't used so we know we can clean up overrides etc.? 18:07:12
@samasaur:matrix.orgsamasauris there an easy way to check whether packages are unused, even manually? the only thing that's coming to mind is removing them and running builds18:09:13
@samasaur:matrix.orgsamasaurI mean in smaller situations spot checking/LSPs will work but my impression is that this case is too complex for those to work well18:09:39
@emilazy:matrix.orgemily nix-store -qR again 18:10:58
@emilazy:matrix.orgemily
shion:~/Developer/nixpkgs  (empty) (no description set)
❭ nix-store -qR /nix/store/26mkrardz97d9abbqwcrs2s0q0nbln3w-stdenv-darwin.drv | rg scons

shion:~/Developer/nixpkgs  0|1  (empty) (no description set)
❭ 
18:11:10
@emilazy:matrix.orgemily so the scons overrides are just dead code 18:11:26
@emilazy:matrix.orgemily

in fact a ton of stage1Packages seem to be

shion:~/Developer/nixpkgs  0|1  (empty) (no description set)
❭ nix-store -qR /nix/store/26mkrardz97d9abbqwcrs2s0q0nbln3w-stdenv-darwin.drv | rg cyrus

shion:~/Developer/nixpkgs  0|1  (empty) (no description set)
❭ nix-store -qR /nix/store/26mkrardz97d9abbqwcrs2s0q0nbln3w-stdenv-darwin.drv | rg brotli

shion:~/Developer/nixpkgs  0|1  (empty) (no description set)
❭ nix-store -qR /nix/store/26mkrardz97d9abbqwcrs2s0q0nbln3w-stdenv-darwin.drv | rg subversion

shion:~/Developer/nixpkgs  0|1  (empty) (no description set)
❭ 

now I'm wondering if I've somehow misunderstood how stage1Packages works

18:12:23
@reckenrode:matrix.orgRandy Eckenrode passthru.tests that greps nix-store -qR <stdenv.drv> for those paths and fails if they aren’t there? 18:13:36
@emilazy:matrix.orgemilyI guess there's not much we can do at eval time18:14:01
@samasaur:matrix.orgsamasaur
In reply to @emilazy:matrix.org
nix-store -qR again
ah i was thinking this would show them even if they were unused
18:14:36
@reckenrode:matrix.orgRandy Eckenrode I would like to try structuring the bootstrap as a cross (with prevStage really being buildPackages). It probably wouldn’t reduce the number of builds, but it might allow is to drop most of the overlays. 18:15:02
@reckenrode:matrix.orgRandy EckenrodeBut that is like 26.11 or 27.05 stuff.18:15:28
@reckenrode:matrix.orgRandy EckenrodeAside from this cleanup, I want to switch Darwin to LLD by default. That will require some work because LLD is not wrapped properly for that.18:16:01
@reckenrode:matrix.orgRandy EckenrodeNo cctools or ld64 should be in the bootstrap at that point.18:16:51
@emilazy:matrix.orgemily hmm, do we actually use python3-bootstrap as our final pkgs.python3? 18:17:36
@emilazy:matrix.orgemilydoes that mean Darwin gets Python without any LTO?18:17:41
@reckenrode:matrix.orgRandy EckenrodeI also want to drop the source releases from the SDK and vendor the needed sources along with the others.18:18:00
@emilazy:matrix.orgemily or is it just that we use one python3-bootstrap build throughout the entire bootstrap but then it gets built once more for the real python3? 18:18:13

Show newer messages


Back to Room ListRoom Version: 6