#!/bin/zsh # zsh profile file. Runs on login. Environmental variables are set here. # If you don't plan on reverting to bash, you can remove the link in ~/.profile # to clean up. # Adds `~/.local/bin` to $PATH export PATH="$PATH:$(du "$HOME/.local/bin" | cut -f2 | tr '\n' ':' | sed 's/:*$//')" # Default programs: export EDITOR="nvim" export PAGER="less" export TERMINAL="st" export BROWSER="qutebrowser" export READER="zathura" export FILE="ranger" export PIC="sxiv" export SHELL="zsh" # ~/ Clean-up: export XDG_CONFIG_HOME="$HOME/.config" export XDG_DATA_HOME="$HOME/.local/share" export XDG_CACHE_HOME="$HOME/.cache" export XINITRC="$XDG_CONFIG_HOME/x11/xinitrc" # XDG USER DIRECOTRIES export XDG_DESKTOP_DIR="$HOME" export XDG_DOCUMENTS_DIR="$HOME/dox" export XDG_DOWNLOAD_DIR="$HOME/dls" export XDG_MUSIC_DIR="$HOME/msc" export XDG_PICTURES_DIR="$HOME/pics" export XDG_VIDEOS_DIR="$HOME/vids" #Various stuff export BIB="$XDG_DOCUMENTS_DIR/bib.bib" #export XDG_RUNTIME_DIR="$HOME/.cache/xdg_run" # Messes up Audio for some reason, might be useful to figure out in the future how to fix #export XAUTHORITY="$HOME/.cache/xdg_run/Xauthority" # This line will break some DMs. export CHROOT="${HOME}/.local/src/chroot" export NOTMUCH_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/notmuch-config" export GTK2_RC_FILES="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-2.0/gtkrc-2.0" export LESSHISTFILE="-" export WGETRC="${XDG_CONFIG_HOME:-$HOME/.config}/wget/wgetrc" export INPUTRC="${XDG_CONFIG_HOME:-$HOME/.config}/inputrc" export ZDOTDIR="${XDG_CONFIG_HOME:-$HOME/.config}/zsh" export ALSA_CONFIG_PATH="$XDG_CONFIG_HOME/alsa/asoundrc" export GNUPGHOME="$XDG_DATA_HOME/gnupg" #export GNUPGHOME="$HOME/.gnupg" export WINEPREFIX="${XDG_DATA_HOME:-$HOME/.local/share}/wineprefixes/default" export KODI_DATA="${XDG_DATA_HOME:-$HOME/.local/share}/kodi" export PASSWORD_STORE_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/password-store" export PASSWORD_STORE_GPG_OPTS='--homedir=/home/alex/.local/share/gnupg' export TMUX_TMPDIR="$XDG_RUNTIME_DIR" export ANDROID_SDK_HOME="${XDG_CONFIG_HOME:-$HOME/.config}/android" export CARGO_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/cargo" export GOPATH="${XDG_DATA_HOME:-$HOME/.local/share}/go" export GOMODCACHE="$XDG_CACHE_HOME/go/mod" export ANSIBLE_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/ansible/ansible.cfg" export UNISON="$XDG_DATA_HOME/unison" export HISTFILE="$XDG_DATA_HOME/history" export MBSYNCRC="$XDG_CONFIG_HOME/mbsync/config" export ELECTRUMDIR="$XDG_DATA_HOME/electrum" export PYTHONSTARTUP="$XDG_CONFIG_HOME/python/pythonrc" export SQLITE_HISTORY="$XDG_DATA_HOME/sqlite_history" export MAILCAPS="${XDG_CONFIG_HOME:-$HOME/.config}/mutt/mailcap" export CABAL_CONFIG="$XDG_CONFIG_HOME"/cabal/config export CABAL_DIR="$XDG_CACHE_HOME"/cabal export GRADLE_USER_HOME="$XDG_DATA_HOME"/gradle export IPYTHONDIR="$XDG_CONFIG_HOME"/jupyter export JUPYTER_CONFIG_DIR="$XDG_CONFIG_HOME"/jupyter export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java export JULIA_DEPOT_PATH="$XDG_DATA_HOME/julia:$JULIA_DEPOT_PATH" export NUGET_PACKAGES="$XDG_CACHE_HOME"/NuGetPackages export MAXIMA_USERDIR="$XDG_CONFIG_HOME"/maxima export WEECHAT_HOME="$XDG_CONFIG_HOME"/weechat export TEXMFHOME=$XDG_DATA_HOME/texmf export TEXMFVAR=$XDG_CACHE_HOME/texlive/texmf-var export TEXMFCONFIG=$XDG_CONFIG_HOME/texlive/texmf-config export R_ENVIRON_USER=$XDG_CONFIG_HOME/R/rEnviron # Other program settings: export DICS="/usr/share/stardict/dic/" export SUDO_ASKPASS="$HOME/.local/bin/dmenupass" export FZF_DEFAULT_OPTS="--layout=reverse --height 40%" 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="| /usr/bin/highlight -O ansi %s 2>/dev/null" export QT_QPA_PLATFORMTHEME="gtk2" # Have QT use gtk2 theme. export MOZ_USE_XINPUT2="1" # Mozilla smooth scrolling/touchpads. export _JAVA_AWT_WM_NONREPARENTING=1 # Java doesn't understand tiling windows export AWT_TOOLKIT="MToolkit wmname LG3D" #May have to install wmname # Settings for Japanese input #export GTK_IM_MODULE='ibus' #export QT_IM_MODULE='ibus' #export XMODIFIERS=@im='ibus' #GTK_IM_MODULE=fcitx #QT_IM_MODULE=fcitx #XMODIFIERS=@im=fcitx #ibus-daemon -drx #Toolbar for anthy [ ! -f ${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc ] && setsid shortcuts >/dev/null 2>&1 # Start graphical server on tty1 if not already running. [ "$(tty)" = "/dev/tty1" ] && ! ps -e | grep -qw Xorg && exec startx $XINITRC # Switch escape and caps if tty and no passwd required: sudo -n loadkeys ${XDG_DATA_HOME:-$HOME/.local/share}/larbs/ttymaps.kmap 2>/dev/null