PitchHut logo
An experimental Void Linux distribution with dynamod init.
Pitch

Eclipse Linux is an innovative distribution based on Void Linux (musl). It features the dynamod init system, delivering a fresh approach to Linux environments. This project provides the tools to create a hybrid live ISO, installed easily with a dialog-based installer, and is suitable for both BIOS and UEFI systems.

Description

Eclipse Linux is an innovative distribution based on Void Linux (musl) that features the dynamod init system for enhanced boot performance. This experimental project provides a comprehensive set of build tools that facilitate the creation of a live ISO, compatible with both BIOS and UEFI systems, along with a terminal user interface (TUI) installer.

Key Features

  • Target Architecture: x86_64, ensuring wide compatibility with modern hardware.
  • Base System: Built upon the Void Linux musl root filesystem, utilizing xbps package management within a chroot environment.
  • Output Format: Generates a hybrid live ISO utilizing SquashFS for the root filesystem and GRUB for booting.

Repository Structure

The repository contains the following essential components:

  • Makefile: The primary entry points for building the ISO, testing in QEMU, and other commands.
  • Scripts: Includes scripts for building the root filesystem and ISO image:
    • scripts/build-rootfs.sh: Constructs the build/rootfs using the Void musl root filesystem tarball.
    • scripts/build-iso.sh: Converts the root filesystem into a full ISO image.
    • scripts/eclipse-install: A dialog-based installer available within the live ISO.
  • Configuration Files: The config/ directory houses branding and boot configuration files, including os-release, motd, and GRUB configuration.

Prerequisites

To build Eclipse Linux, ensure the following:

  • A dynamod/ directory must be present in the root of the repository, which is omitted from version control.
  • Linux host requirements include having sudo permissions and capabilities to run mount, chroot, and manage loop devices, along with specific build tools such as mksquashfs, xorriso, and grub utilities.

Quick Start Guide

To begin working with Eclipse Linux, follow these steps:

  1. Build the init system:
    make dynamod
    
  2. Build the root filesystem:
    make rootfs
    
  3. Build the ISO:
    make iso
    
    The ISO will be located at: build/eclipse-linux-<ECLIPSE_VERSION>.iso

Testing in QEMU

After creating the ISO, testing it within a QEMU environment can be performed using:

make test-qemu          # For graphical testing
make test-qemu-serial   # For serial console testing
make test-qemu-install  # For installation on a blank qcow2 disk

Writing the ISO to USB

The built ISO can be written to a USB drive using dd, indicated by:

sudo dd if=build/eclipse-linux-<version>.iso of=/dev/sdX bs=4M status=progress oflag=sync

Build Configuration

Environment variables available for customization include:

  • ECLIPSE_VERSION: Sets the version string for the ISO filename (default is 0.1.0).
  • VOID_DATE: Defines the date stamp for the Void root filesystem tarball (default is 20250202).

For example:

ECLIPSE_VERSION=0.2.0 make iso
VOID_DATE=20250202 make rootfs

Note: It is crucial that make dynamod is not executed under sudo as it should run with user privileges. The build process is designed to streamline the creation of a lightweight live environment by excluding unnecessary firmware and locales.

0 comments

No comments yet.

Sign in to be the first to comment.