1 # Balrog 2 3 A partial drop-in replacement for [pass](https://www.passwordstore.org/) and 4 [pass-otp](https://github.com/tadfisher/pass-otp) written in POSIX shell. 5 6 ## What is this? 7 8 There is no particularly good reason to want to replace pass and pass-otp, 9 which are excellent utilities, but I fancied the idea of writing a simple 10 drop-in replacement for them written in POSIX-compliant shell. There were a 11 few hiccups along the way, but it largely works for my own purposes. Users 12 should be warned against using this in a production context, but I use it 13 happily and wanted to share it for educational or reference purposes. 14 15 Why is it called Balrog? Because "you shall not pass." Haaaaah. 16 17 ## Dependencies 18 19 * A POSIX shell. The `balrog` script is strictly POSIX compliant to 20 ensure maximum portability. 21 * [xclip](https://github.com/astrand/xclip) on X11 or wl-copy on Wayland. 22 Copies the password to the clipboard. 23 * [OATH Toolkit](https://www.nongnu.org/oath-toolkit/) (optional). Used for 24 handling one-time passwords. 25 26 ## Features Implemented 27 28 Balrog is entirely compatible with pass and pass-otp, but only implements a 29 subset of their features. The following command-line options are implemented: 30 31 * -c|--clip 32 Copy to clipboard. 33 * -i|--in-place 34 When generating a password, replace only the first line of the file instead 35 of writing over it. 36 * -n|--no-symbols 37 Generate passwords with only alphanumeric characters. 38 39 The following actions are implemented: 40 41 * edit 42 * generate 43 * otp 44 * show 45 46 Use the exact same way you currently use pass. See the documentation of pass 47 and pass-otp for details.