- Notifications
You must be signed in to change notification settings - Fork3
chore: switch to an XcodeGen project file#32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
8f5f751
to3b3eaf9
Compare
ethanndickson left a comment• edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
For some reason the runtime search paths for the frameworks has changed, despite the config looking mostly the same:
When starting the network extension I'm getting:
ASI found [dyld] (sensitive) 'Library not loaded: /Library/Frameworks/VPNLib.framework/Versions/A/VPNLib Referenced from: <306B8001-A2DD-3B40-8152-B2257E804958> /Library/SystemExtensions/0EB23306-84D3-465D-9069-4140FD750438/com.coder.Coder-Desktop.VPN.systemextension/Contents/MacOS/com.coder.Coder-Desktop.VPN Reason: tried: '/Library/Frameworks/VPNLib.framework/Versions/A/VPNLib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Library/Frameworks/VPNLib.framework/Versions/A/VPNLib' (no such file), '/Library/Frameworks/VPNLib.framework/Versions/A/VPNLib' (no such file)'
Previously, the build folder in XCode was included in the list of directories it would look for the library, not just the system stores I know this because thetried
list would include it when I had the same error before I embedded them, here's that error message:
ASI found [dyld] (sensitive) 'Library not loaded: @rpath/VPNLib.framework/Versions/A/VPNLib Referenced from: <3CE45B2E-A079-384F-88F8-1CE9C94C7020> /Library/SystemExtensions/A55BDC5F-9B8D-4AEA-AFC7-B5D63AFADFD8/com.coder.Coder-Desktop.VPN.systemextension/Contents/MacOS/com.coder.Coder-Desktop.VPN Reason: tried: '/Users/ethan/Library/Developer/Xcode/DerivedData/Coder_Desktop-ffdgfuvlnrlswxdjjgbkxtwmhuwc/Build/Products/Debug/PackageFrameworks/VPNLib.framework/Versions/A/VPNLib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/ethan/Library/Developer/Xcode/DerivedData/Coder_Desktop-ffdgfuvlnrlswxdjjgbkxtwmhuwc/Build/Products/Debug/PackageFrameworks/VPNLib.framework/Versions/A/VPNLib' (no such file), '/Library/SystemExtensions/A55BDC5F-9B8D-4AEA-AFC7-B5D63AFADFD8/com.coder.Coder-Desktop.VPN.systemextension/Contents/Frameworks/VPNLib.framework/Versions/A/VPNLib' (no such file), '/Library/SystemExtensions/Frameworks/VPNLib.framework/Versions/A/VPNLib' (no such file), '/Users/ethan/Library/Devel<…>'
But curiously:
This is onmain
:
and this is on this branch:
Perhaps it could be worth scrapping the dynamic frameworks altogether, and just including the contents of VPNLib and CoderSDK as compile targets for the app and NE, i.e. this setting:
WDYT?
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Coder Desktop/project.yml Outdated
base: | ||
INFOPLIST_FILE: VPN/Info.plist | ||
PRODUCT_MODULE_NAME: "$(PRODUCT_NAME:c99extidentifier)" | ||
PRODUCT_NAME: "$(inherited)" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
I had to setPRODUCT_NAME
to$(PRODUCT_BUNDLE_IDENTIFIER
for the app to get the OS to prompt me to install the NE.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
ethanndicksonJan 27, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
I believe it's cause you have thebase
setting forPRODUCT_NAME
set to$(TARGET_NAME)
:
PRODUCT_NAME: "$(TARGET_NAME)"
Whereas on main the base value forPRODUCT_NAME
is currently empty.
Setting that base value (changing the setting when theproject is selected in XCode) causes it to inherit from that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Does thePRODUCT_NAME: "$(PRODUCT_BUNDLE_IDENTIFIER)"
only apply to this system extension, or should I remove that default base value?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
yeah only the system extension is$(inherited)
, everything else is$(TARGET_NAME)
(with..:c99extidentifier
for the frameworks)
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
ea316ce
to81bc611
CompareUh oh!
There was an error while loading.Please reload this page.
81bc611
to54eb681
CompareChange-Id: I753a7652cdc730157ae7f8bc036338bae5e6b54bSigned-off-by: Thomas Kosiewski <tk@coder.com>
54eb681
to4a91b6d
CompareThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Coder Desktop runs end-to-end with this config, so LGTM!
511bafd
intomainUh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
This PR transitions the project from a manually maintained .xcodeproj file to an XcodeGen-managed project configuration.
It introduces a streamlined development workflow using XcodeGen to generate project files dynamically and includes necessary updates to documentation, .gitignore, and CI configuration.
Change-Id: I753a7652cdc730157ae7f8bc036338bae5e6b54b
Signed-off-by: Thomas Kosiewskitk@coder.com