From f0b06a1685e65f5bb86e9a6653a8385497392148 Mon Sep 17 00:00:00 2001 From: Astral <208268648+AstralZX@users.noreply.github.com> Date: Tue, 1 Sep 2026 08:04:35 +0200 Subject: [PATCH] Remove ISO build tooling (deferred to later) --- Makefile | 7 +++---- README.md | 7 +++---- iso/build-iso.sh | 51 ----------------------------------------------- scripts/common.sh | 2 +- 4 files changed, 7 insertions(+), 60 deletions(-) delete mode 100755 iso/build-iso.sh diff --git a/Makefile b/Makefile index 918d570..0651c4f 100644 --- a/Makefile +++ b/Makefile @@ -7,11 +7,10 @@ SHELL := sh KAMA ?= ../kama PKGS ?= ../kama-packages -.PHONY: iso install recipe-check clean +.PHONY: rootfs install recipe-check clean -iso: +rootfs: sh scripts/build-root.sh - sh iso/build-iso.sh install: sh installer/install.sh @@ -22,4 +21,4 @@ recipe-check: done clean: - rm -rf iso/work /tmp/keru + rm -rf /tmp/keru diff --git a/README.md b/README.md index 43efc04..a80f6b8 100644 --- a/README.md +++ b/README.md @@ -15,8 +15,7 @@ depends on live in their own repositories: Every package on Keru is built from source by **Kama**, a deliberately small package manager that simply runs the commands in each recipe. No binary packages, no opaque package machinery. The whole system — toolchain included — -is compiled from original source, and the install image is assembled by hand -rather than with a stock tool like archiso. +is compiled from original source. Runit handles services. The standard Linux kernel drives the hardware. `nmtui` manages networking. Nothing you didn't ask for ends up on the disk. @@ -38,10 +37,11 @@ disk is precisely the one you chose. ``` installer/ TUI installer — writes make.conf from your choices -iso/ from-scratch ISO build tooling (xorriso + squashfs + syslinux) profile/ make.conf template (the swappables + build flags) scripts/ build pipeline: build-root, mkfs-root, common helpers docs/ design docs + the recipe format spec + +(ISO build tooling is not in this repo yet — coming later.) ``` ## Building @@ -62,7 +62,6 @@ Then, from `KeruOS/`: make install # run the TUI installer # or, headlessly: sh scripts/build-root.sh # build a rootfs into /tmp/keru/root -make iso # assemble an install image ``` Requires the sibling `kama` and `kama-packages` repos to be present. diff --git a/iso/build-iso.sh b/iso/build-iso.sh deleted file mode 100755 index b6a184a..0000000 --- a/iso/build-iso.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/env sh -# build-iso.sh — assemble a Keru OS ISO from the built rootfs and kernel -# -# From-scratch approach (no archiso): we lay out the classic isohybrid -# structure manually, squash the rootfs, and generate the ISO with xorriso + -# isolinux/syslinux (or syslinux's isohybrid). This is the LFS/Debian-live -# style path. -# -# Requires on the build host: xorriso, squashfs-tools, syslinux/isolinux. - -set -eu -. "$(dirname "$0")/common.sh" - -ROOT="${ROOT:-/tmp/keru/root}" # target rootfs (from make.conf) -ISO_OUT="${ISO_OUT:-$KERU_ROOT/iso/keru-$(date +%Y%m%d).iso}" -WORK="$KERU_ROOT/iso/work" -ISOIMG="$WORK/isolinux" - -info "building Keru ISO -> $ISO_OUT" -[ -d "$ROOT" ] || die "rootfs not found at $ROOT (run build-root.sh first)" - -have xorriso || die "xorriso not installed" -have mksquashfs || die "squashfs-tools not installed" - -rm -rf "$WORK"; mkdir -p "$ISOIMG" -info "generating isolinux config" -cp /usr/lib/syslinux/bios/isolinux.bin "$ISOIMG/" || true -cp /usr/lib/syslinux/bios/ldlinux.c32 "$ISOIMG/" || true -cat > "$ISOIMG/isolinux.cfg" <<'EOF' -UI vesamenu.c32 -DEFAULT keru -LABEL keru - LINUX /boot/vmlinuz-keru - INITRD /boot/initramfs-keru.img - APPEND root=live:LABEL=KERU_LIVE toram quiet -EOF - -info "packing rootfs into squashfs" -mksquashfs "$ROOT" "$WORK/keru.sfs" -noappend -comp xz - -info "writing ISO (isohybrid)" -xorriso -as mkisofs \ - -o "$ISO_OUT" \ - -V KERU_LIVE \ - -b isolinux/isolinux.bin \ - -c isolinux/boot.cat \ - -no-emul-boot -boot-load-size 4 -boot-info-table \ - -isohybrid-mbr /usr/lib/syslinux/bios/isohdpfx.bin \ - "$WORK" - -info "done: $ISO_OUT" diff --git a/scripts/common.sh b/scripts/common.sh index 303c0ed..14420fd 100755 --- a/scripts/common.sh +++ b/scripts/common.sh @@ -1,4 +1,4 @@ -# common.sh — shared helpers for Keru scripts (installer, iso, kama) +# common.sh — shared helpers for Keru scripts (installer, build pipeline) PREFIX="\033[1;35m[ keru ]\033[0m" msg() { printf '%b %s\n' "$PREFIX" "$*"; } info() { printf '%b \033[1;34m==>\033[0m %s\n' "$PREFIX" "$*"; }