Documentation

Documentation

Dive into comprehensive guides, tutorials, and resources to master ULB and craft your custom Linux distribution.

Getting Started

1. Installation
Download and install Universal Live Builder (ULB):
https://universal-live-builder.github.io/website/download.html

2. Project Initialization
Create a new ULB project:
ulb init

Project Structure:
profiles/
scripts/
system/
ulb/releases/

  • profiles/ — .toml configuration files
  • scripts/ — custom pre.sh / post.sh scripts
  • system/ — additional system files (e.g., themes, logos)
  • ulb/releases/ — ready-made ISO or rootfs images go here

3. First Run
Simple build example:
ulb build example
Interactive mode with GUI:
ulb ui [RECOMMENDED]

Installation

Step-by-step guide to installing ULB on your system, including prerequisites and setup instructions.

Configuration

Each ULB project profile is a .toml file that describes what your system should look like. Example — /profiles/mydistro.toml:

base = "debian:testing"
name = "My Distribution"
version = "0.1"
architecture = "amd64"
system_type = "classic"
packages = ["neofetch", "nano", "htop"]

[repos]
custom = ["deb http://deb.debian.org/debian testing main contrib non-free"]
gpg_keys = ["https://ftp-master.debian.org/keys/archive-key-12.asc"]

[scripts]
pre = "scripts/pre.sh"
post = "scripts/post.sh"

[output]
type = "iso"
label = "MyDistro-Live"
compression = "xz"
                    

Available Configuration Fields
Key Type Description
base String Distribution Base (e.g., debian:testing, ubuntu:noble, arch, opensuse:leap)
name String System name
version String Version number
architecture String CPU architecture (amd64, arm64, riscv64)
system_type String System type (classic / ostree)
packages Array List of packages to install
[repos] Section Additional repositories
[scripts] Section Paths to pre and post scripts
[output] Section Output format (iso, rootfs, tar.gz)

Pre/Post Scripts
  • scripts/pre.sh — executed before building (e.g., environment modifications)
  • scripts/post.sh — executed after installing packages (e.g., branding, wallpapers, logos)

Advanced Usage

Explore advanced features and customization options to enhance your ULB experience.

FAQ

Find answers to common questions about ULB and troubleshooting tips.