#!/bin/zsh # profile file. Runs on login. Environmental variables are set here. # Adds `~/.local/bin` to $PATH export PATH="$PATH:${$(find ~/.local/bin -type d -printf %p:)%%:}:$(yarn global bin):$HOME/.config/composer/vendor/bin" unsetopt PROMPT_SP # Default programs export EDITOR="nvim" export TERMINAL="alacritty" export BROWSER="firefox" export LOCATION="guildford" # ~/ Clean-up: export TOWER="$HOME/Tower" export XDG_CONFIG_HOME="$HOME/.config" export XDG_DATA_HOME="$HOME/.local/share" export XDG_CACHE_HOME="$HOME/.cache" export XDG_DOCUMENTS_DIR="$TOWER/Documents" export XDG_MUSIC_DIR="$TOWER/Music" export XDG_PICTURES_DIR="$TOWER/Pictures" export XDG_VIDEOS_DIR="$TOWER/Videos" export XINITRC="${XDG_CONFIG_HOME:-$HOME/.config}/x11/xinitrc" 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 GNUPGHOME="${XDG_CONFIG_HOME:-$HOME/.config}/gnupg" export WGETRC="${XDG_CONFIG_HOME:-$HOME/.config}/wget/wgetrc" export INPUTRC="${XDG_CONFIG_HOME:-$HOME/.config}/shell/inputrc" export ZDOTDIR="${XDG_CONFIG_HOME:-$HOME/.config}/zsh" 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 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 ANSIBLE_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/ansible/ansible.cfg" export UNISON="${XDG_DATA_HOME:-$HOME/.local/share}/unison" export HISTFILE="${XDG_DATA_HOME:-$HOME/.local/share}/history" export WEECHAT_HOME="${XDG_CONFIG_HOME:-$HOME/.config}/weechat" export MBSYNCRC="${XDG_CONFIG_HOME:-$HOME/.config}/mbsync/config" export ELECTRUMDIR="${XDG_DATA_HOME:-$HOME/.local/share}/electrum" export ANDROID_AVD_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/android/avd" export ANDROID_USER_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/android" export CODEX_HOME="${XDG_CONFIG_HOME:-$HOME/.config}/codex" export XCOMPOSEFILE="${XDG_CONFIG_HOME:-$HOME/.config}/xcompose" export GEMINI_CLI_HOME="${XDG_CONFIG_HOME:-$HOME/.config}" # Export OPENAI_API_KEY from GitHub Copilot config # if [ -f "$HOME/.config/github-copilot/apps.json" ]; then # export OPENAI_API_KEY="$( # jq -r 'to_entries[0].value.oauth_token' "$HOME/.config/github-copilot/apps.json" 2>/dev/null # )" # fi # Other program settings export TRY_PATH="$HOME/Tries" export DICS="/usr/share/stardicts/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' '\e[1;31m')" export LESS_TERMCAP_md="$(printf '%b' '\e[1;36m')" export LESS_TERMCAP_me="$(printf '%b' '\e[0m')" export LESS_TERMCAP_so="$(printf '%b' '\e[01;44;33m')" export LESS_TERMCAP_se="$(printf '%b' '\e[0m')" export LESS_TERMCAP_us="$(printf '%b' '\e[1;32m')" export LESS_TERMCAP_ue="$(printf '%b' '\e[0m')" export LESS_OPEN="| /usr/bin/highlight -O ansi %s 2>/dev/null" export QT_QPA_PLATFORMTHEME="gtk2" # Have QT use gtk2 theme. # export QT_AUTO_SCREEN_SCALE_FACTOR=1 # export QT_SCREEN_SCALE_FACTORS=2 export MOZ_USE_XINPUT2="1" # Mozilla smooth scrolling/touchpads. export _JAVA_AWT_WM_NONREPARENTING=1 # Fix for Java applications in dwm # Development variables export ANDROID_SDK_ROOT="$HOME/.local/share/android/Sdk" export ANDROID_HOME="$ANDROID_SDK_ROOT" export GRADLE_USER_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/gradle" export PATH="$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/cmdline-tools/bin:$ANDROID_HOME/platform-tools:$ANDROID_AVD_HOME:$ANDROID_HOME/emulator:$XDG_DATA_HOME/cargo/bin" export PATH="$HOME/development/flutter/bin:$PATH" # Get pretty colours for ls #. /usr/share/LS_COLORS/dircolors.sh export GREP_COLORS='ms=01;32:se=39' # This is the list for lf icons: export LF_ICONS="di=📁:\ fi=📃:\ tw=🤝:\ ow=📂:\ ln=⛓:\ or=❌:\ ex=🎯:\ *.txt=✍:\ *.mom=✍:\ *.me=✍:\ *.ms=✍:\ *.png=🖼:\ *.webp=🖼:\ *.ico=🖼:\ *.jpg=📸:\ *.jpe=📸:\ *.jpeg=📸:\ *.gif=🖼:\ *.svg=🗺:\ *.tif=🖼:\ *.tiff=🖼:\ *.xcf=🖌:\ *.html=🌎:\ *.xml=📰:\ *.gpg=🔒:\ *.css=🎨:\ *.pdf=📚:\ *.djvu=📚:\ *.epub=📚:\ *.csv=📓:\ *.xlsx=📓:\ *.tex=📜:\ *.md=📘:\ *.r=📊:\ *.R=📊:\ *.rmd=📊:\ *.Rmd=📊:\ *.m=📊:\ *.mp3=🎵:\ *.opus=🎵:\ *.ogg=🎵:\ *.m4a=🎵:\ *.flac=🎼:\ *.wav=🎼:\ *.mkv=🎥:\ *.mp4=🎥:\ *.webm=🎥:\ *.mpeg=🎥:\ *.avi=🎥:\ *.mov=🎥:\ *.mpg=🎥:\ *.wmv=🎥:\ *.m4b=🎥:\ *.flv=🎥:\ *.zip=📦:\ *.rar=📦:\ *.7z=📦:\ *.tar.gz=📦:\ *.z64=🎮:\ *.v64=🎮:\ *.n64=🎮:\ *.gba=🎮:\ *.nes=🎮:\ *.gdi=🎮:\ *.1=ℹ:\ *.nfo=ℹ:\ *.info=ℹ:\ *.log=📙:\ *.iso=📀:\ *.img=📀:\ *.bib=🎓:\ *.ged=👪:\ *.part=💔:\ *.torrent=🔽:\ *.jar=♨:\ *.java=♨:\ " [ ! -f ${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc ] && shortcuts >/dev/null 2>&1 & #[ "$XDG_CURRENT_DESKTOP" = "KDE" ] || [ "$XDG_CURRENT_DESKTOP" = "GNOME" ] || export QT_QPA_PLATFORMTHEME="qt5ct" #[ "$(tty)" = "/dev/tty1" ] && ! pidof -s Xorg >/dev/null 2>&1 && exec startx "$XINITRC" export NVM_DIR="$HOME/.config/nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion env_file="$HOME/.config/shell/.env" if [ -f "$env_file" ]; then set -a source "$env_file" set +a fi