From 35c358fe5a0355a83e92dd0854828e9344e86289 Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Thu, 18 Dec 2025 18:38:57 +0100 Subject: [PATCH 1/7] steps/utils-std-0.1.2: add --- steps/utils-std-0.1.2/pass1.sh | 18 ++++++++++++++++++ steps/utils-std-0.1.2/sources | 1 + 2 files changed, 19 insertions(+) create mode 100644 steps/utils-std-0.1.2/pass1.sh create mode 100644 steps/utils-std-0.1.2/sources diff --git a/steps/utils-std-0.1.2/pass1.sh b/steps/utils-std-0.1.2/pass1.sh new file mode 100644 index 00000000..92871648 --- /dev/null +++ b/steps/utils-std-0.1.2/pass1.sh @@ -0,0 +1,18 @@ +# SPDX-FileCopyrightText: 2025 Haelwenn (lanodan) Monnier +# +# SPDX-License-Identifier: GPL-3.0-or-later + +src_prepare() { + default + + sed -i s/_Noreturn// libutils/err.h + + # getconf: to avoid changing libtool checksums, although likely means better values + # which: to avoid changing checksums of packages like perl-5.36.3_0 + sed -i '/^commands="$/,/^"$/{ s,getconf,, ; s,which,, }' configure +} + +src_configure() { + chmod +x configure + ./configure PREFIX="${PREFIX}" CC=tcc AR=tcc\ -ar +} diff --git a/steps/utils-std-0.1.2/sources b/steps/utils-std-0.1.2/sources new file mode 100644 index 00000000..52d44491 --- /dev/null +++ b/steps/utils-std-0.1.2/sources @@ -0,0 +1 @@ +f https://distfiles.hacktivis.me/releases/utils-std/utils-std-0.1.2.tar.gz aecc9cd81b3505322d9bfcc413627e41f777536cd694029794540b739e74f353 From 3f3893e45f6f209fc1e5be6faa300cb68e2563ee Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Wed, 11 Feb 2026 21:49:03 +0100 Subject: [PATCH 2/7] steps/linux-headers-4.14.341-openela: Fix option ordering of mkdir -p With a POSIX conforming getopt() options ends at first non-option, so the -p has to be before the arguments. --- steps/linux-headers-4.14.341-openela/pass1.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/steps/linux-headers-4.14.341-openela/pass1.sh b/steps/linux-headers-4.14.341-openela/pass1.sh index 09ff7206..a80157fd 100755 --- a/steps/linux-headers-4.14.341-openela/pass1.sh +++ b/steps/linux-headers-4.14.341-openela/pass1.sh @@ -27,7 +27,7 @@ src_install() { # We "compile" the headers here because it is easier for d in include/uapi arch/x86/include/uapi; do cd "${d}" - find . -type d -exec mkdir "${DESTDIR}${PREFIX}/include/{}" -p \; + find . -type d -exec mkdir -p "${DESTDIR}${PREFIX}/include/{}" \; headers="$(find . -type f -name "*.h")" cd "${base_dir}" for h in ${headers}; do From b58a24bf156429efd2001022efcee5ae3fc7ff35 Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Wed, 11 Feb 2026 22:29:44 +0100 Subject: [PATCH 3/7] steps/e2fsprogs-1.45.7: Add -D to $INSTALL so parent dirs get created --- steps/e2fsprogs-1.45.7/pass1.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/steps/e2fsprogs-1.45.7/pass1.sh b/steps/e2fsprogs-1.45.7/pass1.sh index 05979188..1b4daa34 100755 --- a/steps/e2fsprogs-1.45.7/pass1.sh +++ b/steps/e2fsprogs-1.45.7/pass1.sh @@ -37,7 +37,8 @@ src_prepare() { src_configure() { # defrag fails to build with musl 1.2.4 - ./configure --prefix="${PREFIX}" \ + INSTALL='/usr/bin/install -c -D' \ + ./configure --prefix="${PREFIX}" \ --sbindir="${PREFIX}/bin" \ --disable-tls \ --disable-defrag \ From 3c32fa4150ce6008c673991150e6a2b2bb1a9ed2 Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Thu, 20 Nov 2025 06:11:50 +0100 Subject: [PATCH 4/7] use utils-std-0.1.2 instead of coreutils-6.10 utils-std-0.1.2 doesn't replaces coreutils-5.0/pass1 due to depending on: * A shell for ./configure, making the bash implicit jump messy * POSIX C interfaces which mes-libc lacks Also coreutils-6.10 is only for utilities which utils-std provides: date, mktemp, sha256sum --- parts.rst | 8 ++++---- steps/SHA256SUMS.pkgs | 2 +- steps/manifest | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/parts.rst b/parts.rst index d5e0db3a..5f6a308f 100644 --- a/parts.rst +++ b/parts.rst @@ -521,11 +521,11 @@ coreutils 5.0 including ``comm``, ``expr``, ``dd``, ``sort``, ``sync``, ``uname`` and ``uniq``. This fixes a variety of issues with existing ``coreutils``. -coreutils 6.10 +utils-std 0.1.2 ============== -We build ``date``, ``mktemp`` and ``sha256sum`` from coreutils 6.10 which are -either missing or don't build correctly in 5.0. Other utils are not built at -this stage. + +Replaces most of coreutils 5.0 as well as providing few more utilities like +``date``, ``mktemp``, and ``sha256sum`` gawk 3.0.4 ========== diff --git a/steps/SHA256SUMS.pkgs b/steps/SHA256SUMS.pkgs index aefab43a..5d2b7561 100644 --- a/steps/SHA256SUMS.pkgs +++ b/steps/SHA256SUMS.pkgs @@ -35,7 +35,6 @@ a0156d06536936dee9e696cbf6fb41087eaa1ce5cbc5d6e0067d3fd952ba7060 bison-3.8.2_0. e8271c1213b6cc7c9ae2ddb018cd093cbbd5f6e842548c0747ce95b13b6b9447 bzip2-1.0.8_0.tar.bz2 3ab45eca94432316ee120006686cc334a23187cbb795b550601d6288ccded111 ca-certificates-3.119.1_0.tar.bz2 982a3496ce3277c562acc896ba796939fe55a37432b2c76ab16b76e051a045a2 coreutils-5.0_0.tar.bz2 -27f283c42e2728d0d0682d56ada44b11ff11d07843e595c133a43f4c6aef53d0 coreutils-6.10_0.tar.bz2 61f5a1654935fbfd5358116bf2267236676aace3370cc6aaf8ff4fb1b4d020b2 coreutils-9.4_0.tar.bz2 912a256dd9a17deb6b48d1fe4c435313b242fa3bb63afef726e7c8ebe0b6a8ca curl-8.17.0_0.tar.bz2 a49f13bb73144bf9a8e70bc27cc7e0adce0f136762da82fc05e77c0382628c0f curl-8.17.0_1.tar.bz2 @@ -149,6 +148,7 @@ ab49972345d0c05f79b9370530829792e8c5c3b7fe283fc90e1dff26c2d0f6db tcc-0.9.27_2.t 8576a7c99802bb462dd044ef7df7263192f1acfabde47462afd6145ffec1e4f1 tcc-0.9.27_3.tar.bz2 252cc7226bef56e9dc591433ab2176cf1dd54dd18de20535edb708d5c6c21dce texinfo-7.2_0.tar.bz2 b54b1aa40dc08eec51982fd581a64a900e2598ba29acc6ca9c2b1b2321603b49 util-linux-2.19.1_0.tar.bz2 +fec6ac470561bfa72f29daabea9280b36dfa4f5cf0f0e75733c6410fbc461a05 utils-std-0.1.2_0.tar.bz2 9075b6832d8d7b094775c8e6ead763851aec96f4559d8cd62ce0a25e7a8a70ab which-2.21_0.tar.bz2 d7357c5a73e4a0adb07220392316185716c42003fe7e63b63ba8493f12f3621b xz-5.6.4_0.tar.bz2 9b10db90e06129fd174d48edb60a6d1e2fa72944fccef420431f8e836adcf972 zlib-1.3.1_0.tar.bz2 diff --git a/steps/manifest b/steps/manifest index 1f878a28..6f0db2fc 100644 --- a/steps/manifest +++ b/steps/manifest @@ -78,7 +78,7 @@ build: bison-3.4.1 build: bison-3.4.1 build: diffutils-2.7 build: coreutils-5.0 -build: coreutils-6.10 +build: utils-std-0.1.2 build: gawk-3.0.4 build: perl-5.000 build: perl-5.003 From 86f5932fc6bc621a48fb9486cf07d7d3bf884c32 Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Sat, 14 Feb 2026 19:53:43 +0100 Subject: [PATCH 5/7] steps/SHA256SUMS.pkgs: update gettext-0.26_0.tar.bz2 checksum Only difference is javaversion.class getting properly removed. --- steps/SHA256SUMS.pkgs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/steps/SHA256SUMS.pkgs b/steps/SHA256SUMS.pkgs index 5d2b7561..9f2c0ba9 100644 --- a/steps/SHA256SUMS.pkgs +++ b/steps/SHA256SUMS.pkgs @@ -57,7 +57,7 @@ b4fafdabdbd8c1f9f7c96fc4677023a8151fe2afe0702e3dee920157b30deb98 gc-8.0.4_0.tar d34de902de6de9204abedb834c4c39fbb95b993e545fbb090de2b028fa1d4a61 gcc-4.0.4_0.tar.bz2 2f13b3306832d882536c97d0302f2ec1801193086dbbe62388f930858e5728a3 gcc-4.0.4_1.tar.bz2 931f105104b446dff5be30927e6e98d798844e6cd446b246f30def11984a9587 gcc-4.7.4_0.tar.bz2 -38b015fe07ed755377b78f8ac8815d8bb57fa8c79293110522231250a6ad8a6f gettext-0.26_0.tar.bz2 +657d077d52e945aa0de47dc94295c9aae1c9dfb2c12e96f4e3dee6d067009c8c gettext-0.26_0.tar.bz2 96f33b53c24f5f46a23c2b9eef8147e684c796889a83bdd39254a73393594a49 gmp-6.2.1_0.tar.bz2 061bb98da6364ea67c4c1a515ffe06296b4dea045ba3d1b5e229416103f50688 gperf-3.3_0.tar.bz2 c1989fc2855dbb0350c4e5b677028306614a9f4b5cb6c01fd459c5e1abf592b9 grep-2.4_0.tar.bz2 From 71db76063877225d05dd02aff4a500d3f7153a96 Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Sun, 15 Feb 2026 04:43:51 +0100 Subject: [PATCH 6/7] README: fix typo on builder-hex0-x86-stage1.hex0 --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 154c860c..aa339bdf 100644 --- a/README.rst +++ b/README.rst @@ -52,7 +52,7 @@ Without using Python: * Generate ``builder-hex0-x86-stage1.img`` from hex0 source: - ``sed 's/[;#].*$//g' builder-hex0/builder-hex0-x86-stage1-hex0 | xxd -r -p`` + ``sed 's/[;#].*$//g' builder-hex0/builder-hex0-x86-stage1.hex0 | xxd -r -p`` * On the first image, write ``builder-hex0-x86-stage1.img`` to it, followed by ``kernel-bootstrap/builder-hex0-x86-stage2.hex0``, followed by zeros padding the disk to the next sector. From 655faf33941b882239da7e3c3599cf32dac8c1db Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Sun, 15 Feb 2026 04:44:20 +0100 Subject: [PATCH 7/7] lib/utils.py: put image path after options --- lib/utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/utils.py b/lib/utils.py index c1eca8cd..99898c39 100755 --- a/lib/utils.py +++ b/lib/utils.py @@ -45,7 +45,7 @@ def create_disk(image, disk_type, fs_type, size, bootable=False, mkfs_args=None) offset = str(1024 * 1024 * (1024 if bootable else 1)) run('parted', '--script', image, 'mklabel', disk_type, 'mkpart', 'primary', fs_type, offset + 'B', '100%') - run('mkfs.' + fs_type, image, '-E', 'offset=' + offset, *mkfs_args) + run('mkfs.' + fs_type, '-E', 'offset=' + offset, *mkfs_args, image) def mount(source, target, fs_type, options='', **kwargs): """Mount filesystem"""