Commit graph

362 commits

Author SHA1 Message Date
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
Samuel Tyler
3ef14c9a59
patch: update to 2.8 2025-12-29 22:30:43 +11:00
Samuel Tyler
38d3519fa6
ca-certificates: update to 3.119.1
Also only download the single needed file now instead of the 70MB
tarball.
2025-12-28 11:05:13 +11:00
Samuel Tyler
f7672536e0
Make packages without tarball sources work nicely
When there are no directories extracted, use the base build/ directory
as the build directory.
2025-12-28 11:05:12 +11:00
Samuel Tyler
af23ad1607
openssl: update to 3.6.0 + remove pregenerated files
There are a fairly significant number. The previous check was actually
wrong (all GENERATE files are generated in the build process :\). Change
Python accordingly.
2025-12-28 11:05:10 +11:00
Samuel Tyler
2e18c35df8
curl: update + remove pregened files 2025-12-28 10:42:40 +11:00
Samuel Tyler
68d6394f28
zlib: update to 1.3.1 2025-12-26 10:24:00 +11:00
Samuel Tyler
be70d23405
zlib: remove pregened files 2025-12-26 10:23:29 +11:00
Samuel Tyler
501ca4da87
Also fix up bison 3.4.1 2025-12-24 09:52:21 +11:00
Samuel Tyler
ae3a7f727e
Update checksums for bison changes 2025-12-21 22:05:03 +11:00
Samuel Tyler
1ba9c80a3b
Install each bison with different symlinks 2025-12-21 22:04:44 +11:00
Samuel Tyler
6a77c8f426
Add bison 3.8.6 2025-12-19 22:26:27 +11:00
Samuel Tyler
1b784cdf04
Add bison 3.7.6 2025-12-19 22:21:59 +11:00
Samuel Tyler
00808ed08a
Replace bison 3.4.2 with bison 3.6.4 2025-12-19 22:18:05 +11:00