passgo/README.md

31 lines
959 B
Markdown
Raw Normal View History

2019-09-05 06:41:39 -04:00
# passgo
2019-09-04 22:21:01 -04:00
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),
2019-09-06 11:05:15 -04:00
it will connect automatically to request your GPG passphrase. MacOS users
can also ask passgo to copy a password directly to the clipboard.
2019-09-04 22:21:01 -04:00
```go
2019-09-06 11:05:15 -04:00
store := passgo.Store{}
// directory defaults to ~/.password-store, or set it manually here:
// store.Dir = "/home/me/.pw-store"
err := passgo.GetStore(&store)
2019-09-04 22:21:01 -04:00
if err != nil { ... }
passlist := store.List()
for _,x := range passlist {
if x.Pathname = "myPass" {
p, err := store.Decrypt(x.Pathname)
if err == nil {
2019-09-05 06:41:39 -04:00
passgo.Clip(p) // put on the clipboard
2019-09-04 22:21:01 -04:00
} else {
log.Fatal("Cannot decrypt ", x.Pathname)
}
}
}
```
2019-09-06 11:05:15 -04:00
Also included is a simple GUI front-end using [Gio](gioui.org). See
`cmd/passgo-gui`.