https://developer.apple.com/documentation/fskit
No idea what the performance is like.
However, over the last few years, Apple’s compilers have gotten even more enthusiastic than before about caching and “content addressable storage”:
https://llvm.org/devmtg/2024-10/slides/techtalk/Rastogi-Fine...
Which is normally a good thing, but may exacerbate the issue described in the post where, by enforcing isolation, you end up cutting off the compiler from its caches and making the build slower.
I think the ideal solution would be for Bazel to somehow know about and integrate with LLVM’s CAS.
edit: although just figuring out how to do “explicit module builds” with Swift and Clang would probably get you most of the way.
Or does using Go ruin everything again?
(Also it seems like it should in principle be possible to keep the symlink forest around and only delete other files)
Go isn't the only language ecosystem that likes to make statically linked binaries. Rust, OCaml and Haskell etc also prefer this.
Or am I missing something?
I think dynamic linking is mainly popular in the C (and perhaps C++) world? And I guess for commonly interpreted languages like Python, more or less.
dangoodmanUT•16h ago
https://eclecticlight.co/2025/06/12/macos-tahoe-brings-a-new...
jitl•13h ago
As far as I can tell, the containerization framework seems like it’s for running Linux microvms, and doesn’t seem applicable to people trying to do macOS builds. I mean, if you just want to run Bazel in a Linux VM sure it will do fine, but you can already run Bazel in a Linux vm on your Mac with Docker.app. Maybe I missed something with the containerization docs but all I saw was EXT4, OCI Linux images, etc. no Mac thingies.
tough•13h ago
there's also osx-kvm (non-apple) https://github.com/kholia/OSX-KVM