MacOS codesign of App.framework?

91 views
Skip to first unread message

Herbert Poul

unread,
Sep 1, 2019, 12:42:38 PM9/1/19
to Desktop Embedding for Flutter
Hi,
I was wondering, now since the master channel supports release mode for mac 🎉️Should the current example already work with code signing?
I've failed with the error message:

unsealed contents present in the root directory of an embedded framework


In subcomponent: [...].app/Contents/Frameworks/App.framework


Anyone got that to work? :-) I've tried everything I could think about (signing through xcode during build, using the organizer, using the codesign command line tool with "codesign -f -v --deep -s [...]", etc.). Not sure if it's my fault, i've just got a few extra assets, but for me the App.framework looks right.

App.framework/App -> Versions/Current/App
App.framework/Resources -> Versions/Current/Resources
App.framework/Versions/A/App
App.framework/Versions/A/Resources/flutter_assets/LICENSE
App.framework/Versions/A/Resources/flutter_assets/AssetManifest.json
App.framework/Versions/A/Resources/flutter_assets/FontManifest.json
App.framework/Versions/A/Resources/flutter_assets/packages/cupertino_icons/assets/CupertinoIcons.ttf
App.framework/Versions/A/Resources/flutter_assets/fonts/MaterialIcons-Regular.ttf
App.framework/Versions/A/Resources/flutter_assets/assets/images/logo_with_text.png
App.framework/Versions/A/Resources/Info.plist
App.framework/Versions/Current -> A/



thanks,
  Herbert


Stuart Morgan

unread,
Sep 1, 2019, 4:16:08 PM9/1/19
to Herbert Poul, Desktop Embedding for Flutter
On the latest master, signing should indeed work. I expect that the problem is:
 
App.framework/Versions/Current -> A/

One of the things that came up in the debugging of the signing issues with App.framework is that codesigning is *very* picky about the links, and having trailing slashes was one of the things that it objects to.

I would suggest running `flutter clean` and rebuilding, if you haven't already, since that's likely a left-over link from one of the earlier incorrect versions of the App.framework code.

-Stuart

Herbert Poul

unread,
Sep 5, 2019, 4:55:49 PM9/5/19
to Desktop Embedding for Flutter
Just as a small update, after the latest flutter master fix (re. that symlink) app signing (sandbox + hardening) went perfectly, and it even got approved by Apple. 🎉️
So if anyone is interested in a flutter based keepass compatible password manager check out the mac app store ;) `https://apps.apple.com/app/authpass-password-manager/id1478552452?ls=1&mt=12
the source code (along with a notarized release build ;) ) is available on github https://github.com/authpass/authpass
There are still a few rough edges, but i'm already impressed how well flutter runs on the Mac. imho it already feels better than some electron apps ;-)


Stuart Morgan

unread,
Sep 5, 2019, 5:14:14 PM9/5/19
to Herbert Poul, Desktop Embedding for Flutter
On Thu, Sep 5, 2019 at 1:55 PM Herbert Poul <herber...@gmail.com> wrote:
Just as a small update, after the latest flutter master fix (re. that symlink) app signing (sandbox + hardening) went perfectly, and it even got approved by Apple. 🎉️

It's good to get confirmation that the new configuration is working for people, thanks.
 
There are still a few rough edges, but i'm already impressed how well flutter runs on the Mac.

You are aware I hope that on many machines macOS Flutter apps will fairly reliably crash on resize? I would definitely not recommend distributing apps to end users at this stage.

-Stua

Herbert Poul

unread,
Sep 5, 2019, 5:28:45 PM9/5/19
to Stuart Morgan, Desktop Embedding for Flutter
To be honest I did experience the resizing crashes, but for me it felt like it would only be triggered by erratically resizing to check layout changes, rather than resizing while actually using the app.. (btw, there is another crash i've experienced when updating through the app store update process it stops (kills?) the running app.. but it seems in such a way which produces a crash :) at least the app restarted with a crash report window)

Anyway, it's just an open source side project. I don't expect too many "end users" to end up downloading it anyway.. and it seems the app store review doesn't involve too much resizing either :-P


Reply all
Reply to author
Forward
0 new messages