Skip to content

Commit 0eec691

Browse files
committed
Make key accessible in extension
1 parent 85ec675 commit 0eec691

File tree

8 files changed

+25
-40
lines changed

8 files changed

+25
-40
lines changed

Config.debug.xcconfig

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,3 @@ EXTENSION_BUNDLE_NAME = Copilot Dev
77
SPARKLE_FEED_URL = http:$(SLASH)$(SLASH)127.0.0.1:9433/appcast.xml
88
SPARKLE_PUBLIC_KEY = WDzm5GHnc6c8kjeJEgX5GuGiPpW6Lc/ovGjLnrrZvPY=
99
APPLICATION_SUPPORT_FOLDER = dev.com.intii.CopilotForXcode
10-
GROUP_ID = 5YKZ4Y3DAW
11-
USER_DEFAULT_SUITE_NAME = 5YKZ4Y3DAW.group.com.intii.CopilotForXcode
12-
KEYCHAIN_SERVICE = com.intii.CopilotForXcode
13-
KEYCHAIN_GROUP = 5YKZ4Y3DAW.shared

Config.xcconfig

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,3 @@ EXTENSION_BUNDLE_NAME = Copilot
77
SPARKLE_FEED_URL = https:$(SLASH)$(SLASH)raw.githubusercontent.com/intitni/CopilotForXcode/main/appcast.xml
88
SPARKLE_PUBLIC_KEY = WDzm5GHnc6c8kjeJEgX5GuGiPpW6Lc/ovGjLnrrZvPY=
99
APPLICATION_SUPPORT_FOLDER = com.intii.CopilotForXcode
10-
GROUP_ID = 5YKZ4Y3DAW
11-
USER_DEFAULT_SUITE_NAME = 5YKZ4Y3DAW.group.com.intii.CopilotForXcode
12-
KEYCHAIN_SERVICE = com.intii.CopilotForXcode
13-
KEYCHAIN_GROUP = 5YKZ4Y3DAW.shared

Copilot for Xcode/Copilot_for_Xcode.entitlements

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,17 @@
22
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
33
<plist version="1.0">
44
<dict>
5+
<key>com.apple.security.app-sandbox</key>
6+
<false/>
57
<key>com.apple.security.application-groups</key>
68
<array>
79
<string>$(TeamIdentifierPrefix)group.$(BUNDLE_IDENTIFIER_BASE)</string>
810
</array>
9-
<key>com.apple.security.app-sandbox</key>
10-
<false/>
1111
<key>com.apple.security.files.user-selected.read-only</key>
1212
<true/>
13+
<key>keychain-access-groups</key>
14+
<array>
15+
<string>$(AppIdentifierPrefix)$(BUNDLE_IDENTIFIER_BASE).Shared</string>
16+
</array>
1317
</dict>
1418
</plist>

Copilot-for-Xcode-Info.plist

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,25 +4,21 @@
44
<dict>
55
<key>APPLICATION_SUPPORT_FOLDER</key>
66
<string>$(APPLICATION_SUPPORT_FOLDER)</string>
7+
<key>APP_ID_PREFIX</key>
8+
<string>$(AppIdentifierPrefix)</string>
79
<key>BUNDLE_IDENTIFIER_BASE</key>
810
<string>$(BUNDLE_IDENTIFIER_BASE)</string>
911
<key>EXTENSION_BUNDLE_NAME</key>
1012
<string>$(EXTENSION_BUNDLE_NAME)</string>
11-
<key>GROUP_ID</key>
12-
<string>$(GROUP_ID)</string>
1313
<key>HOST_APP_NAME</key>
1414
<string>$(HOST_APP_NAME)</string>
15-
<key>KEYCHAIN_GROUP</key>
16-
<string>$(KEYCHAIN_GROUP)</string>
17-
<key>KEYCHAIN_SERVICE</key>
18-
<string>$(KEYCHAIN_SERVICE)</string>
1915
<key>SUEnableJavaScript</key>
2016
<string>YES</string>
2117
<key>SUFeedURL</key>
2218
<string>$(SPARKLE_FEED_URL)</string>
2319
<key>SUPublicEDKey</key>
2420
<string>$(SPARKLE_PUBLIC_KEY)</string>
25-
<key>USER_DEFAULT_SUITE_NAME</key>
26-
<string>$(USER_DEFAULT_SUITE_NAME)</string>
21+
<key>TEAM_ID_PREFIX</key>
22+
<string>$(TeamIdentifierPrefix)</string>
2723
</dict>
2824
</plist>

Core/Sources/CodeiumService/CodeiumKeyGenerator.swift renamed to Core/Sources/CodeiumService/CodeiumAuthService.swift

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,12 @@ import KeychainAccess
33

44
public final class CodeiumAuthService {
55
public init() {}
6-
76
let codeiumKeyKey = "codeiumKey"
87
let keychain: Keychain = {
9-
let info = Bundle.main.infoDictionary
8+
let info = Bundle.main.infoDictionary
109
return Keychain(
11-
service: info?["KEYCHAIN_SERVICE"] as! String,
12-
accessGroup: info?["KEYCHAIN_GROUP"] as! String
10+
service: info?["BUNDLE_IDENTIFIER_BASE"] as! String,
11+
accessGroup: "\(info?["APP_ID_PREFIX"] as! String)\(info?["BUNDLE_IDENTIFIER_BASE"] as! String).Shared"
1312
)
1413
}()
1514

@@ -21,8 +20,8 @@ public final class CodeiumAuthService {
2120
let key = try await generate(token: token)
2221
let info = Bundle.main.infoDictionary
2322
let keychain = Keychain(
24-
service: info?["KEYCHAIN_SERVICE"] as! String,
25-
accessGroup: info?["KEYCHAIN_GROUP"] as! String
23+
service: info?["BUNDLE_IDENTIFIER_BASE"] as! String,
24+
accessGroup: "\(info?["APP_ID_PREFIX"] as! String)\(info?["BUNDLE_IDENTIFIER_BASE"] as! String).Shared"
2625
)
2726
try keychain.set(key, key: codeiumKeyKey)
2827
}

EditorExtension/Info.plist

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,8 @@
2424
<string>$(MARKETING_VERSION)</string>
2525
<key>CFBundleVersion</key>
2626
<string>$(CURRENT_PROJECT_VERSION)</string>
27-
<key>GROUP_ID</key>
28-
<string>GROUP_ID</string>
2927
<key>HOST_APP_NAME</key>
3028
<string>$(HOST_APP_NAME)</string>
31-
<key>KEYCHAIN_GROUP</key>
32-
<string>$(KEYCHAIN_GROUP)</string>
33-
<key>KEYCHAIN_SERVICE</key>
34-
<string>$(KEYCHAIN_SERVICE)</string>
3529
<key>NSExtension</key>
3630
<dict>
3731
<key>NSExtensionAttributes</key>
@@ -46,7 +40,7 @@
4640
</dict>
4741
<key>NSHumanReadableCopyright</key>
4842
<string></string>
49-
<key>USER_DEFAULT_SUITE_NAME</key>
50-
<string>$(USER_DEFAULT_SUITE_NAME)</string>
43+
<key>TEAM_ID_PREFIX</key>
44+
<string>$(TeamIdentifierPrefix)</string>
5145
</dict>
5246
</plist>

ExtensionService/ExtensionService.entitlements

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,9 @@
66
<array>
77
<string>$(TeamIdentifierPrefix)group.$(BUNDLE_IDENTIFIER_BASE)</string>
88
</array>
9+
<key>keychain-access-groups</key>
10+
<array>
11+
<string>$(AppIdentifierPrefix)$(BUNDLE_IDENTIFIER_BASE).Shared</string>
12+
</array>
913
</dict>
1014
</plist>

ExtensionService/Info.plist

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,16 @@
44
<dict>
55
<key>APPLICATION_SUPPORT_FOLDER</key>
66
<string>$(APPLICATION_SUPPORT_FOLDER)</string>
7+
<key>APP_ID_PREFIX</key>
8+
<string>$(AppIdentifierPrefix)</string>
79
<key>BUNDLE_IDENTIFIER_BASE</key>
810
<string>$(BUNDLE_IDENTIFIER_BASE)</string>
911
<key>EXTENSION_BUNDLE_NAME</key>
1012
<string>$(EXTENSION_BUNDLE_NAME)</string>
11-
<key>GROUP_ID</key>
12-
<string>$(GROUP_ID)</string>
1313
<key>HOST_APP_NAME</key>
1414
<string>$(HOST_APP_NAME)</string>
15-
<key>KEYCHAIN_GROUP</key>
16-
<string>$(KEYCHAIN_GROUP)</string>
17-
<key>KEYCHAIN_SERVICE</key>
18-
<string>$(KEYCHAIN_SERVICE)</string>
19-
<key>USER_DEFAULT_SUITE_NAME</key>
20-
<string>$(USER_DEFAULT_SUITE_NAME)</string>
15+
<key>TEAM_ID_PREFIX</key>
16+
<string>$(TeamIdentifierPrefix)</string>
2117
<key>XPCService</key>
2218
<dict>
2319
<key>ServiceType</key>

0 commit comments

Comments
 (0)