[Support] SpaceinvaderOne - Macinabox


Recommended Posts

1 hour ago, ghost82 said:

This is not explained in details and what it has to do with macinabox :D

 

At the same time and each vm with its gpu?

 

So, specify what you want to achieve clearly, in a new discussion.

All VM have gpu( i have 4 gpu).

I just need to watch what is happening on the VM.

I think  remote desktop will be just right for me. Whats remote desktop will be good for mac ?

Link to comment
1 hour ago, Exlife said:

Whats remote desktop will be good for mac ?

As a server or a client?

As a client to connect to windows, app store has microsoft remote desktop app (to connect to windows rdp).

As a server, just enable in system preferences -> sharing -> remote management and then use any vnc client to connect to the mac (standard port 5900).

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

It will be something like this:

https://www.youtube.com/watch?v=D9u1vX-pvLs

 

I actually bought that monitor in Linus's video and I can say it absolutely great for displaying a Mac VM, Windows VM, unRAID GUI at the same time or in any combination.

 

It revolutionized my life with testing and setting up passthrough VMs. Before it was intolerable always switching inputs and hoping to catch the boot screens

Edited by Jagadguru
Link to comment
8 hours ago, ghost82 said:

There is no efi partition detected, who knows what happened or what you did.

If the issue is only the missing efi partition containing the bootloader, try to add a second vdisk in the vm pointing to a bootloader image and boot from it.

https://github.com/SpaceinvaderOne/Macinabox/tree/master/custom_opencore

I didn't change / move anything... doesn't the 'main' image contain 2 volumes?   Also 'Mojave-opencore.img' exists in /mnt/user/isos...  Shouldn't that be it? 

 

Thanks for helping out !

 

Link to comment
4 minutes ago, tiny-e said:

doesn't the 'main' image contain 2 volumes?   Also 'Mojave-opencore.img' exists in /mnt/user/isos.

the main disk contains an apple efi partition by default, with apple bootloader which qemu is not able to boot, that's why we use alternative bootloaders opencore/clover.

Mojave-opencore.img is there, ok, but is it specified in the vm xml?

Link to comment
16 hours ago, ghost82 said:

As far as I know there should be no issue in booting monterey.

Can you share your diagnostics file? Possibly with both the big sur (working) and monterey (not working) vm configured.

Thanks @ghost82 - appreciate you taking a look!

 

Have attached diagnostic extracts with BigSur running fine and after trying unsuccessfully to get installer to start for Monterey. Have also attached the XML for Monterey in case there is something obvious that jumps out to you.

 

Any and all help is appreciated as hate my tech beating me!

XML - Monterey.rtf tower-diagnostics-20220511-0904 - Monterey Fail.zip tower-diagnostics-20220511-0855 - BigSur.zip

Edited by Rutj87
Link to comment
13 hours ago, ghost82 said:

As a server or a client?

As a client to connect to windows, app store has microsoft remote desktop app (to connect to windows rdp).

As a server, just enable in system preferences -> sharing -> remote management and then use any vnc client to connect to the mac (standard port 5900).

Server. i need to connect to mac from windows.

This(VNC) will work in my LAN(wifi) ? OR it use my internet traffic

Edited by Exlife
Link to comment
9 hours ago, Rutj87 said:

Any and all help is appreciated

I cannot see anything unusual in the monterey xml, it's strange that it bootloops.

Opencore img is ok, the vm boots into opencore.

Target disk should be ok, it's correctly defined in the xml.

Installation disk: we don't know if it's ok or not, may be corrupted?However it's correctly displayed in opencore as Base system.

Something wrong is happening after booting the base system, after some checks it should start to download the image installer, so maybe that for whatever reason virtio network is failing. Change the model type and also the bus and slot of the network card, so replace the network block with this:

    <interface type='bridge'>
      <mac address='52:54:00:3d:ae:25'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

 

Link to comment
52 minutes ago, ghost82 said:

I cannot see anything unusual in the monterey xml, it's strange that it bootloops.

Opencore img is ok, the vm boots into opencore.

Target disk should be ok, it's correctly defined in the xml.

Installation disk: we don't know if it's ok or not, may be corrupted?However it's correctly displayed in opencore as Base system.

Something wrong is happening after booting the base system, after some checks it should start to download the image installer, so maybe that for whatever reason virtio network is failing. Change the model type and also the bus and slot of the network card, so replace the network block with this:

    <interface type='bridge'>
      <mac address='52:54:00:3d:ae:25'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

 

THanks @ghost82 - tried that and still no success. Bar starts to load and then reboots back to boot loader. PS - have deleted install image and re-download via macinabox several times and still problem persists.

 

Any other suggestions?

Link to comment
1 minute ago, Rutj87 said:

Any other suggestions?

I'm quite lost...next step I would perform is analyze logs of the bootloader.

To do this you need to mount the bootloader image, access config.plist file and enable logging to file.

Once it bootloops, force stop the vm, mount again the bootloader image and download the txt log file generated, and hopefully you could see where and why it bootloops.

If you are not able to do this, share with me in pm your zipped monterey opencore img file, I'll made all the needed changes, send it back to you, so you could replace the image.

Link to comment

I get the full download and erase the drive to format with Big Sur but I cannot install because the network is not found.  The network utility shows Virtio ethernet with a 169.. address. I have ran this container before but I now have a different motherboard. Gigabyte Technology Co., Ltd. B550 AORUS ELITE AX V2, Version Default string
American Megatrends International, LLC., Version F14
BIOS dated: Mon 01 Nov 2021 12:00:00 AM PDT. 

Link to comment
On 5/11/2022 at 8:11 PM, ghost82 said:

I'm quite lost...next step I would perform is analyze logs of the bootloader.

To do this you need to mount the bootloader image, access config.plist file and enable logging to file.

Once it bootloops, force stop the vm, mount again the bootloader image and download the txt log file generated, and hopefully you could see where and why it bootloops.

If you are not able to do this, share with me in pm your zipped monterey opencore img file, I'll made all the needed changes, send it back to you, so you could replace the image.

Thanks @ghost82 for troubleshooting with me. XML and all VDisks are correct but still not working.
 

Anybody got any suggestions??

Link to comment
On 1/16/2022 at 6:03 PM, macmus said:

is there a way to change resolution of a display when not using passthrough card?

I'm able only to set 2560x1600 which is too big for my macbook air :(


anyone know how to do this (I don't have an external GPU)? I used opencore configuration -> Tools -> Mount EFI -> Mount Partition / Open Partition -> navigate to "EFI/OC/config.plist" and opened in BBEdit. Below is what I get. I'm looking for a way to be able to switch resolutions dynamically within the system settings (i.e. from 1920x1080 to 2048x1536 based on when i'm remoting in from my ipad vs. my desktop PC).

 

        <key>Output</key>
        <dict>
            <key>ClearScreenOnModeSwitch</key>
            <false/>
            <key>ConsoleMode</key>
            <string></string>
            <key>DirectGopRendering</key>
            <false/>
            <key>ForceResolution</key>
            <false/>
            <key>IgnoreTextInGraphics</key>
            <false/>
            <key>ProvideConsoleGop</key>
            <true/>
            <key>ReconnectOnResChange</key>
            <false/>
            <key>ReplaceTabWithSpace</key>
            <false/>
            <key>Resolution</key>
            <string>Max</string>
            <key>SanitiseClearScreen</key>
            <false/>
            <key>TextRenderer</key>
            <string>BuiltinGraphics</string>
            <key>UgaPassThrough</key>
            <false/>
        </dict>

 

Edited by Linguafoeda
Link to comment

My bigsur don't load without monitor.  

Are there solutions?  I think Monitor Emulator.  

maybe there are other ways ?

 

I solutions it. Macos don't load with VGA . With HDMI to VGA adapter all fine

Edited by Exlife
Link to comment
On 5/15/2022 at 10:41 PM, Linguafoeda said:


anyone know how to do this (I don't have an external GPU)? I used opencore configuration -> Tools -> Mount EFI -> Mount Partition / Open Partition -> navigate to "EFI/OC/config.plist" and opened in BBEdit. Below is what I get. I'm looking for a way to be able to switch resolutions dynamically within the system settings (i.e. from 1920x1080 to 2048x1536 based on when i'm remoting in from my ipad vs. my desktop PC).

 

        <key>Output</key>
        <dict>
            <key>ClearScreenOnModeSwitch</key>
            <false/>
            <key>ConsoleMode</key>
            <string></string>
            <key>DirectGopRendering</key>
            <false/>
            <key>ForceResolution</key>
            <false/>
            <key>IgnoreTextInGraphics</key>
            <false/>
            <key>ProvideConsoleGop</key>
            <true/>
            <key>ReconnectOnResChange</key>
            <false/>
            <key>ReplaceTabWithSpace</key>
            <false/>
            <key>Resolution</key>
            <string>Max</string>
            <key>SanitiseClearScreen</key>
            <false/>
            <key>TextRenderer</key>
            <string>BuiltinGraphics</string>
            <key>UgaPassThrough</key>
            <false/>
        </dict>

 

 

Bump - is there a way to setup multiple resolutions so that I don't need to mess with opencore config whenever i want to switch between say 1920x1080 to 2048x1536?

Edited by Linguafoeda
Link to comment

A note about the apple isa-applesmc device, because I'm seeing some errors in the configurations that users are sending to me for troubleshooting.

The applesmc isa device must be defined because apple needs smc keys (osk).

We have 2 ways to do this:

1. define it in the xml with:

    <qemu:arg value='-device'/>
    <qemu:arg value='isa-applesmc,osk=blablablablabla'/>

 

This will define the device pci8086,2918:

aaa.png.4a8e3fdc7606d426eeef233bde3c1a8c.png

 

2. define it in the config.plist:

	<key>DeviceProperties</key>
	<dict>
		<key>Add</key>
		<dict>
			<key>PciRoot(0x0)/Pci(0x1F,0x0)</key>
			<dict>
				<key>compatible</key>
				<string>pci8086,2916</string>
				<key>device-id</key>
				<data>FikA</data>
				<key>name</key>
				<string>pci8086,2916</string>
			</dict>
		</dict>
		<key>Delete</key>
		<dict/>
	</dict>

 

This will define ISA pci8086,2916:

bbb.png.e38d17266c164eb9fd27235344c0f367.png

 

If your choice is injecting the isa device with the config.plist you need to load virtualsmc.kext and you don't need the isa-applesmc defined in the xml (this is my preferred choice).

-----------

 

Do not use both options.

 

The original macinabox defines in its config.plist device isa injected at PciRoot(0x1)/Pci(0x1F,0x0).

This is because machine version is pc-q35-4.2.

 

Remember that if you change the machine version and you use a version >= 5.2 you need to change also the path to:

PciRoot(0x0)/Pci(0x1F,0x0)

 

Note PciRoot(0x0).

This is because with machine versions >= 5.2 the pciroot is 0x0 instead of 0x1.

This was reported earlier:

https://forums.unraid.net/topic/84430-hackintosh-tips-to-make-a-bare-metal-macos/?do=findComment&comment=929613

 

Qemu changelog:

Quote

in QEMU 5.1, PCI root UID changed to from 1 to 0 for all x86 machine types, this caused issues in Windows guest with virtio devices being re-enumeraed as new devices. QEMU 6.0 fixes it by reverting UID to 1 for 5.1 and older machine types. See commit 0a343a5add75 for details. For 5.2 and later machine types it might be necessary to reconfigure/reinstall Windows VM, if used disk image was created on 5.1 and older machine types.

 

Edited by ghost82
Link to comment
6 minutes ago, dam_j said:

Which exact version of the configurator tool is recommended ?

None? :D

Really...only textedit should be recommended.

 

However, if you want to use opencore configurator with the risk of breaking your efi, the version you want to use depends on the opencore bootloader version.

Original macinabox includes opencore v.0.7.7 so opencore configurator 2.55.0.0 should work as expected:

https://mackie100projects.altervista.org/occ-changelog-version-2-55-0-0/

 

Obviously, if you updated opencore bootloader you should read the configurator changelog and download a version compatible with the version of the bootloader.

Link to comment
19 minutes ago, ghost82 said:

None? :D

Really...only textedit should be recommended.

 

However, if you want to use opencore configurator with the risk of breaking your efi, the version you want to use depends on the opencore bootloader version.

Original macinabox includes opencore v.0.7.7 so opencore configurator 2.55.0.0 should work as expected:

https://mackie100projects.altervista.org/occ-changelog-version-2-55-0-0/

 

Obviously, if you updated opencore bootloader you should read the configurator changelog and download a version compatible with the version of the bootloader.

 

Yeah, like i wrote version 2.55.0.0 didn´t really does it for me and i´m not experienced enough to just use textedit...

Link to comment
2 hours ago, dam_j said:

like i wrote version 2.55.0.0 didn´t really does it for me

v. 2.55 was designed for oc 0.7.7 so it fits, but if you broke your efi in some way it's not a configurator that it will recover.

However you can reaplce your actual opencore image with a fresh one:

https://github.com/SpaceinvaderOne/Macinabox/raw/master/bootloader/OpenCore-v16.img.zip

Extract from zip and replace in /mnt/user/domains/Macinabox Monterey/Monterey-opencore.img

Link to comment

Hello there,

i recently installed the macinabox container. After installing i found some problems.

  1. The template has no "Run Mode" selction (in the video it has)
  2. There's no WebUI (in the video there is)

My search for solutions was not successful, perhaps someone is able to help me.

 

Thanks in advance.

Link to comment

Not sure if anyne needs to know this but monterey gave me some trouble and I had to edit the XML to change the processor type. My parts I edited before the disk section are:

 

<domain type='kvm' id='24' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>Elendil Macinabox Monterey</name>
  <uuid>8a8e5ae8-9cce-49e5-b883-e447e7ad0fa4</uuid>
  <description>MacOS Monterey</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="Monterey.png" os="osx"/>
  </metadata>
  <memory unit='KiB'>25165824</memory>
  <currentMemory unit='KiB'>25165824</currentMemory>
  <vcpu placement='static'>4</vcpu>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-4.2'>hvm</type>
    <loader readonly='yes' type='pflash'>/mnt/user/system/custom_ovmf/Macinabox_CODE-pure-efi.fd</loader>
    <nvram>/mnt/user/system/custom_ovmf/Macinabox_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='custom' match='exact' check='full'>
    <model fallback='forbid'>IvyBridge</model>
    <feature policy='disable' name='pclmuldq'/>
    <feature policy='require' name='fma'/>
    <feature policy='disable' name='pcid'/>
    <feature policy='disable' name='tsc-deadline'/>
    <feature policy='disable' name='f16c'/>
    <feature policy='require' name='hypervisor'/>
    <feature policy='disable' name='fsgsbase'/>
    <feature policy='require' name='bmi1'/>
    <feature policy='require' name='avx2'/>
    <feature policy='disable' name='smep'/>
    <feature policy='require' name='bmi2'/>
    <feature policy='disable' name='erms'/>
    <feature policy='require' name='xsaveopt'/>
    <feature policy='disable' name='rdtscp'/>
    <feature policy='disable' name='fma4'/>
    <feature policy='require' name='invtsc'/>
  </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>

 

Parts of interest are the <vcpu> and the <cpu_mode>  sections. The reason for the edits is I would just get stuck with the progress bar on boot mot moving at all athe the CPU just consuming 1 core on my unraid box and nothing would happen (just stuck on the apple logo with no progress bar movement essentially).

 

Unsure if anyone else has this issue but that is how I fixed it.

 

This is editing the XML from the VM's page.

 

The thing that fixed it for me was:

 

<cpu mode='custom' match='exact' check='full'>
    <model fallback='forbid'>IvyBridge</model>

 

and also

 

<vcpu placement='static'>4</vcpu>

 

Both which are defined differently in the template. You can also try <model fallback='forbid'>SandyBridge</model> if you like.

 

 

 

Edit:

 

Another thing I forgot to say I did was add to the bootom of the xml a change to mem balloon and some qemu arguments:

 

</video>
    <memballoon model="none"/>
  </devices>
  <qemu:commandline>
    <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,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check"/>
  </qemu:commandline>
</domain>

 

Also near the top I changed pc-q35-6.2 to:

 

type arch="x86_64" machine="pc-q35-4.2">hvm</type>

 

This also alleviated some crashes I had/ and or stuck on the black apple.

 

Edited by PeteAsking
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.