From ae0248b5bcebeb559e9dda1e787bf279b4f9b8de Mon Sep 17 00:00:00 2001 From: Evelyn Harthbrooke Date: Sun, 5 Jan 2025 21:42:27 -0700 Subject: [PATCH 1/2] macOS: Add Bluetooth permission description; fixup other descs. Adds the missing Bluetooth permission description to ghostty's Xcode project description, and fixes up existing permissions to be clearer. Closes #3995 and #4512. --- macos/Ghostty.xcodeproj/project.pbxproj | 81 +++++++++++++------------ 1 file changed, 42 insertions(+), 39 deletions(-) diff --git a/macos/Ghostty.xcodeproj/project.pbxproj b/macos/Ghostty.xcodeproj/project.pbxproj index 1e37006c2..377b80a28 100644 --- a/macos/Ghostty.xcodeproj/project.pbxproj +++ b/macos/Ghostty.xcodeproj/project.pbxproj @@ -777,21 +777,22 @@ INFOPLIST_FILE = "Ghostty-Info.plist"; INFOPLIST_KEY_CFBundleDisplayName = Ghostty; INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.developer-tools"; - INFOPLIST_KEY_NSAppleEventsUsageDescription = "A program in Ghostty wants to use AppleScript."; - INFOPLIST_KEY_NSCalendarsUsageDescription = "A program in Ghostty wants to use your calendar."; - INFOPLIST_KEY_NSCameraUsageDescription = "A program in Ghostty wants to use the camera."; - INFOPLIST_KEY_NSContactsUsageDescription = "A program in Ghostty wants to use your contacts."; + INFOPLIST_KEY_NSAppleEventsUsageDescription = "A program running within Ghostty would like to use AppleScript."; + INFOPLIST_KEY_NSBluetoothAlwaysUsageDescription = "A program running within Ghostty would like to use Bluetooth."; + INFOPLIST_KEY_NSCalendarsUsageDescription = "A program running within Ghostty would like to access your Calendar."; + INFOPLIST_KEY_NSCameraUsageDescription = "A program running within Ghostty would like to use the camera."; + INFOPLIST_KEY_NSContactsUsageDescription = "A program running within Ghostty would like to access your Contacts."; INFOPLIST_KEY_NSHumanReadableCopyright = ""; - INFOPLIST_KEY_NSLocalNetworkUsageDescription = "A program in Ghostty wants to access the local network."; - INFOPLIST_KEY_NSLocationTemporaryUsageDescriptionDictionary = "A program in Ghostty wants to use your location temporarily."; - INFOPLIST_KEY_NSLocationUsageDescription = "A program in Ghostty wants to use your location information."; + INFOPLIST_KEY_NSLocalNetworkUsageDescription = "A program running within Ghostty would like to access the local network."; + INFOPLIST_KEY_NSLocationTemporaryUsageDescriptionDictionary = "A program running within Ghostty would like to use your location temporarily."; + INFOPLIST_KEY_NSLocationUsageDescription = "A program running within Ghostty would like to access your location information."; INFOPLIST_KEY_NSMainNibFile = MainMenu; - INFOPLIST_KEY_NSMicrophoneUsageDescription = "A program in Ghostty wants to use your microphone."; - INFOPLIST_KEY_NSMotionUsageDescription = "A program in Ghostty wants to access motion data."; - INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program in Ghostty wants to use your photo library."; - INFOPLIST_KEY_NSRemindersUsageDescription = "A program in Ghostty wants to access your reminders."; - INFOPLIST_KEY_NSSpeechRecognitionUsageDescription = "A program in Ghostty wants to use speech recognition."; - INFOPLIST_KEY_NSSystemAdministrationUsageDescription = "A program in Ghostty requires elevated privileges."; + INFOPLIST_KEY_NSMicrophoneUsageDescription = "A program running within Ghostty would like to use your microphone."; + INFOPLIST_KEY_NSMotionUsageDescription = "A program running within Ghostty would like to access motion data."; + INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program running within Ghostty would like to use your Photos Library."; + INFOPLIST_KEY_NSRemindersUsageDescription = "A program running within Ghostty would like to access your reminders."; + INFOPLIST_KEY_NSSpeechRecognitionUsageDescription = "A program running within Ghostty would like to use speech recognition."; + INFOPLIST_KEY_NSSystemAdministrationUsageDescription = "A program running within Ghostty requires elevated privileges."; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/../Frameworks", @@ -946,21 +947,22 @@ INFOPLIST_FILE = "Ghostty-Info.plist"; INFOPLIST_KEY_CFBundleDisplayName = Ghostty; INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.developer-tools"; - INFOPLIST_KEY_NSAppleEventsUsageDescription = "A program in Ghostty wants to use AppleScript."; - INFOPLIST_KEY_NSCalendarsUsageDescription = "A program in Ghostty wants to use your calendar."; - INFOPLIST_KEY_NSCameraUsageDescription = "A program in Ghostty wants to use the camera."; - INFOPLIST_KEY_NSContactsUsageDescription = "A program in Ghostty wants to use your contacts."; + INFOPLIST_KEY_NSAppleEventsUsageDescription = "A program running within Ghostty would like to use AppleScript."; + INFOPLIST_KEY_NSBluetoothAlwaysUsageDescription = "A program running within Ghostty would like to use Bluetooth."; + INFOPLIST_KEY_NSCalendarsUsageDescription = "A program running within Ghostty would like to access your Calendar."; + INFOPLIST_KEY_NSCameraUsageDescription = "A program running within Ghostty would like to use the camera."; + INFOPLIST_KEY_NSContactsUsageDescription = "A program running within Ghostty would like to access your Contacts."; INFOPLIST_KEY_NSHumanReadableCopyright = ""; - INFOPLIST_KEY_NSLocalNetworkUsageDescription = "A program in Ghostty wants to access the local network."; - INFOPLIST_KEY_NSLocationTemporaryUsageDescriptionDictionary = "A program in Ghostty wants to use your location temporarily."; - INFOPLIST_KEY_NSLocationUsageDescription = "A program in Ghostty wants to use your location information."; + INFOPLIST_KEY_NSLocalNetworkUsageDescription = "A program running within Ghostty would like to access the local network."; + INFOPLIST_KEY_NSLocationTemporaryUsageDescriptionDictionary = "A program running within Ghostty would like to use your location temporarily."; + INFOPLIST_KEY_NSLocationUsageDescription = "A program running within Ghostty would like to access your location information."; INFOPLIST_KEY_NSMainNibFile = MainMenu; - INFOPLIST_KEY_NSMicrophoneUsageDescription = "A program in Ghostty wants to use your microphone."; - INFOPLIST_KEY_NSMotionUsageDescription = "A program in Ghostty wants to access motion data."; - INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program in Ghostty wants to use your photo library."; - INFOPLIST_KEY_NSRemindersUsageDescription = "A program in Ghostty wants to access your reminders."; - INFOPLIST_KEY_NSSpeechRecognitionUsageDescription = "A program in Ghostty wants to use speech recognition."; - INFOPLIST_KEY_NSSystemAdministrationUsageDescription = "A program in Ghostty requires elevated privileges."; + INFOPLIST_KEY_NSMicrophoneUsageDescription = "A program running within Ghostty would like to use your microphone."; + INFOPLIST_KEY_NSMotionUsageDescription = "A program running within Ghostty would like to access motion data."; + INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program running within Ghostty would like to use your Photos Library."; + INFOPLIST_KEY_NSRemindersUsageDescription = "A program running within Ghostty would like to access your reminders."; + INFOPLIST_KEY_NSSpeechRecognitionUsageDescription = "A program running within Ghostty would like to use speech recognition."; + INFOPLIST_KEY_NSSystemAdministrationUsageDescription = "A program running within Ghostty requires elevated privileges."; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/../Frameworks", @@ -999,21 +1001,22 @@ INFOPLIST_FILE = "Ghostty-Info.plist"; INFOPLIST_KEY_CFBundleDisplayName = Ghostty; INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.developer-tools"; - INFOPLIST_KEY_NSAppleEventsUsageDescription = "A program in Ghostty wants to use AppleScript."; - INFOPLIST_KEY_NSCalendarsUsageDescription = "A program in Ghostty wants to use your calendar."; - INFOPLIST_KEY_NSCameraUsageDescription = "A program in Ghostty wants to use the camera."; - INFOPLIST_KEY_NSContactsUsageDescription = "A program in Ghostty wants to use your contacts."; + INFOPLIST_KEY_NSAppleEventsUsageDescription = "A program running within Ghostty would like to use AppleScript."; + INFOPLIST_KEY_NSBluetoothAlwaysUsageDescription = "A program running within Ghostty would like to use Bluetooth."; + INFOPLIST_KEY_NSCalendarsUsageDescription = "A program running within Ghostty would like to access your Calendar."; + INFOPLIST_KEY_NSCameraUsageDescription = "A program running within Ghostty would like to use the camera."; + INFOPLIST_KEY_NSContactsUsageDescription = "A program running within Ghostty would like to access your Contacts."; INFOPLIST_KEY_NSHumanReadableCopyright = ""; - INFOPLIST_KEY_NSLocalNetworkUsageDescription = "A program in Ghostty wants to access the local network."; - INFOPLIST_KEY_NSLocationTemporaryUsageDescriptionDictionary = "A program in Ghostty wants to use your location temporarily."; - INFOPLIST_KEY_NSLocationUsageDescription = "A program in Ghostty wants to use your location information."; + INFOPLIST_KEY_NSLocalNetworkUsageDescription = "A program running within Ghostty would like to access the local network."; + INFOPLIST_KEY_NSLocationTemporaryUsageDescriptionDictionary = "A program running within Ghostty would like to use your location temporarily."; + INFOPLIST_KEY_NSLocationUsageDescription = "A program running within Ghostty would like to access your location information."; INFOPLIST_KEY_NSMainNibFile = MainMenu; - INFOPLIST_KEY_NSMicrophoneUsageDescription = "A program in Ghostty wants to use your microphone."; - INFOPLIST_KEY_NSMotionUsageDescription = "A program in Ghostty wants to access motion data."; - INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program in Ghostty wants to use your photo library."; - INFOPLIST_KEY_NSRemindersUsageDescription = "A program in Ghostty wants to access your reminders."; - INFOPLIST_KEY_NSSpeechRecognitionUsageDescription = "A program in Ghostty wants to use speech recognition."; - INFOPLIST_KEY_NSSystemAdministrationUsageDescription = "A program in Ghostty requires elevated privileges."; + INFOPLIST_KEY_NSMicrophoneUsageDescription = "A program running within Ghostty would like to use your microphone."; + INFOPLIST_KEY_NSMotionUsageDescription = "A program running within Ghostty would like to access motion data."; + INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program running within Ghostty would like to use your Photos Library."; + INFOPLIST_KEY_NSRemindersUsageDescription = "A program running within Ghostty would like to access your reminders."; + INFOPLIST_KEY_NSSpeechRecognitionUsageDescription = "A program running within Ghostty would like to use speech recognition."; + INFOPLIST_KEY_NSSystemAdministrationUsageDescription = "A program running within Ghostty requires elevated privileges."; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/../Frameworks", From dc4774c14727912f17fe790789bf4988a79baa88 Mon Sep 17 00:00:00 2001 From: Evelyn Harthbrooke Date: Mon, 6 Jan 2025 07:13:53 -0700 Subject: [PATCH 2/2] macOS: fixup Photo Library description to make more sense. --- macos/Ghostty.xcodeproj/project.pbxproj | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/macos/Ghostty.xcodeproj/project.pbxproj b/macos/Ghostty.xcodeproj/project.pbxproj index 377b80a28..fded20911 100644 --- a/macos/Ghostty.xcodeproj/project.pbxproj +++ b/macos/Ghostty.xcodeproj/project.pbxproj @@ -789,7 +789,7 @@ INFOPLIST_KEY_NSMainNibFile = MainMenu; INFOPLIST_KEY_NSMicrophoneUsageDescription = "A program running within Ghostty would like to use your microphone."; INFOPLIST_KEY_NSMotionUsageDescription = "A program running within Ghostty would like to access motion data."; - INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program running within Ghostty would like to use your Photos Library."; + INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program running within Ghostty would like to access your Photo Library."; INFOPLIST_KEY_NSRemindersUsageDescription = "A program running within Ghostty would like to access your reminders."; INFOPLIST_KEY_NSSpeechRecognitionUsageDescription = "A program running within Ghostty would like to use speech recognition."; INFOPLIST_KEY_NSSystemAdministrationUsageDescription = "A program running within Ghostty requires elevated privileges."; @@ -959,7 +959,7 @@ INFOPLIST_KEY_NSMainNibFile = MainMenu; INFOPLIST_KEY_NSMicrophoneUsageDescription = "A program running within Ghostty would like to use your microphone."; INFOPLIST_KEY_NSMotionUsageDescription = "A program running within Ghostty would like to access motion data."; - INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program running within Ghostty would like to use your Photos Library."; + INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program running within Ghostty would like to access your Photo Library."; INFOPLIST_KEY_NSRemindersUsageDescription = "A program running within Ghostty would like to access your reminders."; INFOPLIST_KEY_NSSpeechRecognitionUsageDescription = "A program running within Ghostty would like to use speech recognition."; INFOPLIST_KEY_NSSystemAdministrationUsageDescription = "A program running within Ghostty requires elevated privileges."; @@ -1013,7 +1013,7 @@ INFOPLIST_KEY_NSMainNibFile = MainMenu; INFOPLIST_KEY_NSMicrophoneUsageDescription = "A program running within Ghostty would like to use your microphone."; INFOPLIST_KEY_NSMotionUsageDescription = "A program running within Ghostty would like to access motion data."; - INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program running within Ghostty would like to use your Photos Library."; + INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "A program running within Ghostty would like to access your Photo Library."; INFOPLIST_KEY_NSRemindersUsageDescription = "A program running within Ghostty would like to access your reminders."; INFOPLIST_KEY_NSSpeechRecognitionUsageDescription = "A program running within Ghostty would like to use speech recognition."; INFOPLIST_KEY_NSSystemAdministrationUsageDescription = "A program running within Ghostty requires elevated privileges.";