From e1c6ea711a323dd49b619890ae9dc79ac7897023 Mon Sep 17 00:00:00 2001 From: Buddy Sandidge Date: Wed, 3 Nov 2021 11:05:23 -0700 Subject: [PATCH] Import profile from bashrc if profile has not been loaded On Debian 11, opening a terminal with bash will run a bashrc file without the profile. The bashrc expects profile to be loaded, so it will load the profile. To avoid circular imports, .profile will set __PROFILE_LOADED__ and the bashrc file will load the .profile if that variable has not been set. After that check, bashrc will unset __PROFILE_LOADED__ as cleanup --- base/.bashrc | 6 ++++++ base/.profile | 2 ++ 2 files changed, 8 insertions(+) diff --git a/base/.bashrc b/base/.bashrc index 883e071..901ca16 100644 --- a/base/.bashrc +++ b/base/.bashrc @@ -2,6 +2,12 @@ # If not running interactively, don't do anything [ -z "$PS1" ] && return +if [[ ! $__PROFILE_LOADED__ ]]; then + . "${HOME}/.profile" +fi + +unset __PROFILE_LOADED__ + if [[ -f "${XDG_CONFIG_HOME}/bash/prompt.sh" ]]; then # shellcheck disable=SC1090 source "${XDG_CONFIG_HOME}/bash/prompt.sh" diff --git a/base/.profile b/base/.profile index f1d7d72..3433280 100644 --- a/base/.profile +++ b/base/.profile @@ -51,6 +51,8 @@ fi unset env_file +export __PROFILE_LOADED__=true + if [ -d "${XDG_CONFIG_HOME}/profile/profile.d" ]; then for file in "${XDG_CONFIG_HOME}"/profile/profile.d/*.sh; do if [ -r "$file" ]; then