DistroHopper/templates/redox-os
2026-05-27 17:00:06 +02:00

64 lines
1.7 KiB
Text

# Template file for 'redox-os'
OSNAME="redox-os"
PRETTY="Redox OS"
LOGO=""
ICON="redox.png"
ICON_ONLINE="https://distrowatch.com/images/yvzhuwbpy/redox.png"
CATEGORY="Desktop, Live Medium, Server"
BASEDOF="-"
HOMEPAGE="https://www.redox-os.org"
DESCRIPTION="Microkernel-based operating system, with a large number of supported programs and components, to create a full-featured user and application environment"
CREDENTIALS="-"
GPG=""
RSS=""
DW=""
function releases_() {
echo livedisk harddrive
}
function editions_() {
echo demo desktop server
}
function arch_() {
echo amd64 arm64 i586 i686 riscv64
}
function get_() {
local HASH=""
local ISO=""
local QEMU_ARCH
case "${ARCH:-amd64}" in
amd64) QEMU_ARCH="x86_64";;
arm64) QEMU_ARCH="aarch64";;
riscv64) QEMU_ARCH="riscv64gc";;
*) QEMU_ARCH="${ARCH}";;
esac
local URL="https://static.redox-os.org/img/${QEMU_ARCH}"
local DATA
local RELEASE_PATTERN="${RELEASE}"
[[ "${RELEASE}" == "livedisk" ]] && RELEASE_PATTERN="livedisk|redox-live"
DATA="$(curl -s "${URL}/SHA256SUM" | grep -E "\.iso|\.img" | grep "${EDITION}" | grep -E "${RELEASE_PATTERN}")"
ISO="$(echo "${DATA}" | cut -d '*' -f2)"
HASH="$(echo "${DATA}" | cut -d' ' -f1)"
echo "${URL}/${ISO} ${HASH}"
}
function extract_() {
if [[ ${ISO} =~ ".zst" ]]; then
zstd -d "${VM_PATH}/${ISO}"
ISO="${ISO/.zst/}"
if [[ ${ISO} =~ ".img" ]]; then
QEMU_IMG=$(command -v qemu-img)
if [ ! -x "${QEMU_IMG}" ]; then
echo $"ERROR! qemu-img not found. Please make sure qemu-img is installed."
exit 1
fi
qemu-img convert -f raw -O qcow2 "${VM_PATH}/${ISO}" "${VM_PATH}/disk.qcow2"
ISO="${ISO/.img/}"
else
ISO="${ISO/.zst/}"
fi
fi
}