caelback is a stdlib-only Python CLI that captures
your entire Caelestia
(Hyprland) setup: configs, themed apps, exact package versions, systemd units, sddm sessions,
all of it. Trying someone else's dotfiles is just a caelback restore away from being undone.
Caelestia doesn't just live in ~/.config/hypr. It themes
a pile of third-party apps, including kitty, rofi, waybar, yazi, btop, cava, fastfetch, swaync,
and the Qt5/Qt6 style engines. It also ships systemd units, pins fast-moving AUR packages like
quickshell-git at exact versions, and picks the sddm
session that actually logs you in.
Manually tracking all of that before trying a different rice is tedious and easy to get
wrong. One real dotfile-hop restore correctly reverted ~/.config/hypr
but silently left everything else on the other repo's theming: notifications and
Qt apps stuck in a light color scheme, and the terminal fetch banner still carrying someone
else's branding. It was invisible until you actually looked.
caelback finds all of it automatically, combining named
roots with a fuzzy scan for anything else with "caelestia" in its path, so a snapshot
is actually complete, and a restore actually verifies it landed.
caelback snapshot
Config dirs, themed apps, state dirs, systemd units, sddm sessions, and exact package versions, found by combining known roots with a fuzzy scan instead of a hardcoded list.
caelback restore
Post-restore, caelback re-checks that the live system actually matches what was restored, instead of just trusting that the restore commands exited 0.
caelback undo
Restores create a pre-restore backup automatically, so even a restore itself can be walked back if it wasn't what you wanted.
caelback star
Pin a known-good snapshot as your trusted baseline. Starred snapshots are exempt from
prune, so your safety net never gets swept.
caelback preview <repo-url>
Auto-detects chezmoi, stow, a Makefile, or an install script in an unfamiliar dotfiles repo and applies it, with automatic revert on Ctrl-C or exit.
caelback reclaim
Config restores don't kill running processes. reclaim
finds and kills leftover bars/wallpaper daemons from an abandoned setup.
caelback cache-missing
Package tarballs are cached locally at snapshot time. Anything an AUR helper didn't keep around gets fetched or rebuilt so restore never needs the network.
caelback doctor --all
Sanity-checks snapshots and the live environment so a broken restore is caught before you need it, not during a crisis.
caelback diff / export / import
Diff two snapshots, export one to a portable archive, or import one on another machine; it's the same snapshot format either way.
SUPER + ALT + B
A read-only panel for browsing and starring snapshots at a glance. Restoring stays CLI-only on purpose, since it can need sudo and explicit confirmation.
--json for scripting).git clone https://github.com/rusty-workshop/caelback.git && cd caelback && uv tool install --editable .