flucoma / flucoma-pd

Fluid Corpus Manipulation objects for Pure Data
BSD 3-Clause "New" or "Revised" License
40 stars 10 forks source link

MacOS security issues for pd_darwin objects #2

Open macumbista opened 3 years ago

macumbista commented 3 years ago

I'm running MacOS 10.15.7 Catalina here. The hardened security permissions of the OS are not allowing your Pure Data objects to be loaded:

/Users/macumbista/Documents/PureData/FluidCorpusManipulation/fluid.bufmfcc.pd_darwin: code signature in (/Users/macumbista/Documents/PureData/FluidCorpusManipulation/fluid.bufmfcc.pd_darwin) not valid for use in process using Library Validation: library load disallowed by system policy fluid.bufmfcc ... couldn't create

Some ideas for a fix can be found here:

https://cutecoder.org/programming/shared-framework-hardened-runtime/

Suggestions from the Pure Data mailing list are:

  1. sign the Pd app and disable plugin validation (the app side solution for the Pd devs); or
  2. use externals built for a min version of macOS 10.9 (the library side solution for you as the external devs)

(See: https://www.mail-archive.com/pd-dev@lists.iem.at/msg02369.html )

If you know of any other user-space workarounds from your testing I would love to hear them.

macumbista commented 3 years ago

The one user space workaround is detailed here:

https://www.mail-archive.com/pd-dev@lists.iem.at/msg02366.html

"I had to go to System Preferences > Security & Privacy and click the button that allows authorization for the last binary that was prevented from launching. I then had to quit and restart Pd [...] But note that you have to do this 3-step process for every external..."

tremblap commented 3 years ago

Hello Derek, nice to see you here!

My favourite workaround for all things external (Max Pd and SuperCollider) is this one: you can de-quarantine whole folders of them by running in the terminal xattr -d -r com.apple.quarantine PATH2FOLDER

Signing the code for free software is a real pain and expensive and complicates releases... but hey, we might have to bit the bullet

macumbista commented 3 years ago

Hey PA, nice to see that the Pd code is public, I think at ICMC you said it wasn't ready yet.

Your de-quarantine trick works like a charm, thanks!

tremblap commented 3 years ago

The public code here for Pd doesn't include (yet) the sexy dataset stuff and machine learning, just segmentation and decompositon and description. I have a branch with a working version of the whole kit, but it is presently pre-alpha. Once we're in beta for it (hopefully in the next month or so) then I'll ask for volunteers on discourse.flucoma.org

macumbista commented 3 years ago

Ah I thought some things might be missing in comparison to what you describe in your paper. I'm taking an ML seminar from the University of Oslo right now and was hoping to get some Pd tools to work with.