-
Notifications
You must be signed in to change notification settings - Fork 32
Preferences
Preferences can be located in any standard location for OS X (for instance /Library/Preferences/com.github.ygini.Hello-IT.plist
or ~/Library/Preferences/com.github.ygini.Hello-IT.plist
). They can be distributed by any method, though MDM or MCX in "always" mode is recommended for security reasons. Chef or Puppet with regular compliance checks are OK too.
If you deploy configuration via a simple plist file, don't forget to update the pref cache with the following command:
killall cfprefsd
Regarding the display style in the menu bar, you've two options: text or image.
The application will use com.github.ygini.Hello-IT preferences and look for title, icon and iconformat keys.
For icon key, you must specify a folder path on the local system with image set for menu bar inside it, named according to the following documentation.
The special value default for icon key is used to display the default Hello IT icon set.
When using custom image, your target folder must contain the followings files to support all functionalities:
- statusbar
- statusbar@2x
- statusbar-dark
- statusbar-dark@2x
- statusbar-error-dark
- statusbar-error-dark@2x
- statusbar-error
- statusbar-error@2x
- statusbar-ok-dark
- statusbar-ok-dark@2x
- statusbar-ok
- statusbar-ok@2x
- statusbar-unavailable-dark
- statusbar-unavailable-dark@2x
- statusbar-unavailable
- statusbar-unavailable@2x
- statusbar-warning-dark
- statusbar-warning-dark@2x
- statusbar-warning
- statusbar-warning@2x
When using custom image, the key iconformat must be set to the right extension used by your icons.
For example, when the app is looking to OK state in dark mode with png iconformat, here is the list of priority:
- custom statusbar-ok-dark.png
- custom statusbar-ok.png
- default statusbar-ok-dark
If something is set for the icon key, an image will be used according to the previous list of priority, otherwise it use the title key to set a string value. Color for the text mode are automatically managed.
Here is a sample preference file:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>content</key>
<array>
<dict>
<key>functionIdentifier</key>
<string>public.title</string>
<key>settings</key>
<dict>
<key>title</key>
<string>Hello IT default content</string>
</dict>
</dict>
<dict>
<key>functionIdentifier</key>
<string>public.submenu</string>
<key>settings</key>
<dict>
<key>content</key>
<array>
<dict>
<key>functionIdentifier</key>
<string>public.test.http</string>
<key>settings</key>
<dict>
<key>URL</key>
<string>http://captive.apple.com</string>
<key>mode</key>
<string>md5</string>
<key>originalString</key>
<string>73a78ff5bd7e5e88aa445826d4d6eecb</string>
<key>repeat</key>
<integer>60</integer>
<key>title</key>
<string>Internet</string>
</dict>
</dict>
</array>
<key>title</key>
<string>Services state</string>
</dict>
</dict>
<dict>
<key>functionIdentifier</key>
<string>public.separator</string>
</dict>
<dict>
<key>functionIdentifier</key>
<string>public.open.resource</string>
<key>settings</key>
<dict>
<key>URL</key>
<string>https://www.apple.com</string>
<key>title</key>
<string>Apple</string>
</dict>
</dict>
<dict>
<key>functionIdentifier</key>
<string>public.separator</string>
</dict>
<dict>
<key>functionIdentifier</key>
<string>public.quit</string>
</dict>
</array>
<key>title</key>
<string>Hello IT</string>
</dict>
</plist>
This preference file will be interpreted by the plugin handling the public.submenu function. By default this function is handled by public.submenu.
The title in the root dictionary will be the title of the status item, and in the content array, you find the definition of each item, in the display order (from top to bottom), with associated settings for selected function.
For more details about the loading process, read the public.submenu documentation.
Software provided under the BSD 3-clause license. For commercial support and custom development, please contact Abelionni.
- Introduction
- Application Description
- Hello-IT as an LaunchAgent
- Preferences
- Preferences subdomain
- Functions
- Security
- Label translation
- Notifications on state change
- Images
- Logs
- Support and custom requests
- Tell it if you use it!