Commit graph

375 commits

Author SHA1 Message Date
vxtls
74da573c33 fix(rootfs): persist semantic internal-ci resume target instead of resuming from script head 2026-03-07 20:46:03 -05:00
vxtls
5d1289345b fix(zlib): keep bootstrap static and build shared zlib in steps-guix 2026-03-06 22:04:38 -05:00
vxtls
786844a255 fix(zlib): build shared and static libraries for guile-zlib 2026-03-06 13:04:18 -05:00
vxtls
65314bc926 fix(network): gate dhcp on get_network state across boots 2026-03-06 09:27:41 -05:00
vxtls
4f0f50366b fix(steps-guix): make seed packaging scripts create their own build dirs in src_unpack 2026-03-04 16:37:57 -05:00
vxtls
ea69ae93b8 fix(steps-guix): support explicit build dir for source-less seed packages 2026-03-04 16:25:28 -05:00
vxtls
893a320f6f fix(network): deterministically restore qemu networking before src_get downloads 2026-03-04 16:14:59 -05:00
vxtls
2778fe40a9 fix(env): include /bin in PATH so steps-guix script chaining can find bash 2026-03-03 20:59:12 -05:00
vxtls
f2a151e96b fix(payload-import): ASM only enable for i386 fiwix/linux, undefined for other arch 2026-03-02 13:23:36 -05:00
vxtls
197f1755e9 fix(manifest): run import_payload after move_disk so payload extraction uses main disk capacity instead of fiwix initrd 2026-03-02 12:48:10 -05:00
vxtls
e821482aaf fix(payload-import): add precise read/write/truncation diagnostics and clean partial outputs on copy failure 2026-03-02 11:45:39 -05:00
vxtls
38f8769fce fix(payload-import): mount proc via syscall in payload-import and enumerate payload candidates strictly from /proc/partitions major/minor 2026-03-02 10:42:58 -05:00
vxtls
de8378520a fix(import-payload): detect payload strictly from /proc/partitions major/minor 2026-03-02 09:51:42 -05:00
vxtls
25f8311767 fix(payload-import): align with pre-util-linux toolchain by removing mount/S_ISBLK dependencies and probing only existing block nodes 2026-03-02 09:01:30 -05:00
vxtls
6b37393704 fix(payload-import): remove mount(8) dependency and import by kernel-enumerated block devices via /proc/partitions 2026-03-02 07:53:37 -05:00
vxtls
45ba6a367d fix(gawk): add typed read_func prototype patch and validate with dry-run AND
fix(import-payload): switch to procfs /proc/partitions major/minor enumeration with magic-verified payload import
2026-03-01 23:04:16 -05:00
vxtls
17e88a89a8 fix(payload-discovery): mount proc and probe devices from /proc/partitions with magic-based selection 2026-03-01 22:08:37 -05:00
vxtls
beb9fb12f9 refactor+docs(payload.img, payload.img discovery): split offline distfiles at improve: import_payload so main image is minimal and payload.img is primary carrier, detect payload.img automaticly using magic number 2026-03-01 21:05:29 -05:00
vxtls
500bce68eb fix(payload-import): build static binary to remove /mes/loader runtime dependency in fiwix stage 2026-03-01 19:00:22 -05:00
vxtls
1b01d22612 fix(payload-import): run import after bash+device-node setup and remove kaem-stage node management 2026-03-01 16:00:13 -05:00
vxtls
9fc53eb1cd fix(payload-import): remove early-stage test/elif usage and use kaem-safe device setup 2026-03-01 15:11:07 -05:00
vxtls
e08abd6777 fix(payload-import): replace unsupported kaem elif with nested if for checksum branch 2026-03-01 14:24:18 -05:00
vxtls
f30c20b7be fix(kernel-bootstrap): restore kexec-fiwix baseline and move post-fiwix distfiles into raw payload import path
The instability was not caused by kexec-fiwix logic itself but by oversized early-stage payload pressure in kernel-bootstrap mode.
When too many distfiles are injected before the Fiwix handoff, the early memory/file-table assumptions become fragile and KVM can fail during transition.
This change restores kexec-fiwix.c to the known baseline (matching commit 984b8322...) and fixes the actual failure mode by moving non-early distfiles out of the initial image.

What changed:
- Keep only bootstrap-required distfiles in early init image.
- Generate a separate raw payload image (LBPAYLD1 format) for the remaining distfiles.
- Attach payload image as an extra disk in QEMU/bare-metal kernel-bootstrap flow.
- Add a dedicated C89/tcc-compatible importer (payload-import) that scans payload disks and copies files into /external/distfiles after jump: fiwix.
- Insert improve: import_payload immediately after jump: fiwix so the full distfile set is restored before heavy build steps continue.
- Add PAYLOAD_REQUIRED config gating so this behavior is active only in kernel-bootstrap paths that need it.

Why this design:
- Preserves minimal early environment assumptions (no dependency on full shell utilities for the copy operation itself).
- Avoids adding filesystem-construction toolchain dependencies for the payload container by using a simple length-prefixed raw format.
- Keeps bare-metal and QEMU behavior aligned: both can carry full build artifacts without overloading the early handoff stage.
- Leaves kexec-fiwix behavior deterministic and auditable by reverting to a known-good baseline implementation.
2026-03-01 13:45:16 -05:00
vxtls
11c4dd8c01 fix(kexec-fiwix): restore stable entry translation and keep interrupts disabled before trampoline jump 2026-03-01 10:52:14 -05:00
vxtls
d588f4d83f fix(kexec-fiwix): NOT TESTED, JUST A TRY compute entry point from PT_LOAD mapping instead of first-phdr heuristic 2026-03-01 09:20:52 -05:00
vxtls
9db40954d2 fix(kexec-fiwix): humm, not sure, harden initrd metadata checks and keep interrupts disabled before jump 2026-02-28 23:03:53 -05:00
vxtls
ef7127bb83 fix(bootstrap): fix guile-gnutls static libtool target and make init fail-safe without panic 2026-02-26 09:40:35 -05:00
vxtls
6fcb8f4d4a bootstrap: add stage0 image reuse for guix and simplify guix handoff flow
- add --stage0-image in rootfs.py for qemu to boot an existing kernel-bootstrap image
- when --stage0-image is combined with --build-guix-also, update BUILD_GUIX_ALSO in image config and sync /steps-guix into the image
- require stage0 /init to contain guix handoff marker instead of patching /init implicitly
- add run_steps_guix_if_requested() to make_bootable-generated /init so rebooted stage0 images can enter steps-guix directly
- run /steps-guix/0.sh with bash in after.sh
- make script-generator start mode convention-based: /steps stays kaem-first, alternate roots (e.g. /steps-guix) start in bash
- remove redundant explicit /steps config-root argument from seed/preseeded/reconfigure script-generator calls
2026-02-18 14:35:17 -05:00
vxtls
21ddab36c3 script-generator: support explicit manifest/config roots and wire all callers 2026-02-18 10:14:17 -05:00
Samuel Tyler
c6917ede1e
guile: update to 3.0.11 2026-02-11 19:09:53 +11:00
Samuel Tyler
5b5623d99e
gc: update to 8.2.12
no missed pregenerated files!
2026-02-11 19:08:43 +11:00
Samuel Tyler
5b1f43144f
libffi: update to 3.5.2 2026-02-10 11:07:15 +11:00
Samuel Tyler
b14eef084a
libunistring: update to 1.4.1, remove pregenerated files 2026-02-08 21:05:14 +11:00
Andrius Štikonas
385c0c0732
Merge pull request #573 from stikonas/gperf_repro
Remove date from gperf manpage.
2026-02-04 22:45:49 +00:00
Andrius Štikonas
c8372cd553 Remove date from gperf manpage. 2026-02-03 21:32:30 +00:00
Samuel Tyler
83cbca8304
Remove libatomic_ops 2026-01-31 22:20:42 +11:00
Samuel Tyler
d7ff4cd578
Make perl-Text-CSV reproducible 2026-01-27 19:53:03 +11:00
Samuel Tyler
70cea07218
Update texinfo to 7.2
+ fix parts.rst
2026-01-27 19:53:02 +11:00
Samuel Tyler
ad6a44e2aa
Add perl-Text-CSV for texinfo 2026-01-25 12:37:34 +11:00
Samuel Tyler
35a83169cc
autogen: build with gperf 3.3 2026-01-21 22:42:02 +11:00
Samuel Tyler
e4689a9467
Update gperf 2026-01-15 21:33:10 +11:00
Samuel Tyler
e862679ebc
Fix reproducibility 2026-01-11 22:51:12 +11:00
Samuel Tyler
2ccdba6019
Update checksums 2026-01-11 22:50:52 +11:00
Samuel Tyler
5dcb00878f
Update to gettext 0.26
gettext: Update to 0.26 + regenerate pregened files

A lot of silly pregenerated files in this one, and very slow too :(
2026-01-02 10:09:45 +11:00
Samuel Tyler
cf61139126
Move some things around for the sake of gettext
Gettext needs

- gperf
- python 2.3+

to regenerate files
2026-01-02 10:09:45 +11:00
Samuel Tyler
45c58b7d9d
Didn't think about these checksum changes 2026-01-02 10:08:21 +11:00
Samuel Tyler
923981e2d4
More openssl fixes 2026-01-01 22:57:08 +11:00
Samuel Tyler
85ea5a67c6
Reproducible openssl in new year 2026-01-01 17:20:43 +11:00
Samuel Tyler
3f67de5374
Merge pull request #558 from fosslinux/remove-libarchive
Move libarchive to end
2026-01-01 13:50:52 +11:00
Samuel Tyler
a6b07b6492
Move libarchive to end
It is not used in the actual main bootstrap.
2025-12-31 18:46:24 +11:00