1
0
Fork 0

Update everything that uses pass to use gopass

This commit is contained in:
Jeremy Kaplan 2017-09-23 01:22:05 -07:00
commit 0755d8f086
6 changed files with 9 additions and 33 deletions

View file

@ -1,7 +1,7 @@
IMAPAccount gmail
Host imap.gmail.com
User jeremydkaplan@gmail.com
PassCmd "pass email/jeremydkaplan@gmail.com"
PassCmd "gopass show personal/email/jeremydkaplan@gmail.com | head -n 1"
SSLType IMAPS
CertificateFile /etc/ssl/certs/ca-certificates.crt
@ -24,7 +24,7 @@ Channel gmail
IMAPAccount mit
Host imap.exchange.mit.edu
User jdkaplan
PassCmd "pass email/jdkaplan@mit.edu"
PassCmd "gopass show personal/email/jdkaplan@mit.edu | head -n 1"
SSLType IMAPS
CertificateFile /etc/ssl/certs/ca-certificates.crt
@ -47,7 +47,7 @@ Channel mit
IMAPAccount metagram
Host metagram.net
User jdkaplan@metagram.net
PassCmd "pass email/jdkaplan@metagram.net"
PassCmd "gopass show personal/email/jdkaplan@metagram.net | head -n 1"
SSLType IMAPS
CertificateFile /etc/ssl/certs/ca-certificates.crt

View file

@ -1,7 +1,7 @@
source ~/.mutt/common
set my_username = "jeremydkaplan"
set my_password = "`pass show email/jeremydkaplan@gmail.com`"
set my_password = "`gopass show personal/email/jeremydkaplan@gmail.com | head -n 1`"
set smtp_pass = $my_password

View file

@ -1,7 +1,7 @@
source ~/.mutt/common
set my_email = "jdkaplan@metagram.net"
set my_password = "`pass show email/jdkaplan@metagram.net`"
set my_password = "`gopass show personal/email/jdkaplan@metagram.net | head -n 1`"
set smtp_pass = $my_password

View file

@ -1,7 +1,7 @@
source ~/.mutt/common
set my_username = "jdkaplan"
set my_password = "`pass show email/jdkaplan@mit.edu`"
set my_password = "`gopass show personal/email/jdkaplan@mit.edu | head -n 1`"
set smtp_pass = $my_password

View file

@ -1,2 +1,2 @@
user = 'jeremydkaplan@gmail.com'
password_command = gopass show shared/pandora.com | head -n 1
password_command = gopass show personal/pandora.com | head -n 1

View file

@ -1,31 +1,7 @@
from os.path import isdir, join
ROOT = ${...}.get('PASSWORD_STORE_DIR', $HOME + '/.password-store')
SUFFIX = '.gpg'
def make_display(directory):
def display(completion):
if isdir(join(ROOT, directory, completion)):
return completion + '/'
if completion.endswith(SUFFIX):
return join(directory, completion[:-len(SUFFIX)])
return completion
return display
def passget_completer(prefix, line, begidx, endidx, ctx):
if not line.startswith('passget'): return {}
directory = ''
if '/' in prefix:
pre_dir, pre = prefix.rsplit('/', 1)
if isdir(join(ROOT, directory, pre_dir)):
directory = join(directory, pre_dir)
prefix = pre
completions = $(ls @(join(ROOT, directory))).splitlines()
display = make_display(directory)
return {display(i) for i in completions if i.startswith(prefix)}
if not line.startswith('passget'): return set()
return {secret for secret in !(gopass ls --flat) if secret.startswith(prefix)}
completer add passget passget_completer