Omahub
← All plugins
M

Theme Drift

by Mohamed Osama Mohamed Khater

Browse the full Omarchy theme catalog and safely rotate installed themes, with favorites, suggestions, and permanent mode.

Security review

No obvious issues detected

Deterministic scan — not a security guarantee

None
Risk level
None
Analyzed commit
23422e9
Scanned
1 week ago

No potentially dangerous behavior detected in the analyzed commit.

Automated analysis only — not a security guarantee.

AI advisory review

No obvious issues detected

Language-model assessment · ~deepseek/deepseek-v4-flash-latest — advisory only

Low
AI risk level
Low
Recommendation
install
Model
~deepseek/deepseek-v4-flash-latest
Analyzed commit
23422e9
Reviewed
6 days ago

Theme Drift is a well-scoped theme rotator: it only calls Omarchy's public theme commands, writes state under a verified private directory, and never installs catalog-only themes without explicit user confirmation. The deterministic scan found no issues, and manual review found no obfuscated, destructive, or credential-harvesting code. Residual risk is limited to the disclosed behavior of rotating themes automatically and installing third-party themes after user approval.

  • The service runs at boot and may change the active theme without per-change confirmation; this is the plugin's stated purpose and is disclosed in the README.
  • Catalog-only themes are third-party GitHub repositories installed via `omarchy theme install` after explicit user approval; supply-chain risk is inherent to the theme catalog and not introduced by this plugin.
  • The helper fetches the catalog from omarchy.org over HTTPS and follows redirects; a compromised catalog could present malicious entries, but installation still requires explicit user consent.
How this check works

This review combines the deterministic scan (the rule-based results above) with an independent look at the plugin's code by a language model. The model reads a trimmed sample of the repository's files, the manifest, and the README, then gives a plain-language risk level and a recommendation: install (no notable danger), review (look closer first), or avoid (clearly dangerous).

It runs on the same analyzed commit as the deterministic scan and is strictly advisory — it is not a security guarantee and never blocks a plugin by itself. A human moderator still reviews plugins before they are listed.

AI advisory only — automated analysis, not a security guarantee.

Install
$ omarchy plugin add https://github.com/da5ater/omarchy-theme-drift --enable
Appearance #bar

Theme Drift

Theme Drift is a native Omarchy Shell plugin for people who want their desktop to feel fresh without losing control.

Install

omarchy plugin add https://github.com/da5ater/omarchy-theme-drift.git --enable

Requirements and behavior

  • Omarchy Quattro and its standard omarchy, jq, curl, perl, git, and flock commands.
  • Network access when refreshing the community catalog or installing a catalog-only theme.
  • Theme Drift reads the curated catalog from https://omarchy.org/themes/ and caches its metadata for six hours.
  • Community theme repositories are third-party code and assets. Theme Drift delegates installation and activation to Omarchy's supported omarchy theme install and omarchy theme set commands.
  • Theme Drift writes only its own state under ~/.local/state/theme-drift/. It does not overwrite Omarchy or Hyprland configuration files.
  • State is kept in a verified private directory. Configuration updates use secure same-directory temporary files and atomic replacement; process serialization uses a directory-descriptor lock in a verified private runtime directory.

What it does

  • Selects one different installed, eligible theme per machine boot, either from all installed themes or from Favorites only.
  • Uses an exhaustive shuffled cycle: every installed, eligible theme appears once before any theme repeats.
  • Merges built-in, installed community, and catalog-only themes in a wallpaper-led gallery.
  • Offers one catalog-only theme in a TRY NEW ONE ✨ confirmation popup after boot, including a large wallpaper preview and the exact repository source.
  • Installs catalog-only themes only after an explicit Yes in that popup or an explicit Apply/Permanent action in the gallery.
  • Keeps a dedicated Favorites collection.
  • Hides disliked themes from future rotation.
  • Lets you apply any theme immediately or keep one permanently.
  • Preserves favorites and hidden themes when rotation is paused.

Keep permanently pauses both boot rotation and the new-theme prompt. The gallery shows a Resume drift button while paused. Applying a different theme also resumes drift; applying the permanent theme again leaves the pause in place.

The official catalog is refreshed every six hours. New catalog entries appear in Discover automatically, and themes installed by any tool join the unfinished rotation cycle automatically. Catalog-only themes use remote previews but are never installed unattended. The confirmation UI shows the exact GitHub repository and passes that approved URL directly to Omarchy's installer; automatic boot rotation never consumes repository URLs from the mutable catalog.

The first installation records the current boot without changing the active theme. Automatic rotation begins on the next boot.

Keyboard

Key Action
Left / Right Browse themes
Enter Apply selected theme
F Favorite or unfavorite
G Toggle between all-installed and Favorites-only boot rotation
H Hide or restore
P Make selected theme permanent
R Resume once-per-boot rotation
1, 2, 3 Discover, Favorites, Hidden
Esc Close

Theme Drift opens on the theme currently in use. The single Favorite button saves it without requiring its name. Browse other themes with the tabs or thumbnail strip; the same button favorites the selected theme. The single Drift button switches between all installed themes and favorites only, or resumes rotation while Permanent mode is active.

State is stored in ~/.local/state/theme-drift/config.json. The plugin only calls Omarchy's public omarchy theme commands and never edits stock Omarchy files.

Approved catalog-only selections clone their displayed public GitHub repository into ~/.config/omarchy/themes/ through omarchy theme install. Installed themes remain available after removing Theme Drift.

Remove

omarchy plugin remove io.github.da5ater.theme-drift --yes

The removal command deletes the plugin but leaves its small preference file and any themes Omarchy installed. To remove Theme Drift's preferences as well:

rm ~/.local/state/theme-drift/config.json ~/.local/state/theme-drift/catalog.tsv