From 6708c3f8617fd2bf3668298e6b6971bbeb7dad86 Mon Sep 17 00:00:00 2001 From: Fabian Druschke Date: Fri, 16 Jan 2026 01:06:36 +0100 Subject: [PATCH] Legacy lite iso defconfig (#428) * Created minimal i586 compatible defconfig * Refined minimal i586 defconfig, and added missing shell interpreter --- board/shredos/kernel-6.6.22-defconfig.config | 1 + board/shredos/post-build.sh | 12 ++ configs/shredos_i586_lite_defconfig | 48 +++++++ configs/shredos_legacy_iso_defconfig | 140 +++++++++++++++++++ 4 files changed, 201 insertions(+) create mode 120000 board/shredos/kernel-6.6.22-defconfig.config create mode 100755 board/shredos/post-build.sh create mode 100644 configs/shredos_i586_lite_defconfig create mode 100644 configs/shredos_legacy_iso_defconfig diff --git a/board/shredos/kernel-6.6.22-defconfig.config b/board/shredos/kernel-6.6.22-defconfig.config new file mode 120000 index 0000000000..fc59cdefca --- /dev/null +++ b/board/shredos/kernel-6.6.22-defconfig.config @@ -0,0 +1 @@ +kernel-defconfig \ No newline at end of file diff --git a/board/shredos/post-build.sh b/board/shredos/post-build.sh new file mode 100755 index 0000000000..b36868ac08 --- /dev/null +++ b/board/shredos/post-build.sh @@ -0,0 +1,12 @@ +#!/bin/sh +set -eu + +TARGET_DIR="$1" + +# häufige Pfade +rm -rf \ + "$TARGET_DIR/usr/lib/kselftests" \ + "$TARGET_DIR/usr/libexec/kselftests" \ + "$TARGET_DIR/usr/share/kselftests" \ + "$TARGET_DIR/kselftests" \ + "$TARGET_DIR/opt/kselftests" || true diff --git a/configs/shredos_i586_lite_defconfig b/configs/shredos_i586_lite_defconfig new file mode 100644 index 0000000000..38d112b4a0 --- /dev/null +++ b/configs/shredos_i586_lite_defconfig @@ -0,0 +1,48 @@ +BR2_x86_i686=y +BR2_TARGET_GENERIC_HOSTNAME="shredos" +BR2_TARGET_GENERIC_ISSUE="Welcome to ShredOS https://github.com/PartialVolume/shredos.i686" +BR2_INIT_SYSV=y +BR2_ROOTFS_MERGED_USR=y +BR2_SYSTEM_DEFAULT_PATH="/bin:/sbin:/usr/bin:/usr/sbin" +# BR2_ENABLE_LOCALE_PURGE is not set +BR2_ROOTFS_OVERLAY="board/shredos/fsoverlay" +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/shredos/make_iso_file.sh" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/shredos/kernel-6.6.22-defconfig.config" +BR2_PACKAGE_GZIP=y +BR2_PACKAGE_XZ=y +BR2_PACKAGE_DOSFSTOOLS=y +BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y +BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y +BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_HDPARM=y +BR2_PACKAGE_NVME=y +BR2_PACKAGE_SG3_UTILS=y +BR2_PACKAGE_SG3_UTILS_PROGS=y +BR2_PACKAGE_LZ4=y +BR2_PACKAGE_NWIPE=y +BR2_PACKAGE_NCURSES_WCHAR=y +BR2_PACKAGE_UTF8PROC=y +BR2_PACKAGE_BASH=y +BR2_PACKAGE_UTIL_LINUX_BINARIES=y +BR2_PACKAGE_UTIL_LINUX_AGETTY=y +BR2_PACKAGE_UTIL_LINUX_FSCK=y +BR2_PACKAGE_UTIL_LINUX_MOUNT=y +BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT=y +BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT=y +BR2_PACKAGE_UTIL_LINUX_SETTERM=y +BR2_TARGET_ROOTFS_CPIO_XZ=y +BR2_TARGET_ROOTFS_INITRAMFS=y +BR2_TARGET_ROOTFS_ISO9660=y +BR2_TARGET_ROOTFS_ISO9660_VOLUME_NAME="SHREDOS" +BR2_TARGET_ROOTFS_ISO9660_ISOLINUX_BOOT_MENU="board/shredos/iso/isolinux.cfg" +BR2_TARGET_ROOTFS_ISO9660_HYBRID=y +BR2_TARGET_GRUB2=y +BR2_TARGET_GRUB2_INSTALL_TOOLS=y +BR2_TARGET_SYSLINUX=y +BR2_PACKAGE_HOST_E2FSPROGS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_PYTHON3=y +BR2_PACKAGE_HOST_PYTHON3_BZIP2=y +BR2_PACKAGE_HOST_PYTHON3_SSL=y diff --git a/configs/shredos_legacy_iso_defconfig b/configs/shredos_legacy_iso_defconfig new file mode 100644 index 0000000000..8d68617536 --- /dev/null +++ b/configs/shredos_legacy_iso_defconfig @@ -0,0 +1,140 @@ +# --- Architecture: i686 --- +# 32-bit x86 +BR2_i386=y +BR2_x86_i686=y + +# --- Toolchain: minimize --- +# musl is much smaller than glibc (no locales explosion) +BR2_TOOLCHAIN_BUILDROOT=y +BR2_TOOLCHAIN_BUILDROOT_CXX=n +BR2_TOOLCHAIN_BUILDROOT_USE_MUSL=y +# no locales/NLS +# BR2_ENABLE_LOCALE_PURGE is not set +BR2_SYSTEM_ENABLE_NLS=n + +# --- System --- +BR2_TARGET_GENERIC_HOSTNAME="shredos" +BR2_TARGET_GENERIC_ISSUE="Welcome to ShredOS https://github.com/PartialVolume/shredos.i686" +BR2_INIT_SYSV=y +BR2_ROOTFS_MERGED_USR=y + +# busybox sh is smaller than bash +BR2_SYSTEM_BIN_SH_BUSYBOX=y +BR2_SYSTEM_DEFAULT_PATH="/bin:/sbin:/usr/bin:/usr/sbin" + +# optional: keep tzdata only if you truly need it +BR2_TARGET_TZ_INFO=n + +# overlay/scripts (keep yours) +BR2_ROOTFS_OVERLAY="board/shredos/fsoverlay" +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/shredos/make_iso_file.sh" + +# --- Kernel --- +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/shredos/kernel-6.6.22-defconfig.config" + +# DO NOT build giant linux-tools +# BR2_PACKAGE_LINUX_TOOLS_CPUPOWER is not set +# BR2_PACKAGE_LINUX_TOOLS_PERF is not set +# BR2_PACKAGE_LINUX_TOOLS_SELFTESTS is not set + +# --- Compression / archives (keep minimal set) --- +BR2_PACKAGE_GZIP=y +BR2_PACKAGE_XZ=y +BR2_PACKAGE_LZ4=y +# drop bzip2/zip/unzip unless required +# BR2_PACKAGE_BZIP2 is not set +# BR2_PACKAGE_ZIP is not set +# BR2_PACKAGE_UNZIP is not set + +# --- Core utilities --- +BR2_PACKAGE_UTIL_LINUX=y +BR2_PACKAGE_UTIL_LINUX_BINARIES=y +BR2_PACKAGE_UTIL_LINUX_AGETTY=y +BR2_PACKAGE_UTIL_LINUX_FSCK=y +BR2_PACKAGE_UTIL_LINUX_MOUNT=y +BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT=y +BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT=y +BR2_PACKAGE_UTIL_LINUX_SETTERM=y + +BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_DOSFSTOOLS=y +BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y +BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y + +# exfat only if you need it +# BR2_PACKAGE_EXFATPROGS is not set + +BR2_PACKAGE_HDPARM=y +BR2_PACKAGE_SG3_UTILS=y +BR2_PACKAGE_SG3_UTILS_PROGS=y +BR2_PACKAGE_SMARTMONTOOLS=y +BR2_PACKAGE_NVME=y + +# --- Shred tool --- +BR2_PACKAGE_NWIPE=y +BR2_PACKAGE_NCURSES_WCHAR=y +BR2_PACKAGE_UTF8PROC=y + +# --- Networking: keep tiny subset (optional) --- +# Drop everything not needed for wipe-ISO +# BR2_PACKAGE_OPENSSH is not set +# BR2_PACKAGE_WIREGUARD_TOOLS is not set +# BR2_PACKAGE_NTP is not set +# BR2_PACKAGE_NMAP is not set +# BR2_PACKAGE_IPTABLES is not set +# BR2_PACKAGE_RPCBIND is not set +# BR2_PACKAGE_TFTPD is not set +# BR2_PACKAGE_TRACEROUTE is not set +# BR2_PACKAGE_LFTP is not set + +# --- Graphics stack: remove entirely --- +# BR2_PACKAGE_DIRECTFB is not set +# BR2_PACKAGE_MESA3D is not set +# BR2_PACKAGE_FBV is not set +# BR2_PACKAGE_FBTERM is not set +# BR2_PACKAGE_FBDUMP is not set +# BR2_PACKAGE_FBGRAB is not set +# BR2_PACKAGE_FBSET is not set +# BR2_PACKAGE_FFMPEG is not set + +# --- Firmware: remove (huge) --- +# BR2_PACKAGE_LINUX_FIRMWARE is not set +# (and therefore all BR2_PACKAGE_LINUX_FIRMWARE_* gone) + +# --- Big languages / SELinux / containers: remove --- +# BR2_PACKAGE_PERL is not set +# BR2_PACKAGE_PYTHON3 is not set (and all python modules) +# BR2_PACKAGE_SELINUX_PYTHON is not set +# BR2_PACKAGE_COLLECTD is not set +# BR2_PACKAGE_RUNC is not set + +# --- Rootfs / image formats --- +BR2_TARGET_ROOTFS_INITRAMFS=y +# xz is usually smallest; lzma is ok too, but xz is common +BR2_TARGET_ROOTFS_CPIO_XZ=y +# BR2_TARGET_ROOTFS_CPIO_LZMA is not set + +BR2_TARGET_ROOTFS_ISO9660=y +BR2_TARGET_ROOTFS_ISO9660_BOTH=y +BR2_TARGET_ROOTFS_ISO9660_VOLUME_NAME="SHREDOS" +BR2_TARGET_ROOTFS_ISO9660_ISOLINUX_BOOT_MENU="board/shredos/iso/isolinux.cfg" +BR2_TARGET_ROOTFS_ISO9660_GRUB2_BOOT_MENU="board/shredos/iso/grub.cfg" +BR2_TARGET_ROOTFS_ISO9660_HYBRID=y + +# --- Bootloader: 32-bit only --- +BR2_TARGET_GRUB2=y +# IMPORTANT: for i686 use i386-pc, not x86_64 EFI +BR2_TARGET_GRUB2_I386_PC=y +BR2_TARGET_GRUB2_INSTALL_TOOLS=y + +BR2_TARGET_SYSLINUX=y + +# --- Host tools you already use --- +BR2_PACKAGE_HOST_E2FSPROGS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_PYTHON3=y +BR2_PACKAGE_HOST_PYTHON3_BZIP2=y +BR2_PACKAGE_HOST_PYTHON3_SSL=y +