mirror of
https://github.com/quickemu-project/quickemu.git
synced 2024-06-03 05:25:32 +02:00
Compare commits
5 Commits
fe9ce7bc89
...
dbed1843a3
Author | SHA1 | Date | |
---|---|---|---|
|
dbed1843a3 | ||
|
69131b2e39 | ||
|
dbb43157df | ||
|
5e507e645c | ||
|
8edb2afe93 |
|
@ -37,8 +37,7 @@ Haiku, KolibriOS, OpenIndiana, ReactOS, and more.
|
||||||
|
|
||||||
# Features
|
# Features
|
||||||
|
|
||||||
- **macOS** Sonoma, Ventura, Monterey, Big Sur, Catalina, Mojave &
|
- **macOS** Sonoma, Ventura, Monterey, Big Sur, Catalina & Mojave
|
||||||
High Sierra
|
|
||||||
- **Windows** 10 and 11 including TPM 2.0
|
- **Windows** 10 and 11 including TPM 2.0
|
||||||
- [Ubuntu](https://ubuntu.com/desktop) and all the **[official Ubuntu
|
- [Ubuntu](https://ubuntu.com/desktop) and all the **[official Ubuntu
|
||||||
flavours](https://ubuntu.com/download/flavours)**
|
flavours](https://ubuntu.com/download/flavours)**
|
||||||
|
|
36
diag.sh
Executable file
36
diag.sh
Executable file
|
@ -0,0 +1,36 @@
|
||||||
|
#!/bin/bash
|
||||||
|
output_diagnostic_info() {
|
||||||
|
local PRETTY_NAME
|
||||||
|
if [ -e /etc/os-release ]; then
|
||||||
|
eval "$(grep PRETTY_NAME /etc/os-release)"
|
||||||
|
else
|
||||||
|
PRETTY_NAME="Unknown"
|
||||||
|
fi
|
||||||
|
echo "Diagnostic Information";
|
||||||
|
echo \
|
||||||
|
"---------------------------------
|
||||||
|
Software Information
|
||||||
|
----------------------------------"
|
||||||
|
|
||||||
|
echo Quickemu version : "$(quickemu --version)"
|
||||||
|
curl --version
|
||||||
|
qemu-system-"$(uname -p)" -version | head -1
|
||||||
|
qemu-system-"$(uname -p)" -machine help -cpu help
|
||||||
|
echo \
|
||||||
|
"---------------------------------
|
||||||
|
System Information
|
||||||
|
----------------------------------"
|
||||||
|
echo "Kernel Version: $(uname -srvpio)"
|
||||||
|
echo "Memory: $(free -h | awk '/Mem:/{print $2}')"
|
||||||
|
sudo vmstat -w -SM -a
|
||||||
|
echo "CPU Flags: $(grep flags /proc/cpuinfo | sort -u | awk -F: '{print $2}')"
|
||||||
|
#echo "Operating System: $(lsb_release -d | awk -F"\t" '{print $2}')"
|
||||||
|
echo "Operating System: ${PRETTY_NAME}" # - Non LSB version"
|
||||||
|
echo "GPU Info:"
|
||||||
|
lspci | grep -i vga
|
||||||
|
sudo dmesg | grep -i -e vga -e gpu | grep -v trace | cut -d] -f2-
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
output_diagnostic_info
|
|
@ -167,8 +167,7 @@ Haiku, KolibriOS, OpenIndiana, ReactOS, and more.
|
||||||
|
|
||||||
# Features
|
# Features
|
||||||
|
|
||||||
- **macOS** Sonoma, Ventura, Monterey, Big Sur, Catalina, Mojave &
|
- **macOS** Sonoma, Ventura, Monterey, Big Sur, Catalina & Mojave
|
||||||
High Sierra
|
|
||||||
- **Windows** 10 and 11 including TPM 2.0
|
- **Windows** 10 and 11 including TPM 2.0
|
||||||
- [Ubuntu](https://ubuntu.com/desktop) and all the **[official Ubuntu
|
- [Ubuntu](https://ubuntu.com/desktop) and all the **[official Ubuntu
|
||||||
flavours](https://ubuntu.com/download/flavours)**
|
flavours](https://ubuntu.com/download/flavours)**
|
||||||
|
@ -503,8 +502,7 @@ quickget macos catalina
|
||||||
quickemu --vm macos-catalina.conf
|
quickemu --vm macos-catalina.conf
|
||||||
```
|
```
|
||||||
|
|
||||||
macOS `high-sierra`, `mojave`, `catalina`, `big-sur`, `monterey`,
|
macOS `mojave`, `catalina`, `big-sur`, `monterey`, `ventura` and `sonoma` are supported.
|
||||||
`ventura` and `sonoma` are supported.
|
|
||||||
|
|
||||||
- Use cursor keys and enter key to select the **macOS Base System**
|
- Use cursor keys and enter key to select the **macOS Base System**
|
||||||
- From **macOS Utilities**
|
- From **macOS Utilities**
|
||||||
|
|
|
@ -358,7 +358,7 @@ quickget macos catalina
|
||||||
quickemu \-\-vm macos\-catalina.conf
|
quickemu \-\-vm macos\-catalina.conf
|
||||||
.EE
|
.EE
|
||||||
.PP
|
.PP
|
||||||
macOS \f[CR]high\-sierra\f[R], \f[CR]mojave\f[R], \f[CR]catalina\f[R],
|
macOS \f[CR]mojave\f[R], \f[CR]catalina\f[R],
|
||||||
\f[CR]big\-sur\f[R], \f[CR]monterey\f[R], \f[CR]ventura\f[R] and
|
\f[CR]big\-sur\f[R], \f[CR]monterey\f[R], \f[CR]ventura\f[R] and
|
||||||
\f[CR]sonoma\f[R] are supported.
|
\f[CR]sonoma\f[R] are supported.
|
||||||
.IP \[bu] 2
|
.IP \[bu] 2
|
||||||
|
|
|
@ -262,8 +262,7 @@ quickget macos catalina
|
||||||
quickemu --vm macos-catalina.conf
|
quickemu --vm macos-catalina.conf
|
||||||
```
|
```
|
||||||
|
|
||||||
macOS `high-sierra`, `mojave`, `catalina`, `big-sur`, `monterey`,
|
macOS `mojave`, `catalina`, `big-sur`, `monterey`, `ventura` and `sonoma` are supported.
|
||||||
`ventura` and `sonoma` are supported.
|
|
||||||
|
|
||||||
- Use cursor keys and enter key to select the **macOS Base System**
|
- Use cursor keys and enter key to select the **macOS Base System**
|
||||||
- From **macOS Utilities**
|
- From **macOS Utilities**
|
||||||
|
|
26
quickemu
26
quickemu
|
@ -526,17 +526,17 @@ function vm_boot() {
|
||||||
macos)
|
macos)
|
||||||
# https://www.nicksherlock.com/2020/04/installing-macos-catalina-on-proxmox-with-opencore/
|
# https://www.nicksherlock.com/2020/04/installing-macos-catalina-on-proxmox-with-opencore/
|
||||||
# https://www.nicksherlock.com/2022/10/installing-macos-13-ventura-on-proxmox/
|
# https://www.nicksherlock.com/2022/10/installing-macos-13-ventura-on-proxmox/
|
||||||
|
# noTSX stops cpuid errors https://duckduckgo.com/?t=ffab&q=CPUID.07H%3AEBX.rtm+%5Bbit+11%5D&ia=web also cited by NickSherlock for Ventura install
|
||||||
# Penryn https://github.com/search?q=repo%3Akholia%2FOSX-KVM%20%20GenuineIntel&type=code
|
# Penryn https://github.com/search?q=repo%3Akholia%2FOSX-KVM%20%20GenuineIntel&type=code
|
||||||
# https://en.wikipedia.org/wiki/MacOS_version_history#Releases
|
# https://en.wikipedia.org/wiki/MacOS_version_history#Releases
|
||||||
# quickget current list: high-sierra mojave catalina big-sur monterey ventura sonoma
|
# quickget current list: mojave catalina big-sur monterey ventura sonoma
|
||||||
# A CPU with SSE4.1 support is required for >= macOS Sierra
|
# A CPU with SSE4.1 support is required for >= macOS Sierra
|
||||||
# A CPU with SSE4.2 support is required for >= macOS Catalina
|
# A CPU with SSE4.2 support is required for >= macOS Catalina
|
||||||
# A CPU with AVX2 support is required for >= macOS Ventura
|
# A CPU with AVX2 support is required for >= macOS Ventura
|
||||||
case ${macos_release} in
|
case ${macos_release} in
|
||||||
ventura|sonoma)
|
ventura|sonoma)
|
||||||
if check_cpu_flag sse4_2 && check_cpu_flag avx2; then
|
if check_cpu_flag sse4_2 && check_cpu_flag avx2; then
|
||||||
# noTSX stops cpuid errors https://duckduckgo.com/?t=ffab&q=CPUID.07H%3AEBX.rtm+%5Bbit+11%5D&ia=web also cited by NickSherlock for Ventura install
|
CPU="-cpu Haswell-v4,kvm=on,vendor=GenuineIntel,+avx,+avx2,+sse,+sse2,+sse3,+sse4.2,vmware-cpuid-freq=on"
|
||||||
CPU="-cpu Haswell-noTSX-IBRS,kvm=on,vendor=GenuineIntel,+sse3,+sse4.2,+aes,+xsave,+avx,+xsaveopt,+xsavec,+xgetbv1,+avx2,+bmi2,+smep,+bmi1,+fma,+movbe,+invtsc"
|
|
||||||
else
|
else
|
||||||
echo "ERROR! macOS ${macos_release} requires a CPU with SSE 4.2 and AVX2 support."
|
echo "ERROR! macOS ${macos_release} requires a CPU with SSE 4.2 and AVX2 support."
|
||||||
exit 1
|
exit 1
|
||||||
|
@ -544,9 +544,7 @@ function vm_boot() {
|
||||||
;;
|
;;
|
||||||
catalina|big-sur|monterey)
|
catalina|big-sur|monterey)
|
||||||
if check_cpu_flag sse4_2; then
|
if check_cpu_flag sse4_2; then
|
||||||
# Used in past versions: +movbe,+smep,+xgetbv1,+xsavec,+avx2
|
CPU="-cpu Haswell-v4,kvm=on,vendor=GenuineIntel,+avx,+sse,+sse2,+sse3,+sse4.2,vmware-cpuid-freq=on"
|
||||||
# Warn on AMD: +fma4,+pcid
|
|
||||||
CPU="-cpu Haswell-noTSX-IBRS,kvm=on,vendor=GenuineIntel,+sse3,+sse4.2,+aes,+xsave,+avx,+xsaveopt,+xsavec,+xgetbv1,+bmi2,+smep,+bmi1,+fma,+movbe,+invtsc"
|
|
||||||
else
|
else
|
||||||
echo "ERROR! macOS ${macos_release} requires a CPU with SSE 4.2 support."
|
echo "ERROR! macOS ${macos_release} requires a CPU with SSE 4.2 support."
|
||||||
exit 1
|
exit 1
|
||||||
|
@ -554,8 +552,7 @@ function vm_boot() {
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
if check_cpu_flag sse4_1; then
|
if check_cpu_flag sse4_1; then
|
||||||
# as above but 4.1 (for older hosts)
|
CPU="-cpu Penryn,kvm=on,vendor=GenuineIntel,+avx,+sse,+sse2,+sse3,+sse4.1,vmware-cpuid-freq=on"
|
||||||
CPU="-cpu Penryn,kvm=on,vendor=GenuineIntel,+aes,+avx,+bmi1,+bmi2,+fma,+hypervisor,+invtsc,+kvm_pv_eoi,+kvm_pv_unhalt,+popcnt,+ssse3,+sse4.1,vmware-cpuid-freq=on,+xsave,+xsaveopt,check"
|
|
||||||
else
|
else
|
||||||
echo "ERROR! macOS ${macos_release} requires a CPU with SSE 4.1 support."
|
echo "ERROR! macOS ${macos_release} requires a CPU with SSE 4.1 support."
|
||||||
exit 1
|
exit 1
|
||||||
|
@ -563,6 +560,19 @@ function vm_boot() {
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
# https://www.techpowerup.com/cpu-specs/xeon-w-2140b.c2953 8 cores 16 threads # skylake server
|
||||||
|
# https://en.wikipedia.org/wiki/IMac_Pro#Technical_specifications Orig: High Sierra Max: Sonoma
|
||||||
|
# https://en.wikipedia.org/wiki/MacOS#Hardware_compatibility needs 8GB RAM
|
||||||
|
# https://qemu.readthedocs.io/en/v9.0.0/system/qemu-cpu-models.html#important-cpu-features-for-amd-x86-hosts
|
||||||
|
# https://www.reddit.com/r/hackintosh/comments/141wnjk/state_of_macos_14_sonoma_on_x86/
|
||||||
|
for FLAG in abm adx aes amd-ssbd bmi1 bmi2 cx8 eist ept f16c fma invtsc \
|
||||||
|
mmx movbe mpx pdpe1gb smep vaes vbmi2 vpclmulqdq \
|
||||||
|
xgetbv1 xsave xsaveopt; do
|
||||||
|
if check_cpu_flag "${FLAG}"; then
|
||||||
|
CPU+=",+${FLAG}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
OSK=$(echo "bheuneqjbexolgurfrjbeqfthneqrqcyrnfrqbagfgrny(p)NccyrPbzchgreVap" | tr 'A-Za-z' 'N-ZA-Mn-za-m')
|
OSK=$(echo "bheuneqjbexolgurfrjbeqfthneqrqcyrnfrqbagfgrny(p)NccyrPbzchgreVap" | tr 'A-Za-z' 'N-ZA-Mn-za-m')
|
||||||
# Disable S3 support in the VM to prevent macOS suspending during install
|
# Disable S3 support in the VM to prevent macOS suspending during install
|
||||||
GUEST_TWEAKS="-global kvm-pit.lost_tick_policy=discard -global ICH9-LPC.disable_s3=1 -device isa-applesmc,osk=${OSK}"
|
GUEST_TWEAKS="-global kvm-pit.lost_tick_policy=discard -global ICH9-LPC.disable_s3=1 -device isa-applesmc,osk=${OSK}"
|
||||||
|
|
4
quickget
4
quickget
|
@ -865,7 +865,7 @@ function releases_lmde() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function releases_macos() {
|
function releases_macos() {
|
||||||
echo high-sierra mojave catalina big-sur monterey ventura sonoma
|
echo mojave catalina big-sur monterey ventura sonoma
|
||||||
}
|
}
|
||||||
|
|
||||||
function releases_mageia() {
|
function releases_mageia() {
|
||||||
|
@ -2104,7 +2104,7 @@ function get_macos() {
|
||||||
-A "InternetRecovery/1.0" \
|
-A "InternetRecovery/1.0" \
|
||||||
-b "session=\"${appleSession}\"" \
|
-b "session=\"${appleSession}\"" \
|
||||||
-H "Content-Type: text/plain" \
|
-H "Content-Type: text/plain" \
|
||||||
-d $'cid='$(generate_id 16)$'\nsn='${MLB}$'\nbid='${BOARD_ID}$'\nk='$(generate_id 64)$'\nfg='$(generate_id 64)$'\nos='${OS_TYPE} \
|
-d $'cid='"$(generate_id 16)"$'\nsn='${MLB}$'\nbid='${BOARD_ID}$'\nk='"$(generate_id 64)"$'\nfg='"$(generate_id 64)"$'\nos='${OS_TYPE} \
|
||||||
http://osrecovery.apple.com/InstallationPayload/RecoveryImage | tr ' ' '\n')
|
http://osrecovery.apple.com/InstallationPayload/RecoveryImage | tr ' ' '\n')
|
||||||
downloadLink=$(echo "$info" | grep 'oscdn' | grep 'dmg')
|
downloadLink=$(echo "$info" | grep 'oscdn' | grep 'dmg')
|
||||||
downloadSession=$(echo "$info" | grep 'expires' | grep 'dmg')
|
downloadSession=$(echo "$info" | grep 'expires' | grep 'dmg')
|
||||||
|
|
Loading…
Reference in New Issue
Block a user