| 3 Apr 2026 |
hexa | split brain on the spaces and many rooms I'm afraid. we need to upgrade them | 22:59:24 |
samasaur | what's that /clang in /var/folders/.../C? that's not temp files | 22:59:32 |
emily | but that clang cache directory is very weird, kind of makes me think it's just some leftover garbage | 22:59:40 |
emily | /C is caches iirc | 22:59:56 |
emily |
Provides the path to the user's cache directory. The directory will be created if it does not already exist. This directory is created with access permissions of 0700 and restricted by the umask(2) of the calling process and is a good location for user cache data as it will not be automatically cleaned by the system.
| 23:00:08 |
Randy Eckenrode | Lix uses $TMPDIR for dev shells. What is upstream Nix doing these days? (Though why would Hydra have dev shells?) | 23:00:32 |
hexa | sorry, I currently have lix on this box | 23:00:52 |
Randy Eckenrode | Clang module cache. | 23:01:02 |
hexa | for reasons | 23:01:05 |
emily | feel free to rm -rf /var/folders/*/*/C | 23:01:09 |
emily | should be safe | 23:01:17 |
hexa | it's funny that all of them have a clang | 23:01:39 |
emily | and I'm guessing whatever used up the space there was one-off stuff rather than anything Nix builds are doing … oh … except … no sandbox | 23:01:41 |
emily | so maybe Clang builds are actually writing in there, haha | 23:01:45 |
emily | perhaps we should point Clang at a different module cache dir in cc-wrapper or something | 23:02:03 |
hexa | yeah, no sandbox for darwin builds on hydra | 23:02:04 |
emily | or maybe we can somehow override DARWIN_USER_CACHE_DIR | 23:02:15 |
emily | for builder users | 23:02:18 |
emily | fwiw the cheap solution is probably just to do this in cron. probably with an extra /* at the end | 23:08:26 |
emily | also | 23:10:19 |
samasaur | could just remove /var/folders/* entirely, no? or at least remove the T at the same time | 23:11:25 |
emily | /var/db/diagnostics should be at least largely discardable I think (maybe sudo log erase --all will do it? I would be scared to just delete the files though). /var/db/SystemPolicyConfiguration I expect might be something funny about remembering Gatekeeper stuff for a trillion binaries from builds a day or something but that's just a guess. also completely separate but when comparing cores for base vs. pro CPUs remember that those 10 cores are split between P and E cores although Apple Silicon E cores are still plenty fast. | 23:12:45 |
emily | just e.g. if you divide it up 5 / 5 for big-parallel or something it might not be great | 23:13:44 |
Randy Eckenrode | I think I have a fix for the dotnet crash on macOS 26.4. I’m building darwin.ICU with a custom version suffix for the icu namespace. Since the C++ API isn’t ABI stable anyway, this shouldn’t break anything. | 23:13:59 |
emily | should we maybe just expose the SDK ICU stubs? I think I've seen stuff call into it even before Tahoe. in general building stuff that the system frameworks can plausibly use seems like it's a lot of latent potential pain similar to the libc++ fun we have | 23:15:12 |
emily | esp when we only use it for stuff that needs the weird Apple fork | 23:15:29 |
Randy Eckenrode | System ICU expects to read from /usr/share, which is a pain with the sandbox. | 23:15:33 |
Randy Eckenrode | Also, Linux will need darwin.ICU for Swift. | 23:15:44 |
emily | though doesn't this imply that our own libxml2 will also clash? 🫠 | 23:15:49 |
emily | (allow file-read* (subpath "/usr/share/locale")) | 23:16:09 |