#!/bin/bash if test -d ~/.config/shell/profile.d/; then for profile in ~/.config/shell/profile.d/*.sh; do test -r "$profile" && . "$profile" done unset profile fi case $- in *i*) ;; *) return;; esac if ! shopt -oq posix; then [ -f /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion [ -f /etc/bash_completion ] && . /etc/bash_completion fi bind "set completion-ignore-case on" shopt -s checkwinsize shopt -s histappend shopt -s cdspell shopt -s autocd set -o vi HISTCONTROL=ignoreboth HISTIZE= HISTFILESIZE= if [ -n "$HISTFILE" ] && ! [ -d "${HISTFILE%/*}" ] ; then mkdir -p "${HISTFILE%/*}" && touch "$HISTFILE" fi _prompt_git_branch() { GIT_BRANCH="$(git branch 2>/dev/null | sed '/\*/!d;s/^\*\s*//g;s/\s*$//g')" [ -n "$GIT_BRANCH" ] && printf '%s ' "$GIT_BRANCH" } PROMPT_COMMAND='if [ "$?" = 0 ]; then EXIT_COLOR="\033[32m"; else EXIT_COLOR="\033[31m"; fi' PS1='\ \[\033[2m\]\A\[\033[0m\] \ \[\033[34m\]\w\[\033[0m\] \ \[\033[35m\]\[\033[1m\]$(_prompt_git_branch)\[\033[0m\]\ \[$(echo -ne $EXIT_COLOR)\]>\[\033[0m\] \ ' ! command -v sudo >/dev/null 2>&1 && alias sudo="doas" && complete -cf doas alias \ src="cd $HOME/.local/src/ && ls" \ cfg="cd $HOME/.config/ && ls" \ tmp="cd $HOME/Desktop/temp/ && ls" \ dsk="cd $HOME/Desktop/ && ls" \ prj="cd $HOME/Projects && ls" \ doc="cd $HOME/Documents/ && ls" \ dow="cd $HOME/Downloads/ && ls" \ mus="cd $HOME/Music/ && ls" \ prt="cd $HOME/Pictures/Screenshots/ && ls" \ bkg="cd $HOME/Pictures/Backgrounds/ && ls" \ img="cd $HOME/Pictures/ && ls" \ vid="cd $HOME/Videos/ && ls" \ EZA_OPTS="--git --group-directories-first --icons --time-style=long-iso" command -v exa >/dev/null 2>&1 && alias la="exa $EZA_OPTS -alghUum" && alias lt="exa $EZA_OPTS -T -L 2" && alias ll="exa $EZA_OPTS -alg" && alias ls="exa $EZA_OPTS -1" command -v eza >/dev/null 2>&1 && alias la="eza $EZA_OPTS -alghUum" && alias lt="eza $EZA_OPTS -T -L 2" && alias ll="eza $EZA_OPTS -alg" && alias ls="eza $EZA_OPTS -1" command -v trash >/dev/null 2>&1 && alias rm="trash" alias \ fzf="fzf --cycle --reverse" \ diff="diff --color=auto" \ grep="grep --color=auto" \ calc="bc -l" \ cp="cp -iv" \ mv="mv -iv" \ vim="nvim" \ df-short="df -h | grep -v '\s/dev.*$\|\s/run.*$\|\s/boot.*$'" \ qr-png="qrencode -s 16 -o qr.png" \ qr="qrencode -t ansiutf8" \ clip="xsel -ib" \ em="emacsclient -c -a 'emacs' $@" \ wget="wget --hsts-file=$XDG_DATA_HOME/wget/wget-hsts" \ ssh="ssh ${SSH_CONFIG} " \ [ -f ~/.config/shell/kit ] && . ~/.config/shell/kit for func in ~/.config/shell/functions/* ; do [ -f "$func" ] && . $func done if [ "$(tty)" = "/dev/tty1" ] ; then sleep 0.5 amixer & XDG_SESSION_TYPE=x11 GDK_BACKEND=x11 exec startx #exec sway elif [ "$(tty)" = "/dev/tty2" ] ; then sleep 0.5 exec /usr/lib/plasma-dbus-run-session-if-needed /usr/bin/startplasma-wayland fi