From e560c22d69cc0d528578374edd404711892a2e9b Mon Sep 17 00:00:00 2001 From: Martin Wimpress Date: Fri, 23 Jan 2026 22:52:44 +0000 Subject: [PATCH] fix(quickget): update Zorin OS download method and editions - Use direct mirror URL instead of unreliable shortlink redirects - Remove lite64 edition from Zorin 18 (now Pro-only) - Automatically detect latest revision for each version --- quickget | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/quickget b/quickget index 64e0b35..7016e5a 100755 --- a/quickget +++ b/quickget @@ -1165,7 +1165,12 @@ function releases_zorin() { } function editions_zorin() { - echo core64 lite64 education64 + # Lite edition not available for Zorin 18 (Pro-only starting from 18) + if [ "${RELEASE}" = "18" ]; then + echo core64 education64 + else + echo core64 lite64 education64 + fi } function check_hash() { @@ -2712,10 +2717,22 @@ function get_vxlinux() { function get_zorin() { local HASH="" local ISO="" - local URL="" - # Process the URL redirections; required for Zorin - URL=$(web_redirect "https://zrn.co/${RELEASE}${EDITION}") - echo "${URL} ${HASH}" + local URL="https://plug-mirror.rcac.purdue.edu/zorin-iso/${RELEASE}" + local EDITION_NAME="" + # Convert edition code to ISO naming + case ${EDITION} in + core64) EDITION_NAME="Core-64-bit";; + lite64) EDITION_NAME="Lite-64-bit";; + education64) EDITION_NAME="Education-64-bit";; + esac + # Find the latest revision (r2, r1, or base) + ISO=$(web_pipe "${URL}/" | grep -o "Zorin-OS-[0-9.]*-${EDITION_NAME}[^\"]*\.iso" | grep -v Beta | sort -Vr | head -n 1) + if [ -z "${ISO}" ]; then + echo "" + return + fi + HASH=$(web_pipe "${URL}/SHA256SUMS.txt" | grep "${ISO}" | cut -d' ' -f1) + echo "${URL}/${ISO} ${HASH}" } function unattended_windows() {