From 43e5492002b7ae43f45a57ae253abd5c3b3c571a Mon Sep 17 00:00:00 2001 From: Eric Warmenhoven Date: Thu, 5 Sep 2024 01:53:06 -0400 Subject: [PATCH] apple: to use the microphone apple requires we ask, and be entitled (#16964) --- pkg/apple/OSX/Info_Metal.plist | 2 ++ pkg/apple/RetroArch.entitlements | 6 ++++++ pkg/apple/RetroArchAppStore.entitlements | 2 ++ pkg/apple/RetroArchCI.entitlements | 6 ++++++ pkg/apple/RetroArch_Metal.xcodeproj/project.pbxproj | 2 ++ pkg/apple/iOS/Info.plist | 4 ++++ 6 files changed, 22 insertions(+) diff --git a/pkg/apple/OSX/Info_Metal.plist b/pkg/apple/OSX/Info_Metal.plist index b76ebf588b..a0b668237e 100644 --- a/pkg/apple/OSX/Info_Metal.plist +++ b/pkg/apple/OSX/Info_Metal.plist @@ -66,6 +66,8 @@ Copyright © 2024 RetroArch. All rights reserved. NSMainNibFile MainMenu_Metal + NSMicrophoneUsageDescription + Some cores are able to provide microphone input to games. NSPrincipalClass NSApplication RAPortableInstall diff --git a/pkg/apple/RetroArch.entitlements b/pkg/apple/RetroArch.entitlements index 3b95f077c9..68fdc5c66c 100644 --- a/pkg/apple/RetroArch.entitlements +++ b/pkg/apple/RetroArch.entitlements @@ -4,9 +4,15 @@ com.apple.security.cs.allow-dyld-environment-variables + com.apple.security.cs.allow-jit + + com.apple.security.cs.allow-unsigned-executable-memory + com.apple.security.cs.disable-executable-page-protection com.apple.security.cs.disable-library-validation + com.apple.security.device.audio-input + diff --git a/pkg/apple/RetroArchAppStore.entitlements b/pkg/apple/RetroArchAppStore.entitlements index f184eb63cc..8396894fc8 100644 --- a/pkg/apple/RetroArchAppStore.entitlements +++ b/pkg/apple/RetroArchAppStore.entitlements @@ -30,5 +30,7 @@ com.apple.security.network.server + com.apple.security.device.audio-input + diff --git a/pkg/apple/RetroArchCI.entitlements b/pkg/apple/RetroArchCI.entitlements index 7068d0cba3..61355857fc 100644 --- a/pkg/apple/RetroArchCI.entitlements +++ b/pkg/apple/RetroArchCI.entitlements @@ -18,5 +18,11 @@ com.apple.security.cs.disable-library-validation + com.apple.security.device.audio-input + + com.apple.security.cs.allow-jit + + com.apple.security.cs.allow-unsigned-executable-memory + diff --git a/pkg/apple/RetroArch_Metal.xcodeproj/project.pbxproj b/pkg/apple/RetroArch_Metal.xcodeproj/project.pbxproj index 1a4743facd..b788254075 100644 --- a/pkg/apple/RetroArch_Metal.xcodeproj/project.pbxproj +++ b/pkg/apple/RetroArch_Metal.xcodeproj/project.pbxproj @@ -2053,6 +2053,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; + ENABLE_HARDENED_RUNTIME = YES; }; name = Debug; }; @@ -2062,6 +2063,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; + ENABLE_HARDENED_RUNTIME = YES; }; name = Release; }; diff --git a/pkg/apple/iOS/Info.plist b/pkg/apple/iOS/Info.plist index 40df489f54..16c7212a9b 100644 --- a/pkg/apple/iOS/Info.plist +++ b/pkg/apple/iOS/Info.plist @@ -81,6 +81,8 @@ LSSupportsOpeningDocumentsInPlace + NSBluetoothAlwaysUsageDescription + RetroArch uses direct Bluetooth communication for some types of controllers NSBonjourServices _altserver._tcp @@ -88,6 +90,8 @@ NSLocalNetworkUsageDescription RetroArch uses the local network to find local Netplay participants. + NSMicrophoneUsageDescription + Some cores are able to provide microphone input to games. NSUserActivityTypes ConfigurationIntent