id = "istat-menus" name = "iStat Menus" homepage = "https://bjango.com/mac/istatmenus/" description = "The ultimate system monitor." platforms = ["macos"] # iStat Menus ships no command-line tool, so `detect` carries its bundle # identifier. The Homebrew cask (https://formulae.brew.sh/api/cask/istat-menus.json) # signals "com.bjango.istatmenus" and zaps the preference domains listed below. executables = [] [installation] macos_bundle_ids = ["com.bjango.istatmenus"] [dotfiles] # A direct download rather than a Mac App Store app, so the settings are # ordinary NSUserDefaults property lists in ~/Library/Preferences, which is # [preferences]. The names come from the same cask's zap stanza: # com.bjango.istatmenus.plist, com.bjango.istatmenus.extras.plist, # com.bjango.istatmenus.menubar..plist and # com.bjango.istatmenus.status.plist — the major version is part of two of those # names, hence the globs. # # Verified on a Mac carrying an older install: `plutil -p # ~/Library/Preferences/com.bjango.istatmenus5.extras.plist` reads back the # settings the app's own panes write — Battery_ColorGraphCharging, # Battery_MenubarModeDraining, Disks_MenubarItems, DropdownTheme, FanControl_Sets # (each with a name, uuid and speed curve), MenubarSkinColor, MenubarTheme and # Sensors-Limits. That is the configuration worth carrying. paths = [ "[preferences]/com.bjango.istatmenus.plist", "[preferences]/com.bjango.istatmenus*.extras.plist", "[preferences]/com.bjango.istatmenus.menubar.*.plist", "[preferences]/com.bjango.istatmenus.status.plist", ] # The caches (~/Library/Caches/com.bjango.istatmenus*), the cookie jar, the # HTTPStorages entries and the logs are all outside ~/Library/Preferences # already, so nothing above needs carving out. com.bjango.istatmenus.agent.plist # is deliberately not listed: it belongs to the background agent rather than to # the settings the user configures. exclude = [] # No credential among the property lists above. The licence is registered # outside the home directory — the same zap stanza names # /Users/Shared/.iStatMenus — which is out of scope for this catalog either way. secret = [] # No machine_lines: fan curves, sensor limits, menu bar layout and colours are # the settings a user wants on the next Mac, and a property list has no matcher # in this schema — `format` covers toml, yaml and json only. The per-machine # keys these domains do carry (disk and sensor identifiers for the hardware in # this Mac) are for a consumer that can read plists to drop itself.