aboutsummaryrefslogtreecommitdiff
path: root/.bashrc
diff options
context:
space:
mode:
Diffstat (limited to '.bashrc')
-rw-r--r--.bashrc60
1 files changed, 60 insertions, 0 deletions
diff --git a/.bashrc b/.bashrc
new file mode 100644
index 0000000..0b4c41e
--- /dev/null
+++ b/.bashrc
@@ -0,0 +1,60 @@
+# .bashrc
+
+# Custom prompt with directory in #afd7ff
+PS1='[\u@\h \[\e[38;2;175;215;255m\]\w\[\e[0m\]]\$ '
+
+# Aliases
+alias python=python3
+alias ls='ls -larth'
+alias e='emacsclient -nc -a ""'
+alias ke='emacsclient -e "(kill-emacs)"'
+alias copy='xclip -selection clipboard'
+alias paste='xclip -o -selection clipboard'
+
+# bun completions
+[ -s "$HOME/.bun/_bun" ] && source "$HOME/.bun/_bun"
+
+# bun
+export BUN_INSTALL="$HOME/.bun"
+export PATH="$BUN_INSTALL/bin:$PATH"
+
+# Local bins
+export PATH="$HOME/.local/bin:$PATH"
+# Doom Emacs CLI
+export PATH="$HOME/.config/emacs/bin:$PATH"
+
+# Auto-attach or create tmux session on shell start
+if [ -z "$TMUX" ]; then
+ tmux attach 2>/dev/null || tmux new -s main
+fi
+
+# Source global definitions
+if [ -f /etc/bashrc ]; then
+ . /etc/bashrc
+fi
+
+# User specific environment
+if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]]; then
+ PATH="$HOME/.local/bin:$HOME/bin:$PATH"
+fi
+export PATH
+
+# User specific aliases and functions
+if [ -d ~/.bashrc.d ]; then
+ for rc in ~/.bashrc.d/*; do
+ if [ -f "$rc" ]; then
+ . "$rc"
+ fi
+ done
+fi
+unset rc
+
+[ -f "$HOME/.cargo/env" ] && . "$HOME/.cargo/env"
+
+# pnpm
+export PNPM_HOME="/home/yousefjan/.local/share/pnpm"
+case ":$PATH:" in
+ *":$PNPM_HOME:"*) ;;
+ *) export PATH="$PNPM_HOME:$PATH" ;;
+esac
+# pnpm end