Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

otds — Omarchy Theme Downloader & installer

One command to list, install, and keep up to date every community Omarchy theme from both theme sites:

Source Themes
omarchy.org/themes ~150
omarchythemes.com ~280
merged & deduped 330+

No manual browsing, no copy-pasting git clone URLs. Scrapes both sites, dedupes by repo URL, and drives omarchy theme install for you.

Requirements

  • Linux + Omarchy (the omarchy CLI)
  • bash, curl, git, awk — all standard

Install

git clone https://github.com/<you>/otds.git
cd otds
sudo install -m755 otds /usr/local/bin/otds     # or ~/.local/bin/otds

Usage

otds                      # list all themes (name<TAB>github url)
otds count                # total (all sources, merged)
otds list org             # only themes listed on omarchy.org
otds list ot              # only themes listed on omarchythemes.com
otds url aamis            # repo URL of one theme
otds install aamis        # install one theme
otds install              # install every missing theme, then restore your current theme
otds install all --force  # reinstall everything
otds update               # re-scrape lists + git pull every installed theme repo
otds update --fresh       # force a re-scrape even if the cache is fresh

otds install (no argument) is idempotent — already-installed themes are skipped, so you can re-run it anytime to pick up new themes from the sites. A per-theme timeout keeps one broken repo from stalling the batch, and your current theme is restored when the batch finishes.

How it works

  1. Fetch https://omarchy.org/themes/ — repo URLs are all on one page.
  2. Fetch the index of https://omarchythemes.com/, then fetch each theme page in parallel (12 workers) to extract its repo URL.
  3. Merge both lists, dedupe by URL, and derive the theme name the same way omarchy-theme-install does (strip omarchy- prefix / -theme suffix, lowercase).
  4. Scrape results are cached for 24 h in ~/.cache/omarchy-theme-urls/ — add --fresh to bypass.

Environment

Variable Default Purpose
OTDS_PROXY (unset) Proxy for scraping and git, e.g. socks5h://127.0.0.1:1080 — handy if GitHub is blocked or slow on your network
OTDS_TTL 86400 Scrape-cache lifetime in seconds
OTDS_INSTALL_TIMEOUT 120 Per-theme install timeout in seconds

Example with a proxy:

OTDS_PROXY=socks5h://127.0.0.1:1080 otds update

Notes

  • Themes installed this way live in ~/.config/omarchy/themes/<name>/ as git repos, exactly like omarchy theme install puts them — so otds update can fast-forward them all in parallel.
  • A handful of repos on the theme sites are dead (deleted/renamed upstream); those installs fail with FAILED <name> and can simply be ignored.

License

MIT

About

Install & update all community Omarchy themes from omarchy.org/themes and omarchythemes.com.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages