-#!/usr/bin/env bash
-export PATH="$HOME/bin:$PATH"
+#!/usr/bin/env zsh
+export PATH="$HOME/bin:$HOME/.local/bin:$PATH"
export XDG_CONFIG_HOME="$HOME/.config"
export XDG_DATA_HOME="$HOME/.local/share"
export XDG_CACHE_HOME="$HOME/.cache"
+export HOST=$(hostname)
+
+# the default command to open a new terminal
+export TERMINAL=wezterm
+export THEME=nord
+
+# gpg
+export GNUPGHOME="$XDG_CONFIG_HOME/gnupg"
+#TODO this should probably be set for all shells?
+if [[ -z "$DISPLAY" ]]; then
+ export PINENTRY_USER_DATA="curses"
+fi
+
+# ssh
+export SSH_AUTH_SOCK=${SSH_AUTH_SOCK:-"$XDG_RUNTIME_DIR/ssh-agent.socket"}
+
+export MAILDIR="$HOME/mail"
+
+if hash systemctl 2>/dev/null; then
+ systemctl --user import-environment \
+ XDG_CACHE_HOME \
+ XDG_CONFIG_HOME \
+ XDG_DATA_HOME \
+ GNUPGHOME \
+ MAILDIR \
+ SSH_AUTH_SOCK
+fi
# vim stuff
-[[ -d "$XDG_CACHE_HOME/vim" ]] || mkdir -p "$XDG_CACHE_HOME/vim"
-export VIMINIT='let $MYVIMRC="$XDG_CONFIG_HOME/vim/vimrc" | source $MYVIMRC'
-export EDITOR=vim
-export VISUAL=vim
+[[ -d "$XDG_CACHE_HOME/vim/backup" ]] || mkdir -p "$XDG_CACHE_HOME"/vim/{backup,undo,view}
+export VIMINIT='let $MYVIMRC="$XDG_CONFIG_HOME/"..(has("nvim")?"nvim/init.lua":"vim/vimrc") | source $MYVIMRC'
+export EDITOR=nvim
+export VISUAL=nvim
# default browser
-export BROWSER=dwb
+export BROWSER=qutebrowser
+
+# mail
+export NOTMUCH_CONFIG="$XDG_CONFIG_HOME/notmuch"
+
+# less
+export LESSHISTFILE="$XDG_CACHE_HOME/lesshst"
+
+# urxvtd
+export RXVT_SOCKET="$XDG_RUNTIME_DIR/urxvtd-$HOST"
+
+# mpv & mplayer
+export MPV_HOME="$XDG_CONFIG_HOME/mpv"
+export MPLAYER_HOME="$XDG_CONFIG_HOME/mplayer"
+
+# pass
+export PASSWORD_STORE_DIR="$XDG_DATA_HOME/pass"
+
+# weechat
+export WEECHAT_HOME="$XDG_CONFIG_HOME/weechat"
+
+export XIDLEHOOK_SOCKET=$XDG_RUNTIME_DIR/xidlehook.socket
+
+case "$OSTYPE" in
+ linux*) export MAKEFLAGS="-j$(nproc --all --ignore=2)" ;;
+ darwin*) export MAKEFLAGS="-j$(($(sysctl -n hw.ncpu) - 2))" ;;
+ *) echo "Unknown OSTYPE: '$OSTYPE'"
+esac
+
+# aur
+export AUR_PAGER=ranger
+
+# cmake
+export CMAKE_EXPORT_COMPILE_COMMANDS=1
+export CTEST_OUTPUT_ON_FAILURE=1