dotrs is a minimalist dotfiles manager focused on practicality and simplicity.
- No bloated features.
- Straightforward workflow.
- Clean and fast.
Built for users who want full control over their environment with minimal overhead.
- Keep dotfile management simple and predictable.
- Avoid symlinks and hidden magic.
- Make every action explicit and reversible.
- Follow a clean, UNIX-like workflow.
Usage: dotrs [OPTIONS] --action <ACTION>
Options:
-a, --action <ACTION> [possible values: init, apply, sync, add, remove, list, status]
-f, --file <FILE>
-h, --help Print help
-V, --version Print version
-
Typical workflow:
init → add → status → apply -
Initialize dotfiles
$ dotrs --action initCreates a ~/dots directory and initializes a Git repository inside it.
- Check status
$ dotrs --action statusLegend: + missing | M modified | = clean | ! error
= .config/noctalia/templates/pywalfox-colors.json
= .config/noctalia/templates/zathura-colors
= .config/niri/config.kdl
= .config/alacritty/alacritty.toml
= .config/ghostty/config
= .config/rmpc/config.ron- Add a file
$ dotrs --action add --file alacritty.toml~/dots/
.
└── .config
└── alacritty
└── alacritty.toml- Apply dotfiles
$ dotrs --action applyB .config/alacritty/alacritty.toml.bak
→ .config/alacritty/alacritty.toml
doneCopies dotfiles into $HOME Automatically creates .bak backups for modified files
- Sync local changes back to dotfiles
Use sync when local files have been modified and you want to update the dotfiles repository.
$ dotrs --action statusLegend: + missing | M modified | = clean | ! error
= .config/noctalia/templates/pywalfox-colors.json
= .config/noctalia/templates/zathura-colors
M .config/niri/config.kdl
= .config/ghostty/config
= .config/rmpc/config.ron$ dotrs --action sync→ synced .config/niri/config.kdl
done$ dotrs --action statusLegend: + missing | M modified | = clean | ! error
= .config/noctalia/templates/pywalfox-colors.json
= .config/noctalia/templates/zathura-colors
= .config/niri/config.kdl
= .config/ghostty/config
= .config/rmpc/config.ron