bash,guix: "fix" completion
[~bandali/configs] / .bashrc
diff --git a/.bashrc b/.bashrc
index f7cbfc8..a48c605 100644 (file)
--- a/.bashrc
+++ b/.bashrc
@@ -32,9 +32,7 @@ if [ $(id -u) == "0" ]; then
 else
     PS1='\$ '
 fi
-PS1="`[ -n "$GUIX_ENVIRONMENT" ] && printf \" [env]\"`\n$PS1"
-__u='`[ \`id -u\` == "0" ] && printf "\[\e[1;31m\]\u\[\e[00m\]" || printf "\u"`'
-PS1="$__u@\h:\w/$PS1"
+PS1="\u@\h:\w/`[ -n "$GUIX_ENVIRONMENT" ] && printf \" [env]\"`\n$PS1"
 
 # set terminal title
 PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: $(b_prompt)\007"'
@@ -89,6 +87,10 @@ aur() {
    cd ${1}
 }
 
+function t {
+  cd $(mktemp -d /tmp/$1.XXXX)
+}
+
 # separate alias definitions file, if exists
 if [ -f ~/.bash_aliases ]; then
     . ~/.bash_aliases
@@ -104,3 +106,17 @@ if ! shopt -oq posix; then
     . /etc/bash_completion
   fi
 fi
+
+# source Guix shell config dirs, for vte.sh and bash completions
+GUIX_PROFILES=("${HOME}/.desktop-profile"
+               "${HOME}/.guix-profile"
+               "${HOME}/.config/guix/current")
+for profile in "${GUIX_PROFILES[@]}"; do
+    for dir in "${profile}/etc/bash_completion.d" "${profile}/etc/profile.d"; do
+        if [ -d "${dir}" ]; then
+            for f in "${dir}"/*; do
+                . $f
+            done
+        fi
+    done
+done