Command line and GUI interface to pass, the Unix password manager.
Go to file
Greg 09859ca0a9 Compatibility with gpg 2.0 -- call out to gpg commands (on Darwin)
if go openpgp is not compatibile with the local gpg installation.
2019-09-10 08:45:59 -04:00
cmd Compatibility with gpg 2.0 -- call out to gpg commands (on Darwin) 2019-09-10 08:45:59 -04:00
.gitignore Fix bug due to rewriten layout.List() (updated Gio version). 2019-09-06 10:59:18 -04:00
README.md Tweaked docs. 2019-09-06 13:47:42 -04:00
impl_darwin.go Compatibility with gpg 2.0 -- call out to gpg commands (on Darwin) 2019-09-10 08:45:59 -04:00
impl_non_darwin.go Add a window title and run go fmt. 2019-09-06 21:14:06 -04:00
main.go Compatibility with gpg 2.0 -- call out to gpg commands (on Darwin) 2019-09-10 08:45:59 -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)
		}
	}
}
/// or just do:
p, err := store.Decrypt("myPass")
...

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