Crates.io | dotporter |
lib.rs | dotporter |
version | |
source | src |
created_at | 2025-01-23 14:44:29.660265 |
updated_at | 2025-02-01 20:13:44.362437 |
description | A CLI tool to manage your dotfiles |
homepage | |
repository | https://github.com/hamzahasbi/dotporter |
max_upload_size | |
id | 1527809 |
Cargo.toml error: | TOML parse error at line 22, column 1 | 22 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include` |
size | 0 |
A powerful Rust-based tool for managing and synchronizing your dotfiles and packages across different machines.
The dotporter
crate is now published on crates.io. You can add it to your project by including the following in your Cargo.toml
:
[dependencies]
dotporter = "0.1" # Replace "0.1" with the latest version if needed
Or just install it globally with
cargo install dotporter
Folder | Description |
---|---|
📂MANUAL_BACKUP | Storage for manual backup files (legacy version) |
📂LEGACY_DEPRECATED | Archive of old scripts for reference |
📂dotfiles | Synchronized configuration files (auto-populated) |
📂Packages | Package management and backup files |
cargo run --bin Dotporter
This will automatically create a config file in your home directory:
~/dotporter/backup_config.toml
The configuration file can be customized to include or exclude:
After completion, two main folders will be created:
The root directory contains backup references for:
chmod a+x ./scripts/backup-packages.sh
./backup-packages.sh
chmod a+x ./scripts/packages/brew-bulk-install.sh
chmod a+x ./scripts/packages/packages-reinstall.sh
./brew-bulk-install.sh
./packages-reinstall.sh
Required tools for the new machine:
Tool | Purpose |
---|---|
🍺 Brew | Package Manager for macOS |
💎 RubyGems | Ruby Package Manager |
📦 Node Package Managers | Choose from:Yarn, NPM, BUN, PNPM |
🎼 Composer | PHP Package Manager |
🐍 Pip | Python Package Manager |
🦀 Cargo | Rust Package Manager |
📜 Atuin | Shell History Manager |
🐚 ZSH | Shell (Optional) |
cargo run --bin install
composer.json
copy and installFeel free to: