waiting for upstream merge
https://github.com/quickemu-project/quickemu/pull/885
This commit is contained in:
parent
43d1d2b907
commit
3d7f452481
12
quickemu
12
quickemu
|
@ -1388,6 +1388,13 @@ function sound_card_param_check() {
|
|||
fi
|
||||
}
|
||||
|
||||
function sound_card_param_check() {
|
||||
if [ "${SOUND_CARD}" != "intel-hda" ] && [ "${SOUND_CARD}" != "ac97" ] && [ "${SOUND_CARD}" != "es1370" ] && [ "${SOUND_CARD}" != "sb16" ] && [ "${SOUND_CARD}" != "none" ]; then
|
||||
echo "ERROR! Requested sound card '${SOUND_CARD}' is not recognised."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
function viewer_param_check() {
|
||||
if [ "${VIEWER}" != "none" ] && [ "${VIEWER}" != "spicy" ] && [ "${VIEWER}" != "remote-viewer" ]; then
|
||||
echo "ERROR! Requested viewer '${VIEWER}' is not recognised."
|
||||
|
@ -1736,7 +1743,10 @@ if [ -n "${VM}" ] && [ -e "${VM}" ]; then
|
|||
VMPATH=$(realpath "$(dirname "${VM}")")
|
||||
VM_MONITOR_SOCKETPATH="${VMDIR}/${VMNAME}-monitor.socket"
|
||||
VM_SERIAL_SOCKETPATH="${VMDIR}/${VMNAME}-serial.socket"
|
||||
|
||||
if [ ! -f "${disk_img}" ]; then
|
||||
cd "${VMPATH}"
|
||||
fi
|
||||
|
||||
# Backwards compatibility for ${driver_iso}
|
||||
if [ -n "${driver_iso}" ] && [ -z "${fixed_iso}" ]; then
|
||||
fixed_iso="${driver_iso}"
|
||||
|
|
124
quickget
124
quickget
|
@ -5,7 +5,7 @@ export LC_ALL=C
|
|||
#
|
||||
# 1. Update os_support() - add new OS, all lowercase
|
||||
# 2. Update pretty_name() - add a pretty name for new OS *only if the catch all is not suitable*
|
||||
# 3. Update os_homepages() - add a homepage for new OS
|
||||
# 3. Update os_homepage() - add a homepage for new OS
|
||||
# 4. Create a releases_newos() generator (required) outputs the current supported release versions
|
||||
# 5. Create a editions_newos() generator (optional) outputs the editions if new OS has multiple flavours/editions
|
||||
# 6. Update make_vm_config() - add any *required* new OS tweaks
|
||||
|
@ -51,6 +51,15 @@ elif [ "${1}" == '--open-distro-homepage' ] || [ "${1}" == '-o' ]; then
|
|||
elif [ "${1}" == '--show-distro-homepage' ] || [ "${1}" == '-s' ]; then
|
||||
show_distro_homepage="on"
|
||||
set -- "$2"
|
||||
elif [ "${1}" == '--download-iso' ] || [ "${1}" == '-d' ]; then
|
||||
download_iso="on"
|
||||
if [ -n "$4" ]; then
|
||||
set -- "$2" "$3" "$4"
|
||||
elif [ -n "$3" ]; then
|
||||
set -- "$2" "$3"
|
||||
else
|
||||
set -- "$2"
|
||||
fi
|
||||
fi
|
||||
|
||||
function pretty_name() {
|
||||
|
@ -328,7 +337,7 @@ function os_support() {
|
|||
zorin
|
||||
}
|
||||
|
||||
function os_homepages(){
|
||||
function os_homepage(){
|
||||
local SIMPLE_NAME=""
|
||||
local HOMEPAGE=""
|
||||
SIMPLE_NAME="${1}"
|
||||
|
@ -351,7 +360,7 @@ function os_homepages(){
|
|||
bunsenlabs) HOMEPAGE="https://www.bunsenlabs.org/";;
|
||||
cachyos) HOMEPAGE="https://cachyos.org/";;
|
||||
centos-stream) HOMEPAGE="https://www.centos.org/centos-stream/";;
|
||||
cereues) HOMEPAGE="https://sourceforge.net/projects/cereus-linux/";;
|
||||
cereues) HOMEPAGE="https://cereus-linux.sourceforge.io/";;
|
||||
chimeralinux) HOMEPAGE="https://chimera-linux.org/";;
|
||||
crunchbang++) HOMEPAGE="https://www.crunchbangplusplus.org/";;
|
||||
debian) HOMEPAGE="https://www.debian.org/";;
|
||||
|
@ -381,6 +390,7 @@ function os_homepages(){
|
|||
linuxlite) HOMEPAGE="https://www.linuxliteos.com/";;
|
||||
linuxmint) HOMEPAGE="https://linuxmint.com/";;
|
||||
lmde) HOMEPAGE="https://www.linuxmint.com/download_lmde.php";;
|
||||
lubuntu) HOMEPAGE="https://lubuntu.me/";;
|
||||
mageia) HOMEPAGE="https://www.mageia.org/";;
|
||||
manjaro) HOMEPAGE="https://manjaro.org/";;
|
||||
mxlinux) HOMEPAGE="https://mxlinux.org/";;
|
||||
|
@ -389,7 +399,6 @@ function os_homepages(){
|
|||
netbsd) HOMEPAGE="https://www.netbsd.org/";;
|
||||
nitrux) HOMEPAGE="https://nxos.org/";;
|
||||
nixos) HOMEPAGE="https://nixos.org/";;
|
||||
lubuntu) HOMEPAGE="https://lubuntu.me/";;
|
||||
macos) HOMEPAGE="https://www.apple.com/macos/";;
|
||||
openbsd) HOMEPAGE="https://www.openbsd.org/";;
|
||||
openindiana) HOMEPAGE="https://www.openindiana.org/";;
|
||||
|
@ -592,11 +601,11 @@ function editions_android() {
|
|||
}
|
||||
|
||||
function releases_antix() {
|
||||
echo 21 22 23
|
||||
echo 21 22 23
|
||||
}
|
||||
|
||||
function editions_antix() {
|
||||
echo net-sysv core-sysv base-sysv full-sysv net-runit core-runit base-runit full-runit
|
||||
echo net-sysv core-sysv base-sysv full-sysv net-runit core-runit base-runit full-runit
|
||||
}
|
||||
|
||||
function releases_archlinux() {
|
||||
|
@ -799,7 +808,7 @@ function releases_kolibrios() {
|
|||
}
|
||||
|
||||
function releases_linuxlite() {
|
||||
echo 6.0 6.2 6.4 6.6
|
||||
echo 6.0 6.2 6.4 6.6
|
||||
}
|
||||
|
||||
function releases_linuxmint(){
|
||||
|
@ -961,12 +970,21 @@ function editions_solus() {
|
|||
echo Budgie GNOME MATE Plasma
|
||||
}
|
||||
|
||||
function releases_sparkylinux() {
|
||||
local SPARKY_RELEASES=$(wget -qO- "https://sourceforge.net/projects/sparkylinux/rss?path=/" | grep 'link' | grep '.iso' | cut -d'-' -f2 | uniq | tr '\r\n' ' ')
|
||||
echo "${SPARKY_RELEASES}"
|
||||
}
|
||||
|
||||
function editions_sparkylinux() {
|
||||
echo lxqt mate xfce kde minimalgui minimalcli gameover multimedia rescue
|
||||
}
|
||||
|
||||
function releases_spiral() {
|
||||
echo latest
|
||||
echo latest
|
||||
}
|
||||
|
||||
function editions_spiral() {
|
||||
echo Plasma XFCE Mate LXQt Gnome Budgie Cinnamon Builder
|
||||
echo Plasma XFCE Mate LXQt Gnome Budgie Cinnamon Builder
|
||||
}
|
||||
|
||||
function releases_tails() {
|
||||
|
@ -1094,7 +1112,11 @@ function check_hash() {
|
|||
local iso=""
|
||||
local hash=""
|
||||
local hash_algo=""
|
||||
iso="${VM_PATH}/${1}"
|
||||
if [ "${download_iso}" == "on" ]; then
|
||||
iso="${1}"
|
||||
else
|
||||
iso="${VM_PATH}/${1}"
|
||||
fi
|
||||
hash="${2}"
|
||||
|
||||
# Guess the hash algorithm by the hash length
|
||||
|
@ -1128,16 +1150,18 @@ function web_get() {
|
|||
FILE="${URL##*/}"
|
||||
fi
|
||||
|
||||
# Test mode for ISO
|
||||
if [ "${show_iso_url}" == 'on' ]; then
|
||||
echo "${URL}"
|
||||
exit 0
|
||||
# Test mode for ISO
|
||||
if [ "${show_iso_url}" == 'on' ]; then
|
||||
echo "${URL}"
|
||||
exit 0
|
||||
elif [ "${test_iso_url}" == 'on' ]; then
|
||||
wget --spider "${URL}"
|
||||
exit 0
|
||||
wget --spider "${URL}"
|
||||
exit 0
|
||||
elif [ "${download_iso}" == 'on' ]; then
|
||||
DIR="$(pwd)"
|
||||
fi
|
||||
|
||||
if ! mkdir -p "${DIR}" 2>/dev/null; then
|
||||
if [ "${DIR}" != "$(pwd)" ] && ! mkdir -p "${DIR}" 2>/dev/null; then
|
||||
echo "ERROR! Unable to create directory ${DIR}"
|
||||
exit 1
|
||||
fi
|
||||
|
@ -1161,13 +1185,13 @@ function zsync_get() {
|
|||
local OUT=""
|
||||
local URL="${1}"
|
||||
|
||||
# Test mode for ISO
|
||||
if [ "${show_iso_url}" == 'on' ]; then
|
||||
echo "${URL}"
|
||||
exit 0
|
||||
# Test mode for ISO
|
||||
if [ "${show_iso_url}" == 'on' ]; then
|
||||
echo "${URL}"
|
||||
exit 0
|
||||
elif [ "${test_iso_url}" == 'on' ]; then
|
||||
wget --spider "${URL}"
|
||||
exit 0
|
||||
wget --spider "${URL}"
|
||||
exit 0
|
||||
elif command -v zsync &>/dev/null; then
|
||||
if [ -n "${3}" ]; then
|
||||
OUT="${3}"
|
||||
|
@ -1207,6 +1231,10 @@ function make_vm_config() {
|
|||
local GUEST=""
|
||||
local SEC_BOOT=""
|
||||
|
||||
if [ "${download_iso}" == "on" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
IMAGE_FILE="${1}"
|
||||
ISO_FILE="${2}"
|
||||
case "${OS}" in
|
||||
|
@ -2587,14 +2615,31 @@ function get_solus() {
|
|||
echo "${URL}/${ISO} ${HASH}"
|
||||
}
|
||||
|
||||
function get_spiral() {
|
||||
local EDITION="${1:-}"
|
||||
local HASH=""
|
||||
local ISO="SpiralLinux_${EDITION}_12.231005_x86-64.iso"
|
||||
local URL="https://sourceforge.net/projects/spirallinux/files/12.231005"
|
||||
function get_sparkylinux() {
|
||||
local EDITION="${1:-}"
|
||||
local HASH=""
|
||||
local ISO=""
|
||||
local URL=""
|
||||
|
||||
HASH=$(wget -q -O- 'https://sourceforge.net/projects/spirallinux/rss?path=/' | grep "${ISO}" | grep 'md5' | cut -d'<' -f3 | cut -d'>' -f2)
|
||||
echo "${URL}/${ISO}" "${HASH}"
|
||||
ISO="sparkylinux-${RELEASE}-x86_64-${EDITION}.iso"
|
||||
case ${EDITION} in
|
||||
minimalcli) URL="https://sourceforge.net/projects/sparkylinux/files/cli";;
|
||||
minimalgui) URL="https://sourceforge.net/projects/sparkylinux/files/base";;
|
||||
*) URL="https://sourceforge.net/projects/sparkylinux/files/${EDITION}";;
|
||||
esac
|
||||
|
||||
HASH=$(wget -q -O- ${URL}/${ISO}.allsums.txt | head -2 | grep 'iso' | cut -d' ' -f1)
|
||||
echo "${URL}/${ISO}" "${HASH}"
|
||||
}
|
||||
|
||||
function get_spiral() {
|
||||
local EDITION="${1:-}"
|
||||
local HASH=""
|
||||
local ISO="SpiralLinux_${EDITION}_12.231005_x86-64.iso"
|
||||
local URL="https://sourceforge.net/projects/spirallinux/files/12.231005"
|
||||
|
||||
HASH=$(wget -q -O- 'https://sourceforge.net/projects/spirallinux/rss?path=/' | grep "${ISO}" | grep 'md5' | cut -d'<' -f3 | cut -d'>' -f2)
|
||||
echo "${URL}/${ISO}" "${HASH}"
|
||||
}
|
||||
|
||||
function get_tails() {
|
||||
|
@ -3374,15 +3419,12 @@ else
|
|||
echo -n " - Operating Systems: "
|
||||
os_support
|
||||
echo "
|
||||
You can also use this arguments:
|
||||
Only show ISO download URL
|
||||
--show-iso-url / -u {distro} {release} [edition]
|
||||
Test if ISO is available
|
||||
--test-iso-url / -t {distro} {release} [edition]
|
||||
Open distro homepage
|
||||
--open-distro-homepage / -o {distro}
|
||||
Only show distro homepage link
|
||||
--show-distro-homepage / -s {distro}"
|
||||
You can also use these arguments
|
||||
--show-iso-url / -u <distro> <release> <edition> : Show ISO download URL
|
||||
--test-iso-url / -t <distro> <release> <edition> : Test if ISO is available
|
||||
--download-iso / -d <distro> <release> <edition> : Download ISO
|
||||
--open-distro-homepage / -o <distro> : Open distro homepage
|
||||
--show-distro-homepage / -s <distro> : Show distro homepage link"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -3467,11 +3509,11 @@ if [ -n "${2}" ]; then
|
|||
fi
|
||||
else
|
||||
if [ "${open_distro_homepage}" == 'on' ]; then
|
||||
HOMEPAGE=$(os_homepages ${OS})
|
||||
HOMEPAGE=$(os_homepage ${OS})
|
||||
open_url "${HOMEPAGE}" && exit 0
|
||||
fi
|
||||
if [ "${show_distro_homepage}" == 'on' ]; then
|
||||
HOMEPAGE=$(os_homepages ${OS})
|
||||
HOMEPAGE=$(os_homepage ${OS})
|
||||
echo "${HOMEPAGE}" && exit 0
|
||||
fi
|
||||
echo "ERROR! You must specify a release."
|
||||
|
|
Loading…
Reference in New Issue