Waitsnake / AnimatedGif

A screensaver for Mac OSX / macOS that plays animated GIFs and APNGs
MIT License
210 stars 31 forks source link

Not working in Sonoma 14.4.1 #73

Open Steytz opened 5 months ago

Steytz commented 5 months ago

This does not seem to work for me on Sonoma, no matter what i do. The screen will just turn black. Is there a workaround or a planned patch?

Waitsnake commented 3 months ago

"screen will just turn black" sounds like macOS has saved you from using a macOS program from a developer like me that not pays apple 99 USD annual fee so that it program just works for any user.

Please send some regards to Tim Cook that he did this protection for you as a user and for more regular revenue of Apple and its share holders. Or maybe transfer 1000 USD to me and I will subscribe to the Apple Developer Program for the next 10 years and can deliver it with an official Apple Developer certificate so the program will just work out of the box. 😉

Apple changes the way a normal user can allow certificates of developers that not pay the 99 USD a little bit with each major OS update and hide the stuff better and better to force those developers to pay them the regular fee.

I already documented how to enable the Screensaver for macOS Mojave and Big Sur and put it into the README, but Apple has managed to tweak it and change it again in Sonoma good enough that it is overseen by most users. With Sonoma Apple let the user confirm the installation 1 time and then 2 times that the software from the internet can be "malicious" with an OK confirmation. But then you end up with the black screen since the screen saver is not executed by macOS at all. Since macOS did no longer inform the user where he can still allow the software to run. So there is a hidden 4 forth confirmation hidden inside System Preferences (only visible for the last hidden confirmation) under "Privacy & Security" and you need to scroll all the way down in this tab to section "Security" to even see it. Don't tell me this is not "malicious" by Apple itself against free software developers that not earn a penny with their SW and thats why they not pay the annual fee. 😔

1st confirmation if you like to install is (for all users or just your user): sonoma_conf_1

2nd and 3rd confirmation looked for me exactly the same (so I only upload one screen shot) and I have no idea why Apple like to inform the user twice in a row now? 😕 sonoma_conf_2_3

After those first 3 confirmations you end up with a black screen (still not allowed software to run) without telling the user that the execution was blocked and this is the reason the screen is black. It also gives you no hint where to look next if you still like to execute the program. sonoma_black_screen_no_hint

Here you find the hidden 4th confirmation if you do it right after a fresh installation attempt. You need to scroll all the way down in this tab to section "Security" to even see it. sonoma_hidden_conf_4

But just hit the "Open Anyway" button is not enough at 4th confirmation. The user should be scared after pressing it and now the user even needs to confirm with his user password, fingerprint, Face ID or whatever your Mac uses. This is your decision like with everything you download from the internet. I can't tell you what to do here and just say this software is under MIT License without warranty. You can use a virus scanner first on the downloaded file or you can download Xcode then check the source code yourself and compile it on your own. Or just trust it blind and believe in that old MacOS myth that "macOS is so safe that there are not so much viruses like under windows" (I hope you could hear my irony regarding that myth). Sonoma_real_serious_conf_4

And if four confirmations and a fingerprint was not enough to scare the user away Apple uses a five attempt to save Tim Cooks revenues and ask for a 5th confirmation. But you need to close System Preference first and then open it again and then go beck to your screen saver or the 5th confirmation will not appear. Sonoma_conf_5

Steytz commented 3 months ago

Wow man this really sucks, i am a developer myself and felt every word you said. It really feels as if they want to take down free software. Thanks for the detailed explanation on how to get it working again!

Waitsnake commented 3 months ago

Btw. there are more problems with Sonoma and this program than just this. Some of your folders are blocked for the ScreenSaverEngine by the sandbox system. And to make it more confusing when the preview runs under System Preferences it has a different sandbox configuration, see here: https://github.com/Waitsnake/AnimatedGif/issues/71#issuecomment-2146032040 In short put your GIF in a folder under "Pictures" folder should work.

And just today I got aware of another macOS bug under Sonoma regarding that changes you did under System Preferences will be not used until you log out or reboot, see here: #74

I already committed a workaround that works form me fine on Sonoma: https://github.com/Waitsnake/AnimatedGif/commit/a34828a2a32bb8ee7e91d831fc62b85070bea25a

I plan on a new 1.55 patch just for this. But I need more time to test this before a release. I found the workaround under another macOS screen saver (Aerial from JohnCoates) that also struggles with all those mess, undocumented changes and bugs Apple did in the ScreenSaver API in the last 5 years since Catalina. They also say in a discussion that the used notification for the workaround is not reliable enough to catch each and every situation. If so maybe I will not do a new release. We will see. Here is a fresh compilation with the workaround attempt in case you like to Alpha test it: AnimatedGif.saver.zip

Steytz commented 3 months ago

I will gladly test it one of these days and let you know, thanks man

vectronic commented 3 months ago

The alpha version seems to work a lot better! (With the known caveats on placing images under Pictures, endless security acknowledgements and needing to re-login!)

Steytz commented 1 month ago

The new version plus the instructions you provided do work much better. One thing tho, what was the trick again to make it work again when it stopped working and only shows a black screen?, i plugged some different monitors and changed some settings and suddenly it stopped working.