halig/README.md
cătălin c859c60c8d
All checks were successful
checks / pre-commit (push) Successful in 4m29s
checks / tests-10 (push) Successful in 1m59s
checks / tests-11 (push) Successful in 2m8s
checks / tests-12 (push) Successful in 1m36s
feat: add git commit subcommand
2024-09-03 17:29:44 +02:00

1.8 KiB

halig

Build status PyPI PyPI - License PyPI - Python Version pdm-managed

(R)age encrypted note-taking CLI app.

halig opens, using your favorite $EDITOR, an in-memory copy of a file and upon save-and-exit, it encrypts the new contents into an age file that you can store, relatively safe, anywhere.

Features

  • Simple notebooks management with paths autocompletion
  • Passphrase-less, fully-encrypted notes, compatible with existing SSH keys
  • No external age binary needed
  • Almost all age advantages, like having multiple keys for encryption and decryption
  • Remote (HTTP) public keys import: e.g: github.com/<username>.keys

Install

pipx install halig # or pip

Setup TLDR

set -e
ssh-keygen -t ed25519
mkdir -p "${XDG_CONFIG_HOME:-$HOME/.config}/halig"
cat << EOF > "${XDG_CONFIG_HOME:-$HOME/.config}/halig/halig.yml"
---
notebooks_root_path: ~/Documents/Notebooks
identity_paths:
  - ~/.ssh/id_ed25519
recipient_paths:
  - ~/.ssh/id_ed25519.pub
  - https://github.com/<username>.keys
  - https://gitlab.com/<username>.keys
EOF

Usage TLDR

halig edit some_notebook     # edit today's note relative to <notebooks_root_path>/some_notebook
halig edit some_notebook/foo # edit  <notebooks_root_path>/some_notebook/foo.age
halig notebooks              # list current notebooks
halig git commit
halig git pull
halig git push