Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aether Opacity

A small CLI for Omarchy that toggles and regulates the translucency of the current theme — Hyprland windows, shell surfaces (bar, popups, notifications, launcher, menus, polkit, lock), and terminals — with one command.

Despite the name, it works with any Omarchy theme: it reads the active theme from ~/.local/state/omarchy/current/theme.name, writes opacity override files into ~/.config/omarchy/themes/<theme>/, and re-applies the theme with the wallpaper untouched.

Why it exists

omarchy theme install (a git clone) refuses Lua and terminal config files from the theme for security, so a theme published to the gallery cannot ship window or terminal translucency on its own. This plugin fills that gap:

  1. If the current theme dir still has .git (a managed clone), it is converted to an editable local copy — otherwise omarchy-theme-set ignores the override files at every apply.
  2. Missing override files are generated from the staged theme (~/.local/state/omarchy/current/theme/), so their colors always match the theme, and the opacity keys are added in each program's format.
  3. Opacity values are written, the theme is re-applied, Hyprland is reloaded, and terminals are restarted.

The classic Aether flow (theme dir is a symlink to ~/.config/aether/theme, no .git) works exactly as before.

Requirements

  • Omarchy with a theme set
  • bash, sed, awk, grep (all standard)
  • hyprctl for live window updates (optional — the script degrades with a warning outside Hyprland)

Installation

omarchy plugin add https://github.com/Linar46/aether-opacity.git
~/.config/omarchy/plugins/io.github.linar46.aether-opacity/install

The install script symlinks bin/aether-opacity into ~/.local/bin (an existing real file there is backed up to aether-opacity.bak once). Run aether-opacity from a shell afterwards.

The plugin's shell service (Service.qml) is a no-op — it exists only to satisfy the plugin service contract. Everything lives in the CLI script.

Usage

aether-opacity on          restore the designed translucent defaults
aether-opacity off         make everything fully opaque (1.0)
aether-opacity toggle      flip between on and off
aether-opacity set <v>     uniform opacity level for all surfaces (0 < v <= 1)
aether-opacity status      show current opacity values (default)

set <v> applies <v> everywhere, except inactive windows (v - 0.14) and the lock input card (v - 0.15), both clamped for readability. on restores the designed per-surface balance. Every command edits the theme files and re-applies the theme via omarchy theme set (wallpaper skipped), so the running shell, Hyprland, and terminals pick up the change immediately — foot picks it up in new windows only.

AETHER_OPACITY_DRY_RUN=1 aether-opacity set 0.8 edits the files without applying, for scripting or testing.

Removal

~/.config/omarchy/plugins/io.github.linar46.aether-opacity/uninstall
omarchy plugin remove io.github.linar46.aether-opacity

Removing the plugin does not reset the theme's opacity values; run aether-opacity on (or edit the theme files) before uninstalling if you want the designed defaults.

Limitations

  • A converted clone stops being recognized as a clone; re-install the theme from git to go back to a managed copy.
  • Override files no longer track future template changes; if the theme's colors.toml is regenerated, re-run the script to regenerate the overrides.

License

MIT

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages