host=${$(hostname)//.*/}
# Load environmental related settings used by all shells.
-# If the default file exists, load it.
if [[ -f ~/.shell/env ]]; then
source ~/.shell/env
-fi
-# If an env file for the current hostname (first part before a dot) exists load
-# it, otherwise load env.local if available.
-if [[ -f ~/.shell/env.$host ]]; then
- source ~/.shell/env.$host
-elif [[ -f ~/.shell/env.local ]]; then
- source ~/.shell/env.local
+else
+ function source_config() {
+ echo "Couldn't load source_config(), can't source files." >&2
+ }
fi
+# Load global env file for current hostname (first part before a dot) or
+# global env.local.
+source_config ~/.shell "" env $host
-# If an env file for the current hostname (first part before a dot) exists load
-# it, otherwise load env.local if available.
-if [[ -f ~/.zsh/env.$host ]]; then;
- source ~/.zsh/env.$host
-elif [[ -f ~/.zsh/env.local ]]; then;
- source ~/.zsh/env.local
-fi
+# Load env file for current hostname (first part before a dot) or env.local.
+source_config ~/.zsh host env $host