From a48c26daacd9ca25b4b5e88c9cea4bd4a2f79c8a Mon Sep 17 00:00:00 2001 From: Fini Jastrow Date: Thu, 3 Sep 2026 22:49:00 +0200 Subject: [PATCH] fc_install: Remove bash array usage To enable bash 3 use Signed-off-by: Fini Jastrow --- fc_install | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/fc_install b/fc_install index 6dc00e1f7..f0c1d0f17 100755 --- a/fc_install +++ b/fc_install @@ -115,23 +115,23 @@ EOF } cmd.install() { local font_name="${1-}" - local font_list=() local tmp_folder gh.release_data >/dev/null # Needed to fill 'cache' environment variable - IFS=$'\n' read -r -d '' -a font_list < <(nerd.font_list && printf '\0') + local font_list=$(nerd.font_list) if [ "${font_name}" = "all" ]; then - msg.info "install all ${#font_list[@]} fonts" + msg.info "install all $(sh.count ${font_list}) fonts" msg.warn "installing all fonts will take its time / time for a coffee break" elif [ "${font_name}" = "" ]; then PS3="Enter a number: " - select font_name in "${font_list[@]}" "all"; do + select font_name in ${font_list} "all"; do if [ "${font_name}" = "all" ]; then + msg.info "install all $(sh.count ${font_list}) fonts" msg.warn "installing all fonts will take its time / time for a coffee break" break - elif sh.in_array "${font_name}" "${font_list[@]}"; then - font_list=("${font_name}") + elif sh.in_array "${font_name}" ${font_list}; then + font_list="${font_name}" break else msg.err "invalid choice." @@ -139,16 +139,16 @@ cmd.install() { done msg.debug "user selected font ${font_name}" else - sh.in_array "${font_name}" "${font_list[@]}" || + sh.in_array "${font_name}" ${font_list} || sh.die.err 42 "font ${font_name} does not exists in release ${GH_RELEASE_TAG}" - font_list=("${font_name}") + font_list="${font_name}" fi msg.info "install fonts into folder: ${FONT_DIR}" tmp_folder="$(mktemp -d)" msg.debug "Workdir ${tmp_folder}" pushd "${tmp_folder}" &>/dev/null || sh.die.err 42 "can't cd ${tmp_folder}" - for font in "${font_list[@]}"; do + for font in ${font_list}; do nerd.install_font "${font}" done popd &>/dev/null @@ -427,6 +427,10 @@ sh.in_array() { return 1 } +sh.count() { + echo $# +} + scripts.requires() { local exit_val=0 while [ -n "${1-}" ]; do