Commit graph

4 commits

Author SHA1 Message Date
023b9394d3 omalocal: track upstream OMATERM installer, fix first-login tmux + Once
Brings the first-login server setup back to fully working on a fresh install:

- OMATERM: call install-native.sh directly. omaterm.org/install is now an
  interactive native/docker dispatcher that would stall the unattended
  first-run; the native branch is what a headless Arch box wants. Verified the
  closing `exec bash -l` and bundled AI agents (mise.packages) still hold.

- Rebrand the user-facing "OMATERM + Once" headline to "omalocal" (banner,
  setup prompt, closing reboot message); body still names the installed tools.

- Fix tmux "can't use /dev/tty" on first login. OMATERM's installer closes with
  `exec bash -l </dev/tty >/dev/tty 2>&1`; with fds on /dev/tty, tmux's client
  ttyname is the literal "/dev/tty", which tmux's server_client_open refuses.
  Strip that redirect from the downloaded installer and run it without
  redirecting our stdin, so the closing shell inherits the login pts
  (/dev/pts/N) — which tmux accepts. (script(1) did not work: OMATERM
  re-redirects to /dev/tty after it.)

- Fix Once not installing. Once installs before OMATERM (which used to provide
  Docker); Once requires Docker and can't install it on Arch (get.docker.com is
  unsupported there). Provision Docker in base: pacstrap docker, enable
  docker.service in the chroot, and add the install user to the docker group at
  install time, so the first-run Once install finds a running daemon and
  once/once-add need no sudo. OMATERM's later docker setup no-ops.

- gitignore dated build-*.log files.

Full chain confirmed working on a clean install: Welcome to omalocal -> Once
installs -> Omarchy-Send (optional) -> OMATERM -> lands in tmux.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-31 13:29:29 +01:00
3cb0c3e0ed firstrun: track omaterm install changes — drop redundant AI-agent step, run OMATERM last
omaterm.org/install now installs the AI agents itself (node/opencode/
claude-code/codex/gemini are in its mise.packages) and its installer ends
with `exec bash -l`, which re-sources ~/.bash_profile.

- Remove our now-redundant "Install AI agents via mise" prompt and its
  stale comment (omaterm provides them).
- Guard against the re-sourced .bash_profile re-firing the welcome: the
  firstrun script removes itself up-front, so the one-shot stays one-shot.
- Reorder so OMATERM runs last (Once + Omarchy-Send first), since its
  `exec bash -l` hijacks the shell and drops the user into their session.
- Update welcome banner + in-script docs to list the bundled AI agents
  and the new ordering. Also gitignore build.log.

Verified: pty-backed logic harness (ordering, one-shot, no recursion) and
a full VM boot of the rebuilt ISO (welcome + Once-first + clean no-recursion
shell on omaterm's failure path).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-29 15:54:53 +01:00
6a43bad3dd Rename project omaterm-iso -> omalocal
Avoids the namespace collision with the official OMATERM toolkit
(omaterm.org). Renamed our own identity strings only; genuine
references to the OMATERM toolkit it bootstraps are left intact.

- script omaterm-iso.sh -> omalocal.sh; dir -> ~/Projects/omalocal
- output ISO omaterm-arch-*.iso -> omalocal-arch-*.iso (+ discovery glob)
- first-run mechanism: .omalocal-firstrun.sh, OMALOCAL_FIRSTRUN /
  OMALOCAL_PROFILE_HOOK heredoc tags, comments
- embedded Claude skill omaterm-server -> omalocal-server

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-28 22:06:50 +01:00
58c8368e46 Initial commit: omaterm-iso builder
One-script builder that turns a stock Arch ISO into a headless,
key-only-SSH Arch server installer ISO that, on first login, offers
to bootstrap the OMATERM toolkit (omaterm.org) + Once.

- Header clarifies this is the ISO builder, not the OMATERM toolkit
  itself (not affiliated with omaterm.org).
- First-run setup offers an opt-in AI-agents step
  (mise use -g opencode claude-code codex gemini), since the
  bare-metal omaterm.org installer does not include the agents.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-28 22:02:38 +01:00