Configure ssh-agent pour fish
This commit is contained in:
		| @@ -1,3 +1 @@ | |||||||
| if status is-interactive | fish_ssh_agent | ||||||
|     # Commands to run in interactive sessions can go here |  | ||||||
| end |  | ||||||
|   | |||||||
							
								
								
									
										32
									
								
								.config/fish/functions/fish_ssh_agent.fish
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.config/fish/functions/fish_ssh_agent.fish
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | function __ssh_agent_is_started -d "check if ssh agent is already started" | ||||||
|  |    if begin; test -f $SSH_ENV; and test -z "$SSH_AGENT_PID"; end | ||||||
|  |       source $SSH_ENV > /dev/null | ||||||
|  |    end | ||||||
|  |  | ||||||
|  |    if test -z "$SSH_AGENT_PID" | ||||||
|  |       return 1 | ||||||
|  |    end | ||||||
|  |  | ||||||
|  |    ps -ef | grep $SSH_AGENT_PID | grep -v grep | grep -q ssh-agent | ||||||
|  |    #pgrep ssh-agent | ||||||
|  |    return $status | ||||||
|  | end | ||||||
|  |  | ||||||
|  |  | ||||||
|  | function __ssh_agent_start -d "start a new ssh agent" | ||||||
|  |    ssh-agent -c | sed 's/^echo/#echo/' > $SSH_ENV | ||||||
|  |    chmod 600 $SSH_ENV | ||||||
|  |    source $SSH_ENV > /dev/null | ||||||
|  |    true  # suppress errors from setenv, i.e. set -gx | ||||||
|  | end | ||||||
|  |  | ||||||
|  |  | ||||||
|  | function fish_ssh_agent --description "Start ssh-agent if not started yet, or uses already started ssh-agent." | ||||||
|  |    if test -z "$SSH_ENV" | ||||||
|  |       set -xg SSH_ENV $HOME/.ssh/environment | ||||||
|  |    end | ||||||
|  |  | ||||||
|  |    if not __ssh_agent_is_started | ||||||
|  |       __ssh_agent_start | ||||||
|  |    end | ||||||
|  | end | ||||||
		Reference in New Issue
	
	Block a user