A small Rust/Ratatui TUI for managing Linux cursor themes.
Run cursors, search installed cursor themes, choose a size, apply a theme, and restore previous cursor states from built-in backups.
./install.shThis builds the release binary and installs it to:
~/.local/bin/cursors
If ~/.local/bin is not on your PATH, add this to your shell config:
export PATH="$HOME/.local/bin:$PATH"You can also use Cargo directly:
cargo install --path .cursorsThe app is TUI-only. The only non-interactive commands are:
cursors --help
cursors --versionMain theme list:
j / Down move down
k / Up move up
/ search themes
Enter confirm/apply selected theme
Space open selected theme directory
+ / - change cursor size
d reset size to 24
r rescan themes
b open backups page
? help
q quit
Backups page:
j / Down move down
k / Up move up
/ search backups
Enter / u confirm/restore selected backup
h / Esc return to themes
? help
q quit
When applying a cursor, cursors may update:
~/.icons/default/index.theme
~/.Xresources
~/.config/hypr/cursor.conf
It also runs user-level commands when available:
gsettings
xrdb
hyprctl
flatpak override --user
Missing tools are skipped.
Before applying a cursor, the app creates a restore point under:
~/.local/state/cursors/backups/
Restore points are visible from the b backups page. Restoring a backup restores managed files and reapplies the saved cursor theme/size to the running environment.
cargo test
cargo clippy --all-targets -- -D warnings
cargo build --release