Releases: jstilwell/dotprot
Releases · jstilwell/dotprot
0.1.0 - 2026-06-27
Release Notes
Initial release. A self-contained Rust binary that locks .env (and any other
files listed in .prot) into a dedicated 1Password vault and restores them on
demand.
Added
dotprot(bare) — smart toggle that locks protected files when they're
present on disk and unlocks them when they're missing.dotprot lock— upload each protected file to 1Password, verify the copy
round-trips byte-for-byte, then delete the local original.dotprot unlock— restore protected files from 1Password (documents are kept
so the directory stays re-lockable).dotprot setup— pre-create the.prot1Password vault (optional).--keepflag — upload and verify without deleting the local originals, for
safely confirming the vault copy before trusting deletion.- Auto-creation of the
.protvault on first run, announced clearly as a
one-time setup step. - Auto-creation of a
.protconfig file (defaulting to the.env*glob) on
first lock. - Glob support in
.protfor selecting files to protect. - Mixed-state detection: bare
dotprotrefuses to guess when some protected
files are present and others are missing, directing the user to an explicit
lock/unlock. - Release distribution via cargo-dist: cross-compiled binaries for macOS
(arm64/x86_64), Linux (arm64/x86_64), and Windows (x86_64), attached to a
tagged GitHub release. - Install channels: a Homebrew tap (
brew install jstilwell/tap/dotprot),
shell/PowerShell one-line installers, and crates.io (cargo install dotprot).
Known limitations
- Windows: the owner-only (
0600) file-permission hardening is enforced on
macOS and Linux only. On Windows the temp and restored files use default ACLs.
The verify-then-delete guarantee and.prot-vault scoping hold on all
platforms.
Security
- Verify-then-delete: local files are removed only after their 1Password
copy is uploaded, read back, and confirmed byte-identical. - Vault scoping: every 1Password operation is scoped to the
.protvault;
no delete operations run during normal lock/unlock. - Incremental persistence:
.protis written after each file locks, keeping
state recoverable if an operation is interrupted. - Secrets are passed to
opvia a short-lived0600temp file that is removed
immediately, and restored files are written with0600permissions.
Install dotprot 0.1.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/jstilwell/dotprot/releases/download/v0.1.0/dotprot-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/jstilwell/dotprot/releases/download/v0.1.0/dotprot-installer.ps1 | iex"Install prebuilt binaries via Homebrew
brew install jstilwell/tap/dotprotDownload dotprot 0.1.0
| File | Platform | Checksum |
|---|---|---|
| dotprot-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| dotprot-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| dotprot-x86_64-pc-windows-msvc.zip | x64 Windows | checksum |
| dotprot-aarch64-unknown-linux-gnu.tar.xz | ARM64 Linux | checksum |
| dotprot-x86_64-unknown-linux-gnu.tar.xz | x64 Linux | checksum |