229 Commits
Author SHA1 Message Date
osy c066b83069 build: update KosmicKrisp which now requires macOS 26
The new Mesa revision builds KosmicKrisp with the precompiled shader
compiler, and the driver now needs macOS 26 (and the aligned iOS,
tvOS, and visionOS 26 releases) at runtime. Bump the availability
gates on the settings picker and the VM start check to match.

Assisted-by: Claude:claude-fable-5-1
2026-09-23 11:01:44 -05:00
osy 26080e4be9 build: update accelerated graphics backends 2026-09-23 11:01:34 -05:00
osy b397117744 spice: fix mic quality issues
Fixes #7751
2026-09-23 11:01:34 -05:00
osy 10799d9f46 Merge pull request #7853 from evan314159/fix-spice-gtk-coreaudio-hang
spice-gtk: fix SPICE deadlock under memory pressure
2026-09-20 22:16:18 -05:00
osy c5766065d8 build: raise minimum to iOS 15 and macOS 12 to build with Xcode 27
Xcode 27 no longer supports deploying to iOS 14 or macOS 11, and the
macOS 27 SDK breaks several dependency builds, so raise the minimum
versions and fix the dependency build:

- Bump IOS_SDKMINVER/MAC_SDKMINVER and the project deployment targets.
- Pass our deployment targets to the Hypervisor build, whose project
  still targets iOS 14.
- Build ANGLE without -Werror; new clang warnings break it.
- Update MoltenVK to pick up the upstream minimum target bump and set
  a visionOS minimum so it no longer inherits the SDK version.
- Patch QEMU apple-gfx to use PGCreateDeviceWithDescriptor, since
  PGNewDeviceWithDescriptor is no longer exported by the macOS 27 SDK.
- Skip copying the IOKit headers on macOS where they are already in the
  SDK and a second copy conflicts with the IOKit module.
- Export MACOSX_DEPLOYMENT_TARGET since libtool drops -target when
  linking C++ libraries, which built libasprintf for macOS 27.
- Default CI to the installed Xcode.

Assisted-by: Claude:claude-opus-5
2026-09-15 08:12:39 +02:00
Evan Champion f596b708bb spice-gtk: fix macOS audio deadlock hang under memory pressure
AudioOutputUnitStop() called from GStreamer in the main context thread
hangs under high memory load (e.g. concurrent LLM usage), causing all SPICE
services including video and input to hang while the VM is still running.

Short-term fix (this PR): run GStreamer state changes on a separate,
serialized worker thread per stream so the hang does not block other SPICE
services.

Long-term fix?: this appears to require either a fix from Apple or for
audio to run in a separate process. Once the connection to CoreAudio is
hung, it does not seem to be recoverable by the same process.

Assisted-by: Claude:claude-opus-4-8
2026-09-05 12:52:37 +08:00
osy 85011a6ca8 build: update virglrenderer
An unused reply for SUBMIT_FENCE causes the QEMUL BQL to be held which impacted
performance at higher core counts.
2026-08-31 22:25:10 -07:00
osy 910dfe0cda build: update dependencies for DX12 support 2026-08-30 13:37:11 -07:00
osy 5f13bb356a project: add dxmt to iOS builds 2026-08-04 08:26:43 -07:00
osy 719108f0f7 qemu: fix hostmem=8G for iOS 2026-08-04 07:21:38 -07:00
osy d951596ace build: update virglrenderer to fix black screen during boot 2026-08-01 23:20:46 -07:00
osy e5e651d00e qemu: fix rendering issues exposed by new backends 2026-07-30 18:31:59 -07:00
osy 530fd96f0d build: add Neptune and backends
Bump minimum version to macOS 13.0 and iOS 16.0 due to D3D renderer minimum
requirements.
2026-07-30 18:15:11 -07:00
osy c7ea7b0731 qemu: update to 10.0.12-utm 2026-07-30 18:15:07 -07:00
osy 5c2ba3fcf9 build: update virglrenderer (again)
Last commit broke Vulkan in App Sandbox and this fixes it.
2026-05-03 05:38:23 -07:00
osy c245141312 build: update virglrenderer
Rebased to latest upstream and also fix vkcube on newer Wayland
2026-04-30 00:10:26 +02:00
osy ad797a73e9 build: update link to openssl 2026-04-30 00:10:26 +02:00
osy a197fca55b ANGLE: fix issue with stale texture binding
Also re-introduce Mesa bug workaround since older distros are still broken.

Fixes #7626
2026-02-23 22:11:20 -08:00
osy ecfd32e8f7 build: update MoltenVK to support geometry shaders
Resolves #7575
2026-02-21 12:43:23 -08:00
osy bee451d6ef qemu: sync with repo
Fixes an issue if SDL2 is enabled (not supported in UTM)
2026-02-21 12:34:46 -08:00
osy 0d0aff7626 build: fix crash on glDrawElementsInstancedBaseVertex
(For real this time)
Fixes #7596
2026-01-30 14:26:09 -08:00
osy fd1e105e79 build: fix crash on glDrawElementsInstancedBaseVertex
Fixes #7596
2026-01-27 07:58:20 -08:00
osy ca6cd2deba build: fix black screen issue on EAGL
Fixes #7587
2026-01-21 10:48:39 -08:00
osy 819caa4d9c qemu: fix Metal verification error 2026-01-21 08:27:34 -08:00
osy e2b11324d1 qemu: fix conditional build on Xcode 26
Fixes #7579
2026-01-11 18:13:41 -08:00
osy b92eefc54a build: support set IPA on iOS hypervisor 2026-01-10 16:15:12 -08:00
osy 84a1a9601c qemu: set IPA with private APIs on older macOS
Also fix a typo in qemu_spice_display_early_init()
2026-01-10 16:13:32 -08:00
osy 85f3044b1f qemu: enable Vulkan support
Resolves #4551
2026-01-07 21:03:12 -08:00
osy 847ad6e425 build: add MoltenVK to dependencies 2026-01-07 21:03:12 -08:00
osy b959d92b32 build: add KosmicKrisp to dependencies 2026-01-07 21:03:12 -08:00
osy e8e7ec7ac8 build: add Vulkan-Loader to dependencies 2026-01-05 20:56:42 -08:00
osy 2a913cadb0 qemu: enable support for CGL backend
Thanks to @startergo for the changes. This should enable OpenGL 4.1 on Linux

Resolves #4285
2026-01-04 21:54:36 -08:00
osy 57162ae90e angle: fix black screen 2026-01-03 06:16:13 -08:00
osy 2be65eaa2b angle: fix some leaks and enable GLES 3.0
Fixes #4958
Fixes #7546
2026-01-02 13:13:26 -08:00
osy e755eabdc4 qemu: fix typo in spice_iosurface_resize 2026-01-02 13:12:55 -08:00
osy 4bacaa9d3e libusb: fix a few more crashes 2025-10-01 14:59:26 -07:00
osy 07c79d17c5 qemu: support old JIT method on iOS 26 with no TXM 2025-09-15 09:01:22 -07:00
osy 55be50e745 build: change libslirp to mirror 2025-09-14 12:10:41 -07:00
osy 678534e6a5 qemu: new JIT workaround for iOS 26
We map the JIT region originally as RX and also mirror map
it as RX. Then we use attached debugger to flag the mirror
mapping as debugger owned. Finally, we change the original
map to RW which should not invalidate code-signing as the
mirror is debugger owned.

Thanks to @JJTech0130 for this workaround.
2025-09-14 11:58:38 -07:00
osy 81536ab7f1 libusb: fix one more race condition found by TSan 2025-08-25 12:08:39 -07:00
osy 6dfdebc624 libusb: fix race condition and UaF with multiple contexts 2025-08-24 21:54:24 -07:00
osy 9fefd160e4 spice-gtk: fix monitors config size mismatch
Fixes #5832
2025-08-17 19:56:32 -07:00
osy b79bce85ac libusb: fix use after free in device list cleanup
Fixes #5811
2025-08-17 18:39:02 -07:00
osy 94be8c300d build: workaround TLS timeouts in ftp.gnu.org 2025-08-12 07:29:44 -07:00
osy 8a718e6479 qemu: disable default floppy drive for i440fx/isapc 2025-08-12 01:24:07 -07:00
osy cafa33ecec qemu: fix bug causing BSoD on Windows 98
Fixes #7342
2025-08-11 20:35:02 -07:00
osy 862c507a26 config(qemu): preloading UEFI keys is optional
When resetting UEFI vars, add an option to preload Secure
Boot keys (previously this was always done). This allows for
the user to load their own UEFI keys.

Also update the preloaded UEFI keys to Microsoft 2023 keys.

Resolves #7005
Resolves #7257
2025-08-10 23:00:24 -07:00
osy 426c982752 libusb: Fix crash in log handler when stopping event thread 2025-08-03 14:31:32 -07:00
osy 203f5261dd wizard: create classic Mac OS machine
Also add support for classicvirtio.

Resolves #6520
2025-08-03 09:32:51 -07:00
osy 995cbc7189 qemu: fix goto as first instruction 2025-07-22 10:14:40 -07:00