Commit Graph
9 Commits
Author SHA1 Message Date
osy 3b0da37c46 apple: run without saving changes on macOS 27
"Run without saving changes" has only been available for QEMU, where it
maps to `-snapshot`. Apple Virtualization has no such option, but
DiskImageKit on macOS 27 can stack a copy-on-write layer on top of an
image and Virtualization accepts the stacked image as a storage
attachment.

When started with the disposable option, the Apple backend now creates a
temporary directory in the sandbox and gives every writable drive an
ephemeral ASIF overlay there. The base image is opened read-only and is
never touched. The EFI variable store and the macOS auxiliary storage are
cloned into the same directory so firmware settings are not persisted
either. The directory is deleted when the guest stops or when start
fails, any leftover from a previous start is discarded before the next
start, and directories orphaned by a crash are swept at app launch.
Removable drives attached at start or hot-plugged during the run are
covered as well.

A disposable run boots fresh and leaves any saved suspend state and the
modification date alone, and reports the save/restore path as
unsupported so closing the window offers to kill the VM instead of
suspending it, matching the QEMU behaviour. The stop paths that delete a
saved suspend state skip that while running disposably.

The context menu, the Start intent and the menu bar extra now check the
backend capability instead of assuming QEMU, and the Apple display window
shows the same "Disposable Mode" subtitle as QEMU.

Assisted-by: Claude:claude-fable-5-1
2026-09-19 10:51:06 -05:00
osy 5ee79c7c53 intents: properly fix LNPerformActionErrorCodeActionNotFound 2026-01-03 09:12:09 -08:00
Peter Neutron 5549d29f5c fix(appintents): ungate VM queries; lazy‑load VM in perform() 2025-09-21 12:41:00 +02:00
Peter Neutron f5eac52e77 revert(spotlight): remove Spotlight indexing from main PR branch; keep only AppIntents ID fix and auto-activate on Start (macOS) 2025-09-20 10:32:02 +02:00
Peter Neutron 1518ae3736 fix(appintents): stable IDs, Shortcut auto‑activate, Spotlight VM indexing
- Prevent ActionNotFound by adding static action IDs
  - Activate/foreground UTM when starting a VM via Shortcuts
  - Index VM entities (IndexedEntity) and reindex on launch/changes for Spotlight free‑text resolution

feat(Intents): activate UTM before starting VM via Shortcut

feat(spotlight): index VM entities (IndexedEntity) and reindex on launch/changes to fix Spotlight free‑text resolution
2025-09-18 16:12:03 +02:00
osy fa8daa1b77 display(macOS): fix simultaneous mouse buttons
Fixes #7068
2025-08-16 22:46:17 -07:00
Hyunwook 29254bfe89 chore: fix grammar in code comments 2025-08-07 18:44:07 +09:00
osy 185ce4f8b5 intents: add keystrokes intent
Refactor VMKeyboardView so it can be used on macOS for converting
a sequence of text to keyboard strokes.
2025-07-14 01:37:40 -07:00
osy 4cfb9377dc intents: add App Intents for automation
Initially support functionality removed from the URL scheme (#6155)

Resolves #6245
2025-07-14 00:06:12 -07:00