Bootstrap
System installer from scratch
Description
Neonatox Bootstrap is an executable script that installs Neonatox from any existing GNU/Linux distribution. It creates the entire filesystem hierarchy, builds and installs the nhopkg package manager, generates dynamic system configuration (fstab, hostname, timezone, locale) and installs base packages.
Additionally, it supports installing three complete desktop environments: KDE (KF6+Plasma), GNOME and XFCE, including their main applications and service configuration.
Commands
| Command | Description |
|---|---|
| core | Base system: directories, nhopkg, config, core packages |
| kde | KDE desktop + desktop-common |
| gnome | GNOME desktop + desktop-common |
| xfce | XFCE desktop + desktop-common |
| chroot | Interactive shell inside the target system |
Technologies
- ✓ Main Bash executable script
- ✓ systemd for service management
- ✓ btrfs with snapshots and systemd-nspawn
- ✓ nhopkg as package manager
- ✓ chroot for target operations
- ✓ BIOS + UEFI support
Quick usage
sudo ./neonatox-bootstrap -L /mnt core Install base system to /mnt
sudo ./neonatox-bootstrap -L /mnt -p mypassword kde Install KDE with root password
sudo ./neonatox-bootstrap -L /mnt --hostname neonbox --locale en_US.UTF-8 core Install with custom hostname and locale
Project structure
neonatox-bootstrap # main executable (bash)
bootstrap/
data/etc/ # static configuration
{passwd,group,profile,bashrc,os-release,...}
polkit-1/rules.d/
profile.d/
skel/
packs/ # package lists
core # 61 base packages
base-extra # 5 extra packages
desktop-common # 13 shared DE packages
kde / kde-extra # KF6+Plasma and apps
gnome / gnome-extra # GNOME core and apps
xfce / xfce-extra # XFCE4 and apps
FLUJO.md # detailed flow diagram Execution flow
The script executes the following steps sequentially:
- Create filesystem hierarchy and symlinks
- Copy static configuration files
- Clone, build and install nhopkg from source
- Generate dynamic config: fstab, hosts, hostname, timezone, machine-id
- Install base packages (core + base-extra)
- Run post-install triggers inside chroot
- Install selected desktop environment packages
- Configure systemd services and root password
- Final cleanup of caches and temporary sources
Philosophy: Bootstrap is not a magic installer. Every step is visible and modifiable. Configuration files are static and editable. Package lists are plain text files. There is no black box: everything it does, you can see and change.