omarchy
Recipe card from the charly-distros plugin (Images — the deployable catalog).
omarchy
Section titled “omarchy”The canonical Omarchy base image: plain Arch plus Omarchy’s own package sources
and runtime. Owned by the opencharly/distro-omarchy submodule
(box/omarchy inside charly), consumed from main through the omarchy import
namespace — the same arrangement /charly-distros:cachyos uses.
Box Properties
Section titled “Box Properties”| Property | Value |
|---|---|
| Base | arch.arch |
| Layers | layer-omarchy-base/candy/omarchy-base |
| Platforms | linux/amd64 (the [omarchy] repo publishes no aarch64 tree) |
| Distro | [omarchy, arch] — the tag chain |
| Build | pac (no AUR builder: all 23 Omarchy-built packages come from [omarchy]) |
The three things that make this image different from Arch
Section titled “The three things that make this image different from Arch”1. Every package comes from Omarchy’s frozen mirror. core, extra and
multilib resolve to stable-mirror.omarchy.org, not to Arch upstream — the
snapshot is deliberately older, and a guest built against Arch would silently
carry a different kernel and a different everything-else than Omarchy ships.
pacman-conf --repo core Server reporting an omarchy.org host is the check
that catches it.
2. It reports ID=omarchy. omarchy-settings REPLACES /etc/os-release,
so the built image is ID=omarchy, ID_LIKE=arch, VERSION_ID=4.x. That is
why omarchy needs its own #DistroID rather than an alias of arch — charly’s
host detection reads that field — while ID_LIKE=arch makes the arch fallback
work automatically.
3. The limine alpm hooks are withheld, not masked. omarchy hard-depends on
limine, limine-mkinitcpio-hook, limine-snapper-sync, snapper and sddm,
so a container installs the whole boot/DM stack whether it wants it or not.
Their hooks cannot succeed with no mounted ESP. Pacman’s NoExtract keeps the
hook FILES off the image entirely — masking cannot, because
90-mkinitcpio-install.hook is package-owned and pre-masking it aborts the
transaction with a file conflict.
⚠️
NoExtractapplies to every LATER transaction too. A machine image that wants those hooks back (for kernel updates to regenerate boot entries) must strip the five rules AND reinstall the affected packages — the hook files are withheld, not merely disabled.
Quick Start
Section titled “Quick Start”charly -C box/omarchy box build omarchycharly -C box/omarchy check run check-omarchy-podDerived Boxes
Section titled “Derived Boxes”omarchy-cstream— the streamed desktop (see/charly-distros:omarchy-cstream)omarchy-pacstrap-builder— the privileged builder for bootstrap VMs
Verification
Section titled “Verification”charly -C box/omarchy check box omarchy— build-scope probescharly -C box/omarchy check run check-omarchy-pod— thedisposable: trueR10 bed: mirror provenance, the locally-signed packaging key, the withheld hooks, and/etc/skelseeded into the image user’s home
When to Use This Skill
Section titled “When to Use This Skill”MUST be invoked when the task involves the Omarchy base image, the
opencharly/distro-omarchy submodule, or the main → omarchy import namespace.
Invoke this skill BEFORE reading source code or launching Explore agents.
Related
Section titled “Related”/charly-distros:arch— the Arch base this derives from/charly-vm:omarchy-vm— the ISO-installed VM/charly-image:image— box family umbrella