I am a command line enthusiast so a lot of the utilities I use are terminal based, including my password manager of choice, pass.
For a long time I would have the password in the file on my local system and had to remember to be careful when adding and committing changes to my repo. All that remembering was exhausting.
About a year ago I finally started using offlineimap to sync my mail to my local system. While setting up my offlineimaprc config I found that it is possible to import passwords using python. I created a simple python file
#!/usr/bin/env python from subprocess import check_output def get_pass(account): return check_output("pass email/" + account + "/passwd", shell=True).splitlines()
then imported the file in the
[general] section of offlineimaprc, and imported the password using
remotepasseval in the repository section
[general] pythonfile = ~/.offlineimap.py [Repository remote] remotepasseval = get_pass("pyratebeard")
I use the
account argument as I have multiple accounts with different passwords.
While setting this up I also discovered that commands can be used in muttrc to import paswords
set my_pass = "`pass email/pyratebeard/passwd`" set smtp_pass = $my_pass
Now I can forget about all that remembering.