187 lines
5.5 KiB
Bash
187 lines
5.5 KiB
Bash
#!/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
|