Dotfiles/.zshrc
2024-11-23 17:56:09 +01:00

98 lines
2.6 KiB
Bash

# Oh My Posh
#########################################################
export PATH=$PATH:"$HOME/.local/bin"
OMP_EXECUTABLE="${XDG_DATA_HOME:-${HOME}/.local}/bin/oh-my-posh"
[ ! -f $OMP_EXECUTABLE ] && curl -s https://ohmyposh.dev/install.sh | bash -s
eval "$(oh-my-posh init zsh --config ~/.config/omp.toml)"
# Zinit
#########################################################
ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git"
[ ! -d $ZINIT_HOME ] && mkdir -p "$(dirname $ZINIT_HOME)"
[ ! -d $ZINIT_HOME/.git ] && git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME"
source "${ZINIT_HOME}/zinit.zsh"
# Core Plugins
zinit snippet OMZP::command-not-found
zinit snippet OMZP::colored-man-pages
zinit light zsh-users/zsh-autosuggestions
zinit light zdharma-continuum/fast-syntax-highlighting
autoload -Uz compinit
compinit
# Basic ZSH
#########################################################
# History
HISTFILE=~/.histfile
HISTSIZE=10000
SAVEHIST=1000
# Disable Bell
unsetopt beep
# Keybinding
bindkey '\e[1;5C' forward-word
bindkey '\e[1;5D' backward-word
WORDCHARS="_-" # Define These Characters as Part of "Words"
# Application Envs
#########################################################
# GPG
if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
fi
export GPG_TTY=$(tty)
gpg-connect-agent updatestartuptty /bye >/dev/null
# Git
zinit snippet OMZP::git
# Containerization
zinit snippet OMZP::docker-compose
zinit snippet OMZP::podman
zinit snippet OMZP::toolbox
# NPM
export npm_config_cache="$HOME/.cache/npm"
export npm_config_prefix="$HOME/.local/share/npm"
export npm_config_userconfig="$HOME/.config/npmrc"
export npm_config_loglevel="verbose"
export npm_config_log="$HOME/.local/share/npm/logs"
# Volta
export VOLTA_HOME="$HOME/.local/share/volta"
[ ! -d $VOLTA_HOME ] && curl https://get.volta.sh | bash -s -- --skip-setup
# Go
export GOPATH=~/.local/share/go
export GOBIN=$GOPATH/bin
# Rust
export CARGO_HOME=$HOME/.local/share/cargo
export RUSTUP_HOME=$HOME/.local/share/rustup
zinit snippet OMZP::rust
# Php
zinit snippet OMZP::composer
zinit snippet OMZP::symfony6
# ROCM
export HSA_OVERRIDE_GFX_VERSION=10.3.0 # RX 6650 XT
# Just
export JUST_UNSTABLE=1
# PATH
export PATH=$PATH:$VOLTA_HOME/bin:$GOBIN:$CARGO_HOME/bin
# Aliases
#########################################################
alias edit-nvim-conf="nvim ~/.config/nvim"
alias edit-zsh-conf="nvim ~/.zshrc"
alias todo="nvim ~/Dokumente/Notes/Todo.md"
alias hist="eval \$(cat $HISTFILE | fzf)"
alias nano="nvim"
alias neofetch="fastfetch"