94 lines
5.6 KiB
Bash
94 lines
5.6 KiB
Bash
# ─── Ensure Ruby Gem Binaries Are in PATH ──────────────────────────────
|
|
# Handles all Ruby versions for user-installed gems like colorls
|
|
setopt nullglob
|
|
for dir in "$HOME/.gem/ruby/"*/bin ; do
|
|
[[ -d $dir ]] && PATH="$PATH:$dir"
|
|
done
|
|
export PATH
|
|
|
|
#Root
|
|
sudo() {
|
|
if [[ "$1" == "nano" ]]; then
|
|
TERM=xterm command sudo nano "${@:2}"
|
|
else
|
|
command sudo "$@"
|
|
fi
|
|
}
|
|
|
|
|
|
# ─── Powerlevel10k Instant Prompt (Should stay close to the top) ───────
|
|
typeset -g POWERLEVEL9K_INSTANT_PROMPT=off
|
|
autoload -Uz compinit
|
|
compinit
|
|
|
|
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
|
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
|
fi
|
|
|
|
# ─── Oh My Zsh and Theme Setup ────────────────────────────────────────
|
|
export ZSH="$HOME/.oh-my-zsh"
|
|
ZSH_THEME="powerlevel10k/powerlevel10k"
|
|
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
|
|
|
# ─── Plugins ──────────────────────────────────────────────────────────
|
|
plugins=(git zsh-autosuggestions zsh-syntax-highlighting zsh-completions)
|
|
source $ZSH/oh-my-zsh.sh
|
|
|
|
# ─── Aliases: Use colorls If Available, Fallback to ls ────────────────
|
|
if command -v colorls >/dev/null 2>&1; then
|
|
alias ls='colorls -d'
|
|
alias ll='colorls -l'
|
|
alias la='colorls -a'
|
|
alias sls='colorls'
|
|
else
|
|
alias ls='ls --color=auto'
|
|
alias ll='ls -l --color=auto'
|
|
alias la='ls -a --color=auto'
|
|
alias sls='ls'
|
|
fi
|
|
|
|
# ─── User Aliases and Functions ───────────────────────────────────────
|
|
alias up="/home/$USER/Homelab/up.sh"
|
|
alias pup="/home/$USER/Homelab/portainerup.sh"
|
|
alias p10="p10k configure"
|
|
alias fresh='source ~/.zshrc'
|
|
alias clear='clear && source ~/.zshrc'
|
|
alias portainerup='bash /home/$USER/Homelab/portainerup.sh'
|
|
alias nano='TERM=xterm nano'
|
|
alias ali='grep '^alias' ~/.zshrc'
|
|
|
|
# ─── Welcome Message and HomeDir Listing ──────────────────────────────
|
|
echo "┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐"
|
|
echo "| \x1b[32mWelcome Back My Master\x1b[0m |"
|
|
echo "└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘"
|
|
echo ""
|
|
fastfetch
|
|
echo ""
|
|
echo "┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐"
|
|
echo "| \x1b[32mEnjoy, here is your HomeDir\x1b[0m |"
|
|
echo "└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘"
|
|
echo " ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── "
|
|
sls
|
|
echo " ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── "
|
|
|
|
# ─── Optional: Additional User Configuration ──────────────────────────
|
|
# export LANG=en_US.UTF-8
|
|
# export EDITOR='nvim'
|
|
# export MANPATH="/usr/local/man:$MANPATH"
|
|
# export ARCHFLAGS="-arch $(uname -m)"
|
|
# ZSH_CUSTOM=/path/to/new-custom-folder
|
|
# HIST_STAMPS="mm/dd/yyyy"
|
|
# zstyle ':omz:update' mode auto
|
|
# zstyle ':omz:update' frequency 13
|
|
|
|
# End of .zshrc
|
|
export EDITOR="nano"
|
|
export VISUAL="nano"
|
|
|
|
|
|
## [Completion]
|
|
## Completion scripts setup. Remove the following line to uninstall
|
|
[[ -f /home/stiannor/.dart-cli-completion/zsh-config.zsh ]] && . /home/stiannor/.dart-cli-completion/zsh-config.zsh || true
|
|
## [/Completion]
|
|
|