-
-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Codesign Lottie.xcframework #2259
Changes from all commits
a569680
a876be2
3608de1
0cc1976
91cc0a6
10b7305
ac9f320
6b27a67
467a3dd
ca5f1ec
4ac820d
c7944f6
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -86,11 +86,15 @@ jobs: | |
- '14.1' # Swift 5.7.1 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- uses: apple-actions/import-codesign-certs@v2 | ||
with: | ||
p12-file-base64: ${{ secrets.SIGNING_CERTIFICATE_BASE_64 }} | ||
p12-password: ${{ secrets.SIGNING_CERTIFICATE_PASSWORD }} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I followed these steps to create a self-signing certificate and installed it as a secret in this repository:
|
||
- uses: ./.github/actions/setup | ||
with: | ||
xcode: ${{ matrix.xcode }} | ||
- name: Build XCFramework | ||
# Once there is a production Xcode version with the visionOS SDK, we will | ||
# Once there is a production Xcode version with the visionOS SDK, we will | ||
# need to also build an XCFramework using that version but without `SKIP_VISION_OS=true` | ||
run: SKIP_VISION_OS=true bundle exec rake build:xcframework[Lottie-Xcode-${{ matrix.xcode }}] | ||
- name: Upload XCFramework | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -85,6 +85,18 @@ Lottie supports Swift / Xcode versions back to the minimum version that is permi | |
|
||
Lottie does not collect any data. We provide this notice to help you fill out [App Privacy Details](https://developer.apple.com/app-store/app-privacy-details/). We additionally provide a [privacy manifest](https://github.com/airbnb/lottie-ios/blob/master/PrivacyInfo.xcprivacy) which can be included in your app. | ||
|
||
## Security | ||
|
||
We distribute XCFramework bundles for each release on [GitHub](https://github.com/airbnb/lottie-ios/releases/latest). In Lottie 4.4.0 and later, these XCFramework bundles include a [code signature](https://developer.apple.com/documentation/xcode/verifying-the-origin-of-your-xcframeworks). These bundles are self-signed under the name "Lottie iOS" and have the following fingerprint: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Should we include some instructions on how someone could use the fingerprint to verify the integrity of their framework artifact? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Good idea, updated: c7944f6 I couldn't easily find out how to verify this outside of Xcode, e.g. via the command line. Open to suggestions if you have any ideas! I tried
Perhaps one of the hashes here corresponds to the fingerprint shown in Xcode via some encoding, but I'm not sure. |
||
|
||
``` | ||
89 2F 1B 43 04 7B 50 53 8F 2F 46 EA D9 29 00 DD 3D 48 11 F358 21 78 C0 61 A5 FB 20 F1 11 CB 26 | ||
``` | ||
|
||
In Xcode you can verify this by selecting `Lottie.xcframework` and confirming that it shows the following information: | ||
|
||
![Code Signature in Xcode](_Gifs/code_signature.png) | ||
|
||
## Contributing | ||
|
||
We always appreciate contributions from the community. To make changes to the project, you can clone the repo and open `Lottie.xcworkspace`. This workspace includes: | ||
|
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.
nit:
_BASE64
would be a little more natural spelling, but no strong feelings on that.