Live data from Hacker News

Stats – macOS system monitor in your menu bar

github.com

151–160 of 175 posts

Re: Stats – macOS system monitor in your menu bar

#151

Earlier quoted context omitted.

40 GB is not simple sloppiness when it comes to a simple screensaver. I would encourage you to explore other solutions than to just blame it on some historical precedent you've experienced. However true it may be. It's just not likely given the criteria.

Apparently it is slopiness in the form of an undocumented API contract breakage. https://github.com/lpar/RedPill/issues/8 (the screensaver I use) https://www.jwz.org/blog/2023/10/xscreensaver-6-08-out-now/ (linked from there) Maybe I should submit a PR with this workaround.

Yes I can confirm it's exactly that.

Basically Apple made a new "safe" API for screensavers (via .appex) but is only using it internally. 3rd party screensavers must still use the old unsafe API (that uses plugins, so unsafe code).

To bridge that gap, Apple made legacyScreenSaver, an .appex that loads the plugin code. It's a great concept in practice, but the implementation has been a mess since macOS 10.15 (Catalina...), breaking many things (multi monitor support was a big one, broken in many different ways over the years). Some Apple built in screensavers haven't been ported to the new API, so you may still have issues with legacyScreenSaver without that.

With macOS 14, Apple broke it again and indeed, legacyScreenSaver no longer tells the third party screensaver to quit! My rough guess is that this is linked to the way they implemented the transition with the new built in aerial videos they added that "slows" down on your desktop (on practice, it's not the screensaver that becomes the desktop, but 2 separate process/video players that gets synced up!).

Anyway, it's been a mess for third party developers for a while (I make one called Aerial). Our best workaround is to listen for a macOS event that tells us the screensaver will exit, and time our way to forcing an exit (literally, we call exit() which we shouldn't do, but that's the only workaround that works-ish). It works maybe 99% of the time. But sometimes legacyScreenSaver still craps out on its own.

Killing it manually will fix things (you will get a black screen + some CPU usage until you do, that can get bad depending on the screensaver) too.

I (and others) reported that bug multiple times but it's been 1 year+ and nothing. It's a mess.

Re: Stats – macOS system monitor in your menu bar

#153

Earlier quoted context omitted.

Alright, bet. Wanna make your Mac menu bar less clunky? Here’s the tea. Pop these commands in your terminal to tighten it up: defaults -currentHost write -globalDomain NSStatusItemSpacing -int 8 defaults -currentHost write -globalDomain NSStatusItemSelectionPadding -int 8 Changed your mind? No cap, just undo it with these: defaults -currentHost delete -globalDomain NSStatusItemSpacing defaults -currentHost delete -gl…

This makes me cringe. No one talks like that

No one uses footnotes in a webforum other than here either, but here we are.

Re: Stats – macOS system monitor in your menu bar

#157
post #80

Earlier quoted context omitted.

No-one you know, old person.

[flagged]

Perhaps I should have said:

“Simmer down there sonny boy, we may not speak your lingo but at least our generation can recognize obvious sarcasm”

Re: Stats – macOS system monitor in your menu bar

#159

Earlier quoted context omitted.

iStat menus hit a lot harder when 8GB of RAM was a $2000 upgrade.

I remember when 4 MB of RAM was several hundred dollars. My first computer (a VIC-20) had 3KB of RAM. There was so little memory, that I had to write most of my software in 6502 Machine Language.

The first computer I programmed on was a Data General mainframe with 8k of RAM. But shortly before my first class they got CRT terminals so I didn't have to use punch cards, and it did support BASIC.

Re: Stats – macOS system monitor in your menu bar

#160
post #151

Earlier quoted context omitted.

Apparently it is slopiness in the form of an undocumented API contract breakage. https://github.com/lpar/RedPill/issues/8 (the screensaver I use) https://www.jwz.org/blog/2023/10/xscreensaver-6-08-out-now/ (linked from there) Maybe I should submit a PR with this workaround.

Yes I can confirm it's exactly that. Basically Apple made a new "safe" API for screensavers (via .appex) but is only using it internally. 3rd party screensavers must still use the old unsafe API (that uses plugins, so unsafe code). To bridge that gap, Apple made legacyScreenSaver, an .appex that loads the plugin code. It's a great concept in practice, but the implementation has been a mess since macOS 10.15 (Catalina…

Why use power and memory to run a screensaver when you can put the display to sleep?
Post reply on HN