40 lines
1.0 KiB
Bash
40 lines
1.0 KiB
Bash
#!/usr/bin/env bash
|
|
set -Eeuo pipefail
|
|
|
|
: "${BOOT_MODE:="windows"}"
|
|
|
|
APP="Windows"
|
|
SUPPORT="https://github.com/dockur/windows"
|
|
|
|
cd /run
|
|
|
|
. reset.sh # Initialize system
|
|
. define.sh # Define versions
|
|
. mido.sh # Download code
|
|
. install.sh # Run installation
|
|
. disk.sh # Initialize disks
|
|
. display.sh # Initialize graphics
|
|
. network.sh # Initialize network
|
|
. samba.sh # Configure samba
|
|
. boot.sh # Configure boot
|
|
. proc.sh # Initialize processor
|
|
. power.sh # Configure shutdown
|
|
. config.sh # Configure arguments
|
|
|
|
trap - ERR
|
|
|
|
version=$(qemu-system-x86_64 --version | head -n 1 | cut -d '(' -f 1 | awk '{ print $NF }')
|
|
info "Booting ${APP}${BOOT_DESC} using QEMU v$version..."
|
|
|
|
{ qemu-system-x86_64 ${ARGS:+ $ARGS} >"$QEMU_OUT" 2>"$QEMU_LOG"; rc=$?; } || :
|
|
(( rc != 0 )) && error "$(<"$QEMU_LOG")" && exit 15
|
|
|
|
terminal
|
|
( sleep 30; boot ) &
|
|
tail -fn +0 "$QEMU_LOG" 2>/dev/null &
|
|
cat "$QEMU_TERM" 2> /dev/null | tee "$QEMU_PTY" &
|
|
wait $! || :
|
|
|
|
sleep 1 & wait $!
|
|
[ ! -f "$QEMU_END" ] && finish 0
|