]> ruderich.org/simon Gitweb - config/dotfiles.git/commitdiff
zsh/rc: display network namespace in prompt
authorSimon Ruderich <simon@ruderich.org>
Sun, 6 Aug 2023 07:26:06 +0000 (09:26 +0200)
committerSimon Ruderich <simon@ruderich.org>
Sun, 6 Aug 2023 07:26:06 +0000 (09:26 +0200)
shell/zsh/rc

index 660430cc3789504c5433c4da0969c8927166a5c8..515ae9bd30c64fb2704e65e87804e45eb429811f 100644 (file)
@@ -228,6 +228,9 @@ local green="%{${fg[green]}%}"
 local yellow="%{${fg[yellow]}%}"
 local default="%{${fg[default]}%}"
 
+# Linux network namespace
+local netns="$(ip netns identify 2>/dev/null)"
+
 # vcs_info was added in 4.3.9 but it works in earlier versions too. So load it
 # if the necessary files are available in ~/.zsh/functions/vcs_info (often a
 # symbolic link to current checkout of Zsh's sources).
@@ -441,6 +444,10 @@ zshrc_prompt_precmd() {
     if [[ -n $SSH_CONNECTION ]]; then
         host="%U${host}%u"
     fi
+    # Linux network namespace if any
+    if [[ -n $netns ]]; then
+        host="${host}[$netns]"
+    fi
 
     # Number of background processes in yellow if not zero.
     local background="%(1j.${yellow}%j${default}.)"