From 019d9b6749e34af97846fed058e736b423d32f50 Mon Sep 17 00:00:00 2001 From: Jamil Date: Mon, 30 Dec 2024 10:04:10 -0800 Subject: [PATCH] fix(apple/iOS): Use separate Info.plist for iOS and macOS Network Extensions (#7609) macOS and iOS require slightly different Info.plist values for the Network Extension. Fixes a regression introduced in #7602 --- swift/apple/Firezone.xcodeproj/project.pbxproj | 14 ++++++++------ .../apple/FirezoneNetworkExtension/Info.iOS.plist | 15 +++++++++++++++ .../{Info.plist => Info.macOS.plist} | 0 3 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 swift/apple/FirezoneNetworkExtension/Info.iOS.plist rename swift/apple/FirezoneNetworkExtension/{Info.plist => Info.macOS.plist} (100%) diff --git a/swift/apple/Firezone.xcodeproj/project.pbxproj b/swift/apple/Firezone.xcodeproj/project.pbxproj index 6f72e9eb0..b9fab7016 100644 --- a/swift/apple/Firezone.xcodeproj/project.pbxproj +++ b/swift/apple/Firezone.xcodeproj/project.pbxproj @@ -101,7 +101,6 @@ 6FFECD5B2AD6998400E00273 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; 8D1D405C2CFF6F5200E669F9 /* Firezone.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Firezone.entitlements; sourceTree = ""; }; 8D1D405D2CFF6F5D00E669F9 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 8D1D40602CFF6F7400E669F9 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 8D41B9A42D15DD6800D16065 /* TunnelLogArchive.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelLogArchive.swift; sourceTree = ""; }; 8D5047E32CE6A8F4009802E9 /* dev.firezone.firezone.network-extension.systemextension */ = {isa = PBXFileReference; explicitFileType = "wrapper.system-extension"; includeInIndex = 0; path = "dev.firezone.firezone.network-extension.systemextension"; sourceTree = BUILT_PRODUCTS_DIR; }; 8D5047E82CE6A8F4009802E9 /* main.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = ""; }; @@ -121,6 +120,8 @@ 8DCC022928D512AE007E12D2 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; 8DD2C4C3297B37BA00F984BF /* FirezoneKit */ = {isa = PBXFileReference; lastKnownFileType = wrapper; path = FirezoneKit; sourceTree = ""; }; 8DDD0E8B2ADC6657001FA7E9 /* config.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = config.xcconfig; path = xcconfig/config.xcconfig; sourceTree = ""; }; + 8DE1077A2D2313EB00DB5A45 /* Info.iOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.iOS.plist; sourceTree = ""; }; + 8DE1077B2D2313EB00DB5A45 /* Info.macOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.macOS.plist; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -162,7 +163,8 @@ 05833DF928F73B070008FAB0 /* FirezoneNetworkExtension */ = { isa = PBXGroup; children = ( - 8D1D40602CFF6F7400E669F9 /* Info.plist */, + 8DE1077A2D2313EB00DB5A45 /* Info.iOS.plist */, + 8DE1077B2D2313EB00DB5A45 /* Info.macOS.plist */, 8D6939312BA2521A00AF4396 /* SystemConfigurationResolvers.swift */, 8D69392B2BA24FE600AF4396 /* BindResolvers.swift */, 05CF1CF6290B1CEE00CF4755 /* FirezoneNetworkExtension.entitlements */, @@ -579,7 +581,7 @@ DEVELOPMENT_TEAM = "$(inherited)"; FRAMEWORK_SEARCH_PATHS = ""; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = FirezoneNetworkExtension/Info.plist; + INFOPLIST_FILE = FirezoneNetworkExtension/Info.iOS.plist; INFOPLIST_KEY_CFBundleDisplayName = FirezoneNetworkExtension; INFOPLIST_KEY_NSHumanReadableCopyright = ""; INFOPLIST_KEY_NSSystemExtensionUsageDescription = "Firezone tunnel service"; @@ -621,7 +623,7 @@ DEVELOPMENT_TEAM = "$(inherited)"; FRAMEWORK_SEARCH_PATHS = ""; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = FirezoneNetworkExtension/Info.plist; + INFOPLIST_FILE = FirezoneNetworkExtension/Info.iOS.plist; INFOPLIST_KEY_CFBundleDisplayName = FirezoneNetworkExtension; INFOPLIST_KEY_NSHumanReadableCopyright = ""; INFOPLIST_KEY_NSSystemExtensionUsageDescription = "Firezone tunnel service"; @@ -661,7 +663,7 @@ DEVELOPMENT_TEAM = "$(inherited)"; ENABLE_HARDENED_RUNTIME = YES; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = FirezoneNetworkExtension/Info.plist; + INFOPLIST_FILE = FirezoneNetworkExtension/Info.macOS.plist; INFOPLIST_KEY_CFBundleDisplayName = FirezoneNetworkExtension; INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = ""; @@ -699,7 +701,7 @@ DEVELOPMENT_TEAM = "$(inherited)"; ENABLE_HARDENED_RUNTIME = YES; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = FirezoneNetworkExtension/Info.plist; + INFOPLIST_FILE = FirezoneNetworkExtension/Info.macOS.plist; INFOPLIST_KEY_CFBundleDisplayName = FirezoneNetworkExtension; INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = ""; diff --git a/swift/apple/FirezoneNetworkExtension/Info.iOS.plist b/swift/apple/FirezoneNetworkExtension/Info.iOS.plist new file mode 100644 index 000000000..6be51008c --- /dev/null +++ b/swift/apple/FirezoneNetworkExtension/Info.iOS.plist @@ -0,0 +1,15 @@ + + + + + NSExtension + + NSExtensionPointIdentifier + com.apple.networkextension.packet-tunnel + NSExtensionPrincipalClass + $(PRODUCT_MODULE_NAME).PacketTunnelProvider + + AppGroupIdentifier + $(APP_GROUP_ID) + + diff --git a/swift/apple/FirezoneNetworkExtension/Info.plist b/swift/apple/FirezoneNetworkExtension/Info.macOS.plist similarity index 100% rename from swift/apple/FirezoneNetworkExtension/Info.plist rename to swift/apple/FirezoneNetworkExtension/Info.macOS.plist