Then all I had to do was to, basically speaking, replace the occurrences of " NSMenuExtra" by " NSStatusItem", since the two APIs are almost the same. So, how did I port MenuMeters to El Capitan, then? Well, I just gave up having ⌘-dragging. In El Capitan, Apple added a more stringent check of the allowed NSMenuExtra's, and MenuCracker no longer works. MenuCracker was an NSMenuExtra that pretended to be one of those allowed ones, which, once loaded inside SystemUIServer, removed these checks, so that more NSMenuExtras can be loaded without any problem. MenuMeters used this to inject their own NSMenuExtra's to SystemUIServer in fact MenuMeters' author is one of the main authors of MenuCracker.Įssentially, until Yosemite, SystemUIServer had a fixed list of allowed NSMenuExtras. But until Yosemite, there was a known way to work around it, available as an open-source code as MenuCracker. But since 10.2, Apple had a code that blocked SystemUIServer to load non-system-provided NSMenuExtra's. In fact until and including OS X 10.1, Apple allowed it. But this happened later than the need to port MenuMeters to El Capitan 10.11.)Īnyway, due to this better behavior of NSMenuExtra's, people often wanted to write their own. (On macOS Sierra 10.12, Apple finally implemented and enabled ⌘-dragging for all NSStatusItem's, including this port of MenuMeters. I have no idea why ⌘-dragging was not provided for the latter by the system. One good thing about the former is that you can rearrange them by ⌘-dragging the menu items. The latter can be displayed by any app written by any developer. The former are loaded and displayed by SystemUIServer, a process provided by the system. There are in fact two types of such menu bar items, one known as NSMenuExtra's and another known as NSStatusItem's. This will create an independent app which runs outside of System Preferences.As you very well know and is shown in the screenshot above, there can be various utilities put on the right hand side of the menu bar. To hack:Ĭlone the git repo, open MenuMeters.xcodeproj, and build the target MenuMeters. This is due to an increasing amount of security features imposed by Apple on preference panes running within System Preferences, which made it too cumbersome to develop MenuMeters as a preference pane. It is equal to 100 centimeters, 1/1000th of a kilometer, or about 39.37 inches. More recently, starting from Catalina, MenuMeters was changed from a preference pane within System Preferences to an independent app. A meter, or metre, is the fundamental unit of length in the metric system, from which all other length units are based. Since then, many people contributed pull requests, most of which have been incorporated. I'm making here a minimal modification so that it runs as a faceless app, putting NSStatusItem's instead of NSMenuExtra's. The original version does not work on El Capitan and later, due to the fact that SystemUIServer doesn't load Menu Extras not signed by Apple any longer. It's a great utility originally developed at. If you'd like your version mentioned here, please tell me at the issues page. which has new features in the CPU meter, etc.There are also further forks of my version of MenuMeters, which implement more features. What is more, they are maintained actively. Which are all menubar monitors with more modern look and feel and more capability. If you run sufficiently new mac OS, try one of Other versions & related open source softwares: The detailed installation instruction is given in the former. If you just want to use it, please go to or and download the binary. My fork of MenuMeters for El Capitan, Sierra, High Sierra, Mojave, Catalina and Big Sur.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |