Skip to content

Tool ownership matrix

This matrix records which layer owns each class of tool, package, extension, theme asset, and future desktop mutation. It is not a generated inventory and does not resolve future CachyOS package or AUR names.

Owner vocabulary

OwnerBoundary
miseVersioned developer runtimes, portable CLIs, and quality tools.
aptWSL and droplet OS packages, platform prerequisites, and distro-owned integration.
pacmanCachyOS or Arch-family official packages, libraries, and desktop/runtime dependencies.
aurCachyOS AUR packages only after current package-name and source verification.
scoopNative Windows command-line tools and bootstrap utilities listed in windows/tools.json.
wingetNative Windows GUI applications and official Windows installers listed in windows/tools.json.
directUser-local upstream asset installs or direct-download exceptions with a narrow documented reason.
editorEditor extension/package managers such as Zed and VS Code.
manualHuman-owned state that the repo documents but does not install or mutate automatically.
repo-scriptRepo-maintained helper commands, renderers, sync commands, and future explicit desktop apply commands.

Matrix

Tool or assetLaneOwnerInstall pathUpgrade pathApply behaviorValidationNotes
Versioned runtimes and portable developer CLIssharedmiseMise-managed data directory and shims on PATHMise maintenance policy and just upgrade where that lane supports itInstall makes binaries available; project-local tool versions still winjust mise-policy-check, just checkCovers Node, pnpm, Python, uv, Rust, quality CLIs, agent CLIs, and portable workstation CLIs. Droplet normal upgrade does not run this broad shared inventory.
Repo quality and documentation CLIssharedmiseMise-managed package installs and shimsMise maintenance policyNo user config mutation beyond tool availabilityjust check, just docs-check, focused validator scriptsKeeps validation tooling out of OS package managers unless the OS must own it.
WSL platform prerequisiteswslaptDistro package database and system pathsWSL prerequisite and upgrade scriptsInstall-only unless the specific package owns system integrationSource-only smoke checks and lane validationUse for distro packages, GitHub CLI apt setup, and platform libraries.
Droplet platform prerequisitesdropletaptDistro package database and system pathsscripts/upgrade.sh droplet path and scripts/install-prereqs-droplet.sh --coreInstall-only; leaves login shell unchanged and does not install GUI assetsSource-only smoke checks, droplet render assertions, and dry-run bootstrap previewUses official GitHub CLI, mise, and Ubuntu Fish 4 apt sources where applicable. Normal upgrade runs apt update/upgrade plus core bootstrap only.
Droplet agent/SSH toolsetdropletmiseApt-managed /usr/bin/mise installs into the user's mise data and shimsExplicit scripts/install-prereqs-droplet.sh --codex-tools only, preferably after --dry-run --codex-toolsInstalls only the named droplet agent/SSH toolset under timeout, lock, one-tool-at-a-time, and process-summary guardsSource-only static checks and guarded dry-run previewNormal droplet upgrade prints this command but never runs it automatically. It must not call broad mise install, mise upgrade, mise prune, or mise reshim.
CachyOS platform and official desktop/runtime packagescachyospacmanSystem package database and system pathsCachyOS prerequisite and upgrade scriptsInstall-only unless a future explicit desktop command applies user configSource-only smoke checks now; CachyOS host checks laterUse for official packages, system libraries, and desktop engine/runtime dependencies after verification.
CachyOS AUR-only package candidatescachyosaurSystem package database and package-owned pathsFuture explicit installer after package-name and source verificationInstall-only; must not apply Plasma, KWin, Kvantum, GTK, panel, or SDDM settings by itselfFuture CachyOS dry-run/status validationDo not resolve or document current AUR package names in this phase.
Windows CLI/bootstrap toolswindowsscoopScoop apps, shims, and bucket state declared in windows/tools.jsonWindows upgrade script and Scoop update pathInstall makes binaries available; no profile startup installsjust windows-tool-inventory-check, Windows smoke validationmicro is a core terminal-editor fallback in this layer.
Windows GUI applicationswindowswingetPer-app Windows install locationsWindows upgrade script and winget pathInstall application only; app settings remain separately managed or manualjust windows-tool-inventory-check, Windows smoke validationUse official IDs where the GUI app is the platform owner, such as Zed during GUI bootstrap.
Windows direct-download exceptionswindowsdirectException-specific install path recorded in windows/tools.jsonWindows upgrade script or documented manual refreshInstall-only unless the exception explicitly documents otherwisejust windows-tool-inventory-checkKeep exceptions narrow; prefer Scoop or winget when either is a stable owner.
Windows manual tools or settingswindowsmanualHuman-managed locationHuman action, documented in the tool inventory or workflow docsRepo documents expectations but does not install or mutateInventory validation plus manual confirmationUse when automation would be brittle, privileged, or outside repo scope.
Zed extensions and VS Code extensionssharededitorEditor-managed extension directoriesEditor extension managerEditor installs extensions; repo manages settings, keymaps, tasks, and extension manifestsEditor render validation and source-only smoke checksNeovim has no managed plugin layer in this repo.
Fish pluginssharedrepo-scriptManaged fish_plugins file and Fisher-managed plugin install statedotfiles-sync-fish-pluginsExplicit sync only; shell startup must not install pluginsSource-only smoke checks and shell testsStarship owns the prompt; Fisher remains a small plugin manager.
Repo helper commandssharedrepo-scriptRendered from home/dot_local/bin/ to ~/.local/binChezmoi render/apply and repo maintenanceBehavior depends on the command; helper scripts must declare host boundariesSource-only smoke checks and focused testsHost-only helpers belong behind templates or .chezmoiignore.
Terminal, editor, and CLI Catppuccin theme datasharedrepo-scriptRendered from home/.chezmoidata/theme.toml into terminal, editor, Yazi, bat, delta, vivid, Starship, and related configEdit repo theme data, render, and apply with chezmoiNormal chezmoi apply updates tracked config; CachyOS KDE ricing must not overwrite this layerDocs build, source-only smoke checks, terminal/editor render checksExisting Catppuccin theme ownership is unchanged by CachyOS desktop ricing.
Terminal profile color-scheme assetssharedrepo-scriptRendered terminal config and checked-in terminal color filesRepo edits and render helpersChezmoi apply updates terminal config; no KDE desktop mutationTerminal render checks and source-only smoke checksKonsole and Ghostty remain terminal-owned, not Plasma global theme state.
CachyOS Breeze safety referencecachyosrepo-scriptUser state under ~/.local/state/dotfiles/kde-referencedotfiles-cachyos-theme capture-breeze-reference after a manual Breeze restoreCaptures reference snapshots only; does not mutate live KDE settingsdiff-breeze-reference, source-only desktop checks, manual desktop review after captureThis is the active KDE safety baseline. It captures only user-level KDE/KWin/Plasma/Kvantum/GTK/KSplash config in the backup model.
CachyOS Breeze user appearance resetcachyosrepo-scriptUser config under ~/.configdotfiles-cachyos-theme reset-breeze and restore-backupExplicit reset only after backup; not from chezmoi apply, just upgrade, or asset installSource-only desktop checks, status/plan output, backup validation, diff-breeze-reference, and manual GUI reviewResets Breeze Dark KDE/GTK/icon/cursor/KWin state with stable commands and selected key writes. Wallpaper, fonts, scaling, Flatpak, SDDM, and boot splash stay out of scope.
CachyOS Breeze panel reference restorecachyosrepo-scriptPlasma shell config such as plasma-org.kde.plasma.desktop-appletsrc and plasmashellrcdotfiles-cachyos-theme reset-breeze --from-reference latest --reset-panels and restore-backupSeparate explicit panel restore only after backupSource-only desktop checks plus manual KDE session validationRestores captured Breeze reference panel files. It does not synthesize panels, use Latte Dock, or apply MacTahoe/macOS-like layout.
CachyOS theme engine dependenciescachyospacmanSystem package database and package-owned runtime pathsDeferred MacTahoe/WhiteSur install-assets path verifies or installs kvantum and kvantum-qt5 only when those families are explicitly selectedInstall-only; desktop appearance does not change until an explicit apply command runsTheme status, install-assets dry-run, source-only desktop checksBreeze uses system KDE assets and does not require user-local asset installation.
CachyOS user-local MacTahoe and WhiteSur assetscachyosdirectUser-local theme paths such as ~/.local/share, ~/.local/share/plasma/layout-templates, ~/.themes, ~/.local/share/icons, and ~/.config/KvantumDeferred `dotfiles-cachyos-theme install-assets --theme mactahoewhitesurall` clones upstream Git and copies/extracts assetsInstalls or refreshes assets only; does not select or apply them
CachyOS verified theme asset packagescachyosaurPackage-managed theme asset paths or user-local package output, depending on verified package behaviorPossible future explicit installer if AUR packages become the better ownerInstall-only; must not select global theme, panel layout, or SDDMFuture dry-run/status validationAUR theme packages are not part of the active Breeze baseline.
CachyOS Better Blur and rounded-corner KWin effectscachyosmanualUser-selected KWin effect packages and effect settingsManual installation/configuration only in this phaseNot installed or enabled by repo commandsaudit-upstream reports current recommendation and verified AUR package namesUpstream recommends Better Blur/force blur and rounded corners; this repo keeps effects out of normal theme/layout mutation for now.
CachyOS Flatpak GTK theme overridescachyosrepo-scriptUser Flatpak override stateFuture explicit Flatpak override command or docs-only procedureOptional explicit override onlyFuture docs-first validation and manual app checksPrefer documenting first; do not hide Flatpak mutation inside package refresh or theme apply.
CachyOS SDDM/login themingcachyosrepo-scriptFuture verified SDDM config and theme paths, including possible root-owned locationsFuture dotfiles-cachyos-theme plan-sddm, backup-sddm, apply-sddm, and rollback-sddmLater privileged explicit phase only; fail with the exact required command when elevation is neededFuture privilege-gated validation, manual logout/login check, and TTY recovery testNo display-manager service, autologin, GPU, boot splash, GRUB, kernel, driver, or initramfs changes.

Theme asset boundaries

Asset classPreferred ownerBoundary
Theme engine dependencypacman first, aur only when verifiedPackage manager installs dependencies; it does not apply user-visible desktop state.
Breeze safety referencerepo-scriptCapture and diff user-level KDE reference state under ~/.local/state/dotfiles/kde-reference; live settings are not changed by capture or diff.
Breeze user config writesrepo-scriptOnly explicit dotfiles-cachyos-theme reset-breeze, rollback, reference restore, or backup restore commands may mutate KDE, KWin, Kvantum, GTK, panel, or KSplash config after backup.
MacTahoe and WhiteSur theme assetsdirect user-local install first, aur only when verifiedDeferred asset installation may place files under user-local theme directories, including MacTahoe Plasma layout templates, but must not select or apply them.
Plasma/KDE config writesrepo-scriptActive writes belong to Breeze reset/reference restore. Deferred apply-* paths must stay explicit and backed up. SDDM/login and boot splash remain separate.
Terminal/editor Catppuccin themesrepo-script and editorExisting home/.chezmoidata/theme.toml and editor extension managers remain separate from KDE ricing.

Normal upgrade paths may install or refresh packages and assets, but they must not apply or re-apply desktop themes, panel layouts, Flatpak overrides, or SDDM/login themes. Droplet is narrower than the workstation lanes: normal upgrade may refresh apt packages and rerun the core bootstrap, but the droplet agent/SSH mise toolset stays behind the explicit --codex-tools command.