codeburn/windows/Scripts/autoinstall/README.md
iamtoruk b199af182e windows: import the Tauri tray app as the Windows menubar
Brings the Tauri 2.x tray popover from #1022 onto main as windows/, mirroring
mac/. Product name, bundle identifier, and version line up with the macOS
menubar (org.agentseal.codeburn-menubar, 0.9.20); the crate is renamed off
"desktop" so it no longer collides with the Electron app in app/.

Linux (ksni) stays compiled and dev-usable but is documented as experimental:
gnome/ is the shipping Linux surface.

The five src/ CLI commits on that branch are dropped - they re-implement a
daily-bucketing fix main already carries.
2026-08-18 04:00:59 -07:00

38 lines
2 KiB
Markdown

# Unattended Ubuntu install for the CodeBurn dev VM
This directory contains a cloud-init `user-data` + `meta-data` pair that tells the Ubuntu 24.04 Server installer to configure itself without any user prompts. After it finishes, you reboot into GNOME and run the one-line provisioner.
Default credentials in `user-data`: **`codeburn` / `codeburn`**. Change them before using anywhere that matters.
## Build the CIDATA ISO (on your Mac)
```bash
cd windows/Scripts/autoinstall
hdiutil makehybrid -o codeburn-cidata.iso \
-hfs -joliet -iso -default-volume-name CIDATA .
```
That produces `codeburn-cidata.iso` (around 2 KB) with the two YAML files at the root, labelled `CIDATA`.
## Hook it into UTM
1. Create the VM as usual (Virtualize → Linux → Ubuntu Server arm64 ISO).
2. Before first boot, open the VM's Settings → **Drives****New Drive** → pick **Removable****Import**, and select `codeburn-cidata.iso`.
3. Boot. The Ubuntu installer auto-detects the CIDATA volume, reads the autoinstall config, and runs the install without prompts. Takes 15-20 minutes depending on disk speed.
4. Reboot into the installed system, log in as `codeburn`, then:
```bash
bash ~/provision.sh
```
(The autoinstall drops the script to `~/provision.sh`. It installs Rust + Node + the codeburn CLI, clones the repo, and sets up the windows/ npm deps.)
5. `cd ~/codeburn/windows && npm run tauri dev`.
## Why not automate the provisioner run too
cloud-init's `late-commands` runs in the installer environment, which doesn't have a GNOME session for the tray icon to land in. We deliberately stop short of running `npm run tauri dev` from within autoinstall so the tray shows up on your first real login instead of a detached systemd unit.
## Skipping autoinstall
If you'd rather click through the Ubuntu installer normally, ignore this directory entirely. The `provision-linux.sh` script in the parent directory works the same way whether the OS was installed unattended or by hand.