Interactive ignition installer for MiOS. The user-facing entry point.
Version: v0.1.4 System repo: https://github.com/MiOS-DEV/MiOS
This repository is the installer for MiOS. It's the only thing end users interact with directly. It contains:
install.sh-- the interactive installer (run as root). Prompts for Linux username, hostname, password, SSH key, GitHub PAT, and image tag -- everything defaults tomiosuntil the user overrides.system-prompt.md-- the SSOT for AI behavior on every MiOS host. Bootstrap deploys this to/etc/mios/ai/system-prompt.mdduring install, where LocalAI loads it as the system prompt for all chat completions. Customize per host (edit the deployed file) or fleet-wide (fork bootstrap).- User-space env templates (
.env.mios,identity.env.example) - User-facing docs (
USER-SPACE-GUIDE.md,VARIABLES.md) - A
profile/skeleton for dotfiles and per-user systemd units (populate as the project grows)
- Not the OS image. Pre-built images live at
ghcr.io/MiOS-DEV/mios:latest. - Not the build infrastructure. Containerfile, Justfile, build scripts, and the FHS overlay all live in https://github.com/MiOS-DEV/MiOS.
- Not a Docker / OCI thing. Bootstrap runs on a target Fedora host, not in a container.
On a fresh Fedora bootc-capable host (Fedora Server 41+ or Fedora bootc):
sudo bash -c "$(curl -fsSL https://raw.githubusercontent.com/MiOS-DEV/MiOS-bootstrap/main/install.sh)"Bootstrap prompts for installation profile, applies it, then either:
bootc switch ghcr.io/MiOS-DEV/mios:latest(bootc hosts), or- Clones MiOS and runs its FHS overlay installer (non-bootc hosts).
Reboot when prompted. MiOS is now running.
| Variable | Default |
|---|---|
| Linux username | mios |
| Hostname | mios |
| Full name (GECOS) | MiOS User |
| Login shell | /bin/bash |
| Sudo groups | wheel,libvirt,kvm,video,render,input,dialout |
| SSH key | generate ed25519 |
| GitHub PAT | skip |
| MiOS image | ghcr.io/MiOS-DEV/mios:latest |
The user is prompted for each; pressing Enter accepts the default.
/etc/mios/install.env-- non-secret installation metadata (mode 0640)~mios/.ssh/id_ed25519-- generated SSH key (mode 0600)~mios/.git-credentials-- if a GitHub PAT was provided (mode 0600)
Passwords go through chpasswd and are never written to disk in plaintext.
Re-running the installer with the same answers updates rather than duplicates. Existing users are amended (not recreated); existing SSH keys are not overwritten by the "generate" path (use a different keypair name to layer).
Apache-2.0. See LICENSE.