mirror of
				https://github.com/ohmyzsh/ohmyzsh.git
				synced 2024-05-11 05:55:17 +00:00 
			
		
		
		
	Merge pull request #1620 from hreese/gpg-agent_with_sensible_ssh-agent
Disable ssh-agent support in gpg-agent-plugin if another ssh-agent is already available.
This commit is contained in:
		| @@ -1,26 +1,30 @@ | ||||
| # Based on ssh-agent code | ||||
|  | ||||
| local GPG_ENV=$HOME/.gnupg/gpg-agent.env | ||||
|  | ||||
| function start_agent { | ||||
|   /usr/bin/env gpg-agent --daemon --enable-ssh-support --write-env-file ${GPG_ENV} > /dev/null | ||||
| function start_agent_nossh { | ||||
|     eval $(/usr/bin/env gpg-agent --quiet --daemon --write-env-file ${GPG_ENV} 2> /dev/null) | ||||
|     chmod 600 ${GPG_ENV} | ||||
|   . ${GPG_ENV} > /dev/null | ||||
|     export GPG_AGENT_INFO | ||||
| } | ||||
|  | ||||
| # Source GPG agent settings, if applicable | ||||
| function start_agent_withssh { | ||||
|     eval $(/usr/bin/env gpg-agent --quiet --daemon --enable-ssh-support --write-env-file ${GPG_ENV} 2> /dev/null) | ||||
|     chmod 600 ${GPG_ENV} | ||||
|     export GPG_AGENT_INFO | ||||
|     export SSH_AUTH_SOCK | ||||
|     export SSH_AGENT_PID | ||||
| } | ||||
|  | ||||
| # source settings of old agent, if applicable | ||||
| if [ -f "${GPG_ENV}" ]; then | ||||
|   . ${GPG_ENV} > /dev/null | ||||
|   ps -ef | grep ${SSH_AGENT_PID} | grep gpg-agent > /dev/null || { | ||||
|     start_agent; | ||||
|   } | ||||
| else | ||||
|   start_agent; | ||||
| fi | ||||
|  | ||||
| export GPG_AGENT_INFO | ||||
| export SSH_AUTH_SOCK | ||||
| export SSH_AGENT_PID | ||||
| # check for existing ssh-agent | ||||
| if ssh-add -l > /dev/null 2> /dev/null; then | ||||
|     start_agent_nossh; | ||||
| else | ||||
|     start_agent_withssh; | ||||
| fi | ||||
|  | ||||
| GPG_TTY=$(tty) | ||||
| export GPG_TTY | ||||
|   | ||||
		Reference in New Issue
	
	Block a user