Command line and GUI interface to pass, the Unix password manager.
Go to file
Greg b9e9373b04 Fix animation code. Retry GPG agent password prompt and clear
cache if the passphrase does not work.
2019-09-06 13:46:13 -04:00
cmd Fix animation code. Retry GPG agent password prompt and clear 2019-09-06 13:46:13 -04:00
.gitignore Fix bug due to rewriten layout.List() (updated Gio version). 2019-09-06 10:59:18 -04:00
README.md Fix animation code. Retry GPG agent password prompt and clear 2019-09-06 13:46:13 -04:00
impl_darwin.go Add password prompt code to GUI. 2019-09-06 11:43:14 -04:00
impl_non_darwin.go Add password prompt code to GUI. 2019-09-06 11:43:14 -04:00
main.go Fix animation code. Retry GPG agent password prompt and clear 2019-09-06 13:46:13 -04:00

README.md

passgo

This repository includes Go code to interact with pass, the Unix password manager. Library code is provided to open a password store, list saved passwords, and decrypt specified passwords. The library provides a simple passphrase input function, or, if gpg-agent is running (on MacOS), it will connect automatically to request your GPG passphrase. MacOS users can also ask passgo to copy a password directly to the clipboard.

store := passgo.Store{}
// directory defaults to ~/.password-store, or set it manually here:
// store.Dir = "/home/me/.pw-store"
err := passgo.GetStore(&store)
if err != nil { ... }
passlist := store.List()
for _,x := range passlist {
	if x.Pathname == "myPass" {
		p, err := store.Decrypt(x.Pathname)
		if err == nil {
			passgo.Clip(p) // put on the clipboard
		} else {
			log.Fatal("Cannot decrypt ", x.Pathname)
		}
	}
}

Also included is a simple GUI front-end using Gio. See cmd/passgo-gui.