Adding KolibriOS support

It can download and boot this OS. There is one requirement: 7z.
Its not completed yet (at least internet and sound dont work)
This commit is contained in:
Vitaliy Krylov 2021-12-22 00:13:47 +03:00
parent 12fbf6b02f
commit 310d2d3aa1
2 changed files with 36 additions and 1 deletions

View File

@ -451,7 +451,7 @@ function vm_boot() {
# Make any OS specific adjustments
case ${guest_os} in
freebsd|linux|openbsd)
freebsd|kolibrios|linux|openbsd)
CPU="-cpu host,kvm=on"
if [ "${HOST_CPU_VENDOR}" == "AuthenticAMD" ]; then
CPU="${CPU},topoext"

View File

@ -42,6 +42,7 @@ function pretty_name() {
freebsd) PRETTY_NAME="FreeBSD";;
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";;
@ -170,6 +171,7 @@ function os_support() {
garuda \
kali \
kdeneon \
kolibrios \
kubuntu \
linuxmint-cinnamon \
linuxmint-mate \
@ -274,6 +276,10 @@ function releases_kdeneon() {
developer
}
function releases_kolibrios() {
echo latest-iso
}
function releases_linuxmint(){
echo 20.2
}
@ -540,6 +546,9 @@ function make_vm_config() {
elif [ "${OS}" == "kdeneon" ]; then
GUEST="linux"
IMAGE_TYPE="iso"
elif [ "${OS}" == "kolibrios" ]; then
GUEST="kolibrios"
IMAGE_TYPE="iso"
elif [[ "${OS}" == *"linuxmint"* ]]; then
GUEST="linux"
IMAGE_TYPE="iso"
@ -596,9 +605,16 @@ EOF
if [ -n "${ISO_FILE}" ]; then
echo "fixed_iso=\"${VM_PATH}/${ISO_FILE}\"" >> "${OS}-${RELEASE}.conf"
fi
if [ "${OS}" == "alma" ] && [ ${ISOTYPE} == "dvd" ]; then
echo "disk_size=\"32G\"" >> "${OS}-${RELEASE}.conf"
fi
if [ "${OS}" == "kolibrios" ]; then
echo "boot=\"legacy\"" >> "${OS}-${RELEASE}.conf"
echo "disk_size=\"256M\"" >> "${OS}-${RELEASE}.conf"
fi
if [ "${OS}" == "openbsd" ]; then
echo "boot=\"legacy\"" >> "${OS}-${RELEASE}.conf"
fi
@ -828,6 +844,21 @@ function get_kdeneon() {
make_vm_config "${ISO}"
}
function get_kolibrios() {
local HASH=""
local ISO=""
local URL=""
validate_release "releases_kolibrios"
URL="https://builds.kolibrios.org/eng/${RELEASE}.7z"
web_get "${URL}" "${VM_PATH}"
7z e "${VM_PATH}/${RELEASE}.7z" "kolibri.iso"
ISO="kolibrios-${RELEASE}.iso"
mv "kolibri.iso" "${VM_PATH}/${ISO}"
rm "${VM_PATH}/${RELEASE}.7z"
make_vm_config "${ISO}"
}
function get_linuxmint() {
local FLAVOR=""
local HASH=""
@ -1657,6 +1688,8 @@ if [ -n "${2}" ]; then
get_kali
elif [ "${OS}" == "kdeneon" ]; then
get_kdeneon
elif [ "${OS}" == "kolibrios" ]; then
get_kolibrios
elif [[ "${OS}" == *"linuxmint-"* ]]; then
get_linuxmint
elif [[ "${OS}" == *"nixos-"* ]]; then
@ -1746,6 +1779,8 @@ else
releases_garuda
elif [ "${OS}" == "kali" ]; then
releases_kali
elif [ "${OS}" == "kolibrios" ]; then
releases_kolibrios
elif [[ "${OS}" == *"linuxmint-"* ]]; then
releases_linuxmint
elif [[ "${OS}" == *"nixos-"* ]]; then