From cb479d8e7d192896ba9f1f782b8788afb6de5494 Mon Sep 17 00:00:00 2001 From: lightly-toasted Date: Mon, 2 Feb 2026 11:25:26 +0900 Subject: [PATCH] feat(home/y2q): start ssh-agent automatically in zsh --- home/hosts/y2q.nix | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/home/hosts/y2q.nix b/home/hosts/y2q.nix index 56c8d04..eea6b37 100644 --- a/home/hosts/y2q.nix +++ b/home/hosts/y2q.nix @@ -25,6 +25,28 @@ export EDITOR="nvim" export VISUAL="nvim" export LANG=en_US.UTF-8 + + # ssh-agent + SSH_ENV="$HOME/.ssh/environment" + + function start_agent { + ssh-agent | sed 's/^echo/#echo/' > "$SSH_ENV" + chmod 600 "$SSH_ENV" + . "$SSH_ENV" > /dev/null + } + + # check for running ssh-agent with proper $SSH_AGENT_PID + if [ -n "$SSH_AGENT_PID" ]; then + ps -ef | grep "$SSH_AGENT_PID" | grep ssh-agent > /dev/null + if [ $? -ne 0 ]; then + start_agent + fi + else + if [ -f "$SSH_ENV" ]; then + . "$SSH_ENV" > /dev/null + fi + ps -ef | grep "$SSH_AGENT_PID" | grep -v grep | grep ssh-agent > /dev/null || start_agent + fi ''; nixpkgs.config.allowUnfree = true;