From: Samir Benmendil Date: Sun, 13 Apr 2014 23:38:01 +0000 (+0100) Subject: zsh: add envoy and gpg X-Git-Url: https://git.rmz.io/dotfiles.git/commitdiff_plain/002334e82dd966e686dd0c6a36f7bc447ab80d86?ds=sidebyside zsh: add envoy and gpg --- diff --git a/zsh/lib/envoy.zsh b/zsh/lib/envoy.zsh new file mode 100644 index 0000000..f0ccb56 --- /dev/null +++ b/zsh/lib/envoy.zsh @@ -0,0 +1,9 @@ +# Return if requirements are not found. +if (( ! $+commands[envoy] )); then + return 1 +fi + +if ! envoy -l >/dev/null ; then + alias ssh='envoy -a && unalias ssh; ssh' +fi +source <(envoy -p) diff --git a/zsh/lib/gpg.zsh b/zsh/lib/gpg.zsh new file mode 100644 index 0000000..818e241 --- /dev/null +++ b/zsh/lib/gpg.zsh @@ -0,0 +1,34 @@ +# +# Provides for an easier use of GPG by setting up gpg-agent. +# +# Authors: +# Sorin Ionescu +# + +# Return if requirements are not found. +if (( ! $+commands[gpg-agent] )); then + return 1 +fi + +# Set the default paths to gpg-agent files. +_gpg_agent_conf="$HOME/.gnupg/gpg-agent.conf" +_gpg_agent_env="${TMPDIR:-/tmp}/gpg-agent.env" + +# Start gpg-agent if not started. +if ! ps -U "$USER" -o ucomm | grep -q gpg-agent; then + eval "$(gpg-agent --daemon --write-env-file "$_gpg_agent_env")" +else + # Export environment variables. + source "$_gpg_agent_env" 2> /dev/null +fi + +# Inform gpg-agent of the current TTY for user prompts. +export GPG_TTY="$(tty)" + +# Clean up. +unset _gpg_agent_{conf,env} + +# Disable GUI prompts inside SSH. +if [[ -n "$SSH_CONNECTION" ]]; then + export PINENTRY_USER_DATA='USE_CURSES=1' +fi