Hello there 🤓
We have this elderly QuickLook plugin that I am trying to revive for Big Sur... (Well, it seems to be a problem on Big Sur only.)
The thing is that it uses NSTemporaryDirectory(). This directory can be written to when built locally in Debug/Release configuration.
But when doing an Archive/Notarized builds the plugin cannot write to the directory. I have here found that in this case it gets its NSFileExtendedAttributes set to com.apple.rootless! So somehow System Integration Protection (SIP) kicks-in!
I have found two workarounds:
If I disable SIP ($ csrutil disable from Recovery mode) then it works.
If I enable the Hardened Runtime exception 'Allow DYLD Environment Variables' then is also gets write access to the temp directory.
My question is: Can one give a proper explanation for why SIP kicks-in? Could we have misconfigured something?
Let me know if you need additional information, thanks.
Best regards,
Jens Schwarzer.
5
0
1.8k