| Crates.io | dotfiles-rust |
| lib.rs | dotfiles-rust |
| version | 0.1.0 |
| created_at | 2025-05-17 11:49:28.012877+00 |
| updated_at | 2025-05-17 11:49:28.012877+00 |
| description | A Rust-based CLI dotfiles sync utility |
| homepage | https://github.com/ff3rno/dotfiles-rust |
| repository | https://github.com/ff3rno/dotfiles-rust |
| max_upload_size | |
| id | 1677817 |
| size | 96,099 |
dotfiles-rust is a Rust CLI utility for managing your dotfiles across different machines. It allows you to define your dotfiles in a source directory and easily install them to your home directory, with built-in support for backing up existing files and restoring them later. The configuration is stored in a simple YAML file at ~/.dotfiles-rustrc.yaml.
Below are a few example commands to illustrate the usual workflow for managing your dotfiles.
dotfiles-rust init /path/to/your/dotfiles
dotfiles-rust install --backup --verbose
dotfiles-rust status
dotfiles-rust backups
dotfiles-rust uninstall
dotfiles-rust reset
dotfiles-rust is available as a Crate; install it using cargo.
cargo install dotfiles-rust
Once installed, it will be available as the dotfiles-rust command.
dotfiles-rust provides commands for initializing the configuration, installing, uninstalling, managing backups, and checking the status of your dotfiles. To see a full list and detailed options, run dotfiles-rust --help.
dotfiles-rust init <source_dir> -- Initializes the configuration file (~/.dotfiles-rustrc.yaml) with the path to your dotfiles source directory. This must be run first.dotfiles-rust install -- Installs dotfiles from your configured source directory to your home directory.
--dry-run: Shows what would be done without actually copying files.--force: Overwrites existing files in the home directory that are different from the source.--backup: Backs up existing files in the home directory before overwriting.--verbose: Provides more detailed output during installation.dotfiles-rust uninstall -- Removes dotfiles from your home directory that were installed from your source directory. Attempts to restore from backups if available.
--dry-run: Shows what would be done without actually modifying files.--force: Removes modified files even if they differ from the source/backup.--verbose: Provides more detailed output during uninstallation.dotfiles-rust status -- Shows the status of your dotfiles in the home directory compared to the source directory (installed, modified, or missing).
--verbose: Shows details about differences for modified files.dotfiles-rust backups -- Lists all backup files in the backup directory (~/.dotfiles-rust_backups).
<file>: Lists backup versions for a specific file.dotfiles-rust reset -- Clears all backup files from the backup directory.
--force: Skips the confirmation prompt before clearing backups.See CHANGELOG.md for more information.
Distributed under the MIT license. See LICENSE.md for more information.
git checkout -b my-new-feature)git commit -am 'Add some feature')git push origin my-new-feature)