| 11 May 2026 |
lorne | I don't know if it's possible, but I think the move is to move it to nix-community and grant access to the people that want to make changes, such as yourself | 10:42:21 |
thefloweringash | popping in on my other account to confirm this is also me | 10:44:07 |
viraptor | Cool, I'll start asking about the details in the next couple of weeks. | 10:44:38 |
viraptor | Oh well, may as well start now - wanna comment there @lorne ? https://github.com/orgs/nix-community/discussions/2231 | 11:32:15 |
emily | I think rcodesign is going to be a much better basis than sigtool | 11:57:15 |
emily | (with all respect to lorne!) | 11:57:21 |
emily | it is already more compatible and complete in terms of the underlying functionality | 11:57:30 |
emily | and we have derivations patching codesign into rcodesign because of that | 11:57:37 |
emily | it just needs a CLI layer | 11:57:49 |
emily | do you mean https://gregoryszorc.com/blog/2024/03/17/my-shifting-open-source-priorities/ for the post? there has been plenty of activity since then https://github.com/indygreg/apple-platform-rs/commits/main/ | 11:58:49 |
emily | and it is relied upon by a bunch of orgs to do code signing in CI | 11:59:14 |
emily | the only obstacle is that there are 2-3 things that use codesign in bootstrap, and we'd rather not have Rust in bootstrap, but all of those can and should be fixed (I have WIP patches) | 11:59:44 |
emily | * the only obstacle is that there are 2-3 things that use sigtool in bootstrap, and we'd rather not have Rust in bootstrap, but all of those can and should be fixed (I have WIP patches) | 11:59:50 |
emily | (now that the linker does its own codesigning we need a codesign(1) far less than we used to) | 12:00:11 |
emily | it would be really unfortunate to keep the ecosystem forked here IMO | 12:00:41 |
viraptor | In reply to @emilazy:matrix.org it just needs a CLI layer Yeah, I'm not fully committing to either way really. If we can improve sigtool, that's great. If we can get rcodesign to work, that's great. I did a quick PR to test the waters and open communication in https://github.com/indygreg/apple-platform-rs/pull/308 but it's been close to 3 weeks without a response. I'll just continue what I can - worst case we'll have two improved projects 🤷 | 12:18:50 |
viraptor | But it's a bit more than the CLI layer too - the project itself needs some new features, so the necessary changes can't be done as an external CLI wrapper for example. | 12:20:00 |
Randy Eckenrode | FWIW, don’t update on my current branch for your Swift Build work. It doesn’t build ATM. | 12:36:08 |
Randy Eckenrode | The bootstrap situation for Swift is horrible. | 12:36:22 |
viraptor | Thanks for the heads up. For now I'm mostly waiting for master to be ready post-release to do some more dependency groundwork / land the xcbuild fork. | 12:38:09 |
Randy Eckenrode |
- We can’t build Swift 5.10.1 using the LLVM derivation because LLVM 16 was dropped from Nixpkgs.
- We can’t build a C++ bootstrap compiler because the only version that supports that is Swift 6.2.
- For a binary bootstrap, upstream expects to find the libc headers in the sysroot. Darwin has one. Linux does not.
| 12:39:05 |
Randy Eckenrode | I’m currently leaning towards generating an SDK for Linux from libc and libstdc++ derivations. If that works, the wrapper will simply force the SDK and set up hardening flags. | 12:40:04 |
Randy Eckenrode | * | 12:40:19 |
Randy Eckenrode | This is like my fourth attempt at the bootstrap. Upstream makes some assumptions that don’t hold for us on Linux. | 12:41:50 |
viraptor | In reply to @reckenrode:matrix.org I’m currently leaning towards generating an SDK for Linux from libc and libstdc++ derivations. If that works, the wrapper will simply force the SDK and set up hardening flags. That... doesn't sound that bad overall? Unless I'm missing some serious downsides? | 12:49:54 |
Randy Eckenrode | Probably not bad, but it’s annoying to have to do it. Darwin has it easy because I switched it to exposing the SDK like native tooling expects, which is exactly what the upstream Swift binaries need. Linux does everything via wrappers, which is horrible. I probably would have been done with this last year if Linux used sysroots like Darwin uses SDKROOT. | 13:09:52 |
Randy Eckenrode | Whether I make Swift always use this sysroot on Linux, I don’t know. It would be more aligned with native tooling. If we could use a random Swiftly binary in a FHS env with Nixpkgs libc via the sysroot, that would probably make some users happy. | 13:11:03 |
Randy Eckenrode | Same if we could consume a static SDK from upstream. | 13:11:22 |
Ihar Hrachyshka | mesa 26.1 timed out for darwin in unstable so now my profiles rebuild a world :) why did it run for 2h+? https://hydra.nixos.org/build/328382105 | 14:16:07 |
K900 | I believe @[Randy Eckenrode] had some ideas | 14:16:30 |