backbot is a tiny CLI that snapshots your home directory to your own S3 Glacier bucket every night — end-to-end encrypted with restic, deduplicated, and restorable in seconds. About $8 a year.
macOS · requires restic, awscli (the installer offers to brew them for you)
restic encrypts everything before it leaves your machine. The repo password lives in your macOS Keychain — not even AWS can read your files.
No third-party service in the middle. backbot talks straight to S3 with the AWS keys you provide. You own the data and the bill.
Defaults to Glacier Instant Retrieval: archival pricing, but restores in seconds with no 12–48h thaw wait.
A launchd job runs nightly at 23:59 and at every login. Incremental and deduplicated, so daily runs are fast and cheap.
One command installs everything and walks you through setup. Under the hood it's just restic + the AWS CLI + a launchd timer.
Clones backbot, installs restic + awscli via Homebrew, and links the backbot command.
backbot configure stores your keys, creates the bucket if needed, generates an encryption password, and runs restic init.
launchd runs backbot backup at 23:59 and at login. Old snapshots are pruned automatically on a retention schedule.
backbot never holds your credentials — you configure them right from the CLI. backbot configure is interactive and safe to re-run anytime to rotate keys or switch buckets.
$ backbot configure === backbot configure === This stores your own AWS keys and points backbot at your S3 bucket. AWS keys are saved to a dedicated 'backbot' AWS CLI profile (~/.aws), never to this repo or the backup itself. AWS Access Key ID: AKIA•••••••••••••••• AWS Secret Access Key: •••••••••••••••••••••••••••••••• AWS region [us-west-1]: us-west-1 Saved to AWS profile 'backbot'. S3 bucket name for backups: my-mac-backups Bucket s3://my-mac-backups not accessible (may not exist yet). Create it in us-west-1 now? [y/N] y Created s3://my-mac-backups Generating restic repository password (stored in macOS Keychain)... Storage class [GLACIER_IR]: GLACIER_IR Wrote ~/.config/backbot/restic.conf Initialize restic repo now? [Y/n] y Repo initialized. Done. Run your first backup with: backbot backup
backbot AWS CLI profile in ~/.aws, never committed and never uploaded. Prefer your own setup? Any AWS credential source works — set AWS_PROFILE and RESTIC_REPOSITORY in the config and skip configure.restic's power, wrapped in a handful of friendly commands. Pass-through subcommands forward straight to restic.
backbot configure | Set up AWS keys, bucket, repo password, init the repo |
backbot backup | Incremental backup, then apply retention |
backbot snapshots | List all snapshots |
backbot restore | Restore files to a target directory |
backbot mount <dir> | Browse the repo like a folder (FUSE) |
backbot check | Verify repository integrity |
backbot status | Config, latest snapshot, schedule, logs |
backbot uninstall | Remove the launchd job and CLI |
You pay AWS directly — there's no backbot subscription. For ~500 GB: