README (1820B)
1 kasi ("veil"/"conceal" in Esperanto) 2 ==================================== 3 A simple password manager written in POSIX shell. 4 5 Dependencies 6 ------------ 7 - POSIX-compliant environment 8 - age, gnupg, or any other utility to {en,de}crypt files 9 - tree (for listing all your passwords and their directories) 10 - a simple version is available in https://github.com/pyr/tree 11 and in OpenBSD's ports 12 - can possibly be replaced with ls if you add KASI_LIST in your ~/.profile 13 - xsel (for copying password to clipboard, but can be changed to a different 14 command with the KASI_CLIPBOARD command that accepts stdin) 15 - a password generator 16 - script uses contrib/random from this repo by default and expects it in your 17 path 18 - can change by setting KASI_GEN_USER and KASI_GEN_PASS in your ~/.profile 19 20 Configuration 21 ------------- 22 In your ~/.profile or wherever you set environment variables, add something 23 like this if you use age: 24 export AGE_KEY=/nas/ssh/id_ed25519 25 export AGE_PUB=${AGE_KEY}.pub 26 export KASI_DIR=/nas/kasi-age 27 export KASI_ENCRYPT="age -R $AGE_PUB" 28 export KASI_DECRYPT="age -d -i $AGE_KEY -o -" 29 30 If you use GnuPG, then add: 31 export GPG_ID="user@email.tld" # or your key id 32 export KASI_DECRYPT="gpg -qd" 33 export KASI_ENCRYPT="gpg -er $GPG_ID -o -" 34 35 For some other file encryptor, you'd need to be able to output the encrypted 36 file to stdout or change the last line of edit() that runs $KASI_ENCRYPT. 37 38 Why should I use this over password-store? 39 ------------------------------------------ 40 Don't. For a serious answer, it's because this doesn't depend on bash. 41 42 Migrating from password-store 43 ----------------------------- 44 Set the KASI_DIR environment variable to your password store directory. 45 46 Auto-complete 47 ------------- 48 If you use ksh, all you'd have to do is source contrib/autocomplete.ksh in your 49 kshrc.