--- scripts/xinitrc.in.in.orig 2012-04-14 14:12:32.000000000 +0200 +++ scripts/xinitrc.in.in 2012-04-14 14:24:46.000000000 +0200 @@ -155,12 +155,14 @@ case "$ssh_agent_type" in gpg-agent) if test -z "$SSH_AGENT_PID"; then - eval `gpg-agent --daemon --enable-ssh-support --write-env-file $XDG_CACHE_HOME/gpg-agent-info` + eval `gpg-agent --sh --daemon --enable-ssh-support --write-env-file $XDG_CACHE_HOME/gpg-agent-info` ssh_agent_kill_cmd="kill -INT $SSH_AGENT_PID; rm -f $XDG_CACHE_HOME/gpg-agent-info" elif test -z "$GPG_AGENT_INFO"; then echo "ssh-agent is already running; starting gpg-agent without ssh support" - eval `gpg-agent --daemon --write-env-file $XDG_CACHE_HOME/gpg-agent-info` - ssh_agent_kill_cmd="pkill -INT ^gpg-agent\$; rm -f $XDG_CACHE_HOME/gpg-agent-info" + eval `gpg-agent --sh --daemon --write-env-file $XDG_CACHE_HOME/gpg-agent-info` + gpg_agent_pid=${GPG_AGENT_INFO#*:} + gpg_agent_pid=${gpg_agent_pid%%:*} + ssh_agent_kill_cmd="kill -INT $gpg_agent_pid; rm -f $XDG_CACHE_HOME/gpg-agent-info" else echo "gpg-agent is already running" fi