-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
audacity: sign app on darwin>=22 #25862
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
base: master
Are you sure you want to change the base?
Conversation
Notifying maintainers: |
Why is this needed? |
New macOS versions want all apps signed unless you disable SIP, if an app isn't signed it can have a number of problems, from firewall and privacy popup on every launch (like my qBittorrent port) to crashing on start (had this problem with some other ports before but can't remember). |
I think only Apple Silicon always requires signatures (and it gets signed automatically when compiling). On Intel I haven't seen an issue. I'm not sure if an ad-hoc signature is worth much in macOS. |
Yes, because macOS on ASi signs all the codes some of the problems are mitigated. It's on Intel where the problems I mentioned (popups) really are an issue. |
I had this issue with |
Are you saying we should add code to each port individually to sign its files? That seems like a lot of work. Is there no way to do it centrally in MacPorts base? CI failed on Intel machines:
|
CI failed because I didn't add |
f1f0d83
to
6044486
Compare
I encountered the problem with Python. It sounds like really all code needs to be signed. I've opened https://trac.macports.org/ticket/70945. |
That someone is me, although I wasn't in a huge rush. Signing was kind of an afterthought from my iTerm2 problems, but I'm dealing with things that build xcworkspaces and use spm as well. But with a problem like this, it probably should be in base. But, I didn't think we'd have to sign everything, though but it's starting to look more and more like the case, for a lot of weird situations like using the network. This is pretty annoying. I think I may have missed a lot of the issues because I don't have any Intel machines on 15 yet (or ever at this rate). |
Per the |
0467cf8
to
d8fc039
Compare
This PR is now ready - sorry for taking to long I completely forgot about this. |
@i0ntempest No worries, but I still want to understand what problem specifically this is solving. What is the error you get without signing? |
@mohd-akram This is mainly for Intel users, because codes on arm are automatically signed.
Loads of code signature related issues can be found of trac, like this. Also side note: Homebrew Cask now requires all apps to be signed and notarized to be accepted into the Cask repo. |
@i0ntempest The fix for Transmission was to disable signing though, since it was signed and was built with a hardened runtime but its libraries weren't. Like @jmroot mentioned in the ticket, you either sign everything properly, or don't sign at all. We don't sign everything on macOS on Intel, so I don't think it makes sense to do it per-port. I'm open to the PR if there's something specifically wrong with Audacity currently that can be fixed by this, but otherwise IMO we should park it until then.
That makes sense for them since Casks are just republished assets. Personally, even though I maintain this port, I don't really install macOS .app applications with MacPorts - it just doesn't align well with how macOS wants things. Just download from the App Store or the developer's website, they all have auto-update built-in now too so it's not an issue. |
@mohd-akram That commit message is incorrect - signing wasn't disabled for Transmission, hardened runtime was disabled because it forbids loading unsigned external code, that's all. The app is still signed. |
Seems starting with macOS Sequoio (15), Apple enforces code signature validation. Unsigned executables have many issues like cannot access local network resources or may crash unexpectedly in GUI context or cannot be launch from Dock or Launchpad. Related to: See: https://trac.macports.org/ticket/70945 See: macports#25862 Closed: https://trac.macports.org/ticket/71404
there hasn't been any activity here for several months. What's the status - the PR queue isn't intended for keeping unfinished/undecided stuff forever. Please decide what needs to be done here, or I will close the PR after the weekend. |
This is ready for merge since ages ago and has no side effects. |
well, from a cursory look through the discussion there doesn't seem to be consensus that this is actually needed and/or if it should be done specifically on a per-port basis or somewhere in macports-base. |
Linker on Apple Silicon does automatically sign binaries but it's still different from properly signing, even for adhoc. We should be signing app bundles on newer macOS, regardless of the platform. |
Since my comment, there haven't been any tickets raised regarding this, so IMO we can close this PR for now. |
If you want. But any unsigned code involving GUI is a tickling time bomb now. |
Description
Type(s)
Tested on
macOS x.y
Xcode x.y / Command Line Tools x.y.z
Verification
Have you
port lint --nitpick
?sudo port test
?sudo port -vst install
?