notarize icon indicating copy to clipboard operation
notarize copied to clipboard

Even when setting "tool":"notarytool" still get the legacy warning

Open raul-guerrero opened this issue 2 years ago • 5 comments

My notarize script is this:

return await notarize({
    tool: 'notarytool',
    appPath: `${appOutDir}/${appName}.app`,
    appleId: process.env.APPLE_ID,
    appleIdPassword: process.env.APPLE_APP_SPECIFIC_PASSWORD,
    teamId: process.env.APPLE_TEAM_ID,
  })

Yet I still get the following warning in the output:

Notarizing using the legacy altool system. The altool system will be disabled on November 1 2023. Please switch to the notarytool system before then.
You can do this by setting "tool: notarytool" in your "@electron/notarize" options. Please note that the credentials options may be slightly different between tools.

I guess must be a bug in validating that the warning must b shown only when tool is either empty or legacy.

raul-guerrero avatar Jul 27 '23 22:07 raul-guerrero

Try the direct notarize integration within electron-builder. See builder's issues: #7683 for more details.

sprout2000 avatar Jul 27 '23 22:07 sprout2000

Try the direct notarize integration within electron-builder. See builder's issues: #7683 for more details.

Thanks for the reply... how do I directly notarize using notarytool from my package.json? what is that direct notarize integration?

raul-guerrero avatar Jul 27 '23 23:07 raul-guerrero

Direct notarize integration means running the notarization process in electron-builder instead of @electron/notarize.

Why not just run the build script in Node.js instead of package.json? For example, like this:

require("electron-builder").build({
  config: {
    /** ... */
  },
});
$ node ./builder.js

Code completion in VSCode also works, so it's easy to write.

sprout2000 avatar Jul 28 '23 00:07 sprout2000

We use npm with some scripts already on a CI, changing our package.json to direct node would mean quite a bit of refactoring, I would have hoped that instead we could just have @electron/notarize work as intended. But from what you mention I guess that won't happen before altool is EOL

raul-guerrero avatar Jul 28 '23 01:07 raul-guerrero

https://github.com/electron-userland/electron-builder/issues/7683#issuecomment-1724537409

duereg avatar Sep 18 '23 22:09 duereg

I'm still having this problem and now it doesn't work at all. My config is:

return await notarize({
    appPath,
    teamId: process.env.APPLE_TEAM_ID,
    appleId: process.env.APPLE_ID,
    appleIdPassword: process.env.APPLE_PASSWORD,
});

eden-lane avatar Apr 07 '24 10:04 eden-lane

I think this should be fixed as the legacy implementation was removed in #187

erickzhao avatar Jun 06 '24 22:06 erickzhao