From 7e0fd1d8b79da49e108a379b2538305c79d42a60 Mon Sep 17 00:00:00 2001 From: NeroShooter Date: Sat, 24 Oct 2026 16:34:45 +0200 Subject: [PATCH] fix(macos): strip quarantine before bootstrapping the broker service Files copied from a browser-downloaded DMG inherit com.apple.quarantine. launchd refuses the quarantined LaunchDaemon plist, so the installer failed with "Bootstrap failed: 5: Input/output error". Remove the attribute from the installed apps, plist, and /usr/local files before bootstrapping the service. Co-Authored-By: Claude Opus 5.5 --- scripts/macos/install.command | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/scripts/macos/install.command b/scripts/macos/install.command index 81054de..5bd109e 100755 --- a/scripts/macos/install.command +++ b/scripts/macos/install.command @@ -35,6 +35,7 @@ fi /usr/bin/sudo /bin/rm -rf "${legacy_broker_app}" "${installed_broker_app}" "${installed_control_app}" /usr/bin/sudo /usr/bin/ditto "${broker_app}" "${installed_broker_app}" /usr/bin/sudo /usr/bin/ditto "${control_app}" "${installed_control_app}" +/usr/bin/sudo /usr/bin/xattr -dr com.apple.quarantine "${installed_broker_app}" "${installed_control_app}" /usr/bin/sudo /usr/sbin/chown -R root:wheel "${installed_broker_app}" "${installed_control_app}" /usr/bin/sudo /bin/chmod -R a+rX "${installed_broker_app}" "${installed_control_app}" /usr/bin/sudo /bin/chmod -R go-w "${installed_broker_app}" "${installed_control_app}" @@ -43,6 +44,7 @@ fi /usr/bin/sudo /usr/bin/install -m 0644 \ "${image_root}/${launchd_plist}" "${service_plist}" /usr/bin/sudo /usr/sbin/chown root:wheel "${service_plist}" +/usr/bin/sudo /usr/bin/xattr -dr com.apple.quarantine "${service_plist}" if [[ -d "${image_root}/usr/local/include/libvirtualhid" ]]; then /usr/bin/sudo /usr/bin/ditto "${image_root}/usr/local/include/libvirtualhid" /usr/local/include/libvirtualhid @@ -62,6 +64,14 @@ if [[ -d "${image_root}/usr/local/share/licenses/libvirtualhid" ]]; then /usr/bin/sudo /usr/bin/ditto "${image_root}/usr/local/share/licenses/libvirtualhid" /usr/local/share/licenses/libvirtualhid fi +for installed_path in /usr/local/include/libvirtualhid /usr/local/lib/libvirtualhid.a \ + /usr/local/bin/libvirtualhid-license /usr/local/lib/cmake/libvirtualhid \ + /usr/local/share/licenses/libvirtualhid; do + if [[ -e "${installed_path}" ]]; then + /usr/bin/sudo /usr/bin/xattr -dr com.apple.quarantine "${installed_path}" + fi +done + /usr/bin/sudo /bin/launchctl bootstrap system "${service_plist}" /usr/bin/sudo /bin/launchctl kickstart -k "system/${bundle_id}" echo 'Virtual HID Broker and Virtual HID Control installed in /Applications.'