There are many minor improvements, such as: BSOD now accepts Dunning-Krugerrands. But only one new hack this time, Esper. I'd been meaning to write this for years, and finally got around to it in protest of a certain sequel.
Hacks like this are tricky because it's challenging to get lo-fi fuzz effects out of OpenGL's sharp-edged way of doing things. That sort of thing is easier if you can write in the GLES2 shader language, but alas, there's no way to do that and still maintain backward compatibility with old X11 desktops.
The Android version is much improved, again thanks to the hard work of Dave and Dennis. It should also work properly on Android TV now.
Some bad Android news, though: at some point since the previous release, some piece-of-shit within the Android tool chain decided to silently delete my .keystore file. It seems that this happened more than six months ago, so it has expired from my off-site backups too. This means that I no longer have the signing key that I previously used on the Google Play store, and that means that they won't let me upload a new version without changing the name of the app. That's stupid, so I'm not going to do that. I'm just going to stop uploading new versions to the Google store instead. You can install the APK file directly from my site. It does exactly the same thing, except that you won't get auto-updates. Bummer.
F-Droid?
BTW, I can't find Esper in the apk :(
XScreenSaver was submitted to F-Droid five months ago, the ticket is still open.
More XScreenSaver code has to be ported to Android for Esper to be in the APK, such as more font functionality.
Wait, their toolchain puts critical signing data in a hidden file?
I can't even...
No it wasn't a hidden file. But they decided to arbitrarily change the default file extension so I'm assuming some upgrade or other helpfully "migrated" it or something. Android development makes late-90s Gnome development feel polished.
The best.
Maybe try asking one of the people you previously gave the keystore file to by accident because you somehow didn't realise it was your private keys? Or did you create a separate keystore for each project and only leak some of them?
Of course I wish I did that.
GOOG used to be C001 decade ago. Not anymore. Analphabet, Incorporated sux.
BTW when compiling on Ubuntu 17.10, I still get the error message implying it's not using the built in xmu in the absence of libxmu (solved if I install libxmu-dev myself).
Figuring out the random assortment of dev packages you need to install would require some magical neural net shit or something. That's why my compilation instructions are basically "good luck with that".
Hm, mine seems to not want to load any of the images from any folder I specified:
Someone else reported that too. Is it only failing with esper, or with other image loaders like glslideshow? Check for error messages from xscreensaver-getimage.
Seems to be localized to Esper. I tried with with several of the other image loaders. They all worked as expected. Also, the preview thumbnail in macOS System Prefs DOES (sometimes) display the images correctly, and "Preview" also does (sometimes).
In other words - it's erratic as hell.
Well, I've forgotten how to extract the logs from newer macOSses since the answer is (usually) no longer /var/log/system.log (though that is constantly filling with useless warnings from built-in daemons!) but if you find an actual error message somewhere let me know.
I'm seeing a lot of these in
/var/log/system.log
:Dec 21 01:17:26 dzm-mbpro System Preferences[68674]: objc[68674]: Class InvertedSlider is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x114989728) and /Library/Screen Savers/Tessellimage.saver/Contents/MacOS/Tessellimage (0x116606488). One of the two will be used. Which one is undefined.
Dec 21 01:17:26 dzm-mbpro System Preferences[68674]: objc[68674]: Class GlobalDefaults is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x114989778) and /Library/Screen Savers/Tessellimage.saver/Contents/MacOS/Tessellimage (0x1166064d8). One of the two will be used. Which one is undefined.
Dec 21 01:17:26 dzm-mbpro System Preferences[68674]: objc[68674]: Class PrefsReader is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x1149897c8) and /Library/Screen Savers/Tessellimage.saver/Contents/MacOS/Tessellimage (0x116606528). One of the two will be used. Which one is undefined.
Dec 21 01:17:26 dzm-mbpro System Preferences[68674]: objc[68674]: Class SimpleXMLNode is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x114989818) and /Library/Screen Savers/Tessellimage.saver/Contents/MacOS/Tessellimage (0x116606578). One of the two will be used. Which one is undefined.
Dec 21 01:17:26 dzm-mbpro System Preferences[68674]: objc[68674]: Class TextModeTransformer is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x114989890) and /Library/Screen Savers/Tessellimage.saver/Contents/MacOS/Tessellimage (0x1166065f0). One of the two will be used. Which one is undefined.
Dec 21 01:17:26 dzm-mbpro System Preferences[68674]: objc[68674]: Class XScreenSaverConfigSheet is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x1149898b8) and /Library/Screen Savers/Tessellimage.saver/Contents/MacOS/Tessellimage (0x116606618). One of the two will be used. Which one is undefined.
Dec 21 01:17:26 dzm-mbpro System Preferences[68674]: objc[68674]: Class XScreenSaverView is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x114989908) and /Library/Screen Savers/Tessellimage.saver/Contents/MacOS/Tessellimage (0x116606668). One of the two will be used. Which one is undefined.
Dec 21 01:17:26 dzm-mbpro System Preferences[68674]: objc[68674]: Class XScreenSaverGLView is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x114989958) and /Library/Screen Savers/Tessellimage.saver/Contents/MacOS/Tessellimage (0x1166066b8). One of the two will be used. Which one is undefined.
Yes, those mean nothing and are impossible to eliminate because the way ScreenSaverEngine works is insanely stupid.
I think that not all of the messages are showing up there these days.
D'oh. Missed this message and posted more of the spew. Sorry 'bout that.
No messages about "Class blah blah" are useful.
More spew!
When I open System Preferences -> Screen Saver -> Esper the preview thumbnail shows the color bars. So does the Preview. There is no new log spew.
If I then select GLSlideshow I see spew (see below) show up in
system.log
. If I THEN select Esper the thumbnail view is correctly loading images and Preview is correctly loading images. When working as an actual screen saver (activated via Hot Corner) it does NOT load images.The log spew:
Dec 21 13:44:17 dzm-mbpro System Preferences[86523]: objc[86523]: Class InvertedSlider is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x10d8cd728) and /Library/Screen Savers/GLSlideshow.saver/Contents/MacOS/GLSlideshow (0x1275bd6a8). One of the two will be used. Which one is undefined.
Dec 21 13:44:17 dzm-mbpro System Preferences[86523]: objc[86523]: Class GlobalDefaults is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x10d8cd778) and /Library/Screen Savers/GLSlideshow.saver/Contents/MacOS/GLSlideshow (0x1275bd6f8). One of the two will be used. Which one is undefined.
Dec 21 13:44:17 dzm-mbpro System Preferences[86523]: objc[86523]: Class PrefsReader is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x10d8cd7c8) and /Library/Screen Savers/GLSlideshow.saver/Contents/MacOS/GLSlideshow (0x1275bd748). One of the two will be used. Which one is undefined.
Dec 21 13:44:17 dzm-mbpro System Preferences[86523]: objc[86523]: Class SimpleXMLNode is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x10d8cd818) and /Library/Screen Savers/GLSlideshow.saver/Contents/MacOS/GLSlideshow (0x1275bd798). One of the two will be used. Which one is undefined.
Dec 21 13:44:17 dzm-mbpro System Preferences[86523]: objc[86523]: Class TextModeTransformer is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x10d8cd890) and /Library/Screen Savers/GLSlideshow.saver/Contents/MacOS/GLSlideshow (0x1275bd810). One of the two will be used. Which one is undefined.
Dec 21 13:44:17 dzm-mbpro System Preferences[86523]: objc[86523]: Class XScreenSaverConfigSheet is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x10d8cd8b8) and /Library/Screen Savers/GLSlideshow.saver/Contents/MacOS/GLSlideshow (0x1275bd838). One of the two will be used. Which one is undefined.
Dec 21 13:44:17 dzm-mbpro System Preferences[86523]: objc[86523]: Class XScreenSaverView is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x10d8cd908) and /Library/Screen Savers/GLSlideshow.saver/Contents/MacOS/GLSlideshow (0x1275bd888). One of the two will be used. Which one is undefined.
Dec 21 13:44:17 dzm-mbpro System Preferences[86523]: objc[86523]: Class XScreenSaverGLView is implemented in both /Library/Screen Savers/Esper.saver/Contents/MacOS/Esper (0x10d8cd958) and /Library/Screen Savers/GLSlideshow.saver/Contents/MacOS/GLSlideshow (0x1275bd8d8). One of the two will be used. Which one is undefined.
Dec 21 13:44:17 dzm-mbpro System Preferences[86523]: objc[86523]: objc_disposeClassPair: class 'GlobalDefaults_Esper_0x604000269ac0_2226964951' still has subclasses, including 'NSKVONotifying_GlobalDefaults_Esper_0x604000269ac0_2226964951'!
Esper is failing (shows the test screen), GLSlideshow is not failing.
(blorticus 569) $ sw_vers -productVersion
10.13
(blorticus 570) $ ./GLSlideshow.saver/Contents/Resources/xscreensaver-getimage-file ~/Pictures/random/
helloween-nz.tiff
(no xscreensaver-getimage-file in Esper to test.)
sorry - cache latency made me think nobody was following up.
I tried to reproduce the error, but of course it seems to work fine now.
... and it broke again. (And I think either your blog ate my comment, or your caching settings are incredibly aggressive.)
I think the cache shouldn't be longer than 60 or 90 seconds at this point. Discussion here.
The cache behavior was better but then turned terrible again.
Nothing changed.
Yeah, I figured. Yet the symptom in the wild is that at times the cached page being served is hours out of date. If only for entirely selfish reasons I wish I could tell you how to fix it.
Oh duh, try this:
cp -p /Library/Screen\ Savers/GLSlideshow.saver/Contents/Resources/xscreensaver-getimage-file /Library/Screen\ Savers/Esper.saver/Contents/Resources/
That seems to have done the trick, although on my machine those live in
/Library/Screen Savers/
and not in/System/Library/Screen Savers/
. Thanks!+1
I remain in awe of the sheer noise of your rig in these videos. It sends me back to my youth, freezing my ass off in a datacenter - it feels like any second, someone is going to suggest tapping the drive with a ball-peen hammer to overcome the stiction after a power-down.
with the 5.38 on an iPhone 7 running the latest iOS I also get the issue that it cannot find my pictures. Neither in Esper, nor in any other like the GLSlideShow.
This worked for 5.37.
I also compiled a 5.38 on linux, and there it does work (and Esper is really cool ).
Did you answer yes to "allow photo access"? Check if that is checked in the Settings app.
Yes. It’s set to read/write .
I had 5.37 before and that worked fine.
Anything i can do to help debugging?
i just upgraded to iOS 11.2.1 the problem is still there.
I have 1200+ photos according to the iphone
Settings app shows I have read/write access to the photo library
I checked photopile (to pick a random app that uses photos), made sure that one is also set to use the photo library, but I still get the default test image, not my photo library .
An hints are appreciated :)
Works for me.
XScreenSaver 5.38
iOS 11.2.5 (beta 2 I think)
Settings -> XScreenSaver has "Allow Photos Access" set to "Read and Write"
XScreenSaver -> Esper -> "Info" (circle-i) shows "Use photo library" enabled
I had to accept the "Wants to use photos" dialog the first time.
Have you tried completely uninstalling XScreenSaver, then reinstalling it from the App Store?
Thanks,
yes I've tried all that, no such luck.
But there are other wierd things with my iPhone . The phone itself says I have almost 12G free, iTunes seems to think the phone is for more than 100% full, so iTunes refuses to load any music on the phone. :(
Perhaps you're enjoying the iTunes Race to the Bottom. Or perhaps iOS has found a new way to suck really hard.
I'd bet that if you took it to a Genius Bar they'd recommend:
1) Back up your iOS device to iCloud
1a) Oh, you need a lot more storage that iCloud makes available. Sorry about that. Back it up to iTunes instead.
2) Wipe the iOS device
3) Restore your iOS device
3a) Notice that network passwords and HealthKit data did not get restored.
3b) Oh, yeah, sorry. Forgot to mention that your backups have to be encrypted in order to backup/restore that data. Sorry.
Good luck.
Thanks ... given that, I think i'll just put my SIM back in my old Nokia. I think I have an old Sony Walkman lying around as well .
XScreenSaver won't run on your Nokia.
@gilmourtaylor: METAPHOR
It's showing up in Europe, on signage:
https://twitter.com/mikko/status/944238516451643392
I wish you had hidden a tiny little bitcoin generator in there years ago, and could now take your digital currency and anoint yourself king of San Francisco.
I'm a Linux user. Is there any changes of the font setting? After upgrade to 5.38, the xscreensaver's dialog font cannot be changed anymore. Thank you.
Check the .ad file. I made some changes to how that works because I learned that Ubuntu doesn't install such basic, standard fonts as Helvetica by default.
Is it possible that XScreenSaver (GLMatrix) was on the grammys last night during SZA's performance of "Broken Clocks"?