# On systems with systemd running, we expect the agent to be launched # via systemd's user mode (see # /usr/lib/systemd/user/gpg-agent.{socket,service} and # systemd.unit(5)). This allows systemd to clean up the agent # automatically at logout. # If systemd is absent from your system, or you do not permit it to # run in user mode, then you may need to manually launch gpg-agent # from your session initialization with something like "gpgconf # --launch gpg-agent" # Nonetheless, ssh and older versions of gpg require environment # variables to be set in order to find the agent, so we will set those # here. # gnupg2 doesn't use the GPG_AGENT_INFO environment variable since # v2.1.0, but gnupg1 still does so set it in case gnupg1 is installed. export GPG_AGENT_INFO="$(gpgconf --list-dirs agent-socket):0:1" if [ -n "$(gpgconf --list-options gpg-agent | \ awk -F: '/^enable-ssh-support:/{ print $10 }')" ]; then export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)" fi