summaryrefslogtreecommitdiff
path: root/fedora/.config/shell
diff options
context:
space:
mode:
Diffstat (limited to 'fedora/.config/shell')
-rw-r--r--fedora/.config/shell/profile245
1 files changed, 245 insertions, 0 deletions
diff --git a/fedora/.config/shell/profile b/fedora/.config/shell/profile
new file mode 100644
index 0000000..fee2a46
--- /dev/null
+++ b/fedora/.config/shell/profile
@@ -0,0 +1,245 @@
+###################################################
+### --- PROFILE --- ###
+###################################################
+[ "$(tty)" = "/dev/tty1" ] && set -e # Exit immediately if a command exits with a non-zero status.
+
+###################################################
+### --- ENV PATH --- ###
+###################################################
+# Add all directories in each subdirectory to $PATH
+export PATH="$(find ~/.local/bin -path '*/.git*' -prune -o \( -type f -o -type l \) -perm -u=x -exec dirname {} \; | sort -u | paste -sd ':' -):$PATH"
+export PATH="$(find ~/.local/share/.password-store -type d -name '.extensions' | paste -sd ':' -):$PATH"
+command -v asdf >/dev/null 2>&1 && export PATH="$(find -L ~/.local/share/asdf/installs -name bin -type d -print 2>/dev/null | sort -u | paste -s -d ':' -):$PATH"
+command -v npm >/dev/null 2>&1 && export PATH="$(find -L ~/.local/share/npm -name bin -type d -print 2>/dev/null | sort -u | paste -s -d ':' -):$PATH"
+
+unsetopt PROMPT_SP 2>/dev/null
+
+###################################################
+### --- DEFAULT PROGRAMS --- ###
+###################################################
+export BROWSER=$(command -v librewolf || command -v firefox || command -v qutebrowser)
+export EDITOR="nvim"
+export EDITOR2="vim"
+# export FILE_MANAGER="lf $(lf -version)"
+export FILE_MANAGER="yazi $(yazi --version)"
+export KEYTIMEOUT=10
+export SUDO_EDITOR=$EDITOR
+export SUDO_ASKPASS="$HOME/.local/bin/dmenupass"
+export TERM="xterm-256color"
+export TERMINAL="st"
+export TERMINAL_PROG="st"
+export VISUAL=$EDITOR
+
+###################################################
+### --- XDG ENV PATHES --- ###
+###################################################
+### --- XDG DEFAULT --- ###
+export XDG_CACHE_HOME="$HOME/.cache"
+export XDG_CONFIG_HOME="$HOME/.config"
+export XDG_DATA_HOME="$HOME/.local/share"
+export XDG_STATE_HOME="$HOME/.local/state"
+
+### --- XDG CUSTOMS --- ###
+export XDG_DOTFILES_DIR="$HOME/.dotfiles"
+export XDG_SCRIPTS_HOME="$HOME/.local/bin"
+export XDG_SOURCES_HOME="$HOME/.local/src"
+export XDG_DESKTOP_DIR="$HOME/Desktop"
+export XDG_DOCUMENTS_DIR="$HOME/Documents"
+export XDG_DOWNLOAD_DIR="$HOME/Downloads"
+export XDG_MUSIC_DIR="$HOME/Music"
+export XDG_PICTURES_DIR="$HOME/Pictures"
+export XDG_PUBLICSHARE_DIR="$HOME/Public"
+export XDG_TEMPLATES_DIR="$HOME/Templates"
+export XDG_VIDEOS_DIR="$HOME/Videos"
+
+###################################################
+### --- DEFAULT ENV PATHES FOR ALL PROGRAMS --- ###
+###################################################
+### --- ANDROID --- ###
+export ANDROID_SDK_HOME="$XDG_CONFIG_HOME/android"
+
+### --- ANSIBLE --- ###
+export ANSIBLE_CONFIG="$XDG_CONFIG_HOME/ansible/ansible.cfg"
+
+### --- BAT --- ###
+export BAT_CONFIG_PATH="$XDG_CONFIG_HOME/bat/config"
+
+### --- CARGO --- ###
+export CARGO_HOME="$XDG_DATA_HOME/cargo"
+
+### --- DICS --- ###
+export DICS="/usr/share/stardict/dic/"
+
+### --- ELECTRUM --- ###
+export ELECTRUMDIR="$XDG_DATA_HOME/electrum"
+
+### --- FCITX5 --- ###
+export GTK_IM_MODULE=fcitx
+export QT_IM_MODULE=fcitx
+export XMODIFIERS=@im=fcitx
+
+### --- FZF --- ###
+export FZF_ALT_C_COMMAND="fd --type d . --color=never --hidden"
+export FZF_ALT_C_OPTS="--preview 'tree -C {} | head -50'"
+export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"
+export FZF_CTRL_T_OPTS="--preview 'bat --color=always --line-range :50 {}' --preview-window 'right:45%'"
+# export FZF_DEFAULT_OPTS="--no-height --color=bg+:#343d46,gutter:-1,pointer:#ff3c3c,info:#0dbc79,hl:#0dbc79,hl+:#23d18b"
+export FZF_DEFAULT_OPTS="--reverse --height 60% --color=bg+:#343d46,gutter:-1,pointer:#ff3c3c,info:#0dbc79,hl:#0dbc79,hl+:#23d18b"
+
+### --- FORGIT --- ###
+export FORGIT_CHECKOUT_BRANCH_BRANCH_GIT_OPTS='--sort=-committerdate'
+export FORGIT_COPY_CMD='xclip -selection clipboard'
+
+### --- GEM --- ###
+export GEMRC="$HOME/.config/gem/gemrc"
+export GEM_HOME="$XDG_DATA_HOME/gem"
+export GEM_PATH="$GEM_HOME"
+
+### --- GO --- ###
+export GOMODCACHE="$XDG_CACHE_HOME/go/mod"
+export GOPATH="$XDG_SCRIPTS_HOME/go"
+
+### --- GTK --- ###
+export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/gtkrc-2.0":"$XDG_CONFIG_HOME/gtk-2.0/gtkrc-2.0.mine"
+
+### --- HISTORY --- ###
+export HISTFILE="$XDG_DATA_HOME/history/sh_history"
+
+### --- INPUTRC --- ###
+export INPUTRC="$XDG_CONFIG_HOME/shell/inputrc"
+
+### --- JAVA --- ###
+export AWT_TOOLKIT="MToolkit wmname LG3D" # May have to install wmname
+export _JAVA_AWT_WM_NONREPARENTING=1 # Fix for Java applications in dwm
+
+### --- Jupyter --- ###
+export JUPYTER_CONFIG_DIR="$XDG_CONFIG_HOME/jupyter"
+export JUPYTER_PLATFORM_DIRS="1"
+
+### --- KODI --- ###
+export KODI_DATA="$XDG_DATA_HOME/kodi"
+
+### --- LYNX --- ###
+export LYNX_CFG="$HOME/.config/lynx/lynx.cfg"
+export LYNX_LSS="$HOME/.config/lynx/lynx.lss"
+export LYNX_CFG_PATH="$XDG_CONFIG_HOME/lynx"
+
+### --- MANPAGER --- ###
+([ -x "$(command -v batcat)" ] || [ -x "$(command -v batman)" ]) && {
+ export MANPAGER="sh -c 'col -bx | bat -l man -p'"
+ export MANROFFOPT="-c"
+} || {
+ export MANPAGER='less -s'
+ export LESS="R"
+ export LESS_TERMCAP_mb="$(printf '%b' '')"
+ export LESS_TERMCAP_md="$(printf '%b' '')"
+ export LESS_TERMCAP_me="$(printf '%b' '')"
+ export LESS_TERMCAP_so="$(printf '%b' '')"
+ export LESS_TERMCAP_se="$(printf '%b' '')"
+ export LESS_TERMCAP_us="$(printf '%b' '')"
+ export LESS_TERMCAP_ue="$(printf '%b' '')"
+ export LESSOPEN="| lesspipe.sh %s"
+}
+
+### --- MBSYNC --- ###
+export MBSYNCRC="$XDG_CONFIG_HOME/mbsync/config"
+
+### --- MOZILLA --- ###
+export MOZ_USE_XINPUT2=1 # Mozilla smooth scrolling/touchpads.
+
+### --- NOTMUCH --- ###
+export NOTMUCH_CONFIG="$XDG_CONFIG_HOME/notmuch/config"
+
+### --- NPM --- ###
+export NPM_CONFIG_USERCONFIG="~/.config/npm/.npmrc"
+
+### --- NVM --- ###
+export NVM_DIR="$XDG_CONFIG_HOME/nvm"
+
+### --- PAM GNUPG --- ###
+# export GNUPGHOME="$XDG_DATA_HOME/gnupg"
+
+### --- PASSWORD STORE --- ###
+export PASSWORD_STORE_DIR="$XDG_DATA_HOME/.password-store"
+export PASSWORD_STORE_CLIP_TIME=180 # Specifies the number of seconds to wait before restoring the clipboard, by default 45 seconds.
+# export PASSWORD_STORE_GENERATED_LENGTH=18 # by default 25.
+# export PASSWORD_STORE_CHARACTER_SET='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_=+[]{};:,.<>?'
+# export PASSWORD_STORE_CHARACTER_SET_NO_SYMBOLS='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_=+[]{};:,.<>?'
+export PASSWORD_STORE_ENABLE_EXTENSIONS="true"
+# export PASSWORD_STORE_EXTENSIONS_DIR="$PASSWORD_STORE_DIR/.extensions"
+# export BASH_COMPLETION_USER_DIR=$XDG_DATA_HOME/bash-completion/completions
+
+### --- POWERLEVEL10K --- ###
+export POWERLEVEL9K_INSTALLATION_DIR="/usr/share/zsh-theme-powerlevel10k"
+
+### --- PYTHON --- ###
+export PYTHONPYCACHEPREFIX=$XDG_CACHE_HOME/python
+export PYTHONSTARTUP="$XDG_CONFIG_HOME/python/pythonrc"
+
+### --- QT --- ###
+export QT_QPA_PLATFORMTHEME="gtk2" # Have QT use gtk2 theme.
+
+### --- RUST --- ###
+export RUSTUP_HOME="$XDG_DATA_HOME/rustup"
+
+### --- SERVER --- ###
+export THESIAH="thesiah.xyz"
+export THESIAH_GIT="git@$THESIAH"
+export THESIAH_SERVER="root@$THESIAH"
+export THESIAH_VPN="${THESIAH%%.*}"
+export THESIAH_WWW="$HOME/Private/repos/THESIAH"
+
+### --- SQLITE --- ###
+export SQLITE_HISTORY="$XDG_DATA_HOME/history/sqlite_history"
+
+### --- STARSHIP --- ###
+export STARSHIP_CONFIG="$XDG_CONFIG_HOME/starship/starship.toml"
+
+### --- TMUX --- ###
+export TMUX_TMPDIR="$XDG_RUNTIME_DIR"
+
+### --- UNISON --- ###
+export UNISON="$XDG_DATA_HOME/unison"
+
+### --- VIM --- ###
+# export GVIMINIT='let $MYGVIMRC = !has("nvim") ? "$XDG_CONFIG_HOME/vim/gvimrc" : "$XDG_CONFIG_HOME/nvim/init.lua" | so $MYGVIMRC'
+# export VIMINIT='let $MYVIMRC = !has("nvim") ? "$XDG_CONFIG_HOME/vim/vimrc" : "$XDG_CONFIG_HOME/nvim/init.lua" | so $MYVIMRC'
+
+### --- VIRTUAL ENVIRONMENT --- ###
+export WORKON_HOME="$XDG_DATA_HOME/venvs"
+
+### --- VISUAL STUDIO CODE --- ###
+export VSCODE_PORTABLE="$XDG_DATA_HOME/vscode"
+
+### --- WEBKIT --- ###
+export WEBKIT_DISABLE_COMPOSITING_MODE=1
+
+### --- WINE --- ###
+export WINEPREFIX="$XDG_DATA_HOME/wine"
+export WINEDLLOVERRIDES="winemenubuilder.exe=d"
+
+### --- WGET --- ###
+export WGETRC="$XDG_CONFIG_HOME/wget/wgetrc"
+
+### --- W3M --- ###
+export W3M_DIR="$XDG_STATE_HOME/w3m"
+
+### --- X11 --- ###
+export XINITRC="$XDG_CONFIG_HOME/x11/xinitrc"
+export XSERVERRC="$XDG_CONFIG_HOME/X11/xserverrc"
+
+### --- XAUTH --- ###
+export XAUTHORITY="$XDG_RUNTIME_DIR/Xauthority" # This line will break some DMs.
+
+### --- ZSH --- ###
+export ZDOTDIR="$XDG_CONFIG_HOME/zsh"
+export ZPLUGINDIR="$XDG_SCRIPTS_HOME/zsh"
+
+### --- SDCV --- ###
+export STARDICT_DATA_DIR="$XDG_DATA_HOME/dic"
+export STARDICT_HISTFILE="$XDG_DATA_HOME/history/dic"
+export SDCV_PAGER='less --quit-if-one-screen -RX'
+
+### --- SHORTCUTS --- ###
+[ ! -f "$XDG_CONFIG_HOME/shell/shortcutrc" ] && setsid -f shortcuts >/dev/null 2>&1
+