From 3732d19de0b55a17896570422e5931d78c39a66b Mon Sep 17 00:00:00 2001 From: chn Date: Fri, 22 Dec 2023 11:39:10 +0800 Subject: [PATCH] packages.server.ssh: auto cd in jykang --- modules/packages/server/ssh/default.nix | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/modules/packages/server/ssh/default.nix b/modules/packages/server/ssh/default.nix index 7a491a27..a14245ba 100644 --- a/modules/packages/server/ssh/default.nix +++ b/modules/packages/server/ssh/default.nix @@ -97,7 +97,7 @@ inputs: )) (attrsToList servers))); nixos.users.sharedModules = - [{ + [(hmInputs: { config.programs.ssh = { enable = true; @@ -122,12 +122,27 @@ inputs: { PubkeyAcceptedAlgorithms = "+ssh-rsa"; HostkeyAlgorithms = "+ssh-rsa"; - SetEnv = "TERM=chn_unset_ls_colors:xterm-256color"; + SetEnv = + let + usernameMap = + { + chn = "linwei/chn"; + }; + cdString = + if host == "jykang" && (usernameMap ? ${hmInputs.config.home.username}) then + ":chn_cd:${usernameMap.${hmInputs.config.home.username}}" + else ""; + in "TERM=chn_unset_ls_colors${cdString}:xterm-256color"; # in .bash_profile: # if [[ $TERM == chn_unset_ls_colors* ]]; then # export TERM=${TERM#*:} # export CHN_LS_USE_COLOR=1 # fi + # if [[ $TERM == chn_cd* ]]; then + # export TERM=${TERM#*:} + # cd ~/${TERM%%:*} + # export TERM=${TERM#*:} + # fi # in .bashrc # [ -n "$CHN_LS_USE_COLOR" ] && alias ls="ls --color=auto" }; @@ -141,6 +156,6 @@ inputs: gitea = { host = "gitea"; hostname = "ssh.git.chn.moe"; }; }; }; - }]; + })]; }; }