Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[EXTRAS] Update sanity check method #96

Open
LuisFellp opened this issue Jun 12, 2024 · 2 comments
Open

[EXTRAS] Update sanity check method #96

LuisFellp opened this issue Jun 12, 2024 · 2 comments
Assignees
Labels
Under Development A feature or fix in active development

Comments

@LuisFellp
Copy link

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

image

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

@LuisFellp LuisFellp added Bug Something isn't working Pending The issue or pull request is being reviewed labels Jun 12, 2024
@Coopydood
Copy link
Owner

Do you think documentation should be written about the checker? Would be happy to do so if it would help.

Best regards

@Coopydood Coopydood added Documentation Improvements or additions to documentation Need More Info Further information is requested Investigating The reported issue is under investigation and removed Bug Something isn't working Pending The issue or pull request is being reviewed labels Jun 19, 2024
@LuboGD
Copy link

LuboGD commented Jul 14, 2024

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

@Coopydood Coopydood added Under Development A feature or fix in active development and removed Documentation Improvements or additions to documentation Need More Info Further information is requested Investigating The reported issue is under investigation labels Jul 17, 2024
@Coopydood Coopydood changed the title [AUTOPILOT] [EXTRAS] Update sanity check method Sep 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Under Development A feature or fix in active development
Projects
None yet
Development

No branches or pull requests

3 participants