Rewrites remaining github.com / git.sr.ht references to git.swaits.com, translating GitHub URL shapes to Gitea's (/blob/<ref>/ -> /src/branch/<ref>/, /tree/<tag> -> /src/tag/<tag>, /actions/workflows/X -> /actions?workflow=X, /edit/ -> /_edit/). Left pointing at GitHub on purpose: pull-request links (PRs were not migrated) and GitHub-only surfaces Gitea lacks (security advisories, discussions).
1.6 KiB
1.6 KiB
ringa
GPU-rendered ring light overlay for Wayland. Simulates a monitor-mounted ring light by drawing a bright glowing border around your screen during video calls.
Features
- GPU-rendered via wgpu/WGSL fragment shader -- smooth gaussian glow, no banding
- Full desktop passthrough -- clicks, scrolls, and keyboard input pass through to your desktop
- Cursor avoidance -- the ring fades near your mouse so you can see and interact with UI elements
- Color temperature -- pure white default, or warm/cool/custom Kelvin presets
- Toggle on/off -- bind to a hotkey; running it again kills the existing instance
- Works on any wlroots-based Wayland compositor (Sway, Hyprland, niri, river, etc.)
Install
From source
git clone https://git.swaits.com/swaits/ringa.git
cd ringa
cargo install --path .
From crates.io
cargo install ringa
With mise
mise use cargo:ringa
Usage
# Pure white (default)
ringa
# Color temperature presets
ringa warm # 3200K tungsten
ringa golden # 2700K golden hour
ringa studio # 5000K neutral studio
ringa daylight # 5600K daylight balanced
ringa cool # 6500K cool daylight
# Custom Kelvin (1000-40000)
ringa 4200
Run it again to toggle off.
Hotkey binding
Bind ringa to a key in your compositor config. Examples:
Sway / i3
bindsym $mod+F12 exec ringa
Hyprland
bind = $mainMod, F12, exec, ringa
niri
binds {
Mod+F12 { spawn "ringa"; }
}
Requirements
- Wayland compositor with
wlr-layer-shell-unstable-v1support - Vulkan-capable GPU