Files
omarchy-iso/builder/utm/config.plist
T
雷电芽衣 70cbcb558c Build the Omarchy appliance for UTM SE on iPad and iPhone
omarchy-utm-make runs builder/build-utm.sh in a privileged linux/arm64
container: a 32G sparse GPT disk with the ISO's Btrfs subvolume layout,
Arch Linux ARM plus the aarch64 Omarchy packages, Limine on the UEFI
fallback path, omarchy-apply-system --defer-provisioning in the chroot,
first-boot provisioning staged with the arm64 Node tarball, one
limine-update, then a sealed and checked disk converted to compressed
qcow2. The host wraps it as a .utm bundle (no serial device: iOS has no
Ptty mode), zips it, and writes a sha256. omarchy-utm-boot boots the
result under qemu's interpreter, the closest stand-in for UTM SE.

fstab is written from the partition UUIDs directly: genfstab named the
hand-made loop device nodes, which sent the first boot into emergency
mode.

Claude-Session: https://claude.ai/code/session_019krxFwnSbEM2n2QNQ1rG1K
2026-09-03 04:50:14 -04:00

135 lines
2.8 KiB
Plaintext

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Backend</key>
<string>QEMU</string>
<key>ConfigurationVersion</key>
<integer>4</integer>
<key>Information</key>
<dict>
<key>Name</key>
<string>Omarchy</string>
<key>UUID</key>
<string>@@VM_UUID@@</string>
<key>IconCustom</key>
<false/>
<key>Icon</key>
<string>arch-linux</string>
<key>Notes</key>
<string>Omarchy @@VERSION@@ for UTM SE (aarch64). The first boot asks for your keyboard, user, and password. Option acts as SUPER.</string>
</dict>
<key>System</key>
<dict>
<key>Architecture</key>
<string>aarch64</string>
<key>Target</key>
<string>virt</string>
<key>CPU</key>
<string>default</string>
<key>CPUFlagsAdd</key>
<array/>
<key>CPUFlagsRemove</key>
<array/>
<key>CPUCount</key>
<integer>2</integer>
<key>ForceMulticore</key>
<false/>
<key>MemorySize</key>
<integer>2048</integer>
<key>JITCacheSize</key>
<integer>0</integer>
</dict>
<key>QEMU</key>
<dict>
<key>DebugLog</key>
<false/>
<key>UEFIBoot</key>
<true/>
<key>RNGDevice</key>
<true/>
<key>BalloonDevice</key>
<false/>
<key>TPMDevice</key>
<false/>
<key>Hypervisor</key>
<false/>
<key>RTCLocalTime</key>
<false/>
<key>PS2Controller</key>
<false/>
<key>AdditionalArguments</key>
<array/>
</dict>
<key>Input</key>
<dict>
<key>UsbBusSupport</key>
<string>3.0</string>
<key>UsbSharing</key>
<false/>
<key>MaximumUsbShare</key>
<integer>3</integer>
</dict>
<key>Sharing</key>
<dict>
<key>DirectoryShareMode</key>
<string>VirtFS</string>
<key>DirectoryShareReadOnly</key>
<false/>
<key>ClipboardSharing</key>
<true/>
</dict>
<key>Display</key>
<array>
<dict>
<key>Hardware</key>
<string>virtio-gpu-pci</string>
<key>DynamicResolution</key>
<false/>
<key>NativeResolution</key>
<false/>
<key>UpscalingFilter</key>
<string>Linear</string>
<key>DownscalingFilter</key>
<string>Linear</string>
</dict>
</array>
<key>Drive</key>
<array>
<dict>
<key>Identifier</key>
<string>@@DISK_UUID@@</string>
<key>ImageName</key>
<string>@@DISK_UUID@@.qcow2</string>
<key>ImageType</key>
<string>Disk</string>
<key>Interface</key>
<string>VirtIO</string>
<key>InterfaceVersion</key>
<integer>1</integer>
<key>ReadOnly</key>
<false/>
</dict>
</array>
<key>Network</key>
<array>
<dict>
<key>Mode</key>
<string>Shared</string>
<key>Hardware</key>
<string>virtio-net-pci</string>
<key>MacAddress</key>
<string>@@MAC@@</string>
<key>IsolateFromHost</key>
<false/>
<key>PortForward</key>
<array/>
</dict>
</array>
<key>Serial</key>
<array/>
<key>Sound</key>
<array/>
</dict>
</plist>