├── .DS_Store ├── .gitignore ├── AS-SL-Boot.sh ├── Cheetah-Boot.sh ├── Cheetah-Install.sh ├── LICENSE ├── MLion-Boot-HiRes.sh ├── MLion-Boot.sh ├── MLion-Install-HiRes.sh ├── MLion-Install.sh ├── README.md ├── SLeopard-Boot-HiRes.sh ├── SLeopard-Boot.sh ├── SLeopard-Install-HiRes.sh ├── SLeopard-Install.sh ├── SLeopardPPC-Boot.sh ├── assets ├── Header.png ├── HeaderGallery.png └── LegacyOSXKVMLogo.png ├── cdrom └── .placeholder ├── harddrives └── .placeholder ├── info ├── AS_SL.md ├── CONVERSIONS.md ├── HDD_CREATION.md └── REPO_STRUCT.md ├── opencore ├── .DS_Store ├── .placeholder ├── 1920x1080-Opencore-MLion.qcow2 ├── AS_SL.zip ├── LegacyDarwinKVM.qcow2 ├── opencore-MLion.qcow2 └── opencore-SLeopard.qcow2 ├── osxinstaller └── .placeholder ├── ovmf ├── .DS_Store ├── OVMF_CODE.fd └── OVMF_VARS.fd ├── push.sh ├── quick-custom-boot-script.sh ├── quick-custom-install-script.sh ├── quick-storage.sh ├── showcase ├── .DS_Store ├── CheetaDesktop.png ├── MountainLionDesktop.png ├── Phoenix.png ├── SLServer.png ├── SnowLeopardDesktop.png ├── armhost.png └── armhostabout.png ├── virtmanager ├── AddOpenCore.png ├── AddingHD.png ├── AddingInstaller.png ├── AddingVGA1.png ├── AddingVGA2.png ├── Boot.png ├── CPU.png ├── Import.png ├── LegacyOSXKVM.xml ├── MacDesktop.png ├── MacInstall.png ├── NIC.png ├── RAM.png └── placeholder.file ├── xserve_boot.sh └── xserve_install.sh /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/.DS_Store -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # QEMU/KVM Git Ignore template. Excludes IMG's and QCOW2's. 2 | 3 | /opencore/1920x1080-OpenCoreSLeopard.img 4 | **/harddrives/* 5 | **/cdrom/* 6 | **/osxinstaller/* 7 | 8 | Boot.sh 9 | Install.sh 10 | -------------------------------------------------------------------------------- /AS-SL-Boot.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Copyright (c) 2024 RoyalGraphX. 4 | # GNU General Public License v3.0 5 | # 6 | 7 | clear 8 | 9 | qemu-system-x86_64 -machine pc-q35-5.1,vmport=off -bios ./ovmf/OVMF_CODE.fd \ 10 | -name "Snow Leopard on Apple Silicon" \ 11 | -uuid 3B96F0FA-7384-4082-A1CD-55AA7E657790 \ 12 | -vga none \ 13 | -device vmware-svga \ 14 | -device virtio-rng-pci \ 15 | -device e1000,mac=EE:E9:D3:14:05:CF,netdev=net0 \ 16 | -netdev user,id=net0 \ 17 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 18 | -smp 8,cores=4,threads=2 \ 19 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 20 | -m 6G \ 21 | -device intel-hda -device hda-output \ 22 | -usb \ 23 | -device usb-tablet,bus=usb-bus.0 \ 24 | -device usb-mouse,bus=usb-bus.0 \ 25 | -device usb-kbd,bus=usb-bus.0 \ 26 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 27 | -drive "if=none,format=raw,media=disk,id=OpenCore,file=opencore/AS_SL.img,discard=unmap,detect-zeroes=unmap" \ 28 | -device ide-hd,bus=ide.1,drive=HardDrives,bootindex=1 \ 29 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/macintosh.img,discard=unmap,detect-zeroes=unmap" \ -------------------------------------------------------------------------------- /Cheetah-Boot.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | qemu-system-ppc -L pc-bios \ 4 | -name "Mac OS X Cheetah" \ 5 | -uuid 3159DCE2-A537-47C1-B2C6-FFB44069788C \ 6 | -smp 1,cores=1 \ 7 | -boot c \ 8 | -M mac99 \ 9 | -m 2048 \ 10 | -device ide-hd,bus=ide.1,drive=HardDrives \ 11 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/cheetah.img,discard=unmap,detect-zeroes=unmap,detect-zeroes=unmap" \ 12 | -------------------------------------------------------------------------------- /Cheetah-Install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | qemu-system-ppc -L pc-bios \ 4 | -name "Mac OS X Cheetah" \ 5 | -uuid 3159DCE2-A537-47C1-B2C6-FFB44069788C \ 6 | -smp 1,cores=1 \ 7 | -boot d \ 8 | -M mac99 \ 9 | -m 2048 \ 10 | -device ide-cd,bus=ide.0,drive=OSXInstaller \ 11 | -drive "if=none,format=raw,media=disk,id=OSXInstaller,file=osxinstaller/MacOSX10.0.3.iso,discard=unmap,detect-zeroes=unmap" \ 12 | -device ide-hd,bus=ide.1,drive=HardDrives \ 13 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/cheetah.img,discard=unmap,detect-zeroes=unmap,detect-zeroes=unmap" \ 14 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | BSD 3-Clause License 2 | 3 | Copyright (c) 2024, RoyalGraphX 4 | 5 | Redistribution and use in source and binary forms, with or without 6 | modification, are permitted provided that the following conditions are met: 7 | 8 | 1. Redistributions of source code must retain the above copyright notice, this 9 | list of conditions and the following disclaimer. 10 | 11 | 2. Redistributions in binary form must reproduce the above copyright notice, 12 | this list of conditions and the following disclaimer in the documentation 13 | and/or other materials provided with the distribution. 14 | 15 | 3. Neither the name of the copyright holder nor the names of its 16 | contributors may be used to endorse or promote products derived from 17 | this software without specific prior written permission. 18 | 19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 20 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 21 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 22 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 23 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 25 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 26 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 27 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- /MLion-Boot-HiRes.sh: -------------------------------------------------------------------------------- 1 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 2 | -name "Mac OS X Mountain Lion" \ 3 | -vga none \ 4 | -device vmware-svga \ 5 | -device virtio-rng-pci \ 6 | -device e1000,mac=EE:E9:D3:14:05:CF,netdev=net0 \ 7 | -netdev user,id=net0 \ 8 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 9 | -smp 2,cores=2 \ 10 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 11 | -m 4G \ 12 | -device ich9-intel-hda \ 13 | -device hda-duplex \ 14 | -usb \ 15 | -device usb-tablet,bus=usb-bus.0 \ 16 | -device usb-mouse,bus=usb-bus.0 \ 17 | -device usb-kbd,bus=usb-bus.0 \ 18 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 19 | -drive "if=none,media=disk,id=OpenCore,file=opencore/1920x1080-Opencore-MLion.qcow2,discard=unmap,detect-zeroes=unmap" \ 20 | -device ide-hd,bus=ide.1,drive=HardDrives,bootindex=1 \ 21 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/MountainLion.img,discard=unmap,detect-zeroes=unmap" \ 22 | -------------------------------------------------------------------------------- /MLion-Boot.sh: -------------------------------------------------------------------------------- 1 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 2 | -name "Mac OS X Mountain Lion" \ 3 | -vga none \ 4 | -device vmware-svga \ 5 | -device virtio-rng-pci \ 6 | -device e1000,mac=EE:E9:D3:14:05:CF,netdev=net0 \ 7 | -netdev user,id=net0 \ 8 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 9 | -smp 2,cores=2 \ 10 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 11 | -m 4G \ 12 | -device ich9-intel-hda \ 13 | -device hda-duplex \ 14 | -usb \ 15 | -device usb-tablet,bus=usb-bus.0 \ 16 | -device usb-mouse,bus=usb-bus.0 \ 17 | -device usb-kbd,bus=usb-bus.0 \ 18 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 19 | -drive "if=none,media=disk,id=OpenCore,file=opencore/opencore-MLion.qcow2,discard=unmap,detect-zeroes=unmap" \ 20 | -device ide-hd,bus=ide.1,drive=HardDrives,bootindex=1 \ 21 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/MountainLion.img,discard=unmap,detect-zeroes=unmap" \ 22 | -------------------------------------------------------------------------------- /MLion-Install-HiRes.sh: -------------------------------------------------------------------------------- 1 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 2 | -name "Mac OS X Mountain Lion" \ 3 | -vga none \ 4 | -device vmware-svga \ 5 | -device virtio-rng-pci \ 6 | -device e1000,mac=EE:E9:D3:14:05:CF,netdev=net0 \ 7 | -netdev user,id=net0 \ 8 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 9 | -smp 2,cores=2 \ 10 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 11 | -m 4G \ 12 | -device ich9-intel-hda \ 13 | -device hda-duplex \ 14 | -usb \ 15 | -device usb-tablet,bus=usb-bus.0 \ 16 | -device usb-mouse,bus=usb-bus.0 \ 17 | -device usb-kbd,bus=usb-bus.0 \ 18 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 19 | -drive "if=none,media=disk,id=OpenCore,file=opencore/1920x1080-Opencore-MLion.qcow2,discard=unmap,detect-zeroes=unmap" \ 20 | -device ide-hd,bus=ide.1,drive=HardDrives,bootindex=1 \ 21 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/MountainLion.img,discard=unmap,detect-zeroes=unmap" \ 22 | -device ide-hd,bus=ide.2,drive=OSXInstaller,bootindex=2 \ 23 | -drive "if=none,format=raw,media=disk,id=OSXInstaller,file=osxinstaller/MountainLion.img,discard=unmap,detect-zeroes=unmap" \ 24 | -------------------------------------------------------------------------------- /MLion-Install.sh: -------------------------------------------------------------------------------- 1 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 2 | -name "Mac OS X Mountain Lion" \ 3 | -vga none \ 4 | -device vmware-svga \ 5 | -device virtio-rng-pci \ 6 | -device e1000,mac=EE:E9:D3:14:05:CF,netdev=net0 \ 7 | -netdev user,id=net0 \ 8 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 9 | -smp 2,cores=2 \ 10 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 11 | -m 4G \ 12 | -device ich9-intel-hda \ 13 | -device hda-duplex \ 14 | -usb \ 15 | -device usb-tablet,bus=usb-bus.0 \ 16 | -device usb-mouse,bus=usb-bus.0 \ 17 | -device usb-kbd,bus=usb-bus.0 \ 18 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 19 | -drive "if=none,media=disk,id=OpenCore,file=opencore/opencore-MLion.qcow2,discard=unmap,detect-zeroes=unmap" \ 20 | -device ide-hd,bus=ide.1,drive=HardDrives,bootindex=1 \ 21 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/MountainLion.img,discard=unmap,detect-zeroes=unmap" \ 22 | -device ide-hd,bus=ide.2,drive=OSXInstaller,bootindex=2 \ 23 | -drive "if=none,format=raw,media=disk,id=OSXInstaller,file=osxinstaller/MountainLion.img,discard=unmap,detect-zeroes=unmap" \ 24 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 |

4 | 5 |

6 | 7 |

8 | 9 |

A QEMU Template for 'Legacy' Mac OS X (PPC/Intel) Guests.

10 |
11 | 12 |

Current Support Table

13 | 14 | | Mac OS X | Status | Architecture | Boot Script | Installer | Notes | 15 | | --- | --- | --- | --- | --- | --- | 16 | | Version 10.0 : "Cheetah" | Boots, installs, runs | PowerPC | ./Cheetah-Boot.sh | [Download](https://dl.bobpony.com/macos/cheetah/Mac%20OS%20X%2010.0.3.7z) 17 | | Version 10.1 : "Puma" | Boots, installs, runs | PowerPC | ./Puma-Boot.sh | [Download](https://dl-lt1.winworldpc.com/Abandonware%20Operating%20Systems/Macintosh/Apple%20Mac%20OS%20X%2010.1%20(''Puma''%2010.1.5G64).7z) 18 | | Version 10.2: "Jaguar" | Boots, installs, runs | PowerPC | ./Jaguar-Boot.sh | [Download](https://dl.bobpony.com/macos/jaguar/Apple%20Mac%20OS%20X%2010.2%20%2810.2.6C115%29.7z) | Disk 1 & 2 Needed | 19 | | Version 10.3: "Panther" | Boots, installs, runs | PowerPC | ./Panther-Boot.sh | [Disk 1](https://dl-alt1.winworldpc.com/Apple%20Mac%20OS%20X%2010.3.0%20-%20Disk%201.7z) & [Disk 2](https://dl-alt1.winworldpc.com/Apple%20Mac%20OS%20X%2010.3.0%20-%20Disk%202.7z)| Disk 1 & 2 Needed | 20 | | Version 10.4: "Tiger" | Boots, installs, runs | PowerPC | ./Tiger-Boot.sh | [Download](https://drive.google.com/file/d/16IHD6UjQUSfAudv8UrICOMudaVSeOorV/view) 21 | | Version 10.5: "Leopard" | Boots, installs, runs | PowerPC / Intel | ./Leopard-PPC-Boot.sh & ./Leopard-Intel-Boot.sh | [Download PPC](https://macintoshgarden.org/apps/mac-osx-mac-os-10-ppc?page=1) & [Download Intel](https://archive.org/details/OsxLeopardInstall) 22 | | Version 10.6: "Snow Leopard" | Boots, installs, runs | PowerPC (?) / Intel | ./SLeopard-Boot.sh | [Download](https://www.dropbox.com/s/9qeeuiasp8l0rys/sl_utm.qcow2?dl=0) | [Download 1920x1080p-OpenCoreSLeopard.img](https://www.dropbox.com/s/xwf1py4tw3d3qjg/1920x1080-OpenCoreSLeopard.img?dl=0) | 23 | | Version 10.7: "Lion" | Untested | Intel | ./Lion-Boot.sh | [Download](https://archive.org/details/install-mac-os-x-lion-10.7.0-lion) | | 24 | | Version 10.8: "Mountain Lion" | Boots, installs, runs | Intel | ./MLion-Boot.sh | [Download](https://archive.org/details/osxmountainlion1085) | | 25 | | Version 10.9: "Mavericks" | Untested | Intel | ./Mavericks-Boot.sh | [Download](https://archive.org/details/OSXMavericksInstallDVD) | | 26 | | Version 10.10: "Yosemite" | Untested | Intel | ./Yosemite-Boot.sh | [Download](http://swcdn.apple.com/content/downloads/21/09/031-20634/8d84o1ky5gn2agnf5kiz9eed134n7y3q4c/RecoveryHDUpdate.pkg) 27 | | Version 10.11: "El Capitan" | Untested | Intel | ./Capitan-Boot.sh | [Download](http://swcdn.apple.com/content/downloads/08/58/031-45768/yy0xr85ltis3a7mxuqf3zgaw7sovupckd7/RecoveryHDUpdate.pkg) 28 | | Version 10.12: "Sierra" | Boots, installs, runs | Intel | ./Sierra-Boot.sh | [Download](http://swcdn.apple.com/content/downloads/01/53/031-86778/pnekzincp6rkf5iu91onj1bm5mw1gotnwg/RecoveryHDUpdate.pkg) 29 | 30 |
For anything Mac OS X 10.13 High Sierra and above, please refer to DarwinKVM
31 | 32 |
33 |

Info Center

34 |
REPO_STRUCT.md - Explains repository files/folders.
35 |
AS_SL.md - Explains how to run Snow Leopard on Apple Silicon
36 |
CONVERSIONS.md - Explains outdated method for converting various files.
37 |
HDD_CREATION.md - Explains how to use qemu-img to create a blank .img for installation
38 | 39 |

40 | 41 |

42 | 43 |

Mac OS X Sierra (AppleInternal "Phoenix" A1708)

44 |

45 | 46 |

47 | 48 |

Mac OS X Mountain Lion

49 |

50 | 51 |

52 | 53 |

Mac OS X Snow Leopard on Apple Silicon compiling/running i386

54 |

55 | 56 | 57 |

58 | 59 |

Mac OS X Snow Leopard on x86_64

60 |

61 | 62 |

63 | 64 |

Mac OS X Server Snow Leopard (Xserve2,1)

65 |

66 | 67 |

68 | 69 | 70 |

Mac OS X Cheetah (PPC)

71 |

72 | 73 |

74 | 75 |
This project is now deprecated ! Check out DarwinKVM for extended support ꩓
76 | -------------------------------------------------------------------------------- /SLeopard-Boot-HiRes.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 4 | -name "Snow Leopard" \ 5 | -uuid 3259DCE2-A537-47C1-B2C6-FFB44069788C \ 6 | -vga none \ 7 | -device vmware-svga \ 8 | -device virtio-rng-pci \ 9 | -device e1000,mac=EE:E9:D3:14:05:CF,netdev=net0 \ 10 | -netdev user,id=net0 \ 11 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 12 | -smp 8,cores=4 \ 13 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 14 | -m 16G \ 15 | -device ich9-intel-hda \ 16 | -device hda-duplex \ 17 | -usb \ 18 | -device usb-tablet,bus=usb-bus.0 \ 19 | -device usb-mouse,bus=usb-bus.0 \ 20 | -device usb-kbd,bus=usb-bus.0 \ 21 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 22 | -drive "if=none,format=raw,media=disk,id=OpenCore,file=opencore/1920x1080-OpenCoreSLeopard.img,discard=unmap,detect-zeroes=unmap" \ 23 | -device ide-hd,bus=ide.2,drive=HardDrives,bootindex=2 \ 24 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/macintosh.img,discard=unmap,detect-zeroes=unmap" \ 25 | -------------------------------------------------------------------------------- /SLeopard-Boot.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 4 | -name "Snow Leopard" \ 5 | -uuid 3159DCE2-A537-47C1-B2C6-FFB44069788C \ 6 | -vga none \ 7 | -device vmware-svga \ 8 | -device virtio-rng-pci \ 9 | -device e1000,mac=8A:A8:6A:F8:00:51,netdev=net0 \ 10 | -netdev user,id=net0 \ 11 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 12 | -smp 4,cores=2 \ 13 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 14 | -m 4G \ 15 | -device ich9-intel-hda \ 16 | -device hda-duplex \ 17 | -usb \ 18 | -device usb-tablet,bus=usb-bus.0 \ 19 | -device usb-mouse,bus=usb-bus.0 \ 20 | -device usb-kbd,bus=usb-bus.0 \ 21 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 22 | -drive "if=none,media=disk,id=OpenCore,file=opencore/opencore-SLeopard.qcow2,discard=unmap,detect-zeroes=unmap" \ 23 | -device ide-hd,bus=ide.2,drive=HardDrives,bootindex=2 \ 24 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/macintosh.img,discard=unmap,detect-zeroes=unmap" \ 25 | -------------------------------------------------------------------------------- /SLeopard-Install-HiRes.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 4 | -name "Snow Leopard" \ 5 | -uuid 3159DCE2-A537-47C1-B2C6-FFB44069788C \ 6 | -vga none \ 7 | -device vmware-svga \ 8 | -device virtio-rng-pci \ 9 | -device e1000,mac=8A:A8:6A:F8:00:51,netdev=net0 \ 10 | -netdev user,id=net0 \ 11 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 12 | -smp 8,cores=4 \ 13 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 14 | -m 16G \ 15 | -device ich9-intel-hda \ 16 | -device hda-duplex \ 17 | -usb \ 18 | -device usb-tablet,bus=usb-bus.0 \ 19 | -device usb-mouse,bus=usb-bus.0 \ 20 | -device usb-kbd,bus=usb-bus.0 \ 21 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 22 | -drive "if=none,format=raw,media=disk,id=OpenCore,file=opencore/1920x1080-OpenCoreSLeopard.img,discard=unmap,detect-zeroes=unmap" \ 23 | -device ide-hd,bus=ide.1,drive=OSXInstaller,bootindex=1 \ 24 | -drive "if=none,media=disk,id=OSXInstaller,file=osxinstaller/sl_utm.qcow2,discard=unmap,detect-zeroes=unmap" \ 25 | -device ide-hd,bus=ide.2,drive=HardDrives,bootindex=2 \ 26 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/macintosh.img,discard=unmap,detect-zeroes=unmap" \ 27 | -------------------------------------------------------------------------------- /SLeopard-Install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 4 | -name "Snow Leopard" \ 5 | -uuid 3159DCE2-A537-47C1-B2C6-FFB44069788C \ 6 | -vga none \ 7 | -device vmware-svga \ 8 | -device virtio-rng-pci \ 9 | -device e1000,mac=8A:A8:6A:F8:00:51,netdev=net0 \ 10 | -netdev user,id=net0 \ 11 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 12 | -smp 4,cores=2 \ 13 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 14 | -m 4G \ 15 | -device ich9-intel-hda \ 16 | -device hda-duplex \ 17 | -usb \ 18 | -device usb-tablet,bus=usb-bus.0 \ 19 | -device usb-mouse,bus=usb-bus.0 \ 20 | -device usb-kbd,bus=usb-bus.0 \ 21 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 22 | -drive "if=none,media=disk,id=OpenCore,file=opencore/opencore-SLeopard.qcow2,discard=unmap,detect-zeroes=unmap" \ 23 | -device ide-hd,bus=ide.1,drive=OSXInstaller,bootindex=1 \ 24 | -drive "if=none,media=disk,id=OSXInstaller,file=osxinstaller/sl_utm.qcow2,discard=unmap,detect-zeroes=unmap" \ 25 | -device ide-hd,bus=ide.2,drive=HardDrives,bootindex=2 \ 26 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/macintosh.img,discard=unmap,detect-zeroes=unmap" \ 27 | -------------------------------------------------------------------------------- /SLeopardPPC-Boot.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | qemu-system-ppc -accel tcg,tb-size=2048 \ 4 | -name "Mac OS X Snow Leopard [PPC Mode]" \ 5 | -machine mac99,via=pmu \ 6 | -cpu G4 \ 7 | -m 2048 \ 8 | -netdev user,id=qemunet0 \ 9 | -device e1000,netdev=qemunet0 \ 10 | -g 1440x900x32 \ 11 | -device VGA,edid=on,vgamem_mb=64,xres=1440,yres=900 \ 12 | -monitor stdio \ 13 | -boot d \ 14 | -hda "harddrives/macintosh.img" \ 15 | -cdrom "osxinstaller/10.6_snowleopard_DP_10A96_clientdvd.iso" -------------------------------------------------------------------------------- /assets/Header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/assets/Header.png -------------------------------------------------------------------------------- /assets/HeaderGallery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/assets/HeaderGallery.png -------------------------------------------------------------------------------- /assets/LegacyOSXKVMLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/assets/LegacyOSXKVMLogo.png -------------------------------------------------------------------------------- /cdrom/.placeholder: -------------------------------------------------------------------------------- 1 | placeholder -------------------------------------------------------------------------------- /harddrives/.placeholder: -------------------------------------------------------------------------------- 1 | placeholder -------------------------------------------------------------------------------- /info/AS_SL.md: -------------------------------------------------------------------------------- 1 | ### A Guide on using Snow Leopard on Apple Silicon Macs 2 | 3 | This is not an in depth guide explaining the issues with running Snow Leopard on Apple Silicon Macs, as I have other things to work on such as, fixing those issues. You can skip this entire paragraph if all you need to know is how to run Snow Leopard. For now though, all I really need to explain is that for some reason the various KP's that users experience when attempting to first boot or install Mac OS X Snow Leopard on M-Series Macs such as the Commpage or Installer KP are results of some weird TCG/32-Bit emulation errors. As well as OS X itself having trouble with the emulated TCG from ARM64 hosts. I've observed that x86_64 hosts using TCG (or commonly known as simply using emulation and not virtualizing) do not experience such errors. Leads me to believe that the installer uses various older parts for 32-Bit cryptography while installing, and the commpage error mainly being the CPU being weird, as in, how it appears to the guest machine. Reading the actual commpage.c file you'll see the section it kernel panics on. Either way, it turns out it's simply the installer phase. Commpage error was mitigated with OC, and as for the installer randomly having a protection fault 13 during the install, it works perfectly fkn fine once its actually installed lmfao. Also, I personally have not had enough time to properly debug what is happening with TCG on ARM64, so I could be completely wrong on my theory and OC could mitigate every issue if used properly. Take my words with a grain of salt, simply read below on how to actually *use* this guide... 4 | 5 | So basically, I installed Mac OS X Snow Leopard to a ``macintosh.img`` on an x86_64 host, my main PC... and then once the screen to reboot appeared, I simply shut the VM down gracefully using the reboot option, and preserved the preinstalled ``macintosh.img`` that is ready for first time boot. It does not have any sort of username or anything, its literally right after install and reboot, so... basically I have to share this ``macintosh_preinstalled.img`` to you guys on Apple Silicon Macs, just in case you do not have an x86_64 machine available to you. 6 | 7 | ***All you need to do***, is unzip the AS_SL.zip file in ``opencore/`` so that you can get ``AS_SL.img``. Now, you need to download the ``40GB`` disk image of Mac OS X Snow Leopard, and drop it into ``harddrives/`` and rename it from ``macintosh_preinstalled.img`` to ``macintosh.img``. You are now ready to simply use ``AS-SL-Boot.sh``. 8 | 9 | As per usual, the ``macintosh_preinstalled.img`` is simply for preservation. As well as allowing users to use older software that they can no longer use. At any moment this image can and will be removed or taken down by the appropriate parties or whoever deems it required to be. Thanks for reading, and hopefully everything works out and boots properly! 10 | 11 | UPDATE: Thanks to another blog post written up by Adam over at [xadammr.au](https://xadammr.au/blog/snow-leopard-utm-apple-silicon), which I failed to see until recently, they've made an excellent discovery for those who would prefer using Snow Leopard on UTM the GUI wrapper of QEMU rather than commandline. It seems that disabling S3 sleep states using ``-global ICH9-LPC.disable_s3=0``, similar to newer ICH9 LPC globals we use for things like disabling ``acpi-pci-hotplug-with-bridge-support`` for MacPro7,1 on QEMU 6.1+, fixes a further kernel panic that happens later in the boot process when using UTM's modified [QEMU fork](https://github.com/utmapp/qemu) which while super impressive and thankful for the iOS support it's been given, has indeed given me trouble booting various OS X copies under UTM. Thanks again to Adam for the discovery, and I've updated this README incase you have yet to see the article or are running into a later KP and would need this flag added to the script. Which I may just do anyways by default at a later date. I unarchived this repo just for this, because Adam was one of the original people I read over Snow Leopard OC configurations before this or DarwinKVM was even created. Big Shoutout. 12 | 13 | [Download macintosh_preinstalled.img](https://www.dropbox.com/scl/fi/rs07j4k7ooc1bqif1w07p/macintosh_preinstall.img?rlkey=bnrvktjghyj4q5no2k5uk79ap&dl=0) 14 | 15 |

16 | 17 | 18 |

19 | -------------------------------------------------------------------------------- /info/CONVERSIONS.md: -------------------------------------------------------------------------------- 1 | ### A Guide on converting DMG's to usable Legacy OS X QEMU Guest qcow2's 2 | 3 | ##### Credits to Adam Roe for the write-up! Check out his original post [here](https://adamroe.me/blog/snow-leopard-utm.php) 4 | 5 | You’ll need qemu-img, which is provided by QEMU. 6 | 7 | `$ brew install qemu` 8 | 9 | ### Source a disk image 10 | 11 | Mount the disk image: 12 | 13 | ``` 14 | $ hdiutil mount /tmp/10.6.7-10J4139-ACDT-OSX.dmg 15 | Checksumming весь диск (Apple_HFS : 0)... 16 | ............................................................................... 17 | весь диск (Apple_HFS : 0): verified CRC32 $39AD4D29 18 | verified CRC32 $7AA20F20 19 | /dev/disk4 /Volumes/Mac OS X Install DVD 20 | ``` 21 | 22 | This will mount the disk image to /Volumes/Mac OS X Install DVD 23 | 24 | ### Use asr to restore disk image to a new disk image 25 | 26 | First lets create an empty image with a size rounded up enough to fit the other. 27 | 28 | ``` 29 | $ hdiutil create -size 10G -fs HFS+ -volname utm_installer /tmp/sl_utm.dmg 30 | created: /tmp/sl_utm.dmg 31 | ``` 32 | 33 | … and mount it: 34 | 35 | ``` 36 | $ hdiutil mount /tmp/sl_utm.dmg 37 | /dev/disk5 GUID_partition_scheme 38 | /dev/disk5s1 EFI 39 | /dev/disk5s2 Apple_HFS /Volumes/utm_installer 40 | ``` 41 | 42 | … which mounts the blank disk image to /Volumes/utm_installer 43 | 44 | Then, use Apple System Restore to write the installer to the read-write disk image: 45 | 46 | ``` 47 | $ sudo asr restore \ 48 | -source /Volumes/Mac\ OS\ X\ Install\ DVD \ 49 | -target /Volumes/utm_installer \ 50 | -erase -noverify 51 | ``` 52 | 53 | Enter y when prompted 54 | 55 | ``` 56 | Validating target...done 57 | Validating source...done 58 | Erase contents of /dev/disk5s2 (/Volumes/utm_installer)? [ny]: y 59 | Validating sizes...done 60 | Restoring ....10....20....30....40....50....60....70....80....90....100 61 | Restored target device is /dev/disk5s2. 62 | Remounting target volume...done 63 | Restore completed successfully. 64 | ``` 65 | 66 | Eject all the disk images: 67 | 68 | ``` 69 | $ hdiutil eject /Volumes/Mac\ OS\ X\ Install\ DVD 70 | "disk4" ejected. 71 | 72 | $ hdiutil eject /Volumes/Mac\ OS\ X\ Install\ DVD\ 1 73 | "disk5" ejected. 74 | ``` 75 | 76 | ### Convert new disk image to cdr master 77 | 78 | Now, we need to convert the disk image to a CDR master: 79 | 80 | ``` 81 | $ hdiutil convert /tmp/sl_utm.dmg -format UDTO -o /tmp/sl_utm.cdr 82 | Reading Protective Master Boot Record (MBR : 0)... 83 | Reading GPT Header (Primary GPT Header : 1)... 84 | Reading GPT Partition Data (Primary GPT Table : 2)... 85 | Reading (Apple_Free : 3)... 86 | Reading EFI System Partition (C12A7328-F81F-11D2-BA4B-00A0C93EC93B : 4)... 87 | .. 88 | Reading disk image (Apple_HFS : 5)... 89 | ......................................................................................................................... 90 | Reading (Apple_Free : 6)... 91 | Reading GPT Partition Data (Backup GPT Table : 7)... 92 | ......................................................................................................................... 93 | Reading GPT Header (Backup GPT Header : 8)... 94 | ......................................................................................................................... 95 | Elapsed Time: 54.014s 96 | Speed: 189.6MB/s 97 | Savings: 0.0% 98 | created: /tmp/sl_utm.cdr 99 | ``` 100 | 101 | ### Convert cdr master to raw disk image 102 | 103 | Finally, we need to convert the ISO into something that can be mounted by QEMU 104 | 105 | ``` 106 | $ qemu-img convert -p /tmp/sl_utm.cdr -O raw sl_utm.img 107 | (100.00/100%) 108 | ``` 109 | 110 | ### Converting to qcow2 111 | 112 | ``` 113 | $ qemu-img convert -f raw -O qcow2 sl_utm.img sl_utm.qcow2 114 | ``` 115 | 116 | # This requires using a Mac (for best results... I couldn't do dmg2img on Linux and then convert that to qcow2, I'd get "Still waiting on root device") ! You can get away with doing it in a VM, which is what I recommend. -------------------------------------------------------------------------------- /info/HDD_CREATION.md: -------------------------------------------------------------------------------- 1 |

How to: Creating Macintosh SSD for installation

2 | 3 | ```bash 4 | qemu-img create -f raw harddrives/macintosh.img 128G 5 | ``` 6 |
Warning! This expects you to have 128GB free storage!
7 | 8 |

Create a virtual HDD image where Mac OS X will be installed. If you change the name of the disk image from `macintosh.img` to something else, the boot scripts will need to be updated to point to the new image name. Feel free to replace 128G with your desired disk size.

9 | -------------------------------------------------------------------------------- /info/REPO_STRUCT.md: -------------------------------------------------------------------------------- 1 | ### Explaining the Repository Structure 2 | 3 | ```bash 4 | . 5 | ├── cdrom 6 | │   └── 1920x1080-OpenCore.img 7 | ├── harddrives 8 | │   └── macintosh.img 9 | ├── opencore 10 | │   └── opencore.qcow2 11 | ├── osxinstaller 12 | │   └── sl_utm.qcow2 13 | └── SLeopard-Boot.sh 14 | ``` 15 | 16 | ##### osxinstaller/ 17 | 18 | ###### Use this directory to store your installer images, in this example i'm using my fixed snow leopard qcow2 19 | 20 | ##### opencore/ 21 | 22 | ###### this directory stores the OpenCore bootloader! you can customize it, manage it, add more, and quickly swap to working opencores for other OS X installs! 23 | 24 | ##### harddrives/ 25 | 26 | ###### Use this directory to store your Macintosh SSD and use to manage multiple installs! 27 | 28 | ##### cdrom/ 29 | 30 | ###### This directory is used to mount iso's to the CD-ROM in Mac OS X, use for installing apps, and moving files to the VM! 31 | 32 | ### Explaining the Install/Boot Scripts 33 | 34 | ```bash 35 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 36 | 37 | # Defines QEMU Window Name & Device UUID 38 | -name "Snow Leopard" \ 39 | -uuid 3159DCE2-A537-47C1-B2C6-FFB44069788C \ 40 | 41 | # Defines Graphics 42 | -vga none \ 43 | -device vmware-svga \ 44 | 45 | # Defines Ethernet 46 | -device e1000,mac=8A:A8:6A:F8:00:51,netdev=net0 \ 47 | -netdev user,id=net0 \ 48 | 49 | # Defines CPU 50 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 51 | -smp 4,cores=2 \ 52 | 53 | # Amount of RAM 54 | -m 4G \ 55 | 56 | # Manage Drives and Disks, if mounting img, please specify "format=raw" after 'if' 57 | 58 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 59 | -drive "if=none,media=disk,id=OpenCore,file=opencore/opencore.qcow2,discard=unmap,detect-zeroes=unmap" \ 60 | 61 | -device ide-hd,bus=ide.1,drive=OSXInstaller,bootindex=1 \ 62 | -drive "if=none,media=disk,id=OSXInstaller,file=osxinstaller/sl_utm.qcow2,discard=unmap,detect-zeroes=unmap" \ 63 | 64 | -device ide-hd,bus=ide.2,drive=HardDrives,bootindex=2 \ 65 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/Macintosh.img,discard=unmap,detect-zeroes=unmap" \ 66 | 67 | -device ide-hd,bus=ide.3,drive=CDROM,bootindex=3 \ 68 | -drive "if=none,format=raw,media=disk,id=CDROM,file=cdrom/1920x1080-OpenCore.img,discard=unmap,detect-zeroes=unmap" \ 69 | ``` 70 | ##### The presence of the OSXInstaller drive is present dependent on if using Install or Boot script. Feel free to edit the CPU cores, and RAM accordingly. 71 | 72 | ### Explaining the OpenCore config 73 | 74 | I followed this neat guide on [Adam Roe's](https://adamroe.me/blog/snow-leopard-utm.php) blog, detailing how to run Snow Leopard on a Mac, running UTM! which is just a frontend GUI for MacOS that uses QEMU under the hood. Sadly in my attempts to do it fully on linux, there were no regular guides (even on YouTube) on running Mac OS X Snow Leopard *specifically* on QEMU/KVM on Linux hosts. I ran into multiple issues including not knowing how to define the CPU specifically as detailed, and when I was finally able to boot into OpenCore, and load the Installer... "Still waiting for root device" was obviously a tell that I wasn't mounting the images correcty. I sadly ended up having to use my real Macbook Air to run UTM and follow the guide, copying the converted OS X Snow Leopard Installer in qcow2 format, and when exporting the command to launch the UTM VM, I was able to correctly define the disks to QEMU and finally resulting in a working boot! The OpenCore image is taken directly from Adam Roe and all the credit goes to him for getting all the necessary files needed to boot on QEMU TianoCore. AFAIK modification is okay, so if need be, edit to suite the needs of other Mac OS X versions. 75 | -------------------------------------------------------------------------------- /opencore/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/opencore/.DS_Store -------------------------------------------------------------------------------- /opencore/.placeholder: -------------------------------------------------------------------------------- 1 | placeholder -------------------------------------------------------------------------------- /opencore/1920x1080-Opencore-MLion.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/opencore/1920x1080-Opencore-MLion.qcow2 -------------------------------------------------------------------------------- /opencore/AS_SL.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/opencore/AS_SL.zip -------------------------------------------------------------------------------- /opencore/LegacyDarwinKVM.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/opencore/LegacyDarwinKVM.qcow2 -------------------------------------------------------------------------------- /opencore/opencore-MLion.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/opencore/opencore-MLion.qcow2 -------------------------------------------------------------------------------- /opencore/opencore-SLeopard.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/opencore/opencore-SLeopard.qcow2 -------------------------------------------------------------------------------- /osxinstaller/.placeholder: -------------------------------------------------------------------------------- 1 | placeholder 2 | -------------------------------------------------------------------------------- /ovmf/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/ovmf/.DS_Store -------------------------------------------------------------------------------- /ovmf/OVMF_CODE.fd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/ovmf/OVMF_CODE.fd -------------------------------------------------------------------------------- /ovmf/OVMF_VARS.fd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/ovmf/OVMF_VARS.fd -------------------------------------------------------------------------------- /push.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | git add --all 3 | echo Enter Commit Details 4 | read varcommit 5 | git commit -m "$varcommit" 6 | git push 7 | echo Commit "$varcommit" pushed successfully. -------------------------------------------------------------------------------- /quick-custom-boot-script.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo -e 'qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 4 | -name "Custom Mac OS X Enviroment" \ 5 | -vga none \ 6 | -device vmware-svga \ 7 | -device virtio-rng-pci \ 8 | -device e1000,mac=8A:A8:6A:F8:00:51,netdev=net0 \ 9 | -netdev user,id=net0 \ 10 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 11 | -smp 4,cores=2 \ 12 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 13 | -m 4G \ 14 | -device ich9-intel-hda \ 15 | -device hda-duplex \ 16 | -usb \ 17 | -device usb-tablet,bus=usb-bus.0 \ 18 | -device usb-mouse,bus=usb-bus.0 \ 19 | -device usb-kbd,bus=usb-bus.0 \ 20 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 21 | -drive "if=none,media=disk,id=OpenCore,file=opencore/opencore-SLeopard.qcow2,discard=unmap,detect-zeroes=unmap" \ 22 | -device ide-hd,bus=ide.2,drive=HardDrives,bootindex=2 \ 23 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/.img,discard=unmap,detect-zeroes=unmap" \ 24 | ' >> Boot.sh 25 | 26 | chmod +x Boot.sh 27 | -------------------------------------------------------------------------------- /quick-custom-install-script.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo -e 'qemu-system-x86_64 -machine pc-q35-6.1,vmport=off,accel=kvm -bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd \ 4 | -name "Custom Mac OS X Enviroment" \ 5 | -vga none \ 6 | -device vmware-svga \ 7 | -device virtio-rng-pci \ 8 | -device e1000,mac=8A:A8:6A:F8:00:51,netdev=net0 \ 9 | -netdev user,id=net0 \ 10 | -cpu Penryn,vendor=GenuineIntel,+sse4.1,+sse4.2,+ssse3 \ 11 | -smp 4,cores=2 \ 12 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 13 | -m 4G \ 14 | -device ich9-intel-hda \ 15 | -device hda-duplex \ 16 | -usb \ 17 | -device usb-tablet,bus=usb-bus.0 \ 18 | -device usb-mouse,bus=usb-bus.0 \ 19 | -device usb-kbd,bus=usb-bus.0 \ 20 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 21 | -drive "if=none,media=disk,id=OpenCore,file=opencore/opencore-SLeopard.qcow2,discard=unmap,detect-zeroes=unmap" \ 22 | -device ide-hd,bus=ide.2,drive=HardDrives,bootindex=2 \ 23 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/.img,discard=unmap,detect-zeroes=unmap" \ 24 | -device ide-hd,bus=ide.3,drive=OSXInstaller,bootindex=3 \ 25 | -drive "if=none,media=disk,id=OSXInstaller,file=osxinstaller/placeholder text,discard=unmap,detect-zeroes=unmap" \ 26 | ' >> Install.sh 27 | 28 | chmod +x Install.sh 29 | -------------------------------------------------------------------------------- /quick-storage.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo Enter Macintosh HDD image name 4 | read varcommit 5 | qemu-img create -f raw harddrives/"$varcommit".img 128G 6 | -------------------------------------------------------------------------------- /showcase/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/showcase/.DS_Store -------------------------------------------------------------------------------- /showcase/CheetaDesktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/showcase/CheetaDesktop.png -------------------------------------------------------------------------------- /showcase/MountainLionDesktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/showcase/MountainLionDesktop.png -------------------------------------------------------------------------------- /showcase/Phoenix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/showcase/Phoenix.png -------------------------------------------------------------------------------- /showcase/SLServer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/showcase/SLServer.png -------------------------------------------------------------------------------- /showcase/SnowLeopardDesktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/showcase/SnowLeopardDesktop.png -------------------------------------------------------------------------------- /showcase/armhost.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/showcase/armhost.png -------------------------------------------------------------------------------- /showcase/armhostabout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/showcase/armhostabout.png -------------------------------------------------------------------------------- /virtmanager/AddOpenCore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/AddOpenCore.png -------------------------------------------------------------------------------- /virtmanager/AddingHD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/AddingHD.png -------------------------------------------------------------------------------- /virtmanager/AddingInstaller.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/AddingInstaller.png -------------------------------------------------------------------------------- /virtmanager/AddingVGA1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/AddingVGA1.png -------------------------------------------------------------------------------- /virtmanager/AddingVGA2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/AddingVGA2.png -------------------------------------------------------------------------------- /virtmanager/Boot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/Boot.png -------------------------------------------------------------------------------- /virtmanager/CPU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/CPU.png -------------------------------------------------------------------------------- /virtmanager/Import.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/Import.png -------------------------------------------------------------------------------- /virtmanager/LegacyOSXKVM.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LegacyOSXKVM 4 | 4a132eee-34e6-45cc-ab09-4707fbcb5da4 5 | LegacyOSXKVM 6 | 4194304 7 | 4194304 8 | 4 9 | 10 | hvm 11 | 12 | /usr/share/edk2-ovmf/x64/OVMF_CODE.fd 13 | /usr/share/edk2-ovmf/x64/OVMF_VARS.fd 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | destroy 26 | restart 27 | restart 28 | 29 | /usr/bin/qemu-system-x86_64 30 | 31 |
32 | 33 | 34 | 35 | 36 | 37 |
38 | 39 | 40 | 41 | 42 |
43 | 44 | 45 | 46 | 47 |
48 | 49 | 50 | 51 | 52 |
53 | 54 | 55 | 56 | 57 |
58 | 59 | 60 | 61 | 62 |
63 | 64 | 65 | 66 | 67 |
68 | 69 | 70 |
71 | 72 | 73 |
74 | 75 | 76 | 77 |
78 | 79 | 80 | 81 |
82 | 83 | 84 | 85 |
86 | 87 | 88 | 89 | 90 | 91 | 92 |
93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 |
105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | -------------------------------------------------------------------------------- /virtmanager/MacDesktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/MacDesktop.png -------------------------------------------------------------------------------- /virtmanager/MacInstall.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/MacInstall.png -------------------------------------------------------------------------------- /virtmanager/NIC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/NIC.png -------------------------------------------------------------------------------- /virtmanager/RAM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/royalgraphx/LegacyOSXKVM/664446d23f8e8912d15af4e8603fc6f93e2ee1ca/virtmanager/RAM.png -------------------------------------------------------------------------------- /virtmanager/placeholder.file: -------------------------------------------------------------------------------- 1 | Mmm 2 | -------------------------------------------------------------------------------- /xserve_boot.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Copyright (c) 2023 RoyalGraphX. 4 | # GNU General Public License v3.0 5 | # 6 | 7 | clear 8 | 9 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off -bios ./ovmf/OVMF_CODE.fd \ 10 | -name "Xserve" \ 11 | -uuid B671CF80-3FB2-11EE-84FF-D14F3CD62A88 \ 12 | -vga none \ 13 | -device vmware-svga \ 14 | -device virtio-rng-pci \ 15 | -device e1000,mac=EE:E9:D3:14:05:CF,netdev=net0 \ 16 | -netdev user,id=net0 \ 17 | -cpu Westmere,vendor=GenuineIntel \ 18 | -smp 8,cores=4,threads=2 \ 19 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 20 | -m 16G \ 21 | -device intel-hda -device hda-output \ 22 | -usb \ 23 | -device usb-tablet,bus=usb-bus.0 \ 24 | -device usb-mouse,bus=usb-bus.0 \ 25 | -device usb-kbd,bus=usb-bus.0 \ 26 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 27 | -drive "if=none,media=disk,id=OpenCore,file=opencore/LegacyDarwinKVM.qcow2,discard=unmap,detect-zeroes=unmap" \ 28 | -device ide-hd,bus=ide.1,drive=HardDrives,bootindex=1 \ 29 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/macintosh.img,discard=unmap,detect-zeroes=unmap" \ -------------------------------------------------------------------------------- /xserve_install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Copyright (c) 2023 RoyalGraphX. 4 | # GNU General Public License v3.0 5 | # 6 | 7 | clear 8 | 9 | qemu-system-x86_64 -machine pc-q35-6.1,vmport=off -bios ./ovmf/OVMF_CODE.fd \ 10 | -name "Xserve" \ 11 | -uuid B671CF80-3FB2-11EE-84FF-D14F3CD62A88 \ 12 | -vga none \ 13 | -device vmware-svga \ 14 | -device virtio-rng-pci \ 15 | -device e1000,mac=EE:E9:D3:14:05:CF,netdev=net0 \ 16 | -netdev user,id=net0 \ 17 | -cpu Westmere,vendor=GenuineIntel \ 18 | -smp 8,cores=4,threads=2 \ 19 | -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ 20 | -m 16G \ 21 | -device intel-hda -device hda-output \ 22 | -usb \ 23 | -device usb-tablet,bus=usb-bus.0 \ 24 | -device usb-mouse,bus=usb-bus.0 \ 25 | -device usb-kbd,bus=usb-bus.0 \ 26 | -device ide-hd,bus=ide.0,drive=OpenCore,bootindex=0 \ 27 | -drive "if=none,media=disk,id=OpenCore,file=opencore/LegacyDarwinKVM.qcow2,discard=unmap,detect-zeroes=unmap" \ 28 | -device ide-hd,bus=ide.1,drive=HardDrives,bootindex=1 \ 29 | -drive "if=none,format=raw,media=disk,id=HardDrives,file=harddrives/macintosh.img,discard=unmap,detect-zeroes=unmap" \ 30 | -device ide-hd,bus=ide.2,drive=OSXInstaller,bootindex=2 \ 31 | -drive "if=none,format=raw,media=disk,id=OSXInstaller,file=osxinstaller/osxserver.img,discard=unmap,detect-zeroes=unmap" \ --------------------------------------------------------------------------------