Current version: 2.0.0
This repo builds a bootable ISO that:
- boots into Sway on TTY1
- launches Chromium in kiosk mode
- shows a fictional nuclear reactor control UI (ChernOS Ultra)
- is purely a simulation — no real reactor control
Requirements: Nix
nix build .#isoThere is a standalone desktop wrapper under electron/.
cd electron
npm install
npm run startDeveloper mode (enables devtools):
npm run devBuild an installer/package (requires platform-specific tooling):
npm run dist- Reproducible ISO build via pinned
flake.lock(NixOS 24.05). - Software rendering fallback for Chromium (SwiftShader) when no GPU is detected.
- Fast boot pipeline: quieter boot, 0-second GRUB timeout, reduced systemd overhead.
- Real persistence (overlayfs): optional persistent state via a
CHERNOS_PERSISTpartition. - Background music system with UI controls and terminal commands (
music on/off,music vol).
- Plymouth splash: ChernOS Nuclear Glow (pulsing reactor ring).
- GRUB theme: Blackchamber background + logo.
- Launch Calamares from the live session: Ctrl+Alt+I (or Super+I).
The ISO includes an Electron-based desktop shell.
- Launch from Sway: Mod+E (or Ctrl+Alt+E)
- Boot into Electron instead of Chromium:
- set
CHERNOS_SHELL=electronat boot, or - if persistence is enabled, create
/persist/chernos-shellwith the single word:electron
- set
In Electron mode, Workstation → Multitasking Supervisor can list/focus/close desktop windows and open new app instances.
docs/INSTALL.md— boot/install notes (ISO, Calamares, login)docs/PERSISTENCE.md— overlayfs persistence + UI persistence v3docs/TROUBLESHOOTING.md— VM + boot troubleshootingdocs/TERMINAL.md— terminal command referencedocs/URL_PARAMS.md— query parameters supported by the UIdocs/HOTKEYS.md— hotkeys + rebinding referencedocs/ARCHITECTURE.md— repo + runtime architecturedocs/PLUGINS.md— internal plugin systemdocs/MESSAGE_BUS.md— internal pub/sub busdocs/RELEASES.md— CI + release guidanceelectron/README.md— Electron wrapper notes