Project

General

Profile

Actions

Bug #9875

closed

Stop shipping the macOS build with an invalid code signature

Added by Rachel Hutchison almost 2 years ago. Updated almost 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
05/15/2022
Due date:
% Done:

0%

Estimated time:
Chirp Version:
daily
Model affected:
(All models)
Platform:
Windows
Debug Log:
I read the instructions above:

Description

The macOS builds of CHIRP ship with an invalid code signature that causes the app to crash with "EXC_CRASH (SIGKILL (Code Signature Invalid))" when run. This appears to have been the cause of numerous bug reports and even has a section in the wiki devoted to it. Unfortunately the wiki provides and erroneous explanation and an unreasonably complicated partial solution. The wiki claims that the problem stems from CHIRP being unsigned. This is not true: CHIRP is signed, but the signature is invalid, the exception message macOS makes this clear. The wiki suggests signing the application with a local dev certificate, but this is unnecessary as macOS, even the bleeding edge Monterey will happily run unsigned applications provided the user gives consent. Simply removing the invalid signature from the binary solves the issue codesign --remove-signature /Applications/CHIRP.app/Contents/CHIRP

The macOS user experience would be much better if you simply stopped signing releases with whatever broken cert you have in your build system. macOS is not iOS and applications do not need to be signed to run. Right clicking and choosing "Open" once to bypass the unsigned app soft-block (more info on the actual process here: https://support.apple.com/guide/mac-help/open-a-mac-app-from-an-unidentified-developer-mh40616/mac) is much easier than running a bunch of shell commands to resign the application.

Actions #1

Updated by Tony Fuller almost 2 years ago

Hi Rachel,

I'll propose the removal of the current signature to Dan as he owns the build process. Thanks for doing some investigative work for us :)

Thanks,
Tony

Actions #2

Updated by Dan Smith almost 2 years ago

  • Status changed from New to Closed

The build process doesn't run on a mac, so I can't run the codesign tool each time. That said, I also wasn't trying to have it signed (snake oil or otherwise). Long ago when generating the app template that I blow the updated python into, the appification process either signed the frozen python binary with snake oil, or it inherited the (admittedly now broken) signature from the python binary itself.

I've never noticed this being a problem and right-click-open has always been the necessary method to use (since they started forcing it). Not sure if something has changed lately, but it's possible.

Anyway, I've removed the signature from the binary in the app template so the next generated build should have it removed.

Actions

Also available in: Atom PDF