]>
Commit | Line | Data |
---|---|---|
37037e90 AM |
1 | #!/bin/sh |
2 | ||
3 | if [ -r "${HOME}/.gnupg/gpg.conf" ]; then | |
6a62d2af | 4 | CFG="${HOME}/.gnupg/gpg.conf" |
37037e90 | 5 | else |
6a62d2af | 6 | CFG="${HOME}/.gnupg/options" |
37037e90 AM |
7 | fi |
8 | ||
e94dfe96 | 9 | seahorse=no |
37037e90 | 10 | if [ -r "${HOME}/.gnupg/gpg-agent.conf" ]; then |
6a62d2af | 11 | grep -qE "^[[:blank:]]*pinentry-program[[:blank:]]*.*seahorse-agent" "${HOME}/.gnupg/gpg-agent.conf" && seahorse=yes |
37037e90 AM |
12 | fi |
13 | ||
8753b7ed | 14 | if grep -q "^[[:blank:]]*use-agent" ${CFG} 2>/dev/null; then |
6a62d2af AM |
15 | if [ -f "${HOME}/.gnupg/GPG_AGENT_INFO" ] && \ |
16 | pid="$(cut -d: -f2 $HOME/.gnupg/GPG_AGENT_INFO)" && \ | |
1f176af1 | 17 | agent="$(readlink -n "/proc/$pid/exe")" && agent=${agent%% *} && \ |
c506720b | 18 | [ "$agent" = "/usr/bin/gpg-agent" -o "$agent" = "/usr/bin/seahorse-agent" ]; then |
6a62d2af | 19 | export GPG_AGENT_INFO="$(cat ${HOME}/.gnupg/GPG_AGENT_INFO)" |
f14a8ec1 | 20 | else |
6a62d2af AM |
21 | if [ "$seahorse" = "no" ]; then |
22 | eval "$(gpg-agent --daemon)" | |
23 | else | |
24 | eval "$(seahorse-agent --variables)" | |
25 | fi | |
26 | echo $GPG_AGENT_INFO > ~/.gnupg/GPG_AGENT_INFO | |
27 | export GPG_AGENT_INFO | |
37037e90 | 28 | fi |
37037e90 | 29 | fi |
c506720b AM |
30 | unset agent |
31 | unset seahorse | |
63d7337b | 32 | unset CFG |
33 | unset pid |