Skip to content

These scripts build a bootable MiniOS ISO image.

License

Notifications You must be signed in to change notification settings

TheBSODAndWSODFan/minios-live

 
 

Repository files navigation

GitHub Downloads (all assets, all releases)

MiniOS

MiniOS aims to provide users with a reliable, user-friendly portable system with a graphical interface. These scripts build a bootable MiniOS ISO image.

🛠️ Build Options

Using minios-live, you can build the following configurations:

  • Debian 12 with Fluxbox environment (analogous to Slax).
  • Debian 12, Debian Unstable, and Ubuntu 22.04 with Xfce4 environment.

🏗️ Building MiniOS

Prerequisites

  • It is advisable to use Debian 12 or Ubuntu 22.04 for building.
  • ⚠️ WARNING: Never run scripts from the linux-live folder directly. It will break your system.

Build Commands

To start the build process, use the following commands:

  • setup_host - Install packages required for building on the host.
  • build_bootstrap - Install a minimal system using debootstrap.
  • build_chroot - Install the remaining components required to start the system.
  • build_live - Build the SquashFS image.
  • build_modules - Build additional modules.
  • build_iso - Build the final ISO image.

Command Syntax

./minios-live [start_cmd] [-] [end_cmd]
  • start_cmd: The command to start from (optional).
  • -: Execute all commands between start_cmd and end_cmd.
  • end_cmd: The command to end with (optional).

Examples

  • Run all commands:

    ./minios-live -
  • Run from build_bootstrap to build_chroot:

    ./minios-live build_bootstrap - build_chroot
  • Run up to build_chroot:

    ./minios-live - build_chroot
  • Run from build_bootstrap to the end:

    ./minios-live build_bootstrap -
  • Run only build_iso:

    ./minios-live build_iso

Quick Start

To build the system from the beginning, edit linux-live/config and run:

./minios-live -

📖 Step-by-Step Build Guide

Step 1: Configuration

To build, change the parameters in the linux-live/config file to select the desired option. This file allows you to configure various aspects of the build process, such as the distribution, desktop environment, and system settings. Key configuration options include:

  • Distribution: Specifies the base distribution (e.g., Debian or Ubuntu) and its version.
  • Architecture: Defines the target architecture (e.g., amd64, i386).
  • Desktop Environment: Chooses the desktop environment (e.g., XFCE, Fluxbox).
  • Package Variant: Selects the set of packages to include (e.g., standard, minimum).
  • Kernel Options: Configures the kernel type and version.
  • Localization: Sets the locale and timezone.
  • User Settings: Configures default user and password.
  • Build Options: Includes settings for module compression, union file system type, and ISO naming.

Step 2: Setup Host

Install the necessary packages on the host system:

./minios-live setup_host

This command will ensure your host system has all the required tools and dependencies to proceed with the build.

Step 3: Build Bootstrap

Install a minimal system using debootstrap:

./minios-live build_bootstrap

This step will create the initial file system with the basic Debian or Ubuntu system.

Step 4: Build Chroot

Install the remaining components required to start the system:

./minios-live build_chroot

This step adds additional software and configurations to the minimal system created in the previous step.

Step 5: Build Live

Create the SquashFS image:

./minios-live build_live

This step compresses the file system into a SquashFS image, which is used for the live environment.

Step 6: Build Modules

Build the additional modules:

./minios-live build_modules

Modules in MiniOS are compressed SquashFS files that contain specific parts of the operating system. These modules can include the kernel, firmware, desktop environments, applications, and other components. Each module is built in sequence and can be updated or replaced independently. Here is an example of the modules included in MiniOS Standard:

  • 00-core-amd64-zstd.sb: Core system files. Built using the build_bootstrap-build_live commands.
  • 00-minios-amd64-zstd.sb: Essential MiniOS components.
  • 01-kernel-6.1.90-mos-amd64-zstd.sb: Kernel modules.
  • 02-firmware-amd64-zstd.sb: Firmware for various hardware components.
  • 03-xorg-amd64-zstd.sb: Xorg display server, Blackbox window manager and xterm terminal emulator.
  • 04-xfce-desktop-amd64-zstd.sb: XFCE desktop environment.
  • 05-xfce-apps-amd64-zstd.sb: Applications for the XFCE environment.
  • 06-firefox-amd64-zstd.sb: Firefox web browser.

The modules are built in sequence, and if a module is already built, it is skipped. The build_modules command handles this process automatically.

Step 7: Build ISO

Build the final ISO image:

./minios-live build_iso

This command generates the bootable ISO image that can be used to create bootable USB drives or CDs.

✍️ Author

Created by crims0n. For more information, visit minios.dev.

About

These scripts build a bootable MiniOS ISO image.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 97.8%
  • Other 2.2%