From f1114974c0cccf553b46cfe222481bc98dd90ed9 Mon Sep 17 00:00:00 2001 From: takov751 <40316768+takov751@users.noreply.github.com> Date: Mon, 25 Oct 2021 11:32:22 +0100 Subject: [PATCH 1/3] Added Kali support (#148) * Added Kali support * Support for Kali * remove link left in quickget * made changes to get latest release. * Added weekly iso as well * few typo and clearing up choosing release version * fixing readme about version --- README.md | 11 +++++++++++ quickget | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) diff --git a/README.md b/README.md index c45e3d3..d09f2d6 100644 --- a/README.md +++ b/README.md @@ -34,6 +34,7 @@ comprehensive support for macOS and Windows**. * [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/) * [FreeBSD](https://www.freebsd.org/) & [OpenBSD](https://www.openbsd.org/) + * [Kali](https://www.kali.org/) * Full SPICE support including host/guest clipboard sharing * VirtIO-webdavd file sharing for Linux and Windows guests * VirtIO-9p file sharing for Linux and macOS guests @@ -314,6 +315,16 @@ quickget freebsd 13_0 quickemu --vm freebsd-13_0.conf ``` +## Kali Guest + +`quickemu` supports Kali production releases. +While testing best performance shown with gtk display settings. + +```bash +quickget kali latest +quickemu --vm kali-latest.conf --display gtk +``` + # SPICE The following features are available while using the SPICE protocol: diff --git a/quickget b/quickget index 3bc3639..ebe8fd0 100755 --- a/quickget +++ b/quickget @@ -36,6 +36,7 @@ function pretty_name() { case ${SIMPLE_NAME} in elementary) PRETTY_NAME="elementary OS";; freebsd) PRETTY_NAME="FreeBSD";; + kali) PRETTY_NAME="Kali";; linuxmint-cinnamon) PRETTY_NAME="Linux Mint Cinnamon";; linuxmint-mate) PRETTY_NAME="Linux Mint MATE";; linuxmint-xfce) PRETTY_NAME="Linux Mint XFCE";; @@ -110,6 +111,7 @@ function os_support() { echo elementary \ freebsd \ fedora \ + kali \ kubuntu \ linuxmint-cinnamon \ linuxmint-mate \ @@ -143,6 +145,11 @@ function releases_fedora(){ 35_beta } +function releases_kali() { + echo latest \ + weekly +} + function releases_linuxmint(){ echo 20.2 } @@ -520,6 +527,9 @@ function make_vm_config() { elif [ "${OS}" == "fedora" ]; then GUEST="linux" IMAGE_TYPE="iso" + elif [[ "${OS}" == *"kali"* ]]; then + GUEST="linux" + IMAGE_TYPE="iso" elif [[ "${OS}" == *"linuxmint"* ]]; then GUEST="linux" IMAGE_TYPE="iso" @@ -622,6 +632,27 @@ function get_fedora() { make_vm_config "${ISO}" } +function get_kali() { + local HASH="" + local ISO="" + local URL="" + local SUBDIR="" + validate_release "releases_kali" + + if [[ "${RELEASE}" == "latest" ]]; then + SUBDIR="current" + else + SUBDIR="kali-weeekly" + fi + + ISO=$(wget -q -O- "https://cdimage.kali.org/${SUBDIR}/?C=M;O=D" |grep -o ">kali-linux-.*-installer-amd64.iso"|head -n 1|cut -c 2-) + HASH=$(wget -q -O- "https://cdimage.kali.org/${SUBDIR}/SHA256SUMS" | grep "${ISO}" | cut -d' ' -f1) + URL="https://cdimage.kali.org/${SUBDIR}/${ISO}" + web_get "${URL}" "${VM_PATH}" + check_hash "${ISO}" "${HASH}" + make_vm_config "${ISO}" +} + function get_linuxmint() { local FLAVOR="" local HASH="" @@ -900,6 +931,8 @@ if [ -n "${2}" ]; then get_freebsd elif [ "${OS}" == "fedora" ]; then get_fedora + elif [ "${OS}" == "kali" ]; then + get_kali elif [[ "${OS}" == *"linuxmint"* ]]; then get_linuxmint elif [ "${OS}" == "openbsd" ]; then @@ -951,6 +984,8 @@ else releases_freebsd elif [ "${OS}" == "fedora" ]; then releases_fedora + elif [ "${OS}" == "kali" ]; then + releases_kali elif [[ "${OS}" == *"linuxmint"* ]]; then releases_linuxmint elif [ "${OS}" == "opensuse" ]; then From 8602ba8e8549b2223ded356d551661a27e750763 Mon Sep 17 00:00:00 2001 From: fedx-sudo Date: Sun, 24 Oct 2021 15:20:46 -0600 Subject: [PATCH 2/3] add NixOS to quickget add NixOS to quickget add NixOS to quickget --- quickget | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/quickget b/quickget index ebe8fd0..1e316da 100755 --- a/quickget +++ b/quickget @@ -40,6 +40,9 @@ function pretty_name() { linuxmint-cinnamon) PRETTY_NAME="Linux Mint Cinnamon";; linuxmint-mate) PRETTY_NAME="Linux Mint MATE";; linuxmint-xfce) PRETTY_NAME="Linux Mint XFCE";; + nisos-gnome) PRETTY_NAME="NixOS Gnome";; + nixos-plasma5) PRETTY_NAME="NixOS KDE";; + nixos-minimal) PRETTY_NAME="Nixos Minimal";; macos) PRETTY_NAME="macOS";; openbsd) PRETTY_NAME="OpenBSD";; opensuse) PRETTY_NAME="openSUSE";; @@ -116,6 +119,9 @@ function os_support() { linuxmint-cinnamon \ linuxmint-mate \ linuxmint-xfce \ + nixos-gnome \ + nixos-plasma5 \ + nixos-minimal \ lubuntu \ macos \ openbsd \ @@ -154,6 +160,10 @@ function releases_linuxmint(){ echo 20.2 } +function releases_nixos(){ + echo 21.05 +} + function releases_openbsd(){ echo 7.0 } @@ -460,6 +470,7 @@ function web_get() { local DIR="${2}" local FILE="" local URL="${1}" + if [ -n "${3}" ]; then FILE="${3}" else @@ -533,6 +544,9 @@ function make_vm_config() { elif [[ "${OS}" == *"linuxmint"* ]]; then GUEST="linux" IMAGE_TYPE="iso" + elif [[ "${OS}" == *"nixos"* ]]; then + GUEST="linux" + IMAGE_TYPE="iso" elif [ "${OS}" == "openbsd" ]; then GUEST="openbsd" IMAGE_TYPE="iso" @@ -668,7 +682,21 @@ function get_linuxmint() { check_hash "${ISO}" "${HASH}" make_vm_config "${ISO}" } +function get_nixos() { + local FLAVOR="" + local HASH="" + local ISO="" + local URL="" + validate_release "releases_nixos" + FLAVOR=$(echo "${OS}" | cut -d'-' -f2) + ISO="latest-nixos-${FLAVOR}-x86_64-linux.iso" + URL="https://channels.nixos.org/nixos-${RELEASE}/${ISO}" + HASH=$(wget -q -O- "https://channels.nixos.org/nixos-${RELEASE}/${ISO}.sha256" | cut -d' ' -f1) + web_get "${URL}" "${VM_PATH}" + check_hash "${ISO}" "${HASH}" + make_vm_config "${ISO}" +} function get_openbsd() { local HASH="" local ISO="" @@ -935,6 +963,8 @@ if [ -n "${2}" ]; then get_kali elif [[ "${OS}" == *"linuxmint"* ]]; then get_linuxmint + elif [[ "${OS}" == *"nixos"* ]]; then + get_nixos elif [ "${OS}" == "openbsd" ]; then get_openbsd elif [ "${OS}" == "opensuse" ]; then @@ -988,6 +1018,8 @@ else releases_kali elif [[ "${OS}" == *"linuxmint"* ]]; then releases_linuxmint + elif [[ "${OS}" == *"nixos"* ]]; then + releases_nixos elif [ "${OS}" == "opensuse" ]; then releases_opensuse elif [ "${OS}" == "openbsd" ]; then From 6bfc80715d7bd6ded9a76717b008e63201c221ee Mon Sep 17 00:00:00 2001 From: fedx-sudo Date: Sun, 24 Oct 2021 15:27:17 -0600 Subject: [PATCH 3/3] update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index d09f2d6..43ffb16 100644 --- a/README.md +++ b/README.md @@ -166,6 +166,9 @@ preferred flavour. * `linuxmint-xfce` * `opensuse` * `popos` + * `NixOS-Gnome` + * `NixOS-KDE` + * `NixOS-minimal` Or you can download a Linux image and manually create a VM configuration.