From fe56081a516b91861fd595ea8652b8fd2e7d23fa Mon Sep 17 00:00:00 2001 From: bryan Date: Mon, 4 Nov 2024 14:42:27 -0500 Subject: [PATCH] Alias fuse-overlayfs and buildah on SUSE --- installJRMC | 41 +++++++++++++++++++++++++++-------------- 1 file changed, 27 insertions(+), 14 deletions(-) diff --git a/installJRMC b/installJRMC index faa2d0d..c1e3f60 100755 --- a/installJRMC +++ b/installJRMC @@ -435,7 +435,7 @@ install_package() { debug "Running: ${FUNCNAME[0]}" "$@" local -a pkg_array install_flags local -A pkg_aliases - local input pkg + local input pkg _pkg local no_install_check=0 allow_downgrades=0 silent=0 refresh=0 no_gpg_check=0 local long_opts="no-install-check,allow-downgrades,no-gpg-check,refresh,silent" @@ -458,25 +458,38 @@ install_package() { case $ID in debian|ubuntu) pkg_aliases=( - ["rpm-build"]="rpm" - ["createrepo_c"]="createrepo" - ["tigervnc-server"]="tigervnc-standalone-server" - ) - ;; + [rpm-build]="rpm" + [createrepo_c]="createrepo" + [tigervnc-server]="tigervnc-standalone-server" + ) ;; + suse) + pkg_aliases=( + [buildah]="buildah fuse-overlayfs" + ) ;; esac - # Filter out already installed packages + # Filter out already installed packages to create pkg_array for pkg in "$@"; do if [[ -v pkg_aliases[$pkg] ]]; then debug "Aliasing $pkg to ${pkg_aliases[$pkg]}" - pkg=${pkg_aliases[$pkg]} - fi - if ((no_install_check)) \ - || ! { command -v "$pkg" &>/dev/null \ - || "${PKG_QUERY[@]}" "$pkg" &>/dev/null; }; then - pkg_array+=("$pkg") + IFS=' ' read -ra pkgs <<< "${pkg_aliases[$pkg]}" + for _pkg in "${pkgs[@]}"; do + if ((no_install_check)) \ + || ! { command -v "$_pkg" &>/dev/null \ + || "${PKG_QUERY[@]}" "$_pkg" &>/dev/null; }; then + pkg_array+=("$_pkg") + else + debug "$_pkg already installed, skipping installation" + fi + done else - debug "$pkg already installed, skipping installation" + if ((no_install_check)) \ + || ! { command -v "$pkg" &>/dev/null \ + || "${PKG_QUERY[@]}" "$pkg" &>/dev/null; }; then + pkg_array+=("$pkg") + else + debug "$pkg already installed, skipping installation" + fi fi done