]>
Commit | Line | Data |
---|---|---|
37037e90 AM |
1 | #!/bin/sh |
2 | ||
3 | if [ -r "${HOME}/.gnupg/gpg.conf" ]; then | |
4 | CFG="${HOME}/.gnupg/gpg.conf" | |
5 | else | |
6 | CFG="${HOME}/.gnupg/options" | |
7 | fi | |
8 | ||
9 | X11=no | |
10 | if [ -r "${HOME}/.gnupg/gpg-agent.conf" ]; then | |
11 | grep -qE "^pinentry-program.*pinentry-(qt|gtk)" "${HOME}/.gnupg/gpg-agent.conf" && X11=yes | |
12 | fi | |
13 | ||
14 | if grep -q "^use-agent" ${CFG} 2>/dev/null; then | |
15 | if [ -f "${HOME}/.gnupg/GPG_AGENT_INFO" ] && kill -0 "$(cut -d: -f2 $HOME/.gnupg/GPG_AGENT_INFO)" 2>/dev/null; then | |
16 | export GPG_AGENT_INFO="$(cat ${HOME}/.gnupg/GPG_AGENT_INFO)" | |
17 | else | |
18 | if [ -n "$DISPLAY" -a "$X11" = "yes" ] || [ -z "$DISPLAY" -a "$X11" = "no" ]; then | |
19 | eval "$(gpg-agent --daemon)" | |
20 | echo $GPG_AGENT_INFO > ~/.gnupg/GPG_AGENT_INFO | |
21 | fi | |
22 | fi | |
23 | fi |