[EXTRAS] Update sanity check method
Describe the Issue
autopilot check compatibility says i need to do some more steps to get ready, but dont say what specifically i need to do
Reproduce the Issue
Expectation
green check marks (as i did everything that i needed on readme)
Operating System
archcraft
Kernel
6.9.3-arch1-1
Processor
ryzen 5 5500
RAM (in GB)
16GB
GPU(s)
RX6600XT
Version
0.12.0
Branch
main
Generated Script File
#!/usr/bin/env bash
# shellcheck disable=SC2054
#
# APC-RUN_12-06-2024_08-18-30
#
# THIS FILE WAS GENERATED USING AUTOPILOT.
#
# To boot this script, run the following command:
# $ ./boot.sh
#
#
# boot.sh
# Created by Coopydood as part of the ultimate-macOS-KVM project.
#
# Profile: https://github.com/Coopydood
# Repo: https://github.com/Coopydood/ultimate-macOS-KVM
#
# Adapted from OSX-KVM among others.
# Greetz to TheNickDude, Dortania, khoalia, foxlet, and other contributors :]
#
ID="macOS"
NAME="macOS 14"
FILE="boot.sh"
ULTMOS=0.12.0
IGNORE_FILE=0
REQUIRES_SUDO=0
VFIO_PTA=0
VFIO_DEVICES=0
GEN_EPOCH=1718194710
FEATURE_LEVEL=7
VERBOSE=1
DISCORD_RPC=1
DISCORD_RPC_IMG="default"
SCREEN_RES="1280x720"
ALLOCATED_RAM="8G"
CPU_SOCKETS="1"
CPU_CORES="2"
CPU_THREADS="8"
CPU_MODEL="Haswell-noTSX"
CPU_FEATURE_ARGS="+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check"
REPO_PATH="/home/_luis/ultimate-macOS-KVM"
OVMF_DIR="/home/_luis/ultimate-macOS-KVM/ovmf"
VFIO_ID_0="$USR_VFIO_ID_0"
VFIO_ID_1="$USR_VFIO_ID_1"
VFIO_ROM="$USR_VFIO_ROM"
USB_DEVICES="$USR_USB_DEVICES"
NETWORK_DEVICE="vmxnet3"
MAC_ADDRESS="00:16:cb:00:48:41"
OS_ID="Sonoma"
HDD_PATH="$REPO_PATH/HDD.qcow2"
DISK_TYPE="SSD"
# You should not have to touch anything below this line, especially if you
# don't really know what you're doing. It'll probably break something.
args=(
-global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off
-enable-kvm -m "$ALLOCATED_RAM" -cpu "$CPU_MODEL",kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,"$CPU_FEATURE_ARGS"
-machine q35
-boot menu=on,splash-time=5
##-device usb-ehci,id=ehci
#-device qemu-xhci,id=xhci
-usb -device usb-kbd -device usb-tablet
#USB_DEV_BEGIN
#USB_DEV_END
-smp "$CPU_THREADS",cores="$CPU_CORES",sockets="$CPU_SOCKETS"
-device pcie-root-port,bus=pcie.0,slot=1,x-speed=16,x-width=32
#VFIO_DEV_BEGIN
#VFIO_DEV_END
-device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
-drive if=pflash,format=raw,readonly=on,file="$OVMF_DIR/OVMF_CODE.fd"
-drive if=pflash,format=raw,file="$OVMF_DIR/OVMF_VARS.fd"
-smbios type=2
-device ich9-intel-hda -device hda-duplex
-device ich9-ahci,id=sata
-drive id=OpenCore,if=none,format=qcow2,file="$REPO_PATH/boot/OpenCore.qcow2"
-drive id=HDD,if=none,file="$HDD_PATH",format=qcow2
-device ide-hd,bus=sata.2,drive=OpenCore,bootindex=1
-device ide-hd,bus=sata.3,drive=HDD,rotation_rate=1
############## REMOVE THESE LINES AFTER MACOS INSTALLATION ###############
-drive id=BaseSystem,if=none,file="$REPO_PATH/BaseSystem.img",format=raw
-device ide-hd,bus=sata.4,drive=BaseSystem
##########################################################################
-netdev user,id=net0 -device "$NETWORK_DEVICE",netdev=net0,id=net0,mac="$MAC_ADDRESS"
-device qxl-vga,vgamem_mb=128,vram_size_mb=128
-monitor stdio
#-display none
#-vga qxl
################ UNCOMMENT IF YOU WANT TO USE VNC MONITOR ################
#-vnc 0.0.0.0:1,password=on -k en-us
##########################################################################
)
while getopts d: flag
do
case "${flag}" in
d) DISCORD_RPC=${OPTARG};;
esac
done
if [ $VERBOSE = 1 ]
then
echo
echo \ \ \──────────────────────────────────────────────
echo \ \ \ \ \ $FILE
echo \ \ \ \ \ $ID $OS_ID
echo
echo \ \ \ \ \ Built with ULTMOS v$ULTMOS
echo \ \ \ \ \ Using $CPU_MODEL CPU model
if [ $REQUIRES_SUDO = 1 ]
then
echo \ \ \ \ \ Superuser privileges enabled
fi
if [ $VFIO_PTA = 1 ]
then
echo \ \ \ \ \ Passthrough enabled
else
echo \ \ \ \ \ Passthrough disabled
fi
if [ $DISCORD_RPC = 1 ]
then
echo \ \ \ \ \ Discord RPC enabled
else
echo \ \ \ \ \ Discord RPC disabled
fi
echo \ \ \──────────────────────────────────────────────
echo
fi
if [ $DISCORD_RPC = 1 ]
then
"$REPO_PATH/scripts/drpc.py" --os "$OS_ID" --pt $VFIO_DEVICES --wd "$REPO_PATH" --show "$DISCORD_RPC_IMG" &
fi
qemu-system-x86_64 "${args[@]}"
if [ $DISCORD_RPC = 1 ]
then
pkill -f drpc.py
fi
Generated XML File (if applicable)
<!--
APC-RUN_12-06-2024_08-18-35
THIS FILE WAS GENERATED USING AUTOPILOT.
To be used with virsh / virt-manager.
./boot.xml
Created by Coopydood as part of the ultimate-macOS-KVM project.
Profile: https://github.com/Coopydood
Repo: https://github.com/Coopydood/ultimate-macOS-KVM
-->
<domain xmlns:qemu="http://libvirt.org/schemas/domain/qemu/1.0" type="kvm">
<name>ultmos-14</name>
<title>macOS Sonoma (ULTMOS)</title>
<description> macOS Sonoma
Converted from ./boot.sh
This virtual machine was created using ultimate-macOS-KVM, a project by Coopydood.
Visit https://github.com/Coopydood/ultimate-macOS-KVM for help and support, or provide some feedback!
DEBUG
ULTMOS: v0.12.0
XML: ./boot.xml
AP: ./boot.sh
APFLOW: Yes
AUTO: Yes
USEBLOBS: Yes
RUNTIME: 08:18:35 12/06/2024
</description>
<uuid>eea844a1-d9cd-4601-b211-34ae4b2e2d10</uuid>
<memory unit="KiB">8388608</memory>
<currentMemory unit="KiB">8388608</currentMemory>
<vcpu placement="static">8</vcpu>
<os>
<type arch="x86_64" machine="pc-q35-4.2">hvm</type>
<loader readonly="yes" type="pflash">/home/_luis/ultimate-macOS-KVM/ovmf/OVMF_CODE.fd</loader>
<nvram>/home/_luis/ultimate-macOS-KVM/ovmf/OVMF_VARS.fd</nvram>
<boot dev="hd"/>
</os>
<features>
<acpi/>
<apic/>
</features>
<cpu mode="host-passthrough" check="none" migratable="on">
<topology sockets="1" dies="1" cores="2" threads="4"/>
</cpu>
<clock offset="utc">
<timer name="rtc" tickpolicy="catchup"/>
<timer name="pit" tickpolicy="delay"/>
<timer name="hpet" present="no"/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
<driver name="qemu" type="qcow2"/>
<source file="/home/_luis/ultimate-macOS-KVM/boot/OpenCore.qcow2"/>
<target dev="sda" bus="sata"/>
<address type="drive" controller="0" bus="0" target="0" unit="0"/>
</disk>
<disk type="file" device="disk"> <!-- HDD HEADER -->
<driver name="qemu" type="qcow2"/>
<source file="/home/_luis/ultimate-macOS-KVM/HDD.qcow2"/>
<target dev="sdb" bus="sata" rotation_rate="1"/>
<address type="drive" controller="0" bus="0" target="0" unit="1"/>
</disk> <!-- HDD FOOTER -->
<!--############# REMOVE THESE LINES AFTER MACOS INSTALLATION #############-->
<disk type="file" device="disk"> <!-- BASESYSTEM HEADER -->
<driver name="qemu" type="raw"/>
<source file="/home/_luis/ultimate-macOS-KVM/BaseSystem.img"/>
<target dev="sdc" bus="sata"/>
<address type="drive" controller="0" bus="0" target="0" unit="2"/>
</disk> <!-- BASESYSTEM FOOTER -->
<!--#######################################################################-->
<controller type="sata" index="0">
<address type="pci" domain="0x0000" bus="0x00" slot="0x1f" function="0x2"/>
</controller>
<controller type="pci" index="0" model="pcie-root"/>
<controller type="pci" index="1" model="pcie-root-port">
<model name="pcie-root-port"/>
<target chassis="1" port="0x8"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x0" multifunction="on"/>
</controller>
<controller type="pci" index="2" model="pcie-root-port">
<model name="pcie-root-port"/>
<target chassis="2" port="0x9"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x1"/>
</controller>
<controller type="pci" index="3" model="pcie-root-port">
<model name="pcie-root-port"/>
<target chassis="3" port="0xa"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x2"/>
</controller>
<controller type="pci" index="4" model="pcie-root-port">
<model name="pcie-root-port"/>
<target chassis="4" port="0xb"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x3"/>
</controller>
<controller type="pci" index="5" model="pcie-root-port">
<model name="pcie-root-port"/>
<target chassis="5" port="0xc"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x4"/>
</controller>
<controller type="pci" index="6" model="pcie-root-port">
<model name="pcie-root-port"/>
<target chassis="6" port="0xd"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x5"/>
</controller>
<controller type="pci" index="7" model="pcie-root-port">
<model name="pcie-root-port"/>
<target chassis="7" port="0xe"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x6"/>
</controller>
<controller type="pci" index="8" model="pcie-root-port">
<model name="pcie-root-port"/>
<target chassis="8" port="0xf"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x7"/>
</controller>
<controller type="pci" index="9" model="pcie-to-pci-bridge">
<model name="pcie-pci-bridge"/>
<address type="pci" domain="0x0000" bus="0x01" slot="0x00" function="0x0"/>
</controller>
<controller type="usb" index="0" model="ich9-ehci1">
<address type="pci" domain="0x0000" bus="0x00" slot="0x1d" function="0x7"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci1">
<master startport="0"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x1d" function="0x0" multifunction="on"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci2">
<master startport="2"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x1d" function="0x1"/>
</controller>
<controller type="usb" index="0" model="ich9-uhci3">
<master startport="4"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x1d" function="0x2"/>
</controller>
<interface type="network">
<mac address="00:16:cb:00:48:41"/>
<source network="default"/>
<model type="vmxnet3"/>
<address type="pci" domain="0x0000" bus="0x09" slot="0x02" function="0x0"/>
</interface>
<serial type="pty">
<target type="isa-serial" port="0">
<model name="isa-serial"/>
</target>
</serial>
<console type="pty">
<target type="serial" port="0"/>
</console>
<input type="mouse" bus="ps2"/>
<input type="keyboard" bus="ps2"/>
<input type="keyboard" bus="usb">
<address type="usb" bus="0" port="3"/>
</input>
<input type="mouse" bus="usb">
<address type="usb" bus="0" port="4"/>
</input>
<graphics type="spice">
<listen type="none"/>
</graphics>
<sound model="ich9">
<address type="pci" domain="0x0000" bus="0x00" slot="0x1b" function="0x0"/>
</sound>
<audio id="1" type="none"/>
<video>
<model type="vga" vram="16384" heads="1" primary="yes"/>
<address type="pci" domain="0x0000" bus="0x09" slot="0x01" function="0x0"/>
</video>
<!-- VFIO-PCI HEADER -->
<!-- USB HEADER -->
<!--<watchdog model="itco" action="reset"/> -->
<memballoon model="none"/>
</devices>
<qemu:commandline>
<qemu:arg value="-global"/>
<qemu:arg value="ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off"/>
<qemu:arg value="-device"/>
<qemu:arg value="isa-applesmc,osk=ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"/>
<qemu:arg value="-smbios"/>
<qemu:arg value="type=2"/>
<qemu:arg value="-cpu"/>
<qemu:arg value="Haswell-noTSX,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check"/>
<qemu:arg value="-global"/>
<qemu:arg value="nec-usb-xhci.msi=off"/>
<!-- NVME HEADER -->
</qemu:commandline>
</domain>
Generated Log File
ULTMOS SYSTEM REPORT 12-06-2024 12:07:08
───────────────────────────────────────────────────────────────────
This report was generated by user request, and includes basic
information about your system hardware, as well as your current
ULTMOS software environment.
This information may help project developers
in assisting you in any issues you might have.
Name : System Profile Tool
File : sysprofiler.py
Identifier : SPT
Version : 1.0
Vendor : Coopydood
Date : 12/06/2024
Time : 12:07:09
ULTMOS
────────────────────────────────────────────────────────
Version : 0.12.0
Branch : main
OPERATING SYSTEM
────────────────────────────────────────────────────────
OS : Linux
Distro : Archcraft
Release : rolling
Kernel : 6.9.3-arch1-1
BootCMD : /boot/vmlinuz-linux root=UUID=4546ed36-a83d-42fb-bcc0-13ce7c8f6bcf rw iommu=pt amd_iommu=on vfio-pci.ids=1002:67df,1002:aaf0 kvm.ignore_msrs=1 video=vesafb:off,efifb:off quiet splash loglevel=3 udev.log_level=3 vt.global_cursor_default=0 splash
VM : NO
PROCESSOR
────────────────────────────────────────────────────────
Model : AMD Ryzen 5 5500
Physical : 6
Logical : 12
Arch : x86_64
MEMORY
────────────────────────────────────────────────────────
Total : 15.51 GB
Used : 2.81 GB
Available : 12.35 GB
Free : 11.41 GB
CONFIGURATION
────────────────────────────────────────────────────────
BootMode : UEFI
IOMMU : Available
Libvirtd : Enabled
QEMU : Installed
Libvirt : Installed
Virsh : Installed
VirtMan : Installed
Pypresence : Included
NBD : Installed
VFIO-PCI
────────────────────────────────────────────────────────
⚠ Kernel : Misconfigured
Stubbed : 0
INTEGRITY
────────────────────────────────────────────────────────
Core : PASS
ScriptStr : PASS
OVMFStr : PASS
BaseFiles : PASS
InclBin : PASS
DeltaData : PASS
AUTOPILOT
────────────────────────────────────────────────────────
FeatureLvl : 8
⚠ UserBlobs : YES (16 total)
├ USR_CPU_THREADS.apb
├ USR_HDD_TYPE.apb
├ USR_TARGET_OS.apb
├ USR_MAC_ADDRESS.apb
├ USR_CREATE_XML.apb
├ USR_SCREEN_RES.apb
├ USR_NETWORK_DEVICE.apb
├ USR_CPU_MODEL.apb
├ USR_BOOT_FILE.apb
├ USR_CPU_CORES.apb
├ USR_ALLOCATED_RAM.apb
├ USR_HDD_SIZE.apb
├ USR_TARGET_OS_NAME.apb
├ USR_HDD_PATH.apb
├ USR_CPU_FEATURE_ARGS.apb
└ USR_CFG.apb
StaleBlobs : YES (16 total)
LiveBlobs : NO
OCInPlace : YES
OCModded : NO
OCSize : 26.31 MB
OCHashMD5 : 2e416426ca232bbd2c9002827a4dc23f
APFileName : boot.sh
APFilePath : /home/_luis/ultimate-macOS-KVM/boot.sh
GENERATED DATA // BOOT.SH
────────────────────────────────────────────────────────
Name : boot.sh
Path : /home/_luis/ultimate-macOS-KVM/boot.sh
ULTMOS : 0.12.0
GenTime : 1718194710
OS : macOS Sonoma
Version : 14
DiskPath : /home/_luis/ultimate-macOS-KVM/HDD.qcow2
DiskUsed : 1.06 GB
DiskSize : 128 GB
DiskType : SSD
DiskIsReal : NO
RecImgPath : /home/_luis/ultimate-macOS-KVM/BaseSystem.img
RecImgSize : 2.99 GB
RecImgHash : 092982c72f943027464d54eda8421a69
RecImgFrom : Downloaded with APC
WARNINGS (2)
────────────────────────────────────────────────────────
The kernel does not appear to be set up correctly,
expected drivers are not available / running
Only 16 user blobs are present while more are expected,
might be from an old repo version or integrity damage
Additional Information
No response
Do you think documentation should be written about the checker? Would be happy to do so if it would help.
Best regards
Similarly incorrect warning/output for me, regarding libvirtd. Host is Debian without systemd, uses SysV init instead. autopilot check compatibility says ✘ Libvirt daemon is disabled or not working, but it is already running: sudo /etc/init.d/libvirtd status Checking status of libvirt management daemon: libvirtd running Maybe add sanity check for sudo /etc/init.d/libvirtd status ? It would seem a good place to add it is in file /ultimate-macOS-KVM/scripts/extras/kvm-check.py about here:
vfcLibvirtd
output_stream = os.popen("systemctl status libvirtd") basically make it check for /etc/init.d/libvirtd status as well as systemctl as long as it picks up the word running from /etc/init.d/libvirtd status it will pass