mirror of
https://github.com/oSoWoSo/DistroHopper.git
synced 2024-08-14 22:46:53 +00:00
Add FreeDOS support (#374)
* Add support for FreeDOS 1.2 to quickget * Add support for freedos guests to quickemu * Add support for FreeDOS 1.3 to quickget * Force qemu to keep booting from cd after formatting disk * Adjust VM settings * Refactor FreeDOS to use create_vm * Add FreeDOS to README * Add unzip to README as a dependency
This commit is contained in:
parent
38b086244d
commit
ebc83ebacf
3 changed files with 55 additions and 4 deletions
45
quickget
45
quickget
|
@ -39,6 +39,7 @@ function pretty_name() {
|
|||
dragonflybsd) PRETTY_NAME="DragonFlyBSD";;
|
||||
elementary) PRETTY_NAME="elementary OS";;
|
||||
freebsd) PRETTY_NAME="FreeBSD";;
|
||||
freedos) PRETTY_NAME="FreeDOS";;
|
||||
garuda) PRETTY_NAME="Garuda Linux";;
|
||||
ghostbsd) PRETTY_NAME="GhostBSD";;
|
||||
kdeneon) PRETTY_NAME="KDE Neon";;
|
||||
|
@ -166,6 +167,7 @@ function os_support() {
|
|||
elementary \
|
||||
fedora \
|
||||
freebsd \
|
||||
freedos \
|
||||
garuda \
|
||||
gentoo \
|
||||
ghostbsd \
|
||||
|
@ -283,6 +285,11 @@ function editions_freebsd(){
|
|||
echo disc1 dvd1
|
||||
}
|
||||
|
||||
function releases_freedos() {
|
||||
echo 1.2 \
|
||||
1.3
|
||||
}
|
||||
|
||||
function releases_garuda() {
|
||||
echo 220131
|
||||
}
|
||||
|
@ -657,6 +664,9 @@ function make_vm_config() {
|
|||
haiku)
|
||||
GUEST="haiku"
|
||||
IMAGE_TYPE="iso";;
|
||||
freedos)
|
||||
GUEST="freedos"
|
||||
IMAGE_TYPE="iso";;
|
||||
kolibrios)
|
||||
GUEST="kolibrios"
|
||||
IMAGE_TYPE="iso";;
|
||||
|
@ -698,6 +708,11 @@ EOF
|
|||
case ${OS} in
|
||||
alma|oraclelinux|rockylinux) echo "disk_size=\"32G\"" >> "${CONF_FILE}";;
|
||||
dragonflybsd|haiku|openbsd|netbsd|slackware|tails) echo "boot=\"legacy\"" >> "${CONF_FILE}";;
|
||||
freedos)
|
||||
echo "boot=\"legacy\"" >> "${CONF_FILE}"
|
||||
echo "disk_size=\"4G\"" >> "${CONF_FILE}"
|
||||
echo "ram=\"256M\"" >> "${CONF_FILE}"
|
||||
;;
|
||||
kolibrios)
|
||||
echo "boot=\"legacy\"" >> "${CONF_FILE}"
|
||||
echo "disk_size=\"2G\"" >> "${CONF_FILE}"
|
||||
|
@ -875,6 +890,28 @@ function get_freebsd() {
|
|||
echo "${URL}/${ISO} ${HASH}"
|
||||
}
|
||||
|
||||
function get_freedos() {
|
||||
local HASH=""
|
||||
local ISO=""
|
||||
local URL=""
|
||||
|
||||
URL="http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/${RELEASE}/official"
|
||||
|
||||
case $RELEASE in
|
||||
1.2)
|
||||
ISO="FD12CD.iso"
|
||||
HASH=$(wget -q -O- "${URL}/FD12.sha" | grep "${ISO}" | cut -d' ' -f1)
|
||||
;;
|
||||
1.3)
|
||||
ISO="FD13-LiveCD.zip"
|
||||
HASH=$(wget -q -O- "${URL}/verify.txt" | grep -A 8 "sha256sum" | \
|
||||
grep "${ISO}" | cut -d' ' -f1)
|
||||
;;
|
||||
esac
|
||||
|
||||
echo "${URL}/${ISO} ${HASH}"
|
||||
}
|
||||
|
||||
function get_garuda() {
|
||||
local EDITION="${1:-}"
|
||||
local HASH=""
|
||||
|
@ -1657,13 +1694,21 @@ create_vm() {
|
|||
local URL="${URL_HASH[0]}"
|
||||
local HASH="${URL_HASH[1]}"
|
||||
local ISO="${URL##*/}"
|
||||
|
||||
#echo "${URL}"
|
||||
#echo "${ISO}"
|
||||
#echo "${HASH}"
|
||||
web_get "${URL}" "${VM_PATH}"
|
||||
|
||||
if [ -n "${HASH}" ]; then
|
||||
check_hash "${ISO}" "${HASH}"
|
||||
fi
|
||||
|
||||
if [ ${OS} == "freedos" ] && [[ $ISO =~ ".zip" ]]; then
|
||||
unzip ${VM_PATH}/${ISO} -d ${VM_PATH}
|
||||
ISO=$(ls ${VM_PATH} | grep -i '.iso')
|
||||
fi
|
||||
|
||||
make_vm_config "${ISO}"
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue