Files
omarchycn/agents/install-scripts.md
T
David Heinemeier HanssonandClaude Fable 5 c2d81220d9 Split task-specific agent guidance into agents/ guides
Keep only universal rules in AGENTS.md and point to per-task guides
for shell development, acceptance tests, visual verification, command
metadata, and install scripts. Fold the migration notes into
docs/migrations.md and replace .claude/CLAUDE.md with a root CLAUDE.md
importing AGENTS.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-07 12:33:27 +02:00

1.5 KiB

Install Scripts

Read this before working under install/ or on the system/user setup commands.

The ISO owns installation orchestration. This repo ships target-side setup commands and reusable setup leaves:

  • bin/omarchy-setup-system runs root-owned system setup during ISO finalization.
  • bin/omarchy-setup-hardware runs idempotent hardware-specific setup and is called by omarchy-setup-system.
  • bin/omarchy-finalize-user runs the per-user runtime finalization (skill symlinks, xdg-user-dirs, mime defaults, install/user/all.sh). Shipped user defaults are seeded by /etc/skel from omarchy-settings, not by this command. bin/omarchy-reinstall-configs is the explicit destructive resync of those defaults into an existing user's $HOME.
  • leaf scripts under install/ are sourced by run_logged $OMARCHY_INSTALL/path/to/script.sh and intentionally do not have shebangs.
  • avoid exit in sourced setup scripts unless intentionally aborting setup.
  • use $OMARCHY_INSTALL and $OMARCHY_PATH instead of hard-coded Omarchy paths.
  • keep root-scoped hardware setup under install/hardware/ and orchestrate it through install/hardware/all.sh.
  • keep every per-user setup leaf under install/user/ (including install/user/hardware/ and install/user/first-run/) so it is clear what must run for each user.
  • prefer helper commands for package and command checks where available.

Raw command -v, pacman, and pacman-key are acceptable in package-helper contexts where direct package-manager behavior is the point of the script.