From f93a7249a8ff280719c2aec71c57723eba76cc7e Mon Sep 17 00:00:00 2001 From: Martin Wimpress Date: Mon, 21 Feb 2022 05:08:33 +0000 Subject: [PATCH] Refactor Linux Mint support Cinnamon is the default download. MATE and XFCE can be selected as editions. --- quickget | 42 +++++++++++++++++++++++++++++------------- 1 file changed, 29 insertions(+), 13 deletions(-) diff --git a/quickget b/quickget index df190be..ef11803 100755 --- a/quickget +++ b/quickget @@ -46,9 +46,7 @@ function pretty_name() { garuda) PRETTY_NAME="Garuda Linux";; kdeneon) PRETTY_NAME="KDE Neon";; kolibrios) PRETTY_NAME="KolibriOS";; - linuxmint-cinnamon) PRETTY_NAME="Linux Mint Cinnamon";; - linuxmint-mate) PRETTY_NAME="Linux Mint MATE";; - linuxmint-xfce) PRETTY_NAME="Linux Mint XFCE";; + linuxmint) PRETTY_NAME="Linux Mint";; mxlinux) PRETTY_NAME="MX Linux";; nixos) PRETTY_NAME="NixOS";; macos) PRETTY_NAME="macOS";; @@ -114,8 +112,6 @@ function list_csv() { DISPLAY_NAME="$(pretty_name "${OS}")" if [[ "${OS}" == *"ubuntu"* ]]; then FUNC="ubuntu" - elif [[ "${OS}" == *"linuxmint"* ]]; then - FUNC="linuxmint" else FUNC="${OS}" fi @@ -141,6 +137,10 @@ function list_csv() { for OPTION in cinnamon gnome kde lxde lxqt mate standard xfce; do echo "${DISPLAY_NAME},${OS},${RELEASE},${OPTION},${DOWNLOADER},${PNG},${SVG}" done + elif [ "${OS}" == "linuxmint" ]; then + for OPTION in cinnamon mate xfce; do + echo "${DISPLAY_NAME},${OS},${RELEASE},${OPTION},${DOWNLOADER},${PNG},${SVG}" + done elif [ "${OS}" == "mxlinux" ]; then for OPTION in xfce kde fluxbox; do echo "${DISPLAY_NAME},${OS},${RELEASE},${OPTION},${DOWNLOADER},${PNG},${SVG}" @@ -180,9 +180,7 @@ function os_support() { kdeneon \ kolibrios \ kubuntu \ - linuxmint-cinnamon \ - linuxmint-mate \ - linuxmint-xfce \ + linuxmint \ manjaro \ mxlinux \ nixos \ @@ -956,15 +954,19 @@ function get_kolibrios() { } function get_linuxmint() { - local FLAVOR="" + local DESKTOP="cinnamon" local HASH="" local ISO="" local URL="" + if [ -n "${1}" ]; then + DESKTOP="${1}" + fi + validate_release "releases_linuxmint" FLAVOR=$(echo "${OS}" | cut -d'-' -f2) URL="https://mirror.bytemark.co.uk/linuxmint/stable/${RELEASE}" - ISO="linuxmint-${RELEASE}-${FLAVOR}-64bit.iso" + ISO="linuxmint-${RELEASE}-${DESKTOP}-64bit.iso" HASH=$(wget -q -O- "${URL}/${RELEASE}/sha256sum.txt" | grep "${ISO}" | cut -d' ' -f1) web_get "${URL}/${ISO}" "${VM_PATH}" check_hash "${ISO}" "${HASH}" @@ -1902,8 +1904,22 @@ if [ -n "${2}" ]; then get_kdeneon elif [ "${OS}" == "kolibrios" ]; then get_kolibrios - elif [[ "${OS}" == *"linuxmint-"* ]]; then - get_linuxmint + elif [ "${OS}" == "linuxmint" ]; then + if [ -n "${3}" ]; then + DESKTOP="${3}" + DESKTOPS=(cinnamon mate xfce) + if [[ ! ${DESKTOPS[*]} =~ ${DESKTOP} ]]; then + echo "ERROR! ${DESKTOP} is not a supported Desktop Environment:" + for DESKTOP in "${DESKTOPS[@]}"; do + echo "${DESKTOP}" + done + exit 1 + fi + else + DESKTOP="cinnamon" + fi + VM_PATH="${OS}-${RELEASE}-${DESKTOP}" + get_linuxmint ${DESKTOP} elif [ "${OS}" == "manjaro" ]; then get_manjaro elif [ "${OS}" == "mxlinux" ]; then @@ -2027,7 +2043,7 @@ else releases_kali elif [ "${OS}" == "kolibrios" ]; then releases_kolibrios - elif [[ "${OS}" == *"linuxmint-"* ]]; then + elif [ "${OS}" == "linuxmint" ]; then releases_linuxmint elif [ "${OS}" == "manjaro" ]; then releases_manjaro