Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Build Status

auth-source-pass (aka. auth-password-store)

The auth-source-pass package, formerly known as auth-password-store, integrates Emacs' auth-source library with password-store. The auth-source library is a way for Emacs to answer the old burning question “What are my user name and password?”. Password-store (or just pass) is a standard unix password manager following the Unix philosophy.

The auth-source-pass project is a password-store backend for auth-source.


This package has been included in Emacs 26. If that suits you, you can just start using it. Otherwise, install it from melpa.

Regardless of the version you choose, please report issues to auth-password-store's issue tracker. Please make sure to specify which version you use.


Add the following to your init.el file:

(require 'auth-source-pass)


auth-source-pass follows the first approach suggested by the Password-store project itself for data organization to find data. This means that the filename of the file containing the password for a user on a particular host must contain the hostname. The file itself must contain the password on the first line. Additional fields can be on subsequent lines. For example:

port: 993

If you have several accounts for the same host, you can name your files in 2 different ways:

  • user1@host.gpg and user2@host.gpg, or
  • host/user1.gpg and host/user2.gpg

If you use several ports (sometimes called services) in the same host (e.g., web and mail), you can add a colon and the port number (or service name) at the end of the filename: e.g., host:443.gpg or host:imap.gpg.

The separator string (default: colon) between host and port number can be customized by auth-source-pass-port-separator variable.

Be aware that the .gpg extension is added automatically by the pass utility. You should not include that in the name when you create the entry. For example to create a multi-line entry with pass:

pass insert -m user1@host 

Pass in Emacs

Users of this package may also be interested in functionality provided by other Emacs packages dealing with pass:


Yes, please do! See CONTRIBUTING for guidelines.


See COPYING. Copyright (c) 2015 Damien Cassou & Nicolas Petton.

You can’t perform that action at this time.