mirror of
https://github.com/oSoWoSo/DistroHopper.git
synced 2024-08-14 22:46:53 +00:00
Initial Fedora Support
This commit is contained in:
parent
840294c16b
commit
ca2a07461a
1 changed files with 57 additions and 1 deletions
58
quickget
58
quickget
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
function os_support() {
|
function os_support() {
|
||||||
echo freebsd \
|
echo freebsd \
|
||||||
|
fedora \
|
||||||
kubuntu \
|
kubuntu \
|
||||||
lubuntu \
|
lubuntu \
|
||||||
macos \
|
macos \
|
||||||
|
@ -19,6 +20,12 @@ function releases_freebsd(){
|
||||||
13_0
|
13_0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function releases_fedora(){
|
||||||
|
echo 33 \
|
||||||
|
34 \
|
||||||
|
35_beta
|
||||||
|
}
|
||||||
|
|
||||||
function releases_macos() {
|
function releases_macos() {
|
||||||
echo high-sierra \
|
echo high-sierra \
|
||||||
mojave \
|
mojave \
|
||||||
|
@ -285,9 +292,12 @@ function make_vm_config() {
|
||||||
if [[ "${OS}" == "freebsd" ]]; then
|
if [[ "${OS}" == "freebsd" ]]; then
|
||||||
GUEST="freebsd"
|
GUEST="freebsd"
|
||||||
IMAGE_TYPE="iso"
|
IMAGE_TYPE="iso"
|
||||||
elif [[ "${OS}" == *"ubuntu"* ]]; then
|
elif [[ "${OS}" == *"fedora"* ]]; then
|
||||||
GUEST="linux"
|
GUEST="linux"
|
||||||
IMAGE_TYPE="iso"
|
IMAGE_TYPE="iso"
|
||||||
|
elif [[ "${OS}" == *"ubuntu"* ]]; then
|
||||||
|
GUEST="linux"
|
||||||
|
IMAGE_TYPE="iso"
|
||||||
elif [ "${OS}" == "macos" ]; then
|
elif [ "${OS}" == "macos" ]; then
|
||||||
GUEST="macos"
|
GUEST="macos"
|
||||||
IMAGE_TYPE="img"
|
IMAGE_TYPE="img"
|
||||||
|
@ -349,6 +359,50 @@ function get_freebsd() {
|
||||||
start_vm_info
|
start_vm_info
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function get_fedora() {
|
||||||
|
# For future releases, use dvd1 iso files.
|
||||||
|
local URL=""
|
||||||
|
local VERSION=""
|
||||||
|
|
||||||
|
case ${RELEASE} in
|
||||||
|
33|34|35_beta) VERSION=${RELEASE};;
|
||||||
|
*)
|
||||||
|
echo "ERROR! Fedora ${RELEASE} is not a supported release."
|
||||||
|
releases_fedora
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
FEDORA_VERSIONS=$(wget -q -O- "https://getfedora.org/releases.json" | jq '.[] | select((.variant=="Workstation" or .variant=="Spins") and .arch=="x86_64")')
|
||||||
|
if [[ $VERSION == *"beta"* ]]; then
|
||||||
|
VERSION_NUM=${VERSION%"_beta"}
|
||||||
|
FEDORA_RELEASE=$(echo ${FEDORA_VERSIONS} | jq -c '. | select(.version | contains("Beta"))' | jq '. | select(.variant=="Workstation")')
|
||||||
|
ISO="Fedora-Workstation-Live-x86_64-${VERSION_NUM}_Beta-1.2.iso"
|
||||||
|
else
|
||||||
|
FEDORA_RELEASE=$(echo ${FEDORA_VERSIONS} | jq '. | select(.variant=="Workstation" and .version=="'${VERSION}'")')
|
||||||
|
ISO="Fedora-Workstation-Live-x86_64-${VERSION}-1.2.iso"
|
||||||
|
fi
|
||||||
|
|
||||||
|
URL=$(echo ${FEDORA_RELEASE} | jq -r '.link')
|
||||||
|
SHA256SUM=$(echo ${FEDORA_RELEASE} | jq -r '.sha256')
|
||||||
|
|
||||||
|
web_get ${URL} ${VM_PATH}
|
||||||
|
|
||||||
|
echo "Checking SHA256SUMS..."
|
||||||
|
cd "${VM_PATH}"
|
||||||
|
if ! echo "${SHA256SUM} ${ISO}" | sha256sum --check --status; then
|
||||||
|
echo "ERROR! ${ISO} doesn't match ${SHA256SUM}. Try running 'quickget' again."
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
echo "All good."
|
||||||
|
fi
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
make_vm_dir
|
||||||
|
make_vm_config ${ISO}
|
||||||
|
start_vm_info
|
||||||
|
}
|
||||||
|
|
||||||
function get_macos() {
|
function get_macos() {
|
||||||
local CWD=""
|
local CWD=""
|
||||||
local MACRECOVERY=""
|
local MACRECOVERY=""
|
||||||
|
@ -591,6 +645,8 @@ if [ "${OS}" == "macos" ]; then
|
||||||
get_macos
|
get_macos
|
||||||
elif [[ "${OS}" == *"freebsd" ]]; then
|
elif [[ "${OS}" == *"freebsd" ]]; then
|
||||||
get_freebsd
|
get_freebsd
|
||||||
|
elif [[ "${OS}" == *"fedora"* ]]; then
|
||||||
|
get_fedora
|
||||||
elif [[ "${OS}" == *"ubuntu"* ]]; then
|
elif [[ "${OS}" == *"ubuntu"* ]]; then
|
||||||
get_ubuntu
|
get_ubuntu
|
||||||
elif [ "${OS}" == "windows" ]; then
|
elif [ "${OS}" == "windows" ]; then
|
||||||
|
|
Loading…
Reference in a new issue