A simple, lightweight, wallpaper manager written in Rust.
Includes an optional shader mode, which engages a GPU-accelerated shader renderer, that renders live shaders as your desktop wallpaper (this mode consumes more RAM, ~80-120MB, but is a lot of fun!).
💾 Install | ⚡ Features | 📝 Config
shader-gradient_glossy.mp4
➡️ Manually download the latest release here, or use the installer for your platform.
First launch may need approval in System Settings → Privacy & Security
brew install --cask hmerritt/tap/auracurl -fsSL https://raw.githubusercontent.com/hmerritt/aura/master/install.sh | shscoop bucket add hmerritt https://github.com/hmerritt/scoop-bucket
scoop install hmerritt/aura- Small in size, low memory footprint (~3MB when in
imagemode) - Multiple image
sourcescan be added- Single image path
- Directory path
- RSS feed
- Caches remote images locally for faster switching
- Automatically re-encodes images for wider format support:
jpeg|png|bmp|gif|webp - Tray icon to trigger a new image quickly
- Built-in self-updater on Windows/Linux; Homebrew-managed updates on macOS
- Shader mode which engages a GPU-accelerated shader renderer (Metal on macOS), allowing for live animated wallpapers
Default location is ~/.config/aura.hcl
# Runtime renderer mode: "image" | "shader"
renderer = "image"
# Image mode options (used when renderer = "image")
image = {
# Image sources. Multiple sources will be combined together to pick the next wallpaper from.
# Supported source types: "file" | "directory" | "rss"
sources = [
{ type = "file", path = "C:/wallpapers/favorite.jpg" },
{ type = "directory", path = "C:/wallpapers/library", recursive = true, extensions = ["jpg", "png", "webp"] },
{ type = "rss", url = "https://example.com/feed.xml", max_items = 100 }
]
timer = "3h" # "40s" | "12m" | "3h"
remoteUpdateTimer = "2h" # "40s" | "12m" | "3h"
format = "jpg" # "jpg" | "png"
jpeg_quality = 90 # 1-100
}
# Shader mode options (used when renderer = "shader")
shader = {
name = "gradient_glossy" # "gradient_glossy" | "limestone_cave" | "dither_asci_1" | "dither_asci_2" | "dither_warp" | "silk"
target_fps = 60 # 1-999
resolution = 100 # 1-100 (% internal shader render resolution; output stays full-screen)
mouse_enabled = false # false | true
desktop_scope = "virtual" # "virtual" | "primary"
color_space = "unorm" # "unorm" | "srgb"
}
# App update settings
updater = {
enabled = true
checkInterval = "6h"
feedUrl = "https://github.com/hmerritt/aura/releases/latest/download"
}Gallery icons created by Freepik - Flaticon
