* Bootstrapping Zig with no binary blobs: status update and call for packages.
@ 2024-11-29 14:39 ` Hilton Chain
2024-12-01 23:19 ` Hilton Chain
0 siblings, 1 reply; 3+ messages in thread
From: Hilton Chain @ 2024-11-29 14:39 UTC (permalink / raw)
To: guix-devel
Cc: dan, Efraim Flashner, Ekaitz Zarraga, Motiejus Jakštys,
Noé Lopez
Hello Guix!
After working on 'wip-zig-bootstrap' branch for the past month[1], I'm glad to
say it's ready for testing now!
+ Zig is bootstrapped to the current release, 0.13.0!
Greatly thanks to Motiejus! I cannot find out the way without them finishing
the trickiest part. They have also published a blog post[2].
You can now use Zig 0.13.0 and everything on wip-zig-bootstrap via
‘guix time-machine’, for example:
--8<---------------cut here---------------start------------->8---
guix time-machine \
--no-channel-files \
--branch=wip-zig-bootstrap \
-- shell zig@0.13
--8<---------------cut here---------------end--------------->8---
Building 0.13 from the beginning of bootstrap chain takes around 5 hours on my
machine. Efraim is building the branch on berlin so there should be some
substitutes on ci.guix.gnu.org, at least for sources.
Patches for adjusting linking behavior have been applied to all release versions
we currently have (0.9.1, 0.10.1, 0.11.0, 0.12.1, 0.13.0). They should work
just fine without any extra workaround, please report to [1] if you encounter
any issue.
+ Cross build and Zig package manager support are available in zig-build-system.
zig-build-system now by default installs source under "/src" of package output.
Like in go-build-system, this can be disabled by setting #:install-source? to #f.
Other new arguments, #:skip-build? and #:zig-inputs, like the ones in
cargo-build-system, are available. Note that packages and sources in
#:zig-inputs must have their output names starting with "zig-".
Example packages are available in (gnu packages zig-xyz) on wip-zig-bootstrap[3].
These new features need testing, please send your favorite packages to
guix-patches@gnu.org, targeting wip-zig-bootstrap and prefixed with "zig-team",
the more the better :)
Cheers,
Hilton
---
[1]: Bootstrapping Zig with no Binary Blobs
https://issues.guix.gnu.org/74217
[2]: Zig Reproduced Without Binaries
https://jakstys.lt/2024/zig-reproduced-without-binaries/
[3]: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/zig-xyz.scm?h=wip-zig-bootstrap
^ permalink raw reply [flat|nested] 3+ messages in thread