| 9 Jan 2026 |
alexfmpe | so maybe ghc isn't configuring gcc properly for loongarch? | 12:37:33 |
| 11 Jan 2026 |
| ivan joined the room. | 01:44:54 |
| lukas joined the room. | 03:02:23 |
| ghpzin changed their display name from ghpzin (moved to @ghpzin:envs.net) to ghpzin. | 15:04:40 |
| @ghpzin:envs.net left the room. | 16:21:10 |
| 12 Jan 2026 |
| jimmie joined the room. | 08:05:53 |
| jimmie set a profile picture. | 08:12:16 |
| jimmie changed their display name from zigzen to jimmie. | 08:12:34 |
| jappie joined the room. | 17:28:20 |
| 13 Jan 2026 |
| jopejoe1 (4094@epvpn) changed their display name from jopejoe1 (4094@39c3) to jopejoe1 (4094@epvpn). | 08:24:56 |
| 14 Jan 2026 |
| BPub changed their display name from Robert to BPub. | 18:49:26 |
| 16 Jan 2026 |
| keiwop joined the room. | 12:43:55 |
| neobrain joined the room. | 13:41:20 |
| 17 Jan 2026 |
Theo Paris | Is there a reason nixpkgs only has cctools for darwin, and not linux hosts? I need cctools-port to be able to cross compile pongoOS 🙃 | 22:35:53 |
Theo Paris | * Is there a reason nixpkgs only has cctools for darwin, and not linux hosts? I need cctools-port to be able to cross compile pongoOS 🙃
Attempting to build it with --impure results in missing macos headers | 22:36:37 |
emily | Darwin cross doesn't work in general right now. our ld64 patch set is incompatible with cctools-port and the latter was lagging far behind at the time we switched to our patches | 22:38:24 |
emily | IIRC cctools-port patches are kind of crufty in various ways too. | 22:39:13 |
| 18 Jan 2026 |
Randy Eckenrode | cctools-port doesn’t support LTO and does code signing in a weird way. | 19:55:24 |
Randy Eckenrode | (Or, rather, LTO is broken.) | 19:55:34 |
Randy Eckenrode | We patch libcodedirectory to support the missing functionality. They exec sigtool, which is awful. | 19:56:15 |
Randy Eckenrode | The expectation in tools is that a binary linked and signed automatically by a linker will have the linker-signed flag set. That causes them to update the signature after processing them (e.g., by strip and install_name_tool). | 19:57:01 |
Randy Eckenrode | sigtool doesn’t set the flag and is effectively unmaintained, so it probably never will. | 19:57:18 |
Randy Eckenrode | After Swift, I plan to switch Darwin to use LLD, so cross-compilation should be easier. | 19:57:49 |
Randy Eckenrode | * | 19:57:58 |
Randy Eckenrode | Or to answer the question more directly, we’re using our own port. It’s been a low priority making Linux to Darwin cross work. Probably the easiest way now is to use LLVM binutils in cross, force -fuse-ld=lld, and hope for the best. | 19:59:19 |
Randy Eckenrode | Note that Darwin bintools is almost entirely LLVM tools anyway. The only tools that aren’t are the linker, codesign_allocate, install_name_tool, lipo, and ranlib. Even if I can’t make LLD the default, those will be switched to LLVM or dropped. cctools won’t be in the bootstrap for 26.05 regardless. | 20:01:53 |
Randy Eckenrode | codesign_allocate is useless on macOS. macOS native tools don’t need to pre-allocate. It’s only needed by sigtool, which can hardcode a reference to it. install_name_tool doesn’t work on binaries with reexports, but those are rare. Ones that need to reexport can use the version from cctools. lipo doesn’t work on archives, which breaks Meson tests. I’m inclined to disable those tests. ranlib isn’t fully compatible with the cctools one (mostly in terms of flags Xcode passes), but enough stuff should work we can use the LLVM in most cases. | 20:03:32 |
Randy Eckenrode | *
codesign_allocate is useless on macOS. macOS native tools don’t need to pre-allocate. It’s only needed by sigtool, which can hardcode a reference to it.
install_name_tool doesn’t work on binaries with reexports, but those are rare. Ones that need to reexport can use the version from cctools.
lipo doesn’t work on archives, which breaks Meson tests. I’m inclined to disable those tests.
ranlib isn’t fully compatible with the cctools one (mostly in terms of flags Xcode passes), but enough stuff should work we can use the LLVM in most cases.
| 20:04:01 |
Randy Eckenrode | I opted to do my own ports because at the time cctools-port was behind Apple’s releases. They’ve since caught up (AFAIK by treating the port as a patch set on top of Apple’s releases, which is also what I do), but we’re not switching back (e.g., because of the LTO and code-signing issues). | 20:07:13 |
| 19 Jan 2026 |
thefloweringash | Maybe slightly off topic, but I happened to see these messages.sigtool was written exclusively for nixpkgs. If it's no longer required I'll gladly archive it. If it's actually still required but causing problems by being unmaintained I can transfer it to a nixpkgs owned github organization. And as always, thank you for hard work in this area | 10:19:04 |