122 lines
3.3 KiB
Bash
122 lines
3.3 KiB
Bash
############################
|
|
# #
|
|
# ███████╗███████╗██╗ ██╗ #
|
|
# ╚══███╔╝██╔════╝██║ ██║ #
|
|
# ███╔╝ ███████╗███████║ #
|
|
# ███╔╝ ╚════██║██╔══██║ #
|
|
# ███████╗███████║██║ ██║ #
|
|
# ╚══════╝╚══════╝╚═╝ ╚═╝ #
|
|
# #
|
|
############################
|
|
|
|
# Required packages:
|
|
# - zsh
|
|
# - oh-my-zsh-git (AUR)
|
|
# - zsh-theme-powerlevel10k
|
|
# - zsh-syntax-highlighting
|
|
# - zsh-completions
|
|
# - zsh-autosuggestions
|
|
# - nerd-font-hack (AUR)
|
|
# - lsd
|
|
# - fzf
|
|
# - pkgfile
|
|
# - trash-cli (with gvfs)
|
|
|
|
export PATH=$HOME/.local/bin:$HOME/.dotnet/tools:$XDG_DATA_HOME/npm_global/bin:$XDG_DATA_HOME/cargo/bin:$PATH
|
|
|
|
[[ $- != *i* ]] && return
|
|
[ -n $SSH_CONNECTION ] && source ~/.profile
|
|
|
|
# Oh my zsh stuff
|
|
|
|
# powerline instant promt
|
|
if [ -z $SSH_CONNECTION ]; then
|
|
|
|
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
|
# Initialization code that may require console input (password prompts, [y/n]
|
|
# confirmations, etc.) must go above this block; everything else may go below.
|
|
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
|
|
fi
|
|
|
|
ZSH="/usr/share/oh-my-zsh"
|
|
HISTFILE="$XDG_CACHE_HOME/zsh_history"
|
|
|
|
if [[ -n $SSH_CONNECTION ]]; then
|
|
ZSH_THEME="gallois"
|
|
else
|
|
ZSH_THEME="../../zsh-theme-powerlevel10k/powerlevel10k"
|
|
|
|
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
|
[[ ! -f "$XDG_CACHE_HOME/p10k.zsh" ]] || source "$XDG_CACHE_HOME/p10k.zsh"
|
|
#[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
|
fi
|
|
|
|
# wal subshell
|
|
#(cat ~/.cache/wal/sequences &)
|
|
|
|
DISABLE_UPDATE_PROMPT=true
|
|
DISABLE_AUTO_UPDATE=true
|
|
ZSH_CACHE_DIR="$XDG_CACHE_HOME/oh-my-zsh" # mkdir ~/.cache/oh-my-zsh
|
|
_Z_DATA="$XDG_CACHE_HOME/z"
|
|
ZSH_COMPDUMP=$ZSH/cache/.zcompdump-$HOST
|
|
|
|
plugins=(
|
|
git
|
|
last-working-dir
|
|
extract
|
|
z
|
|
)
|
|
|
|
autoload -U compinit
|
|
|
|
# start oh my zsh
|
|
source $ZSH/oh-my-zsh.sh
|
|
|
|
# Sytax highlight
|
|
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
|
|
|
# autosugestion
|
|
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
|
|
|
|
# command not found
|
|
source /usr/share/doc/pkgfile/command-not-found.zsh # dont forget to run pkgfile -u
|
|
|
|
# Variables
|
|
|
|
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
|
|
|
|
# ZSH percent fix
|
|
export PROMPT_EOL_MARK=""
|
|
|
|
# FZF
|
|
export FZF_DEFAULT_COMMAND="fd --type file --color=always"
|
|
export FZF_DEFAULT_OPTS="--ansi"
|
|
|
|
# Aliases
|
|
alias vim="nvim"
|
|
alias sudo='sudo '
|
|
alias please='sudo '
|
|
|
|
[ -z $SSH_CONNECTION ] && alias ls='exa --icons'
|
|
|
|
alias svim='sudo -E nvim'
|
|
alias dotfiles="git --git-dir=$XDG_DATA_HOME/dotfiles-remastered --work-tree=$HOME" # dotfile config --local status.showUntrackedFiles no
|
|
alias open="xdg-open"
|
|
alias mixer="pulsemixer"
|
|
alias yt-dl-audio="yt-dlp --extract-audio --audio-format mp3 -o '%(title)s.%(ext)s'"
|
|
alias rm="trash"
|
|
alias modx="chmod +x"
|
|
alias mv="mv -iv"
|
|
alias cp="cp -riv"
|
|
alias mkdir="mkdir -pv"
|
|
alias yeet="sudo pacman -Rns"
|
|
alias ip="ip -c=auto"
|
|
alias syu="sudo pacman -Syu"
|
|
alias virsh="virsh -c qemu:///system"
|
|
alias k="kubectl"
|
|
alias ssh="TERM=xterm-256color ssh"
|
|
alias du="duf"
|
|
|