chore: add encryption tools

This commit is contained in:
Alexander Navarro 2025-01-20 16:08:31 -03:00
parent 6e72e0ccff
commit f77175307f
6 changed files with 72 additions and 15 deletions

32
.devfiles/justfile Normal file
View file

@ -0,0 +1,32 @@
set dotenv-load := true
export AGEBOX_DEBUG := "0"
export AGEBOX_PUBLIC_KEYS := source_dir() + "/public_keys.txt"
fetch-deps:
.devfiles/scripts/fetch_gh_release.sh "slok/agebox" "agebox-linux-amd64" "agebox"
# Easy and simple file repository encryption tool based on Age.
agebox +ARGS="--help":
@.devfiles/bin/agebox {{ ARGS }}
# Encrypt the provided files, relative to project root.
encrypt +FILES: (agebox "encrypt " + FILES)
# Encrypt all the tracked files.
encrypt-all: (agebox "encrypt --all")
# Decrypt the provided files, relative to project root.
decrypt +FILES: (agebox "decrypt " + FILES)
# Decrypt all the tracked files.
decrypt-all: (agebox "decrypt --all --force")
# Reencrypt all the tracked files with the new public keys.
reencrypt: (agebox "reencrypt")
# Show the content of an encrypted file to stdout.
peek +FILES: (agebox "cat " + FILES)
# Validate that all tracked files are encrypted.
check:(agebox "validate --no-decrypt ")