|
|
@ -34,6 +34,7 @@ function pretty_name() { |
|
|
|
local PRETTY_NAME="" |
|
|
|
local PRETTY_NAME="" |
|
|
|
SIMPLE_NAME="${1}" |
|
|
|
SIMPLE_NAME="${1}" |
|
|
|
case ${SIMPLE_NAME} in |
|
|
|
case ${SIMPLE_NAME} in |
|
|
|
|
|
|
|
archlinux) PRETTY_NAME="Arch Linux";; |
|
|
|
elementary) PRETTY_NAME="elementary OS";; |
|
|
|
elementary) PRETTY_NAME="elementary OS";; |
|
|
|
freebsd) PRETTY_NAME="FreeBSD";; |
|
|
|
freebsd) PRETTY_NAME="FreeBSD";; |
|
|
|
linuxmint-cinnamon) PRETTY_NAME="Linux Mint Cinnamon";; |
|
|
|
linuxmint-cinnamon) PRETTY_NAME="Linux Mint Cinnamon";; |
|
|
@ -123,7 +124,8 @@ function list_csv() { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
function os_support() { |
|
|
|
function os_support() { |
|
|
|
echo elementary \ |
|
|
|
echo archlinux \ |
|
|
|
|
|
|
|
elementary \ |
|
|
|
freebsd \ |
|
|
|
freebsd \ |
|
|
|
fedora \ |
|
|
|
fedora \ |
|
|
|
kali \ |
|
|
|
kali \ |
|
|
@ -148,6 +150,10 @@ function os_support() { |
|
|
|
xubuntu |
|
|
|
xubuntu |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function releases_archlinux() { |
|
|
|
|
|
|
|
echo latest |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
function releases_elementary() { |
|
|
|
function releases_elementary() { |
|
|
|
echo 6.0 |
|
|
|
echo 6.0 |
|
|
|
} |
|
|
|
} |
|
|
@ -544,7 +550,10 @@ function make_vm_config() { |
|
|
|
|
|
|
|
|
|
|
|
IMAGE_FILE="${1}" |
|
|
|
IMAGE_FILE="${1}" |
|
|
|
ISO_FILE="${2}" |
|
|
|
ISO_FILE="${2}" |
|
|
|
if [ "${OS}" == "elementary" ]; then |
|
|
|
if [ "${OS}" == "archlinux" ]; then |
|
|
|
|
|
|
|
GUEST="linux" |
|
|
|
|
|
|
|
IMAGE_TYPE="iso" |
|
|
|
|
|
|
|
elif [ "${OS}" == "elementary" ]; then |
|
|
|
GUEST="linux" |
|
|
|
GUEST="linux" |
|
|
|
IMAGE_TYPE="iso" |
|
|
|
IMAGE_TYPE="iso" |
|
|
|
elif [ "${OS}" == "freebsd" ]; then |
|
|
|
elif [ "${OS}" == "freebsd" ]; then |
|
|
@ -616,6 +625,22 @@ EOF |
|
|
|
start_vm_info |
|
|
|
start_vm_info |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function get_archlinux() { |
|
|
|
|
|
|
|
local HASH="" |
|
|
|
|
|
|
|
local ISO="" |
|
|
|
|
|
|
|
local URL="" |
|
|
|
|
|
|
|
local VERSION="" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
validate_release "releases_archlinux" |
|
|
|
|
|
|
|
VERSION=$(wget -q -O- 'https://archlinux.org/releng/releases/json/' | jq '.latest_version' | cut -d "\"" -f 2) |
|
|
|
|
|
|
|
URL="https://mirror.rackspace.com/archlinux/iso/$VERSION" |
|
|
|
|
|
|
|
ISO="archlinux-$VERSION-x86_64.iso" |
|
|
|
|
|
|
|
HASH=$(wget -q -O- 'https://archlinux.org/releng/releases/json/' | jq '.releases[0].sha1_sum' | cut -d "\"" -f 2) |
|
|
|
|
|
|
|
web_get "${URL}/${ISO}" "${VM_PATH}" |
|
|
|
|
|
|
|
check_hash "${ISO}" "${HASH}" |
|
|
|
|
|
|
|
make_vm_config "${ISO}" |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
function get_elementary() { |
|
|
|
function get_elementary() { |
|
|
|
local ISO="" |
|
|
|
local ISO="" |
|
|
|
local URL="" |
|
|
|
local URL="" |
|
|
@ -997,7 +1022,9 @@ if [ -n "${2}" ]; then |
|
|
|
RELEASE="${2,,}" |
|
|
|
RELEASE="${2,,}" |
|
|
|
VM_PATH="${OS}-${RELEASE}" |
|
|
|
VM_PATH="${OS}-${RELEASE}" |
|
|
|
|
|
|
|
|
|
|
|
if [ "${OS}" == "elementary" ]; then |
|
|
|
if [ "${OS}" == "archlinux" ]; then |
|
|
|
|
|
|
|
get_archlinux |
|
|
|
|
|
|
|
elif [ "${OS}" == "elementary" ]; then |
|
|
|
get_elementary |
|
|
|
get_elementary |
|
|
|
elif [ "${OS}" == "macos" ]; then |
|
|
|
elif [ "${OS}" == "macos" ]; then |
|
|
|
get_macos |
|
|
|
get_macos |
|
|
@ -1054,7 +1081,9 @@ if [ -n "${2}" ]; then |
|
|
|
fi |
|
|
|
fi |
|
|
|
else |
|
|
|
else |
|
|
|
echo -n "ERROR! You must specify a release: " |
|
|
|
echo -n "ERROR! You must specify a release: " |
|
|
|
if [ "${OS}" == "elementary" ]; then |
|
|
|
if [ "${OS}" == "archlinux" ]; then |
|
|
|
|
|
|
|
releases_archlinux |
|
|
|
|
|
|
|
elif [ "${OS}" == "elementary" ]; then |
|
|
|
releases_elementary |
|
|
|
releases_elementary |
|
|
|
elif [ "${OS}" == "freebsd" ]; then |
|
|
|
elif [ "${OS}" == "freebsd" ]; then |
|
|
|
releases_freebsd |
|
|
|
releases_freebsd |
|
|
|