]> git.sev.monster Git - dotfiles.git/blobdiff - base/.zshenv
reorganize aliases, clean up binds, add zoxide
[dotfiles.git] / base / .zshenv
index 58169bc8c0301e47f4b6d685c4c024d1aad779ed..1f3e1982e69593bd93ad762e6ab0a0c08d5cc131 100644 (file)
@@ -37,24 +37,26 @@ if [[ -v _sev_reset_shell || $SHLVL == 1 ]] {
     export XDG_DATA_DIRS=~/.local/share:/usr/pkg/share:/usr/local/share:/usr/share
     export XDG_CACHE_HOME=~/tmp
     export XDG_RUNTIME_DIR=~/tmp
+    if [[ -e $XDG_CONFIG_HOME/user-dirs.dirs ]] {
+        source $XDG_CONFIG_HOME/user-dirs.dirs
+    }
 
     ## create tmp link
     t=${TMPDIR:-/tmp}/home-$LOGNAME
-    h=$HOME/tmp
     if [[ ! -e $t ]] {
-        mkdir -m 700 $t > /dev/null 2>&1
+        mkdir -m 700 $t >/dev/null 2>&1
         # TODO: check if dir exists after mkdir
     }
     # allow opaque entries to override link creation
-    if [[ ! -e $h ]] {
-        ln -sf $t $h > /dev/null 2>&1
+    if [[ ! -e $XDG_RUNTIME_DIR ]] {
+        ln -sf $t $XDG_RUNTIME_DIR >/dev/null 2>&1
     }
-    unset t h
+    unset t
 
     ## ssh agents
     # NOTE: preferred order of agents to check: okcagent, gnupg, openssh
     #       first block takes care of okcagent and openssh, second gnupg
-    print -nP "%F{blue}>>>%f SSH: %F{green}"
+    [[ -o interactive ]] && print -nP "%F{blue}>>>%f SSH: %F{green}"
     if [[ ! -v SSH_AUTH_SOCK && ( -v commands[okc-ssh-agent] ||
           ( -v commands[ssh-agent] && ! -v commands[gpg] ) ) ]] {
         okc=${commands[okc-ssh-agent]:+okc-}
@@ -65,13 +67,19 @@ if [[ -v _sev_reset_shell || $SHLVL == 1 ]] {
             IFS=$'\0' read -r sock pid <$agentfile
         }
         if [[ -S $sock && $pid > 0 ]] && kill -0 $pid; then
-            echo "Reusing agent pid $pid"
+            [[ -o interactive ]] && echo "Reusing agent pid $pid"
             export SSH_AUTH_SOCK=$sock
             export SSH_AGENT_PID=$pid
         else
             # TODO: ensure ssh-agent path looks legit
             #       to avoid unsafe eval?
-            eval `${okc}ssh-agent`
+            # NOTE: no way around doing redirection like this I think
+            e=${okc}ssh-agent
+            if [[ -o interactive ]] {
+                eval `$e`
+            } else {
+                eval `$e` >/dev/null 2>&1
+            }
             echo -n $SSH_AUTH_SOCK$'\0'$SSH_AGENT_PID >!$agentfile
         fi
         unset okc agentfile sock pid
@@ -80,12 +88,12 @@ if [[ -v _sev_reset_shell || $SHLVL == 1 ]] {
         export GPG_TTY=$(tty)
         export PINENTRY_USER_DATA=USE_TTY=$((!${+DISPLAY}))
         gpg-connect-agent UPDATESTARTUPTTY /bye >/dev/null 2>&1
-        gpg-connect-agent /subst /serverpid \
+        [[ -o interactive ]] && gpg-connect-agent /subst /serverpid \
             '/echo GPG agent pid ${get serverpid}' /bye
         [[ ! -v SSH_AUTH_SOCK ]] && \
             export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
     } else {
-        echo "Pre-existing or remote agent"
+        [[ -o interactive ]] && echo "Pre-existing or remote agent"
     }
 
     ## gpg ssh forwarding
This page took 0.034713 seconds and 4 git commands to generate.