Releases: root3nl/SupportApp
Releases · root3nl/SupportApp
Release list
Support App 3.0.5
What's changed/fixed
- The LaunchAgent and LaunchDaemon property lists are now shipped as static files instead of being generated during installation. Some XDR/MDR security products could flag the previous behavior, where property lists were written to
/Library/LaunchAgentsand/Library/LaunchDaemonsand quarantine attributes were removed, as suspicious. The install scripts now only copy the pre-packaged files into place, so nothing generates or modifies a property list on the Mac anymore - The launchd
SpawnConstraint, which only allows launching binaries signed by Root3, is now always set instead of only on macOS 14 or higher
Support App 3.0.4
What's new
- Migrate Support App 2.x configurations to the 3.x schema: A new migration tool converts a Support App 2.x property list or configuration profile to the new
Rowsstructure. It's available in the app from Configurator Mode under Advanced settings, and as a standalonemigrate-support-2x-to-3x.shscript in the repository root. Refer to https://github.com/root3nl/SupportApp/wiki/Migrating-Support-2.x-to-3.x for more information - Dynamic
Extensiontitle:Extensionnow supports a dynamic title using the<ExtensionID>_titlekey, just likeSymbol,ActionTypeandActionalready do. Refer to https://github.com/root3nl/SupportApp/wiki/Extensions for more information and example preference keys
What's changed/fixed
- Fixed an issue on macOS 27 or higher where the LaunchAgent and LaunchDaemon could not be loaded
- Improved security of the LaunchAgent and LaunchDaemon to only allow launching binaries signed by Root3
- Fixed an issue where the menu bar notifier badge stayed on after an
Extensioncleared its alert, until the app was restarted ExtensionIDmust not contain a dot (.), as this prevents the menu bar notifier badge from updating. A warning is now shown in Configurator Mode when a dot is used- Fixed an issue where the menu bar context menu did not open when using a secondary click on macOS 27 or higher. A control-click now also opens the menu
- Fixed an issue where a remote (https)
StatusBarIconcould result in unnecessary status bar icon refreshes - Disabled the scheduled update check for App Catalog, as version 1.9.0 or higher automatically checks for updates
- Added the macOS 27 marketing name
Support App 3.0.3
What's changed/fixed
- Improvements and support for an upcoming release of App Catalog
- Fixed an issue where hovering over items on macOS 26.4 or higher may result in unexpected UI glitches
- Fixed an issue where the status bar badge was not respecting the active layout. This resulted in badges being triggered, even when the specific item was not part of the view layout
- Fixed an issue where the Uptime item could not be removed while in Configurator Mode
Support App 3.0.2
What's changed/fixed
- Fixed an issue where Support App could open the wrong System Settings pane for Background Security Improvements on non-English Macs. The app now uses language-independent software update metadata to identify these updates more reliably and open the Background Security Improvements pane
Support App 3.0.1
What's changed/fixed
- Added support for opening the new macOS Background Security Improvements in System Settings when there is one available.
- Improved
Extensionto support dynamic updates using scripts and advanced workflows forSymbol,ActionTypeandAction. Refer to https://github.com/root3nl/SupportApp/wiki/Extensions for more information and example preference keys. - Fixed an issue for
ButtonforTypeto avoid showing an animation when hovering while noSubtitleis set - Fixed an issue for the storage bar to respect custom colors and change to orange/red to indicate
StorageLimitor 90% is reached - Minor UI improvement to the back buttons to be perfectly circular
Support App 3.0
What's New
- New design for macOS 26 with Liquid Glass: Items have been reshaped to capsules with native glass effect, matching the new Control Center.
- New row and item structure: How rows and items are defined have been completely restructured and adopt a modular approach. Add rows and items however you like. All (old) keys are deprecated, but still work without breaking changes unless the new structure with key
Rowsis specified. Check https://github.com/root3nl/SupportApp/wiki/Migrating-Support-2.x-to-3.x for all details and deprecated keys. - Configurator Mode: This new mode can be used by administrators to completely configure, visualize and test Support App right from within the app itself. The configuration can be exported to a property list or mobileconfig file. Configurator Mode can be blocked by setting the
DisableConfiguratorModekey totrue. Check https://github.com/root3nl/SupportApp/wiki/Configurator-Mode for more information. - Accessibility support: Native accessibility features for VoiceOver, Voice Control and more have been greatly enhanced so all users can benefit from it.
- New small circular button: A new small button type is added which allows a row to support up to four buttons.
- New icon: A new icon optimized for macOS 26 is added.
- macOS 14 requirement: macOS 12 and 13 are no longer supported.
- Other enhancements:
- Custom menu bar icons can now show color using
StatusBarIconAllowsColor. - Support for Privileged Scripts when deployed using Service Background Tasks (DDM) to a tamper protected location.
- Every Extension can support its own OnAppearAction to fetch updated information.
- Custom menu bar icons can now show color using
- Bug fixes and other improvements
All documentation is moved to the Wiki: https://github.com/root3nl/SupportApp/wiki

Support 3.0 beta 4 (92)
What's changed/fixed
- Fixed Medium Button not executing a Privileged Script when used in legacy structure
- Swedish localization fixes
- Medium Button text optimizations: text has slightly less spacing between characters. Additionally if text is too long, the font size will decrease. Both optimizations help preserving (larger) strings used in Support App 2.x without truncation, even though the string was already close to the edges without leaving any padding. Recommendation is to use shorter strings or larger buttons.
- Minor preference change in Settings
- Export to downloads folder by default
Support 3.0 Beta 3 (87)
What's changed/fixed
- Fix for
StatusBarIconnot loading when using a local image - Fix for Privileged Scripts not able to run in both new structure and legacy Extensions (A/B)
- Fix for a duplicate remove button in medium sized buttons for macOS 14/15
- Repositioning of the badges in items to avoid text overlays
- Small button now also available for macOS 14/15
- Restore original background
NSVisualEffectViewfor macOS 14/15 - Icon update!
Support 3.0 Beta 2 (84)
What's changed/fixed
- Configurator Mode now shows additional hints and placeholders in Text fields to guide admins to valid input or point to limitations
- Fixed an issue where Privileged Scripts would cause a crash when used in a Medium or Small button
- Fixed an issue where the
Titledid not provide a default value - Fixed an issue where the remove button for items in Configurator Mode wasn't clickable outside of the item shape
- The global
OnAppearActionkey was missing in Configurator Mode. This is now added - Removed too strict text truncation in Medium button as some existing text strings might be cutoff
Refer to https://github.com/root3nl/SupportApp/releases/tag/v3.0-beta1 for complete release notes
Support 3.0 Beta 1 (82)
What's New
- New design for macOS 26 with Liquid Glass: Items have been reshaped to capsules with glass effect, matching the new Control Center.
- New row and item structure: How rows and items are defined have been completely restructured and adopt a modular approach. Add rows and items however you like. All (old) hard coded keys are deprecated and still work unless the new structure with key
Rowsis specified. Check below for all deprecated keys. - Configurator Mode: This new mode can be used by administrators to completely configure, visualize and test Support App right from within the app itself. The configuration can be exported to a property list or mobileconfig file. Configurator Mode can be blocked using the
DisableConfiguratorModekey. - Accessibility support: Native accessibility features for VoiceOver, Voice Control and more have been greatly enhanced so all users can benefit from it.
- New small circular button: A new small circular button type is added which allows a row to support up to four buttons (macOS 26 and higher).
- Color option for menu bar icon using
StatusBarIconAllowsColor - Run Privileged Scripts when deployed using Service Background Tasks (DDM) to a tamper protected location
- Every Extension can support its own OnAppearAction to fetch updated information
Test plan
If you’d like to help, here are some test steps:
- Validate against your current configuration, for example buttons, extensions, branding etc
- Test new Configurator Mode, recreate your current configuration, export plist or mobileconfig and distribute using your Device Management Service
- When you are familiar with Accessibility features like VoiceOver or Voice Control, please validate if this works as expected and if this would pass internal accessibility assessments
- If you use Extensions, this is a focus area as a lot has changed such as value observation. You may also test scripts deployed using Service Background Tasks (DDM) if you have access to these technologies.
- Test on macOS 15 and/or macOS 26
How Extensions work with the new structure
Every Extension configured in the new structure needs a unique ExtensionID. This can be used in scripts to populate the Extension with the following keys based on the Extension ID:
EXTENSION_ID(string): the value with your outputEXTENSION_ID_alert(boolean): show alert/warning badgeEXTENSION_ID_loading(boolean): show loading indicator
To populate/update the Extension, use the following commands in your privileged script:
extension_id="EXTENSION_ID_EXAMPLE"
# Start spinning indicator
defaults write "/Library/Preferences/nl.root3.support.plist" "${extension_id}_loading" -bool true
# Set value
defaults write "/Library/Preferences/nl.root3.support.plist" "${extension_id}" -string "YOUR_OUTPUT"
# Set alert/warning badge
defaults write "/Library/Preferences/nl.root3.support.plist" "${extension_id}_alert" -bool true
# Stop spinning indicator
defaults write "/Library/Preferences/nl.root3.support.plist" "${extension_id}_loading" -bool false
Deprecated keys
HideSecondRowInfoItems
HideThirdRowInfoItems
HideFirstRowButtons
HideSecondRowButtons
InfoItemOne
InfoItemTwo
InfoItemThree
InfoItemFour
InfoItemFive
InfoItemSix
FirstRowTitleLeft
FirstRowSubtitleLeft
FirstRowTypeLeft
FirstRowLinkLeft
FirstRowSymbolLeft
FirstRowTitleMiddle
FirstRowSubtitleMiddle
FirstRowTypeMiddle
FirstRowLinkMiddle
FirstRowSymbolMiddle
FirstRowTitleRight
FirstRowSubtitleRight
FirstRowTypeRight
FirstRowLinkRight
FirstRowSymbolRight
SecondRowTitleLeft
SecondRowSubtitleLeft
SecondRowTypeLeft
SecondRowLinkLeft
SecondRowSymbolLeft
SecondRowTitleMiddle
SecondRowSubtitleMiddle
SecondRowTypeMiddle
SecondRowLinkMiddle
SecondRowSymbolMiddle
SecondRowTitleRight
SecondRowSubtitleRight
SecondRowTypeRight
SecondRowLinkRight
SecondRowSymbolRight
ExtensionTitleA
ExtensionValueA
ExtensionSymbolA
ExtensionTypeA
ExtensionLinkA
ExtensionAlertA
ExtensionTitleB
ExtensionValueB
ExtensionSymbolB
ExtensionTypeB
ExtensionLinkB
ExtensionAlertB