Jump to content

Releasing plugins on macOS - what you need to know


dast

Recommended Posts

I am not an expert with macOS, nor development under Xcode, but for a few years I have been able to create plugins on Cinema4D running on Windows (Visual Studio) and port these to macOS (Xcode).

Now, I recently heard about the need to "notarize" plugins on macOS, and was wondering what this is all about.

Up to now I used to compile for R16-R21, and could do so on macOS Maverick (R16-R18 ?), Sierra (R18-R20), High-Sierra (R21)

Haven't tried S22 or above, and stopped at High-Sierra, since my most recent Mac is a Mac Mini 2012 provided by a generous person. I have an external HD with different partitions, each hosting a particular operating system version.

 

So far - upto High-Sierra - I haven't had the need to have an Apple developer ID, or notarize anything in order for the plugins to work and be used.

Then what is the deal with notarizing and all this "protection"-stuff I read about. Can someone elaborate?

Link to post
  • Igor featured and pinned this topic

Apple demands modern applications to be notarized. A binary plugin to be linked dynamically into such host app, needs to meet notarization standards, too. Your supported versions and host OS were sufficiently old enough I assume, so it wasn't an issue for you. This is not Maxon's fault, it's an Apple policy.

Link to post
46 minutes ago, MighT said:

This is not Maxon's fault, it's an Apple policy.

I never implied this was something Maxon related. Sorry if I gave this impression.

The topic of this new Apple policy was brought up in the "R25 expectations" topic, and I wanted to discuss this development issue in more detail. Hence created this topic for such discussion what is involved, in order to keep it outside of the original forum thread.

Link to post

I have just googled the topic a bit, and apparently:

1. You need a developer ID to notarize your apps

2. Developer ID costs money

3. This is a yearly subscription. If you don't pay your fees, your developer certificate is revoked.

4. You have to upload the app to some Apple server to get it notarized.

5. Apple can refuse notarization.

6. Notarization is (according to some people's experiences) a broken and incredibly difficult process (this may be anecdotal or outdated info).
7. Apple gets only the compiled code, not the source

8. This process is automated and does not involve code reviews or any deeper verification

 

I am not clear yet about what happens:

1. if you do not notarize your application (is it just a warning dialog popping up? will the app/plugin not run at all?)

2. if you don't have a developer ID (can you not compile anything?)

3. if you compile stuff without a developer ID outside of Apple's process (on what compiler? what language? is that even possible?)

4. what happens to your plugins (or apps) at the customer if your developer certificate is revoked (do apps stop working if the developer doesn't pay Apple?)

5. what happens if Apple wrongly detects unwanted code in your app (complaint process?)

6. whether Apple can change the criteria about unwanted code (can they forbid you to use encryption code, e.g.?)

7. whether this in any way requires your OS to be online for certificate checks, etc., or not

8. how the development process is handled (I read something about "local certificates" which may allow you to run un-notarized code on your machine, but I am not sure what that means in praxis, or whether several developers in a company can share a "local certificate". I may completely misunderstand the process.)

 

Link to post

@DAST:

I came from the other thread.

And I apologize, if I implied, you had implied... This was not my intention. I just thought, it would be good to note this in a thread discussing this topic. Sorry.

Link to post

Scroll down to the  Notarization section. I will add more comments  here after work. But this can all be automated with a script. It isn’t too bad then. I don’t touch XCode at all anymore. There is no need to even open it once you have it scripted. But setting it up takes time and effort. And costs about $99 a year.

 

https://developers.maxon.net/docs/Cinema4DCPPSDK/html/page_maxonapi_dev_macos.html

Link to post
9 hours ago, kbar said:

Scroll down to the  Notarization section....

Apologies for not having looked at the most recent SDK documentation before starting this thread.

As I am mainly working with R20 I have the R20 SDK documentation installed locally. Didn't think to check the latest online docs regarding macOS development.

So sorry!

I now see it is quite documented what to do.

 

The yearly cost is a showstopper for me if I want to provide my plugins free of charge.

Yet another reason to throw the towel.

 

13 hours ago, MighT said:

I just thought, it would be good to note this in a thread discussing this topic. Sorry.

No need for apologies.

It was right of you to point it out, for current and future readers to know the deal. It isn't always Maxon who's to blame 😉

 

Link to post

I had to do this myself recently. The SDK docs are pretty good but miss out one or two crucial steps. I wrote the procedure down as I knew I'd need to do it again (and would never remember it) and you can find it on my website at https://microbion.co.uk/html/createplugins_r23_3_notarize.htm.

 

For sure, this can be automated but it helps to understand the process and the only way to do that is to do it (at least once) from scratch.

 

Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.

  • LATEST ACTIVITIES

    1. 0

      Picture viewer much brighter than viewport

    2. 4

      Make a hat fall through the air with controlable turbulence, lift and wind???

    3. 3

      Corona Renderer 7

    4. 4

      Make a hat fall through the air with controlable turbulence, lift and wind???

    5. 175

      Houdini Tests and Impressions

×
×
  • Create New...

Copyright Core 4D © 2021 Powered by Invision Community