diff --git a/emacs/.config/doom/config.el b/emacs/.config/doom/config.el index aa307a2..e2889e1 100644 --- a/emacs/.config/doom/config.el +++ b/emacs/.config/doom/config.el @@ -454,45 +454,46 @@ Always open the result in `eww`." ;; Bind globally to C-c l (global-set-key (kbd "C-c l") #'life-scrobble-url) -(after! magit - (defvar my/ssh-key-injector-script (expand-file-name "~/.local/bin/load_keys")) - (defun my/ssh-add-status () - (call-process "ssh-add" nil nil nil "-l")) - - (defun my/run-ssh-key-injector () - (my/apply-ssh-agent-env) - (let* ((buf (get-buffer-create "*ssh-key-injector*")) - (process-connection-type t) - (process-environment (copy-sequence process-environment))) - (unless (file-executable-p my/ssh-key-injector-script) - (user-error "SSH injector script not executable: %s" my/ssh-key-injector-script)) - (with-current-buffer buf - (erase-buffer) - (insert (format "Emacs SSH_AUTH_SOCK=%s\n\n" (or (getenv "SSH_AUTH_SOCK") "")))) - (let ((proc (make-process - :name "ssh-key-injector" - :buffer buf - :stderr buf - :command (list my/ssh-key-injector-script) - :noquery t))) - (while (process-live-p proc) - (accept-process-output proc 0.05)) - (unless (eq (process-exit-status proc) 0) - (display-buffer buf) - (user-error "SSH key injection failed. See *ssh-key-injector*."))))) - - (defun my/ensure-ssh-keys-loaded (&rest _ignore) - (pcase (my/ssh-add-status) - (0 nil) - (1 (my/run-ssh-key-injector)) - (2 (user-error "No reachable ssh-agent (SSH_AUTH_SOCK=%s)" - (or (getenv "SSH_AUTH_SOCK") ""))) - (_ (my/run-ssh-key-injector)))) - - (dolist (fn '(magit-status magit-fetch magit-push magit-pull)) - (advice-remove fn #'my/ensure-ssh-keys-loaded) - (advice-add fn :before #'my/ensure-ssh-keys-loaded))) + ; (after! magit + ; (defvar my/ssh-key-injector-script (expand-file-name "~/.local/bin/load_keys")) + ; + ; (defun my/ssh-add-status () + ; (call-process "ssh-add" nil nil nil "-l")) + ; + ; (defun my/run-ssh-key-injector () + ; (my/apply-ssh-agent-env) + ; (let* ((buf (get-buffer-create "*ssh-key-injector*")) + ; (process-connection-type t) + ; (process-environment (copy-sequence process-environment))) + ; (unless (file-executable-p my/ssh-key-injector-script) + ; (user-error "SSH injector script not executable: %s" my/ssh-key-injector-script)) + ; (with-current-buffer buf + ; (erase-buffer) + ; (insert (format "Emacs SSH_AUTH_SOCK=%s\n\n" (or (getenv "SSH_AUTH_SOCK") "")))) + ; (let ((proc (make-process + ; :name "ssh-key-injector" + ; :buffer buf + ; :stderr buf + ; :command (list my/ssh-key-injector-script) + ; :noquery t))) + ; (while (process-live-p proc) + ; (accept-process-output proc 0.05)) + ; (unless (eq (process-exit-status proc) 0) + ; (display-buffer buf) + ; (user-error "SSH key injection failed. See *ssh-key-injector*."))))) + ; + ; (defun my/ensure-ssh-keys-loaded (&rest _ignore) + ; (pcase (my/ssh-add-status) + ; (0 nil) + ; (1 (my/run-ssh-key-injector)) + ; (2 (user-error "No reachable ssh-agent (SSH_AUTH_SOCK=%s)" + ; (or (getenv "SSH_AUTH_SOCK") ""))) + ; (_ (my/run-ssh-key-injector)))) + ; + ; (dolist (fn '(magit-status magit-fetch magit-push magit-pull)) + ; (advice-remove fn #'my/ensure-ssh-keys-loaded) + ; (advice-add fn :before #'my/ensure-ssh-keys-loaded))) (defun my/disable-apheleia-in-certain-projects () (when-let ((root (and (fboundp 'project-root) diff --git a/zsh/.zshrc b/zsh/.zshrc index 6a1aa99..e4067cb 100644 --- a/zsh/.zshrc +++ b/zsh/.zshrc @@ -3,14 +3,17 @@ export GOPATH="$HOME/.go" export PATH=$HOME/.bin:$HOME/var/bin:/usr/local/bin:$PATH:$HOME/.go/bin:$HOME/.local/bin export GIT_CU_DIR="$HOME/src" export ZSH="$HOME/.oh-my-zsh" +export GPG_TTY=$(tty) + +export SSH_ASKPASS="$HOME/.local/bin/ssh-askpass-load-keys" +export SSH_ASKPASS_REQUIRE=force + +#load_keys &>/dev/null ZSH_THEME="robbyrussell" plugins=(git z fzf asdf direnv emacs yarn aws) -eval "$($HOME/.local/bin/ssh-agent-env)" -load_keys &>/dev/null - source $ZSH/oh-my-zsh.sh create_email() { @@ -61,10 +64,8 @@ esac [[ -d "/home/linuxbrew/.linuxbrew/bin" ]] && export PATH=/home/linuxbrew/.linuxbrew/bin:$PATH eval "$(direnv hook /bin/zsh)" -export GPG_TTY=$(tty) . ${ASDF_DATA_DIR:-$HOME/.asdf}/plugins/golang/set-env.zsh &>/dev/null -load_keys &>/dev/null # opencode [[ -d "$HOME/.npm-global" ]] && export PATH="$HOME/.npm-global/bin":$PATH