| Crates.io | bkr |
| lib.rs | bkr |
| version | 1.0.0 |
| created_at | 2026-01-24 19:15:03.227639+00 |
| updated_at | 2026-01-24 19:15:03.227639+00 |
| description | Backup and restore tool for syncing files to AWS S3 with native zstd compression |
| homepage | https://github.com/goodwokdev/flow-bkr |
| repository | https://github.com/goodwokdev/flow-bkr |
| max_upload_size | |
| id | 2067289 |
| size | 225,038 |
A self-contained backup and restore tool for syncing files to AWS S3 with native zstd compression.
cargo install bkr
git clone https://github.com/user/baker
cd baker/.ports/rust
cargo build --release
# Validate configuration
bkr validate -c backup.conf.yml
# Backup files to S3
bkr backup -c backup.conf.yml
# Restore files from S3
bkr restore -c backup.conf.yml
# Dry-run (simulate without changes)
bkr backup --dry-run -c backup.conf.yml
# Install scheduled daemon
bkr daemon-install -c backup.conf.yml
Create a backup.conf.yml file:
storage:
profile: default # AWS profile name
region: us-west-2
bucket:
name: my-backup-bucket
prefix: my-workstation # Optional prefix for all backups
restore:
path: ~/.backups # Where to restore files
bucket_prefix: "" # Restore from bucket root
to_backup:
my-config:
path: ~/.config
destination_prefix: config
ignore:
- "*.log"
- "cache/"
my-project:
path: ~/projects/app
destination_prefix: projects
ignore:
- ".git"
- "target/"
zstd: # Directories to compress
- node_modules
- dist
zstd_level: 3 # Compression level (1-22)
daemon_schedule:
every: 1h # Backup interval
exercise_restore: false # Also run restore on schedule
| Command | Description |
|---|---|
backup |
Backup files to S3 |
restore |
Restore files from S3 |
list |
List backup configuration |
validate |
Validate configuration file |
daemon-install |
Install scheduled backup daemon |
daemon-uninstall |
Remove scheduled backup daemon |
daemon-status |
Check daemon status |
| Option | Description |
|---|---|
-c, --config <path> |
Path to config file |
-v, --verbose |
Verbose output |
--dry-run |
Simulate without making changes |
--no-user-interaction |
Skip confirmation prompts |
MIT