FORK NOTES — how de-omarchy differs from upstream Omarchy
The docs/, manual/, and agents/ trees are vendored from upstream
Omarchy so the reference material travels with the fork. They describe
upstream faithfully except for the deltas below. When this file and a
vendored doc disagree, this file wins.
Paths
| Upstream says | Here |
|---|---|
/usr/share/omarchy |
/usr/share/de-omarchy (OMARCHY_PATH) |
github.com/omarchy/omarchy |
this repo (de-omarchy) |
| bash login stack | zsh: ~/.config/zshrc.d/50-de-omarchy.zsh |
Not present by design (no ISO — UI/shell/theme/application layer only)
Installer machinery: ISO build, LUKS provisioning, Limine bootloader +
snapshot boot entries, snapper, Plymouth boot splash/unlock art, SDDM theme,
pacman mirrors/repo signing, libalpm guard hooks, systemd zram/shutdown
tunings, udev rules, Firefox policies, system fontconfig, wayland-sessions
entry, etc/skel.
Consequences: no pre-update snapshot rollback, Style > Unlock is dead,
direct pacman -Syu is not blocked.
Fork additions
- Plugin marketplace:
registry.json+omarchy plugins …CLI + Plugin
Library/Manager windows (upstream installs plugins from git URLs only) - Bar style presets:
shell/plugins/bar/BarStyles.js,omarchy bar style list|set|cycle|menu, SUPER+CTRL+Y, persisted asbar.styleNamein shell.json - Extra shell plugins: plugin-manager, plugin-library, notification-center
(SUPER+ALT+N), power-profile, docker-status, system-overview,
wallpaper-manager - Standalone keybindings window: SUPER+K →
omarchy-keybindings - Notifications: toasts render only on the Hyprland focused monitor; all
urgencies expire (3s normal / 6s critical); hover pauses the countdown - Install model:
install.shlayers onto an EXISTING Arch/CachyOS system
additively (backs up first, appends one marked block to hyprland.lua,
never overwrites user files) instead of owning the machine - Screensaver effects engine: upstream's repo ships
ttfx(Rust port of
terminaltexteffects); outside that repo the same engine installs from
python-terminaltexteffects asttewith identical options. omarchy-screensaver
resolvesttfxfirst, falls back totte, and degrades to static branding
art when neither exists (upstream's ISO guarantees both the engine and the
branding file; layered installs may have neither) - SDDM login screen: theme + greeter config vendored verbatim from upstream
(default/sddm/), deployed only when SDDM is already installed, via a new/etc/sddm.conf.d/50-de-omarchy.confdrop-in (sorts after existing confs so
Current=omarchy wins without editing them). Upstream's PAM edits are
deliberately NOT ported: removing pam_gnome_keyring from /etc/pam.d/sddm is
ISO-specific and would break password keyrings on existing systems; same for
the sddm-autologin faillock tweak.
Diverged shared files
See audit/PARITY-AUDIT.md §7 for the full audit trail of files that
differ deliberately (update/channel/provisioning rewrites, hypr bootstrap
reload prefixes, kitty config, default shell.json layout).
Vendoring workflow
To refresh these trees from upstream:
cp -r /path/to/upstream/{docs,manual,agents} .
…then re-apply nothing — keep deltas in THIS file only, never edit vendored
files in place (except mechanical path rewrites noted here).