From 0170a4358de8828a35ed73716d23be7b6c2f4acc Mon Sep 17 00:00:00 2001 From: Sam Scholten Date: Thu, 5 Mar 2026 16:47:52 +1000 Subject: Remove Windows/WSL specific code - document plain rclone for Windows --- README.md | 59 ++++++++++------------------------------------------------- justfile | 19 +------------------ 2 files changed, 11 insertions(+), 67 deletions(-) diff --git a/README.md b/README.md index ece64f4..dd64cdf 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ Sync any two paths with each other & cloud backup. Uses `unison` to sync the paths, rclone to sync to a cloud provider. - + ## Setup ```bash @@ -23,7 +23,6 @@ just sync-cloud # To cloud just status # Check ``` - ## Commands - `setup` - Create directories @@ -32,63 +31,25 @@ just status # Check - `sync-cloud` - Cloud backup (rclone) - `status` - Show state -## Windows (Git Bash) +## Windows -Local sync requires both drives accessible. Cloud sync works from either drive. +For cloud backup from Windows, use rclone directly: ### Install -- Git for Windows: https://git-scm.com/download/win -- just: `scoop install just` / `choco install just` -- rclone: https://rclone.org/downloads/ -- unison: https://github.com/bcpierce00/unison/releases +rclone for Windows: https://rclone.org/downloads/ ### Setup -```bash -rclone config -# Edit justfile paths for your Windows setup (Git Bash uses /c/ for C:\) -``` - -### Use - -```bash -just sync-cloud # SOURCE → cloud -just sync-cloud-from-target # TARGET → cloud +```powershell +rclone config # Configure your cloud remote ``` ---- - -## Windows (WSL) with usbipd-win - -```bash -# 1. Install usbipd-win (Admin PowerShell) -# Download from https://github.com/dorssel/usbipd-win/releases/latest - -# 2. List devices -usbipd list -# Note BUSID (e.g., 1-20) - -# 3. Attach (Admin PowerShell) -usbipd bind --busid 1-20 -usbipd attach --wsl --busid 1-20 -wsl # Start admin WSL - -# 4. In admin WSL -sudo mkdir /mnt/drive1 -sudo mount /dev/sdb1 /mnt/drive1 # Replace sdb1 - -# 5. Configure & run -# Edit justfile: SOURCE="/mnt/drive1" -just sync-cloud - -# Cleanup (optional) -sudo umount /mnt/drive1 -# sudo umount /mnt/drive2 # If using second drive +### Run -# Detach & unbind (required before removing drive) -usbipd detach --busid 1-20 -usbipd unbind --busid 1-20 +```powershell +# Replace paths with your Windows drive letter and configured remote name +rclone sync -P "H:\usync" "your-remote:/usync" ``` ## Configure diff --git a/justfile b/justfile index 99f4b96..e1b5e0e 100644 --- a/justfile +++ b/justfile @@ -1,8 +1,5 @@ # Path synchronization - Core recipes -set shell := ["bash", "-cu"] -set windows-shell := ["bash", "-cu"] # Windows: use Git Bash, install just/rclone/unison via e.g. chocolatey - # CONFIGURE THESE FOR YOUR SETUP: SOURCE := "/path/to/source" # Primary location (source for cloud backup) TARGET := "/path/to/target" # Secondary location @@ -81,19 +78,5 @@ status: @echo "Cloud storage ({{CLOUD_REMOTE}}): $(mountpoint {{CLOUD_MOUNT_PATH}} >/dev/null 2>&1 && echo "mounted" || echo "not mounted")" @echo "Unison profile: $(test -f ~/.unison/paths.prf && echo "exists" || echo "missing")" -# Cloud sync without mounting (for Windows or headless use) -sync-cloud-nomount: - rclone sync -P --checkers 32 --transfers 32 --buffer-size 128M --retries 3 --order-by 'size,ascending' "{{SOURCE}}/usync" "{{CLOUD_REMOTE}}:{{CLOUD_PATH}}" - -sync-cloud-from-target-nomount: - rclone sync -P --checkers 32 --transfers 32 --buffer-size 128M --retries 3 --order-by 'size,ascending' "{{TARGET}}/usync" "{{CLOUD_REMOTE}}:{{CLOUD_PATH}}" - -# Dry runs (nomount) -sync-cloud-nomount-dry: - rclone sync --dry-run -P --checkers 32 --transfers 32 --buffer-size 128M --retries 3 --order-by 'size,ascending' "{{SOURCE}}/usync" "{{CLOUD_REMOTE}}:{{CLOUD_PATH}}" - -sync-cloud-from-target-nomount-dry: - rclone sync --dry-run -P --checkers 32 --transfers 32 --buffer-size 128M --retries 3 --order-by 'size,ascending' "{{TARGET}}/usync" "{{CLOUD_REMOTE}}:{{CLOUD_PATH}}" - default: - just status \ No newline at end of file + just status -- cgit v1.2.3