On Tue, May 06, 2025 at 09:52:19AM +0200, Ludovic Courtès wrote: > Hi, > > Hilton Chain <hako@ultrarare.space> writes: > > > Currently we have Zig only available for x86_64-linux and aarch64-linux. > > Our Rust doesn't support 32 bit either. > > Are 32-bit architectures supported upstream?
In rust they are very supported, but I haven't checked with zig. > > 1. Support cross-compilation of these compilers. > > > > 2. Cross compile them from x86_64-linux, add the outputs into a git > > repository, distribute them with ‘guix time-machine’ invocations and > > hashes recorded. Tossing them into a git repository wouldn't be that great for the git repository. It's exactly the type of thing git-annex or git-lfs is designed to handle, but I think we could even just toss them into a directory like we do with the bootstrap-binaries. At one point in the distant past I was considering Gentoo and I saw that was how they handled GHC for some architectures. > > 3. In Guix, download these outputs and use them to bootstrap those not > > yet supported architectures. > > Sounds reasonable, but only if we cannot support those architectures > natively IMO. I actually got fairly close on rust-1.54 for i686-linux. Ignoring that for the moment, unless/until GHC upstream releases prebuilt binaries for more architectures we have no other way of supporting some of our architectures. What would it look like for people who have substitutes turned off? Would they need to build the cross-compiler themselves also? I don't see how we could query allow-substitutes? as part of a package definition and I don't like the idea of architectures relying on each other. As far as the architectures being "supported" now, I question how much using librsvg-2.40.21 counts as "support". At least this way we've built the Magic Initial Compiler™ ourselves. -- Efraim Flashner <efr...@flashner.co.il> אפרים פלשנר GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted
signature.asc
Description: PGP signature