diff options
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/guiscripts/keyadd | 39 | 
1 files changed, 26 insertions, 13 deletions
diff --git a/bin/guiscripts/keyadd b/bin/guiscripts/keyadd index aac7cdf..7412199 100755 --- a/bin/guiscripts/keyadd +++ b/bin/guiscripts/keyadd @@ -1,8 +1,4 @@  #!/bin/sh -die () -{ -	echo "$1" >&2 -}  # For when script calls itself  if [ -n "$PASSWORD" ] @@ -12,25 +8,42 @@ then  	exit 1  fi -key="$(find ~/.ssh -iname "*.pub" | -	sed "s,$HOME/.ssh/,," | -	cut -f1 -d. | -	$MENUCMD)" + +if [ "$MENUCMD" = "tofi" ] +then +	menucmd="tofi --matching-algorithm=normal" +else +	menucmd="$MENUCMD" +fi + + +die () +{ +	echo "$1" >&2 +} + +SSHFOLDER="$HOME/.ssh" + +key="$(find "$SSHFOLDER" -iname "*.pub" | +	sed "s,$SSHFOLDER/,," | # Clean +	sed 's/\.pub$//' | +	$menucmd)"  die "key: $key" -test ! -f "$HOME/.ssh/$key" && exit 1 +test ! -f "$SSHFOLDER/$key" && exit 1  HOST=$(hostnamectl hostname | sed 's/forlure/fl/;s/montecristo/mc/')  if [ "$1" = "-d" ]  then -	ssh-add -d - < $HOME/.ssh/$key.pub && -		notify-send "$0" "deleted <b>$key</b>" -elif ! ssh-add -l | grep -q "$(ssh-keygen -lf $HOME/.ssh/$key)" +	ssh-add -d - < "$SSHFOLDER"/$key.pub && +		notify-send "$0" "deleted <b>$key</b>" || +		notify-send "$0" "could not delete." +elif ! ssh-add -l | grep -q "$(ssh-keygen -lf "$SSHFOLDER"/$key)"  then  	export PASSWORD="keys/fl/ssh/$key"  	export SSH_ASKPASS="$0" -	ssh-add - < $HOME/.ssh/$key && +	ssh-add - < "$SSHFOLDER"/$key &&  		notify-send "$0" "added <b>$key</b>"  else  	die "key already added."  | 
