ISO builder, firstboot wizard, installer
Find a file
Sam & Claude 60c35361a0 Make ISO builds cleaner by default (Sam & Codex)
---

Build: FAIL | Tests: FAIL — not run (deferred)
2026-06-04 20:04:22 +02:00
docs Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
firstboot Harden upgrade staging: validate, propagate failures, safe copy 2026-06-04 20:04:22 +02:00
packages Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
runner docs(runner): add edk2-bhyve to build automation prerequisites 2026-06-04 20:04:21 +02:00
scripts Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
skills/build-iso Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
vps Align VPS firstboot with modular pipeline (Sam & Claude) 2026-06-04 20:04:22 +02:00
.gitignore Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
ADMIN-PANEL.md v0.9.0-rc2: Integrate feedback — recovery, POSIX, security, audio 2026-06-04 20:04:21 +02:00
AGENTS.md Add commit attribution policy (C&C) 2026-06-04 20:04:21 +02:00
build-vps.sh Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
build.cfg Add Tailscale firstboot module (Sam & Codex) 2026-06-04 20:04:21 +02:00
BUILD.md Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
build.sh Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
CLAWDIE-ISO-REFACTORED.md Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
CLAWDIE-ISO.md Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
CLAWDIE-SHELL.md spec: Drop Bluetooth — FreeBSD-first focus, complexity reduction 2026-06-04 20:04:21 +02:00
FUNDING.md refactor: Rename clawdie-shell-*.sh to shell-*.sh (remove redundant prefix) 2026-06-04 20:04:21 +02:00
IMPLEMENTATION-PLAN.md feat(firstboot): resume/reset flags, checkpoint guards + move bhyve scripts 2026-06-04 20:04:21 +02:00
installerconfig Merge origin/main: ZFS pool migration, VPS support, Syncoid docs (Sam & Claude) 2026-06-04 20:04:22 +02:00
LUMINA-INTEGRATION.md Clawdie Shell specification v0.9.0-rc1 2026-06-04 20:04:21 +02:00
POUDRIERE-IMPLEMENTATION.md Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
README.md Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
REFACTOR-SUMMARY.md Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00
SHELL-ARCHITECTURE.md v0.9.0-rc2: Integrate feedback — recovery, POSIX, security, audio 2026-06-04 20:04:21 +02:00
SHELL-MODULES.md Add Tailscale firstboot module (Sam & Codex) 2026-06-04 20:04:21 +02:00
TESTING.md Make ISO builds cleaner by default (Sam & Codex) 2026-06-04 20:04:22 +02:00

Clawdie Shell

Unified installer and human operator interface for Clawdie-AI on FreeBSD

A single-step deployment platform that combines:

  • FreeBSD 15.0 (ZFS, jails, rc.d, pkg)
  • Lumina Desktop (lightweight, FreeBSD-native, from PC-BSD heritage)
  • Shell modules (modular, portable, POSIX-compliant)
  • Admin panel (bsddialog UI for jails, snapshots, system health)

Standing on the shoulders of giants: We don't reinvent. We inherit wisdom from FreeBSD, PC-BSD's Lumina, and proven shell patterns.


What Is Clawdie Shell?

Boot a USB, answer a 3-screen wizard, and you have a fully configured Clawdie-AI workstation running on FreeBSD with:

  • Lumina desktop (ready to use)
  • Bastille jails (worker, db, cms) provisioned
  • PostgreSQL + pgvector seeded
  • Clawdie-AI agent running
  • Admin panel accessible from taskbar
  • All offline (no internet required during install)

One reboot. That's it.


Quick Start

Build the USB Image

# Requirements: FreeBSD 15.0+, pkg, curl, 30 GB free disk space

git clone https://codeberg.org/Clawdie/Clawdie-ISO.git
cd Clawdie-ISO

# Fetch FreeBSD memstick + all packages (non-root)
./build.sh --fetch-only

# Assemble ISO (requires root for mdconfig/mount)
doas ./build.sh

# Output: tmp/output/clawdie-iso-<variant>-DD.mmm.YYYY.img (~50 GB, configurable in build.cfg)

Install on Hardware

  1. Write to USB:

    doas dd if=tmp/output/clawdie-iso-<variant>-DD.mmm.YYYY.img of=/dev/da0 bs=1M
    # (replace da0 with your USB device)
    
  2. Boot from USB on target machine (BIOS/EFI)

  3. Run bsdinstall (standard FreeBSD installer)

    • Choose disk, partitioning, root password
    • Create clawdie user
  4. First boot from HDD (reboot 1)

    • rc.firstboot wizard appears
    • Answer: assistant name, public domain, timezone
    • Optional: local LLM runtime (Ollama or llama-cpp)
    • Optional: SSH public key (for later Ansible/jail SSH baselines)
    • Optional: enable Forgejo web git UI (adds disk usage)
    • Setup runs automatically (510 min)
  5. Lumina desktop boots

    • Login as clawdie user
    • Agent running in background
    • Admin panel: right-click taskbar → "Clawdie Admin"

Documentation


Philosophy: Standing on Giants' Shoulders

Giant Contribution
FreeBSD ZFS, jails, rc.d, pkg, stability
PC-BSD Lumina desktop, installer patterns
POSIX shell Portability, simplicity, proven patterns
bsddialog Native FreeBSD UI (no GTK/Qt bloat)
Bastille Jail orchestration

Features

🖥️ Lumina Desktop

  • Lightweight (~150 MB RAM)
  • Designed for FreeBSD (from PC-BSD)
  • Openbox window manager, stable, simple

🛠️ Admin Panel

Right-click Lumina taskbar → "Clawdie Admin":

  • System Health (CPU, RAM, ZFS pool)
  • Jails (start/stop, console)
  • ZFS Snapshots (create, restore)
  • Logs, Configuration

📦 Shell Modules

Modular, reusable, testable:

  • clawdie-shell-env.sh — Identity + secrets
  • clawdie-shell-pkg.sh — Repositories
  • clawdie-shell-gpu.sh — GPU detection
  • clawdie-shell-system.sh — System config
  • clawdie-shell-clawdie.sh — AI setup + jails

🧰 Local Git (Forgejo-ready)

  • Plain git jail by default
  • Optional Forgejo web UI (runs in {agent}-git on port 3000, internal only)

🔒 Offline-First

  • All packages bundled on USB
  • Reproducible deploys
  • Falls back to online if connected

System Requirements

  • CPU: 2 cores (4 recommended)
  • RAM: 4 GB (8 GB recommended)
  • Disk: 50 GB
  • GPU: Intel, AMD, NVIDIA, or VESA fallback

Version History

  • v0.9.0-rc1 (23.mar.2026) — Initial "Shell" branding, Lumina, modular architecture
  • v0.9.0 (planned) — Stable release
  • v1.0.0 (planned) — Multi-arch support

Known Limitations

  • Single desktop (Lumina only)
  • X11 only (no Wayland)
  • Interactive deployment (no cloud-init)

Contributing

  • Issues: Codeberg Issues
  • Philosophy: Keep focused (one DE, one purpose). Inherit, don't reinvent.

Building

git clone https://codeberg.org/Clawdie/Clawdie-ISO.git
cd Clawdie-ISO

# Fetch packages (non-root)
./build.sh --fetch-only

# Build ISO (requires root)
doas ./build.sh

# Output: tmp/output/clawdie-iso-<variant>-DD.mmm.YYYY.img

See CLAWDIE-SHELL.md for full specification.


Last updated: 23.mar.2026 Standing on: FreeBSD, Lumina, PC-BSD wisdom