- Rewrite .bashrc as minimal loader (34 lines → loads .bashrc.d/*.sh)
- Clean .bash_profile: single source, Apple Silicon/Intel brew path
- Add .bashrc.d/ with 7 topic modules:
00_env.sh PS1, OSTYPE, colors, pyenv
10_aliases.sh universal aliases
20_functions.sh proxy, dbash, git helpers
30_work.sh work-host detection, LDAP, AWX, Juniper tools
(+ unified-hub-login with env-var creds)
40_k8s.sh kubectl completion + aliases
50_ai_env.sh WORKSPACE/DATA_ROOT/MODEL_ROOT paths
60_dotfiles.sh dotfiles manager aliases, zet shortcuts
- Secrets (SN_PASSWORD, LDAP bind PWs, Unified Hub token) moved
to ~/.bashrc.local (gitignored, written by setup script)
- Update .dotfiles_manifest to track .bashrc.d directory
35 lines
1.3 KiB
Bash
35 lines
1.3 KiB
Bash
# ~/.bashrc — Kenji's shell configuration loader
|
|
# Managed via dotfiles repo: http://172.27.0.35:3000/kenjim/dotfiles
|
|
#
|
|
# Structure:
|
|
# ~/.bashrc — this file: loader only (SHARED, tracked in dotfiles)
|
|
# ~/.bashrc.d/*.sh — modular configs by topic (SHARED, tracked in dotfiles)
|
|
# ~/.bashrc.local — machine secrets + profile overrides (NOT tracked)
|
|
# ~/.aliases — legacy aliases file (optional, NOT tracked)
|
|
#
|
|
# Machines:
|
|
# kenjim-mbp work Mac (MACHINE_PROFILE=work)
|
|
# kenjim-mbm personal Mac (MACHINE_PROFILE=personal)
|
|
# etqc-*, etbg-*, engtech-dev-* work servers (auto-detected by hostname)
|
|
# zet local Gitea server
|
|
# =============================================================================
|
|
|
|
# Source system-wide files first
|
|
[ -f /etc/profile ] && source /etc/profile
|
|
[ -f /etc/bashrc ] && source /etc/bashrc
|
|
|
|
# Load all modular configs (sorted: 00_ before 10_ etc.)
|
|
if [ -d ~/.bashrc.d ]; then
|
|
for _f in ~/.bashrc.d/*.sh; do
|
|
[ -r "$_f" ] && source "$_f"
|
|
done
|
|
unset _f
|
|
fi
|
|
|
|
# Machine-local overrides: MACHINE_PROFILE, CLOUD_ROOT, secrets
|
|
# This file is written by setup_enterprise_ai_bash.sh — never committed
|
|
[ -f ~/.bashrc.local ] && source ~/.bashrc.local
|
|
|
|
# Legacy aliases file (kept for compatibility)
|
|
[ -f ~/.aliases ] && source ~/.aliases
|