No description
  • Nix 76.2%
  • Nushell 23.8%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jeffrey C. Ollie 7d512767e8
add an S3 backend alongside b2 and azure
Backblaze can be reached either way, and the choice is not cosmetic. A
repository written through the native API is byte-identical through S3 -
verified on cloud03, same 84 snapshots and the same repository id
6e08304b - so this is a transport change and not a migration.

What differs is deletion. b2_delete_file_version destroys a version
outright; an S3 DeleteObject only hides it and leaves the previous version
for the bucket lifecycle rule to reclaim. That makes restic's forget and
prune recoverable rather than final, which they are not today.

It also means the key no longer needs deleteFiles, because hiding is a
write. Tested against the live bucket with a key holding writeFiles and
not deleteFiles: the S3 delete succeeded and returned DeleteMarker true,
while b2_delete_file_version came back 401 and a versioned S3 delete came
back AccessDenied. A host will be able to do its own backups and expiry
while being unable to destroy anything, its own repository included.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RNHfTAar4NW1oHAjwZNhhq
2026-09-06 14:25:27 -05:00
.drone.yml udpate drone config 2023-10-24 16:37:36 -05:00
.gitignore first 2023-03-13 09:01:16 -05:00
entrypoint.nu update 2025-03-28 17:01:50 -05:00
flake.lock update 2025-11-04 10:15:49 -06:00
flake.nix add an S3 backend alongside b2 and azure 2026-09-06 14:25:27 -05:00