# vim: ft=sh # GUI themes export GTK_THEME="Gruvbox" export ICON_THEME="Gruvbox" export CURSOR_THEME="FlatbedCursors-White" export PROFILE_NAME="Oled" export QT_QPA_PLATFORMTHEME="qt5ct" export QT_QPA_PLATFORM="wayland-egl;wayland;xcb" export GDK_BACKEND="wayland" export DCONF=".config/dconf/user" # Setup editor export EDITOR="nvim" # If not running interactively, don't do anything case $- in *i*) ;; *) return;; esac # agetty is set to automatically log me in on tty1 # Automatically launch GUI on tty1 after login if [ "$(tty)" == '/dev/tty1' ] && [ ! "$SSH_TTY" ]; then . "${HOME}/.dotfiles/bash/bash_login" LAST_GUI=$(cat "${HOME}/.spool/last_login_gui" 2>/dev/null) if [ -f "${HOME}/.spool/last_login_gui" ]; then ${HOME}/scripts/${LAST_GUI}/start${LAST_GUI}.sh fi fi # don't put duplicate lines or lines starting with space in the history. shopt -s histappend HISTCONTROL=ignoreboth HISTFILE=${HOME}/.spool/bash_history # append to the history file, don't overwrite it # for setting history length see HISTSIZE and HISTFILESIZE in bash(1) HISTSIZE=500000 HISTFILESIZE=1000000 # check the window size after each command and, if necessary, # update the values of LINES and COLUMNS. shopt -s checkwinsize # enable programmable completion features if ! shopt -oq posix; then if [ -f /usr/share/bash-completion/bash_completion ]; then . /usr/share/bash-completion/bash_completion elif [ -f /etc/bash_completion ]; then . /etc/bash_completion fi fi if [[ -z $TERM_TITLE ]]; then TERM_TITLE="$TERM"; fi # Set window title to last command function last_command { local h="$(history 1)"; echo "${h##*([[:space:])+([[:digit:]])+([[:space:]])}" } PS0='\[\e]0;$(last_command) - $TERM_TITLE\a\]' # Update prompt PROMPT_COMMAND="source ${HOME}/.dotfiles/bash/prompt.sh" # Bell when prompt is returned to mark as urgent PROMPT_COMMAND="$PROMPT_COMMAND;printf \"\a\"; history -a" # Enable color support if possible if [ -x /usr/bin/dircolors ]; then test -r ${HOME}/.dircolors && eval "$(dircolors -b ${HOME}/.dircolors)" || eval "$(dircolors -b)" alias ls='ls --color=auto' alias dir='dir --color=auto' alias vdir='vdir --color=auto' alias grep='grep --color=auto' alias fgrep='fgrep --color=auto' alias egrep='egrep --color=auto' export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' fi # Load aliases if [ -f ${HOME}/.dotfiles/bash/bash_aliases ]; then . "${HOME}/.dotfiles/bash/bash_aliases" fi # Perl configs PERL5LIB="${HOME}/perl5/lib/perl5/x86_64-linux-gnu-thread-multi:${HOME}/.local/usr/local/lib/perl5/5.38.0:${HOME}/perl5/lib/perl5:${HOME}/perl5/lib/perl5/x86_64-linux-thread-multi:${PERL5LIB}"; export PERL5LIB; PERL_LOCAL_LIB_ROOT="/var/home/jpm/.local/usr/local/lib/perl5/5.38.0:${HOME}/perl5/lib/perl5:${HOME}/perl5/lib/perl5/x86_64-linux-thread-multi:${PERL_LOCAL_LIB_ROOT}"; export PERL_LOCAL_LIB_ROOT; #PERL_LIB="/var/home/jpm/.local/usr/local/lib/perl5/5.38.0"; export PERL_LIB; PERL_LIB="/usr/local/lib/perl"; export PERL_LIB; PERL_MB_OPT="--install_base \"${HOME}/perl5\""; export PERL_MB_OPT; PERL_MM_OPT="INSTALL_BASE=${HOME}/perl5"; export PERL_MM_OPT; # Android configs JDK_HOME=/etc/java STUDIO_JDK=/usr/lib/jvm/jre-openjdk # Configure PATH source "$HOME/.dotfiles/bash/path" export LANG="C.UTF-8" export LC_ALL="C.UTF-8" export LC_CTYPE="C.UTF-8" export LANGUAGE="en_US:en" # terminal type export TERM="xterm" # Set initial title echo -e -n "\033]2;Welcome to Bash\007" if [ -f "/run/.containerenv" ]; then source "$HOME/.dotfiles/bash/bashrc.distrobox" else source "$HOME/.dotfiles/bash/bashrc.host" fi source "$HOME/.cargo/env" source ~/perl5/perlbrew/etc/bashrc . "$HOME/.cargo/env" if [[ -n "$(which fastfetch 2> /dev/null)" ]]; then if [ -n $DISTROBOX ] && [ -e ${HOME}/.dotfiles/fastfetch/${DISTROBOX}.jsonc ]; then fastfetch -C ${HOME}/.dotfiles/fastfetch/${DISTROBOX}.jsonc else fastfetch -C ${HOME}/.dotfiles/fastfetch/config.jsonc fi fi