2015-05-22 15:56:33 -04:00
# rofi-pass
#### bash script to handle pass storages in a convenient way
2015-05-23 00:58:55 -04:00
![rofi-pass ](screenshot.png "rofi-pass in action" )
2015-05-22 15:56:33 -04:00
## rofi-pass has the following features:
2015-07-16 20:59:40 -04:00
* Open URLs of entries with hotkey
* Add new Entries to Password Storage
* Edit existing Entries
* Support for multiple roots for password-store (e.g. separate work from private passwords)
2015-05-22 15:56:33 -04:00
* Auto Type User and Password. Format of password files are expected to be like:
```
foobarmysecurepassword
UserName: MyUser
2015-05-22 18:01:17 -04:00
URL: http://my.url.foo
2015-05-22 15:56:33 -04:00
```
2015-07-16 21:47:54 -04:00
* Auto Typing of more than one field. This expects a autotype field in password file. (name of the field can be changed in config file - same for URL and Username)
2015-05-22 15:56:33 -04:00
```
foobarmysecurepassword
2015-07-16 20:54:36 -04:00
---
2015-05-22 17:47:23 -04:00
UserName: MyUser
SomeField: foobar
AnotherField: barfoo
2015-05-22 18:02:07 -04:00
URL: http://my.url.foo
2015-07-16 22:05:48 -04:00
autotype: SomeField :tab UserName :tab AnotherField :tab pass
2015-05-22 15:56:33 -04:00
```
2015-07-16 20:54:36 -04:00
The `:tab` field has a special meaning. this will hit the tab key, obviously.
2015-08-21 13:37:15 -04:00
* All Hotkeys are configurable in config file
* Username, URL and autotype field names are also configurable
2015-05-22 15:56:33 -04:00
## Requirements
2015-05-23 03:47:59 -04:00
* pass (https://github.com/zx2c4/password-store)
2015-05-22 15:56:33 -04:00
* sed
2015-08-06 07:29:57 -04:00
* rofi (https://github.com/DaveDavenport/rofi)
2015-05-22 15:56:33 -04:00
* xprop
* xdotool
* awk
* bash
2015-07-16 20:59:40 -04:00
## Extras
rofi-pass comes with a tiny helper script, which makes it easier to create new pass entries.
2015-07-19 14:12:01 -04:00
Just run it with
```
2015-08-21 13:19:20 -04:00
addpass --name "My new Site" +user "zeltak" +branch "branch" +custom "foobar" +autotype "branch :tab user :tab pass"`.
2015-07-19 14:12:01 -04:00
```
2015-08-21 13:19:20 -04:00
* First argument `--name` is mandatory. This will be the filename of the new password entry.
2015-08-21 13:27:18 -04:00
* Second argument can be `--root` followed by absolute path to your password-store. addpass also uses root config setting from rofi-pass config file. If both are not found, PASSWORD_STORE_DIR variable is checked. If none of the above are found, the default location `$HOME/.password-store` is used.
2015-08-21 13:19:20 -04:00
* Fieldnames are defined with `+` and the actual value is defined inside the quotations. You can add as many fields as you like
2015-07-16 20:59:40 -04:00
Also included is an import script for keepass2 databases. It's the same script that can be downloaded from the pass homepage, with some minor modifications to match rofi-pass structure.