Problem
On Windows, running bm project bisync fails with a cryptic error when rclone is not installed:
Error: [WinError 2] The system cannot find the file specified
The Basic Memory installer works correctly, but the bisync (and other rclone-dependent) commands fail because rclone is not automatically installed as a dependency.
Root Cause
The rclone commands in src/basic_memory/cli/commands/cloud/rclone_commands.py directly call subprocess.run(['rclone', ...]) without checking if rclone is installed first.
When rclone is missing, subprocess.run raises:
FileNotFoundError on Unix systems
[WinError 2] The system cannot find the file specified on Windows
Expected Behavior
Users should get a helpful error message directing them to install rclone:
Error: rclone is not installed
Please run: bm cloud setup
Or install manually from: https://rclone.org/downloads/
Affected Commands
All commands that use rclone:
bm project bisync
bm project sync
bm project check
bm project ls
Solution
- Add rclone check before executing any rclone command
- Provide helpful error message with installation instructions
- Improve Windows installation error message if no package managers available
Related
bm cloud setup does install rclone, but users might not run it first
- Windows installation requires winget, chocolatey, or scoop
Problem
On Windows, running
bm project bisyncfails with a cryptic error when rclone is not installed:The Basic Memory installer works correctly, but the
bisync(and other rclone-dependent) commands fail because rclone is not automatically installed as a dependency.Root Cause
The rclone commands in
src/basic_memory/cli/commands/cloud/rclone_commands.pydirectly callsubprocess.run(['rclone', ...])without checking if rclone is installed first.When rclone is missing, subprocess.run raises:
FileNotFoundErroron Unix systems[WinError 2] The system cannot find the file specifiedon WindowsExpected Behavior
Users should get a helpful error message directing them to install rclone:
Affected Commands
All commands that use rclone:
bm project bisyncbm project syncbm project checkbm project lsSolution
Related
bm cloud setupdoes install rclone, but users might not run it first