fix: improve bashrc sourcing and zoxide initialization; add home-manager installation check
This commit is contained in:
parent
4125562f7a
commit
dc50b4bcd0
18
.bashrc
18
.bashrc
@ -89,18 +89,28 @@ fi
|
||||
eval "$(starship init bash)"
|
||||
|
||||
# Source nix home-manager
|
||||
. "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"
|
||||
if [ -f "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh" ]; then
|
||||
. "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"
|
||||
fi
|
||||
|
||||
# Source agent-bridge script for 1password
|
||||
source $HOME/dotfiles/bin/1password-agent-bridge.sh
|
||||
|
||||
# zoxide
|
||||
eval "$(zoxide init bash)"
|
||||
# zoxide if available
|
||||
if command -v zoxide &> /dev/null; then
|
||||
eval "$(zoxide init bash)"
|
||||
fi
|
||||
|
||||
# Check if we are running from zellij, if not then launch it
|
||||
if [ -z "$ZELLIJ" ]; then
|
||||
zellij
|
||||
exit $?
|
||||
|
||||
# Exit if zellij exits properly with a zero exit code
|
||||
if [ $? -eq 0 ]; then
|
||||
exit $?
|
||||
fi
|
||||
|
||||
echo "Zellij exited with a non-zero exit code, continuing..."
|
||||
return
|
||||
fi
|
||||
|
||||
|
@ -209,6 +209,18 @@ homemanager() {
|
||||
cd $HOME/dotfiles/config/home-manager && home-manager switch
|
||||
}
|
||||
|
||||
ensure_homemanager_installed() {
|
||||
if [ ! -x "$(command -v home-manager)" ]; then
|
||||
printfe "%s\n" "yellow" "Home Manager is not installed, installing it..."
|
||||
nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz home-manager
|
||||
nix-channel --update
|
||||
nix-shell '<home-manager>' -A install
|
||||
|
||||
printfe "%s\n" "yellow" "Home Manager installed, please run the script again."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
####################################################################################################
|
||||
# Parse arguments
|
||||
####################################################################################################
|
||||
@ -223,6 +235,7 @@ shift
|
||||
if [ "$#" -eq 0 ]; then
|
||||
printfe "%s\n" "yellow" "No options passed, running full update..."
|
||||
|
||||
ensure_homemanager_installed
|
||||
symlinks
|
||||
sys_packages
|
||||
homemanager
|
||||
|
Loading…
x
Reference in New Issue
Block a user