[Support] SpaceinvaderOne - Macinabox


Recommended Posts

On 8/29/2020 at 10:56 AM, ghost82 said:

All works if you pay attention to:

1- SMBIOS data (serial number, model, ROM, UUID, etc.)

2- IORegistry tree, especially related to network (en0 builtin)

3- Type of network card (vmxnet3 will not login in icloud web, e1000 is ok)

 

Thanks. Number 3 did the trick. 

Link to comment

First off.... thanks for all of the incredible resources and tutorials you've created. Your videos are what convinced me Unraid was the way to go for my needs.

 

I'm new to VMs and followed the instructions in the video verbatim but am still having some issues. Everything works as expected until I try to edit the XML so I can add CPUs and RAM. As far as I'm aware, I've followed the instructions perfectly but when I try to launch the VM, this is all that I can see when I launch the VNC remote. Any help is very much appreciated!

 

 

 

 

image.thumb.png.e66480e41cd4e615d5c97d2d56be9d81.png

 

 

 

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>MacinaboxCatalina</name>
  <uuid>d85e53cf-f51c-4bab-bbbe-2dde915ce4fd</uuid>
  <description>MacOS Catalina</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="/mnt/user/domains/MacinaboxCatalina/icon/catalina.png" os="Catalina"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='0'/>
    <vcpupin vcpu='1' cpuset='4'/>
    <vcpupin vcpu='2' cpuset='1'/>
    <vcpupin vcpu='3' cpuset='5'/>
    <vcpupin vcpu='4' cpuset='2'/>
    <vcpupin vcpu='5' cpuset='6'/>
    <vcpupin vcpu='6' cpuset='3'/>
    <vcpupin vcpu='7' cpuset='7'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-3.1'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/d85e53cf-f51c-4bab-bbbe-2dde915ce4fd_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <topology sockets='1' cores='4' threads='2'/>
    <cache mode='passthrough'/>
  </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/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='writeback'/>
      <source file='/mnt/user/domains/MacinaboxCatalina/Clover.qcow2'/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/MacinaboxCatalina/Catalina-install.img'/>
      <target dev='hdd' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/MacinaboxCatalina/macos_disk.img'/>
      <target dev='hde' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='4'/>
    </disk>
    <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='0x10'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0x11'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x12'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0x13'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:60:cc:a8'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' 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>
    <channel type='unix'>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='tablet' bus='usb'>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </memballoon>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-usb'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='usb-kbd,bus=usb-bus.0'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='isa-applesmc,osk=
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check'/>
  </qemu:commandline>
</domain>
 

Link to comment

Thanks for the reply!

 

Are you referring to the post that's talking about changing the last few lines that disappear after any change is made to the template, then reading them along with the OSK key? 

 

If so, I think I followed that. There is still a good chance due to the lack of my experience I may be misunderstanding something.

 

When I first got it to work, I stopped the VM, copied line 136 down to the end, made the changed in the template to add RAM and more CPU cores, then pasted the text in my clipboard at the bottom. 

 

Is there a step I missed?

 

Thanks for the patience! Very much new to all of this. 

Link to comment
8 minutes ago, zephyr.1.2020 said:

Is there a step I missed?

Please read carefully, this is wrong:

  <os>
    <type arch='x86_64' machine='pc-q35-3.1'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/d85e53cf-f51c-4bab-bbbe-2dde915ce4fd_VARS-pure-efi.fd</nvram>
  </os>

This is because you are using clover and you can't use stock ovmf files.

 

Maybe we need a popup instead of a pinned post :D

Edited by ghost82
Link to comment

I need big flashing lights saying 'this part stupid' lol. 

 

All this is way over my head so again, thanks for the patience!

I saved copies of the xml that worked and then variations that I botched up. 

 

Do I just need to replace the part you quoted with the following?

 

  <os>
    <type arch='x86_64' machine='pc-q35-3.1'>hvm</type>
    <loader readonly='yes' type='pflash'>/mnt/user/domains/MacinaboxCatalina/ovmf/OVMF_CODE.fd</loader>
    <nvram>/mnt/user/domains/MacinaboxCatalina/ovmf/OVMF_VARS.fd</nvram>
  </os>

 

 

 

 

Link to comment

So I finally got around to purchasing an RX 580 so I can run OS X more natively then via splashtop. I have passed through the GPU and all seems to be working well, apart from my mouse and keyboard. These are passed through in Unraid, and work for say 10 seconds before stopping. Splashtop from another device still works so its not the system locking up.

 

They are a generic wireless set available from Amazon so not sure if I need to do be doing something more specific.

 

Any idea how to get these working properly?

Link to comment
1 hour ago, stridemat said:

apart from my mouse and keyboard. These are passed through in Unraid, and work for say 10 seconds before stopping

Does it work if you detach the device in unraid and reattach to the virtual machine?

Without logs it's difficult to say, but it could be related to qemu when resets speed of usb or mac os vm not well configured, are you injecting power properties for usb in the vm? Is it usb 1.1?

It happened to me too with a usb 1.1 microsoft set (mouse+keyboard), it seems when usb resetted its speed from the system logs, the pointer froze, detaching and reattaching the device in unraid unlocked it (connecting to unraid from a mobile phone for example), now with qemu 5.0 and injected usb properties in the vm the issue happens very rarely (I don't remember last time it happened).

I'm also reading several reviews on amazon about users saying that the set has some problems for the wireless connection, this can also be another thing to take into account.

Edited by ghost82
Link to comment
17 hours ago, ghost82 said:

Does it work if you detach the device in unraid and reattach to the virtual machine?

Without logs it's difficult to say, but it could be related to qemu when resets speed of usb or mac os vm not well configured, are you injecting power properties for usb in the vm? Is it usb 1.1?

It happened to me too with a usb 1.1 microsoft set (mouse+keyboard), it seems when usb resetted its speed from the system logs, the pointer froze, detaching and reattaching the device in unraid unlocked it (connecting to unraid from a mobile phone for example), now with qemu 5.0 and injected usb properties in the vm the issue happens very rarely (I don't remember last time it happened).

I'm also reading several reviews on amazon about users saying that the set has some problems for the wireless connection, this can also be another thing to take into account.

Thanks for your help. I ended up passing through an entire USB controller rather than just the one device. Had to sort a few IMOUU issues first so took a few hours. Will leave the VM running to see how stable it is. 

Link to comment

HI all,

 

Another newbie question here: 

Is there a specific way to install multiple OSX VM's using Macinabox? What would you need to change in the Docker settings in order to avoid overwriting or updating an existing VM?

 

My goal is to get 4 separate Mac OS VM's running on the same server.

 

Many thanks in advance!

Link to comment

When I run the Docker container, the log says

XML template file for the vm was placed in Unraid system files. This file assumes your vm path
is /mnt/user/domains if it isnt you will need to manually edit the template changing the locations accordingly

 

Would it be possible for it to output the path to that XML file at that point, instead of just saying "Unraid system files"? I've looked all through /boot and I can't find it — and I need to change /mnt/user/domains to /mnt/disks/vms…

 

EDIT: d'oh — I can just edit the XML after restarting the server and before starting the VM, of course. Might be more helpful if the message mentioned that, for the decaffeinated 😁

Edited by ElectricBadger
Link to comment
  • 2 weeks later...

got my catalina VM working really well, appstore, imessage, icloud... everything works just like it should

the only thing i just cannot get to work at all: sound
it is choppy, glitchy, alot of noise and distortion. no matter what USB device i throw at it (Behringer Boxes, Creative DAC, Guitar Amp with USB)
all of them work just fine without any hickups in the Windows 10 VM on the same machine.

i've been googling around the last few hours, but couldn't come up with anything working.
(tried of course all the different settings within Macos 44,1/48 khz. no real improvments either way)
on a ryzen 3600 i pinned unraid to cpu 0,6  - Dockers to 1,7 - Win VM 2,8 and 3,9 - and OSX VM to 4,10 and 5,11

anybody got an idea what i am doing wrong?
 

Link to comment

image.thumb.png.9625073aa28dfaf1ab6e7e30d6b0d450.png

I am not able to install with the error in the picture and if I ever do, then in the next boot screen it says it could not load and resets

 

 

EDIT 1

ok after 1000 tries it got to this screen and will show you the next..

 

EDIT 2

after that it comes to the black  one and stays there for a while

 

EDIT 3

and finally goes the the third one and no matter how many times i reboot it won ever go out of there... 

 

any help?

 

 

EDIT 4

VM LOG

-device pcie-root-port,port=0x10,chassis=1,id=pci.1,bus=pcie.0,multifunction=on,addr=0x2 \
-device pcie-root-port,port=0x11,chassis=2,id=pci.2,bus=pcie.0,addr=0x2.0x1 \
-device pcie-root-port,port=0x12,chassis=3,id=pci.3,bus=pcie.0,addr=0x2.0x2 \
-device pcie-root-port,port=0x13,chassis=4,id=pci.4,bus=pcie.0,addr=0x2.0x3 \
-device ich9-usb-ehci1,id=usb,bus=pcie.0,addr=0x7.0x7 \
-device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pcie.0,multifunction=on,addr=0x7 \
-device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pcie.0,addr=0x7.0x1 \
-device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pcie.0,addr=0x7.0x2 \
-device virtio-serial-pci,id=virtio-serial0,bus=pci.2,addr=0x0 \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/MacinaboxCatalina/Clover.qcow2","node-name":"libvirt-3-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-3-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"qcow2","file":"libvirt-3-storage","backing":null}' \
-device ide-hd,bus=ide.2,drive=libvirt-3-format,id=sata0-0-2,bootindex=1,write-cache=on \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/MacinaboxCatalina/Catalina-install.img","node-name":"libvirt-2-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-2-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-2-storage"}' \
-device ide-hd,bus=ide.3,drive=libvirt-2-format,id=sata0-0-3,write-cache=on \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/MacinaboxCatalina/macos_disk.img","node-name":"libvirt-1-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-1-storage"}' \
-device ide-hd,bus=ide.4,drive=libvirt-1-format,id=sata0-0-4,write-cache=on \
-netdev tap,fd=35,id=hostnet0 \
-device e1000-82545em,netdev=hostnet0,id=net0,mac=52:54:00:74:a0:97,bus=pci.1,addr=0x0 \
-chardev pty,id=charserial0 \
-device isa-serial,chardev=charserial0,id=serial0 \
-chardev socket,id=charchannel0,fd=36,server,nowait \
-device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 \
-device usb-tablet,id=input0,bus=usb.0,port=1 \
-vnc 0.0.0.0:0,websocket=5700 \
-k en-us \
-device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pcie.0,addr=0x1 \
-device virtio-balloon-pci,id=balloon0,bus=pci.3,addr=0x0 \
-usb \
-device usb-kbd,bus=usb-bus.0 \
-device '************************' \
-smbios type=2 \
-cpu Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
2020-09-20 02:12:03.438+0000: Domain id=3 is tainted: high-privileges
2020-09-20 02:12:03.438+0000: Domain id=3 is tainted: custom-argv
2020-09-20 02:12:03.438+0000: Domain id=3 is tainted: host-cpu
char device redirected to /dev/pts/1 (label charserial0)

 

 

 

 

the xml is as it comes out of the box from macinabox untouched

 

 

 

OK SO IT TURNS OUT THAT IT WAS A DNS PROBLEM, TESTED THE 8.8.8.8 and nothing then the 1.1.1.1 and done.. installed perfectly

 

Just in case someone else out there finds the same issue

Screen Shot 2020-09-19 at 11.28.52 PM.png

Screen Shot 2020-09-19 at 11.30.53 PM.png

Screen Shot 2020-09-19 at 11.33.39 PM.png

Edited by mSedek
Link to comment

Hello, thanks @SpaceInvaderOne for the container.

After few days and reading every post about problems with the 5700XT, I see some of you managed to do it.. I haven no matter what, I have 3 VMS on my UNRAID, Windows 10, Ubuntu 20.04 and madOS Catalina clean installation from macinabox

 

Windows and Ubuntu passthrough the 5700XT no problems at all but macOS just hangs on the the boot screen as I will show in the images, another thing to notice is that in software extensiond info it shows the 5700 as not loaded like you can see in the image too.. 

 

I have tried everything, Im connected via HDMI as some guy found that it wasnt working with the DP.

 

also backed up and changed the EFI folder for the opencore from Liozen https://github.com/Leoyzen/KVM-Opencore  and with that, everything loads but screwed up, very small and like repeated several times the same image across the top screen

 

Tried every single xml from people that claims it is working for them and nothing..

 

Extracted my own .rom from the 5700XT (not downloaded from techpowerup )

 

UPDATE 09/21/2020: Bought a cheap -O- nvidia GT710 and passed it through to macOS catalina and worked OTB.

 

my guess is that I need some kind of args to add to clover.. Would be nice of someone that has succeeded with the 5700XT would share his EFI folder...

 

 

UPDATE 2 09/22/2020 I finally got the card passthrough as you can see in one of the images below it just loading 7mb video memory, UI is choppy and sound does not works... playing yt videos in kinda choppy too.

 

I found out that my motherboard has 2 options for booting, one that refers to the boot device that could be legacy or UEFI only and another one that refers to every other device.. I had it both in legacy and once changed the second option to UEFI the card worked BUT with the problems described, no sound and only 7mb video.. look at the images

 

 

FINAL UPDATE 3 09/22/2020

Upgraded to catalina, changed the XML OS from macinabox for this

  <os>
    <type arch='x86_64' machine='pc-q35-4.2'>hvm</type>
    <!-- We don't need patched OVMF anymore when using latest Opencore, stock one is okay -->
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/4450a55c-1669-da0e-d0bd-3ab45fef0398_VARS-pure-efi.fd</nvram>
    <boot dev='hd'/>
  </os>

mounted the main disk efi drive and deleted the clover files and replaced those with opencore EFI from Leoyzen Opencore KVM.

 

Replaced the whatevergreen kext in there with the newest version for opencore.

 

changed again all the hardware control and boot from UEFI to legacy and boom. got everything fully working. sound and everything, attaching final images.. how all this helps someone else outthere.

 

Also refreshed the XML with my final version.

 

Cheers

 

 

 

image.png.f44a67c66114096373fb4398f9e0c328.png

 

image.png.d813cade94c41dc7aabb6f6e6c932219.png

  

 

 

XML 

 

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' id='1' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>MacinaboxCatalina</name>
  <uuid>5d0454ed-e795-4303-aef1-f8ca5fd4176a</uuid>
  <description>MacOS Catalina</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="MacOS" icon="/mnt/user/domains/MacinaboxCatalina/icon/catalina.png" os="Catalina"/>
  </metadata>
  <memory unit='KiB'>16777216</memory>
  <currentMemory unit='KiB'>16777216</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='14'/>
    <vcpupin vcpu='1' cpuset='38'/>
    <vcpupin vcpu='2' cpuset='16'/>
    <vcpupin vcpu='3' cpuset='40'/>
    <vcpupin vcpu='4' cpuset='18'/>
    <vcpupin vcpu='5' cpuset='42'/>
    <vcpupin vcpu='6' cpuset='20'/>
    <vcpupin vcpu='7' cpuset='44'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-3.1'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/6c08efcb-98ea-945f-40eb-c3a2a2af0546_VARS-pure-efi.fd</nvram>
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <topology sockets='1' cores='4' threads='2'/>
  </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/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/MacinaboxCatalina/macos_disk.img' index='1'/>
      <backingStore/>
      <target dev='hde' bus='sata'/>
      <alias name='sata0-0-4'/>
      <address type='drive' controller='0' bus='0' target='0' unit='4'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <alias name='usb'/>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <alias name='usb'/>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x10'/>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0x11'/>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x12'/>
      <alias name='pci.3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0x13'/>
      <alias name='pci.4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
    </controller>
    <controller type='pci' index='5' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='5' port='0x8'/>
      <alias name='pci.5'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:d4:01:24'/>
      <source bridge='br0'/>
      <target dev='vnet0'/>
      <model type='e1000-82545em'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/0'/>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/0'>
      <source path='/dev/pts/0'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-1-MacinaboxCatalina/org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='connected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='tablet' bus='usb'>
      <alias name='input0'/>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'>
      <alias name='input1'/>
    </input>
    <input type='keyboard' bus='ps2'>
      <alias name='input2'/>
    </input>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev0'/>
      <rom file='/mnt/user/isos/Sapphire.RX5700XT.rom'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0' multifunction='on'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x04' slot='0x00' function='0x1'/>
      </source>
      <alias name='hostdev1'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x1'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x046d'/>
        <product id='0xc539'/>
        <address bus='3' device='2'/>
      </source>
      <alias name='hostdev2'/>
      <address type='usb' bus='0' port='2'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x2516'/>
        <product id='0x0087'/>
        <address bus='5' device='5'/>
      </source>
      <alias name='hostdev3'/>
      <address type='usb' bus='0' port='3'/>
    </hostdev>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+0:+100</label>
    <imagelabel>+0:+100</imagelabel>
  </seclabel>
  <qemu:commandline>
    <qemu:arg value='-usb'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='usb-kbd,bus=usb-bus.0'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='************************'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check'/>
  </qemu:commandline>
</domain>

 

 

VM LOG

-device pcie-root-port,port=0x12,chassis=3,id=pci.3,bus=pcie.0,addr=0x2.0x2 \
-device pcie-root-port,port=0x13,chassis=4,id=pci.4,bus=pcie.0,addr=0x2.0x3 \
-device pcie-root-port,port=0x14,chassis=5,id=pci.5,bus=pcie.0,addr=0x2.0x4 \
-device ich9-usb-ehci1,id=usb,bus=pcie.0,addr=0x7.0x7 \
-device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pcie.0,multifunction=on,addr=0x7 \
-device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pcie.0,addr=0x7.0x1 \
-device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pcie.0,addr=0x7.0x2 \
-device virtio-serial-pci,id=virtio-serial0,bus=pci.2,addr=0x0 \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/MacinaboxCatalina/macos_disk.img","node-name":"libvirt-1-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-1-storage"}' \
-device ide-hd,bus=ide.2,drive=libvirt-1-format,id=sata0-0-2,bootindex=1,write-cache=on \
-netdev tap,fd=35,id=hostnet0 \
-device e1000-82545em,netdev=hostnet0,id=net0,mac=52:54:00:3e:21:a2,bus=pcie.0,addr=0x5 \
-chardev pty,id=charserial0 \
-device isa-serial,chardev=charserial0,id=serial0 \
-chardev socket,id=charchannel0,fd=37,server,nowait \
-device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 \
-device usb-tablet,id=input0,bus=usb.0,port=1 \
-vnc 0.0.0.0:0,websocket=5700 \
-k en-us \
-device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pcie.0,addr=0x1 \
-device usb-host,hostbus=3,hostaddr=2,id=hostdev0,bus=usb.0,port=2 \
-device usb-host,hostbus=5,hostaddr=5,id=hostdev1,bus=usb.0,port=3 \
-device virtio-balloon-pci,id=balloon0,bus=pci.5,addr=0x0 \
-usb \
-device usb-kbd,bus=usb-bus.0 \
-device '************************' \
-smbios type=2 \
-cpu Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
2020-09-21 02:30:03.582+0000: Domain id=7 is tainted: high-privileges
2020-09-21 02:30:03.582+0000: Domain id=7 is tainted: custom-argv
2020-09-21 02:30:03.582+0000: Domain id=7 is tainted: host-cpu
char device redirected to /dev/pts/0 (label charserial0)
usb_desc_get_descriptor: 1 unknown type 33 (len 10)
usb_desc_get_descriptor: 1 unknown type 33 (len 10)
2020-09-21T02:34:46.691096Z qemu-system-x86_64: warning: guest updated active QH
usb_desc_get_descriptor: 1 unknown type 33 (len 10)
usb_desc_get_descriptor: 1 unknown type 33 (len 10)

 

 

image.thumb.png.78d21c4589134dca45e4d40c7bac1bd2.png

 

image.png.23c48ef693989815310058f1e2b1e607.png

image.png

image.png

Edited by mSedek
added SECOND UPDATE
  • Like 1
Link to comment
4 hours ago, Sparkypk said:

Amazing work!


Has anyone had it install to a unassigned drive? I am new to Unraid but got this app to install on my cache drive, but want to use a separate drive for my full VM. What do I need to change XML to in order to get this to work. 
 

Thank You!

 here is a nice guide on that topic.

Link to comment

Wanted to share what I have achieved with this great tool

 

Catalina over passthrough 5700XT and Samsun EVO nvme 970

Ubuntu on regular array drive and a placeholder GT710 for my rtx3080

 

16 cores each 28GB ram each

 

controlling both with synergy 1  keyboard and 1 mouse

 

Loving my system with all my soul

 

thanks again @SpaceInvaderOne

 

fcc65314-5bab-435b-b0fb-4ab821491e14.thumb.jpg.6a34fe24c72cedb791bcd817737c0404.jpg 

 

Edited by mSedek
  • Like 2
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.