From d982c0e0a632f1dc99908a68dfa7da957d340502 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luc=C3=ADa=20Andrea=20Illanes=20Albornoz?= Date: Mon, 20 Mar 2023 10:06:27 +0100 Subject: Default theme from etc/*.theme.host.. --- subr.ex/ex_init.subr | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'subr.ex/ex_init.subr') diff --git a/subr.ex/ex_init.subr b/subr.ex/ex_init.subr index fcabce07..5d1035ad 100644 --- a/subr.ex/ex_init.subr +++ b/subr.ex/ex_init.subr @@ -410,16 +410,25 @@ ex_init_prereqs() { # # ex_init_theme() - initialise theme # @_rstatus: reference to out variable of status string on failure +# @_hname: build hostname # @_name_base: base name for theme file(s) # @_theme: theme name # # Return: zero (0) on success, non-zero (>0) on failure # ex_init_theme() { - local _eit_rstatus="${1#\$}" _eit_name_base="${2}" _eit_theme="${3}" \ + local _eit_rstatus="${1#\$}" _eit_hname="${2}" _eit_name_base="${3}" _eit_theme="${4}" \ _eit_rc=0 _eit_theme_fname=""; - _eit_theme_fname="etc/${_eit_name_base}${_eit_theme:+.${_eit_theme}}.theme"; + if [ "${_eit_theme:+1}" = 1 ]; then + _eit_theme_fname="etc/${_eit_name_base}.${_eit_theme}.theme"; + else + _eit_theme_fname="etc/${_eit_name_base}.theme.host.${_eit_hname}"; + if ! [ -e "${_eit_theme_fname}" ]; then + _eit_theme_fname="etc/${_eit_name_base}.theme"; + fi; + fi; + if ! [ -e "${_eit_theme_fname}" ]; then _eit_rc=1; exp_setrstatus "${_eit_rstatus}" 'failed to source \`'"${_eit_theme_fname}"''\''.'; -- cgit v1.2.3