!lheuhImcToQZYTQTuI:nixos.org

Nix on macOS

1182 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
22 Jan 2026
@ivy:fargone.shIvyi dont think it is?11:08:02
@ivy:fargone.shIvyerror: tool 'metal' not found11:08:34
@k900:0upti.meK900I think the libraries are available but the CLI tool isn't because we can't redistribute it11:10:43
@ivy:fargone.shIvyahh i see11:11:16
@ivy:fargone.shIvyhow do we get the cli tool then?11:11:24
@k900:0upti.meK900AFAIK the answer is "you don't"11:11:56
@k900:0upti.meK900But I may not be up to date on the state of the art11:12:03
@ivy:fargone.shIvyokay utter collapse for ghostty then11:13:58
@ivy:fargone.shIvycause thats where ive gotten stuck building with nix11:14:10
@ivy:fargone.shIvyhttps://github.com/ghostty-org/ghostty/blob/1003a7e62209ef78895b3bb03b82ad345bec1965/src/build/MetallibStep.zig#L54-L6711:14:45
@ivy:fargone.shIvythese lines run metal to produce ir11:14:53
@ivy:fargone.shIvyas i've patched the other problems to not need ios toolchain11:15:19
@ivy:fargone.shIvy
compile lib ghostty ReleaseFast aarch64-macos.13.0 transitive failure
      |  +- metallib Ghostty (Ghostty.metallib) transitive failure
      |  |  +- metal Ghostty (Ghostty.ir) failure
      |  |  +- metal Ghostty (Ghostty.ir) (reused)
      |  +- WriteFile props.zig (+2 more reused dependencies)
      |  +- WriteFile props.zig (+2 more reused dependencies)
      |  +- metallib Ghostty (Ghostty.metallib) (+2 more reused dependencies)
      |  +- WriteFile props.zig (+2 more reused dependencies)
      |  +- WriteFile props.zig (+2 more reused dependencies)
      |  +- run exe uucode_build_tables (tables.zig) (+1 more reused dependencies)
      |  +- run exe uucode_build_tables (tables.zig) failure
      +- compile lib ghostty ReleaseFast aarch64-macos.13.0 (+6
11:19:35
@ivy:fargone.shIvywhere im able to get this far11:19:41
@ivy:fargone.shIvybut it requires compilation of shaders11:32:10
@reckenrode:matrix.orgRandy EckenrodeSigning with a developer cert isn’t really supported.11:40:59
@reckenrode:matrix.orgRandy EckenrodeDisable pre-compilation or compile them offline and vendor the resulting files.11:41:39
@enzime:nixos.dev@enzime:nixos.dev left the room.15:02:09
23 Jan 2026
@reckenrode:matrix.orgRandy Eckenrode My current thinking on handling the stdlib is to make Swift first look for an environment variable NIX_STDLIB_RUNTIME_${swift_tuple} then fall back to looking by path. However, I need to dig into the Swift code to make sure that is possible. If so, it would allow for multiple, target-dependent stdlibs to Just Work™. 01:11:17
@reckenrode:matrix.orgRandy Eckenrode * My current thinking on handling the stdlib is to make Swift first look for an environment variable NIX_SWIFT_STDLIB_RUNTIME_${swift_tuple} then fall back to looking by path. However, I need to dig into the Swift code to make sure that is possible. If so, it would allow for multiple, target-dependent stdlibs to Just Work™. 01:11:37
@reckenrode:matrix.orgRandy Eckenrode Note: No NIX_SWIFT_STDLIB_RUNTIME_FOR_BUILD or FOR_TARGET stuff. The tuple will be a platform property that the stdlib’s hook will use to set the variable. 01:12:13
@reckenrode:matrix.orgRandy Eckenrode That should allow me to avoid wrappers and allow the same swiftc to support multiple -target platforms. 01:12:37
@reckenrode:matrix.orgRandy EckenrodeIt would be nice if we can set those up like the SDK, but I’m skeptical, and it doesn’t work right for Darwin due to having multiple SDKs (the Swift stdlib and the standard, Apple one).01:13:18
@reckenrode:matrix.orgRandy Eckenrode * My current thinking on handling the stdlib is to make Swift first look for an environment variable NIX_SWIFT_STDLIB_RUNTIME_${swift_triple} then fall back to looking by path. However, I need to dig into the Swift code to make sure that is possible. If so, it would allow for multiple, target-dependent stdlibs to Just Work™. 01:51:34
@reckenrode:matrix.orgRandy EckenrodeI am going to explore SDKs though. There is some neat stuff with toolchains, but will it work?01:51:46
@reckenrode:matrix.orgRandy Eckenrode For some reason, swift build is only using the linker in my toolset configuration. 03:11:23
@reckenrode:matrix.orgRandy EckenrodeThat’s not very helpful.03:11:35
@ivy:fargone.shIvylike link them into zig cache?03:12:46
@reckenrode:matrix.orgRandy Eckenrode No idea for Zig. https://github.com/NixOS/nixpkgs/blob/b494a615768aac2f4b0e2839fd23ec02236368fa/pkgs/tools/security/pinentry/mac.nix is an example of a package that does it for .nib files with xcbuild to avoid depending on ibtool. I assume something could be done similarly for Zig. 03:19:22
@reckenrode:matrix.orgRandy EckenrodeAfter messing with it for a bit, I don’t think Swift SDKs are going to do what we need. Swift doesn’t pick up the toolchain stuff from it. We’d have to merge the Swift stdlib and Darwin SDK to make it work on Darwin. It also seems to get funny ideas about triples and deployment targets.03:44:31

Show newer messages


Back to Room ListRoom Version: 6