I think `kicad --eeschema` would fix this part of the notarization/signing issue, Ian.
I share Bernhard's concern about letting it work from the GUI too. I wish I knew Apple's long term plans here. Can we continue to work on signing and notarization as a low priority thing, or is the next version of MacOS going to block us from running at all? On Mon, Feb 3, 2020 at 9:27 AM Bernhard Stegmaier <[email protected]> wrote: > > Theoretically yes, I guess. > From cmdline it probably would solve the problem and the links together with > those standalone-apps could be removed. > > But, from a non-cmdline user perspective: > Is there a way to “wrap” (?) this call to main kicad.app with some parameter > into a nice icon that just looks like a “normal” pcbnew/… app? > > > Regards, > Bernhard > > On 3. Feb 2020, at 15:51, Ian McInerney <[email protected]> wrote: > > Adam (et al.), > > If you didn't have to package the single top executable (e.g. eeschema, > pcbnew) would this allow you to remove the symlinks? We have been discussing > adding command line flags to the main kicad executable to launch the various > frames as standalone (e.g. `kicad --eeschema` would launch a standalone > eeschema instance instead of the manager frame), so then we wouldn't have to > actually have the single top executables for those anymore. > > Would that fix your issue? > > Thanks, > -Ian > > On Mon, Feb 3, 2020 at 2:12 PM Bernhard Stegmaier <[email protected]> > wrote: >> >> Hi Adam, >> >> I am also no fan of the symlinks, but having a different approach will >> be probably some work. >> >> > I had someone ask if what we do would work during WWDC and I was told >> > it would not work. I consistently get "the signature is invalid" when >> > signing while we have symlinks, and when I remove the symlinks and >> > just sign KiCad.app this error goes away. >> >> I don't doubt that the symlinks in the DMG don't work. >> What you explained is exactly what I had in mind: >> (1) Sign *only* kicad.app as is. No complete DMG with symlinks or >> whatever. >> (2) Create DMG with previously signed kicad.app and symlinks, libraries >> and whatever you put into. Don't try to notarize this DMG, DMG is just >> a container. >> >> Doesn't that work? >> kicad.app is signed and the DMG should just acts as some kind of zip >> file then... ? >> >> If the problem is putting the signed kicad.app into a (unsigned) DMG, >> maybe just distributing via .zip would be also a viable way meanwhile? >> Many other applications also do this... >> >> >> Regards, >> Bernhard >> >> Am 3.2.2020 14:46, schrieb Adam Wolf: >> > Bernhard, >> > >> > I have no personal vendetta against the symlinks. >> > >> > I had someone ask if what we do would work during WWDC and I was told >> > it would not work. I consistently get "the signature is invalid" when >> > signing while we have symlinks, and when I remove the symlinks and >> > just sign KiCad.app this error goes away. >> > >> > I am not sure if Apple gives themselves special entitlements that mere >> > mortals don't get. I'm not sure if I'm just not able to get it to >> > work. >> > >> > Nothing I have done so far relies on the symlinks going away, so if >> > you think you can make it work, please let me know. >> > >> > My personal suggestion for working around the symlinks issue was not >> > to just copy things, but rather just have a single KiCad.app that >> > would open itself in different ways of given a different type of file, >> > but others on the bug tracker preferred trying to copy things first. >> > >> > Frankly, it's exhausting spending all this time on things that users >> > don't see, when there are so many interesting fun things we could be >> > working on instead. >> > >> > In terms of what I am signing and notarizing, I have tried signing and >> > notarizing the app, the dmg, all the apps, basically every >> > combination. Apple's rules are extremely fickle here, and you could >> > even notarize unsigned things. They explicitly say the rules about >> > what you can notarize are hidden from developers! >> > >> > Adam >> > >> > On Mon, Feb 3, 2020, 1:08 AM Bernhard Stegmaier >> > <[email protected]> wrote: >> > >> >> Hi Adam, >> >> >> >> I still don’t get it: >> >>> Our current >> >>> strategy of symlinking into the kicad.app bundle does not work >> >> with >> >>> macOS signing. >> >> >> >> Xcode has e.g. Instruments application in >> >> Xcode.app/Contents/Applications/Instruments.app >> >> If I symlink it (for example) to >> >> /Applications/Instruments.app >> >> It runs without any complaints when started via the symlink. >> >> >> >> What do you notarize? >> >> The overall dmg with the symlink? >> >> Have you already tried to only notarize kicad.app (no dmg, no >> >> symlinks) and put it into the dmg with symlinks afterwards? >> >> Another quick fix could be some script that can be run to create the >> >> symlinks on user machine? >> >> >> >> A simple copy of the apps won’t work. >> >> You need to change everything wrt shared libraries in KiCad code and >> >> cmake script. >> >> >> >> In the end, you will duplicate all libraries and support stuff. >> >> Probably not a big deal for eeschema and the other small apps, but I >> >> guess for pcbnew. >> >> Means duplicating all the python, nags-ice, etc. stuff. >> >> And also, all stuff like templates, scripts, etc. >> >> Users shouldn’t fiddle around in the .app, but could get really >> >> messy if they now put (template, python, spice?) stuff in kicad.app >> >> or pcbnew.app and then something doesn’t work in one or the >> >> other... >> >> >> >> Regards, >> >> Bernhard >> >> >> >>> On 3. Feb 2020, at 02:00, Adam Wolf >> >> <[email protected]> wrote: >> >>> >> >>> Hi folks! >> >>> >> >>> Apple is changing how the lack of notarization looks like to users >> >> on >> >>> Catalina starting tomorrow. It is not clear what will happen when >> >>> folks download new versions of KiCad after tonight. >> >>> >> >>> For the past two months I've been working hard--I've got a tech >> >> demo >> >>> locally here that has signatures and notarization on macOS, but >> >> it's >> >>> not ready for primetime. For instance, I have removed the other >> >> .apps >> >>> and just have kicad.app. There's changes I made to kicad that >> >>> probably belong in kicad-mac-builder--and, well, let's just say >> >> it's a >> >>> tech demo :) >> >>> >> >>> The main things that remain are: >> >>> 1) Figure out a good solution for the symlinked .apps. Our >> >> current >> >>> strategy of symlinking into the kicad.app bundle does not work >> >> with >> >>> macOS signing. I think the current contender is to copy instead >> >> of >> >>> symlink. I am not sure how much extra space that will take up but >> >>> it's a good try. This is definitely something I can do, but since >> >>> it's something that can be done on its own, it's a prime contender >> >> for >> >>> someone looking to help out. >> >>> >> >>> 2) Another issue is that there are strict rules about where in the >> >>> bundle code, data, and executable non-Mach-O files live. For >> >>> instance, one of the signing blockers is ngspice, because it >> >> mingles >> >>> scripts and Mach-O binaries and then we put them in >> >> Contents/Plugins. >> >>> For more details, see >> >>> >> >> >> > https://developer.apple.com/library/archive/technotes/tn2206/_index.html#//apple_ref/doc/uid/DTS40007919-CH1-TNTAG201. >> >>> The big change for KiCad itself is where the Python scripts are >> >>> stored--I've fixed this in my branch, but now I have to go through >> >> and >> >>> audit and fixup our partner packages, like OCE/OCC and ngspice. >> >> If >> >>> you want to help with this, it's going to be a big job but I'm >> >> willing >> >>> to put in the time to teach if you're willing to put in the time >> >> to >> >>> learn :) >> >>> >> >>> I was really hoping I could get this done before Apple turned up >> >> the >> >>> enforcement on notarization, but that's going to happen. After >> >>> tomorrow, it'll be clearer what Apple is doing. There might be >> >> some >> >>> quick changes to make that will improve things for our users >> >> without >> >>> getting all of this done. >> >>> >> >>> Adam Wolf >> >>> >> >>> _______________________________________________ >> >>> Mailing list: https://launchpad.net/~kicad-developers >> >>> Post to : [email protected] >> >>> Unsubscribe : https://launchpad.net/~kicad-developers >> >>> More help : https://help.launchpad.net/ListHelp >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~kicad-developers >> Post to : [email protected] >> Unsubscribe : https://launchpad.net/~kicad-developers >> More help : https://help.launchpad.net/ListHelp > > _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

