From 0a619985afebeb9119b85fceef49cbfb6156c7ed Mon Sep 17 00:00:00 2001 From: Phil Clifford Date: Sun, 7 Nov 2021 23:18:29 +0000 Subject: [PATCH] Added support for Zorin OS (#185) * Zorin support added to Quickget * Added Zorin Educational releases * Update README * tidy up * Found stupid bug so zorin should be a linux now * get sizing for zorin educational large enough to install (#2) * get sizing for zorin educational large enough to install --- README.md | 3 ++- quickget | 38 +++++++++++++++++++++++++++++++++++++- 2 files changed, 39 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 98199e9..aadae3a 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ comprehensive support for macOS and Windows**. * [Ubuntu](https://ubuntu.com/desktop) and all the **[official Ubuntu flavours](https://ubuntu.com/download/flavours)** * [Fedora](https://getfedora.org/) & openSUSE ([Leap](https://get.opensuse.org/leap/), [Tumbleweed](https://get.opensuse.org/tumbleweed/), [MicroOS](https://microos.opensuse.org/)) * [Linux Mint](https://linuxmint.com/) (Cinnamon, MATE, and XFCE), [elementary OS](https://elementary.io/), [Pop!_OS](https://pop.system76.com/) - * [Arch Linux](https://www.archlinux.org/), [Kali](https://www.kali.org/) & [NixOS](https://nixos.org/) + * [Arch Linux](https://www.archlinux.org/), [Kali](https://www.kali.org/), [ZorinOS](https://zorin.com/os/) & [NixOS](https://nixos.org/) * [FreeBSD](https://www.freebsd.org/) & [OpenBSD](https://www.openbsd.org/) * Full SPICE support including host/guest clipboard sharing * VirtIO-webdavd file sharing for Linux and Windows guests @@ -180,6 +180,7 @@ preferred flavour. * `nixos-gnome` * `nixos-plasma5` * `nixos-minimal` + * `zorin` Or you can download a Linux image and manually create a VM configuration. diff --git a/quickget b/quickget index 3a776b1..6e2746e 100755 --- a/quickget +++ b/quickget @@ -53,6 +53,7 @@ function pretty_name() { ubuntu-kylin) PRETTY_NAME="Ubuntu Kylin";; ubuntu-mate) PRETTY_NAME="Ubuntu MATE";; ubuntu-studio) PRETTY_NAME="Ubuntu Studio";; + zorin) PRETTY_NAME="Zorin OS";; *) PRETTY_NAME="${SIMPLE_NAME^}";; esac echo "${PRETTY_NAME}" @@ -151,7 +152,8 @@ function os_support() { ubuntu-mate \ ubuntu-studio \ windows \ - xubuntu + xubuntu \ + zorin } function releases_android() { @@ -288,6 +290,15 @@ function releases_windows() { 11 } +function releases_zorin() { + echo 16core64 \ + 15lite64 \ + 15lite32 \ + 15education64 \ + 15edulite64 \ + 15edulite32 +} + function unattended_windows() { cat << 'EOF' > "${1}" @@ -615,6 +626,9 @@ function make_vm_config() { elif [ "${OS}" == "windows" ]; then GUEST="windows" IMAGE_TYPE="iso" + elif [ "${OS}" == "zorin" ]; then + GUEST="linux" + IMAGE_TYPE="iso" fi if [ ! -e "${OS}-${RELEASE}.conf" ]; then @@ -635,6 +649,12 @@ EOF if [ "${OS}" == "macos" ]; then echo "macos_release=\"${RELEASE}\"" >> "${OS}-${RELEASE}.conf" fi + if [ "${OS}" == "zorin" ]; then + case ${RELEASE} in + 15education64|15edulite64|15edulite32) + echo "disk_size=\"32G\"" >> "${OS}-${RELEASE}.conf";; + esac + fi # Enable TPM for Windows 11 if [ "${OS}" == "windows" ] && [ "${RELEASE}" -ge 11 ]; then @@ -816,6 +836,18 @@ function get_openbsd() { make_vm_config "${ISO}" } +function get_zorin() { + local ISO="" + local URL="" + + validate_release "releases_zorin" + # their redirector returns an href so we need to get that and parse out the iso + URL=$(curl -s https://zrn.co/${RELEASE} |cut -d\" -f2) + ISO=$(echo ${URL}| awk -F\/ ' {print $NF}') + web_get "${URL}" "${VM_PATH}" + make_vm_config "${ISO}" +} + function get_rocky() { local HASH="" local ISO="" @@ -1165,6 +1197,8 @@ if [ -n "${2}" ]; then LANG_NAME="English International" fi get_windows "${LANG_NAME}" + elif [ "${OS}" == "zorin" ]; then + get_zorin else echo "ERROR! ${OS} is unknown:" os_support @@ -1198,6 +1232,8 @@ else releases_ubuntu elif [ "${OS}" == "windows" ]; then releases_windows + elif [ "${OS}" == "zorin" ]; then + releases_zorin else echo "${OS} is unknown" os_support