it also necessary to codesign DMG in addition to codesigning of APP
bundle and notarization.
It
isn’t necessary to sign disk images. As I mentioned above, the notary service will accept an unsigned disk image and the resulting ticket will then cover just the disk image’s content.
Probably I found a typo in your article "Testing a Notarised Product".
The command works on my machine. Specifically, I just downloaded the latest Chrome disk image and here’s what I see:
Code Block % sw_vers |
ProductName: macOS |
ProductVersion: 11.2.1 |
BuildVersion: 20D74 |
% spctl -a -t open -vvv --context context:primary-signature googlechrome.dmg |
googlechrome.dmg: accepted |
source=Notarized Developer ID |
origin=Developer ID Application: Google, Inc. (EQHXZ8M8AV) |
always shows the same result for codesigned APP, regardless notarization
Can you post more details about the exact workflow you’re using here?
Keep in mind that notarised tickets identify code via the cdhash. So, imagine a sequence like this:
Build your app.
Create a disk from the app in step 1.
Notarise that disk image.
Check its notarisation.
Create a ‘software update’ zip archive from the app in step 1.
Check its notarisation with spctl.
The check in step 6 will always succeed because the check in step 4 has caused your system to ingest a ticket that covers the app’s cdhash.
This is exactly the sort of thing that taught me to always test this stuff in a VM, where I can roll back the VM to a snapshot that’s never seen my software before.
The timestamp service is not available.
This means that
codesign is unable to access the Apple timestamp service (
timestamp.apple.com). I’ve seen two causes of this:
My experience is that the first one is the most common. You should use a
packet trace to see what’s going on.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"