Add comprehensive rsync configuration and management

- Add rsync package to home.packages for Nix-managed installation
- Create modules/rsync.nix with comprehensive configuration:
  * ~/.rsync-exclude with macOS and development exclusion patterns
  * ~/.rsync-backup.conf with standard backup options and safety features
  * ~/.local/bin/rsync-backup executable wrapper script for easy backups
  * ~/.rsync-aliases with convenient shell aliases for common operations
- Add detailed rsync documentation to README with usage examples
- Switch from macOS built-in rsync to declarative Nix management

Features:
- Comprehensive exclude patterns for macOS metadata and temp files
- Progress indication, compression, and network optimization
- Safety options including dry-run capability and partial transfers
- Extended attributes and ACL preservation for macOS
- Multiple usage patterns: wrapper script, aliases, and manual configuration

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Yan Lin 2025-07-28 17:26:39 +02:00
parent f7bfb04b38
commit 0a9fa669f0
3 changed files with 166 additions and 0 deletions

View file

@ -46,6 +46,7 @@
./modules/ssh.nix
./modules/git.nix
./modules/termscp.nix
./modules/rsync.nix
];
home.username = "yanlin";
@ -69,6 +70,7 @@
lazygit
ncdu
git-credential-oauth
rsync
];
fonts.fontconfig.enable = true;