-
Notifications
You must be signed in to change notification settings - Fork 197
optionalFeatures
acceptableApplicationBundleIDs
acceptableAssertionUsage
acceptableAssertionApplicationNames
acceptableCameraUsage
acceptableScreenSharingUsage
aggressiveUserExperience
aggressiveUserFullScreenExperience
asyncronousSoftwareUpdate
asynchronousSoftwareUpdate
attemptToFetchMajorUpgrade
attemptToBlockApplicationLaunches
blockedApplicationBundleIDs
disableSoftwareUpdateWorkflow
enforceMinorUpdates
terminateApplicationsOnLaunch
- Examples
v1.1.7 and later
The application Bundle ID which Nudge allows without taking focus. (You can specify one or more Bundle ID.)
Disables Nudge's re-activation logic for the listed applications. If one of the specified applications is foremost, Nudge will not reactivate itself. (This feature does not work for Nudge's initial activation.)
- Xcode is forced added to the
acceptableApplicationsList
when Nudge is running in debug mode.
v1.1.7 and later
When enabled, Nudge will not activate or re-activate when assertions are currently set by an application specified in acceptableAssertionApplicationNames
.
Assertions, an Apple term, can be set by applications to request macOS disable things like display or system sleep. Some example can be found here: Apple Developer: IOPMAssertionTypes
Written as a potential mitigation for applications that are not detected by acceptableCameraUsage
and acceptableScreenSharingUsage
.
v1.1.7 and later
The application names using assertions which Nudge allows without taking focus. You can specify one or more applications. To find the names please run /usr/bin/pmset -g assertions
in Terminal while the application is open and running.
For example this would be:
zoom.us
Meeting Center
Requires acceptableAssertionUsage
to be enabled.
v1.1.7 and later
When enabled, Nudge will not activate or re-activate when the camera is on.
Note: acceptableCameraUsage
will be ignored by Nudge when the host computer has passed the required installation date.
v1.1.7 and later
When enabled, Nudge will not activate or re-activate when screen sharing is active.
v1.1.0 and later
When disabled, Nudge will not hide all non-acceptableApplicationBundleIDs
after the requiredInstallationDate
or allowedDeferrals
.
v1.1.7 and later
When disabled, Nudge will not create a blurred background when the computer is passed the deferral window.
v1.1.3 and earlier
When disabled, Nudge will wait for Software Update to finish downloading (if any) updates before showing its UI.
Deprecated for
asynchronousSoftwareUpdate
v1.1.4 and later
When disabled, Nudge will wait for Software Update to finish downloading (if any) updates before showing its UI.
v1.1.4 and later
When disabled, Nudge will not attempt to download a major upgrade application via softwareupdate
.
v1.1.7 and later
When enabled, Nudge will attempt to block application launches after the required installation date.
This key must be used in conjunction with blockedApplicationBundleIDs
.
A Notification Profile should be implemented so the user can see why the application is closed.
v1.1.7 and later
The application Bundle ID which Nudge blocks from launching after the required installation date. You can specify one or more Bundle ID.
For example this would be:
us.zoom.xos
com.microsoft.Word
Note: Do not try to block com.apple.finder
in conjunction with terminateApplicationsOnLaunch
as launchd will immediately try relaunch it causing loopy behaviour.
v1.1.5 and later
When enabled, Nudge will not attempt to download a minor update via softwareupdate
.
See also: majorUpgradeAppPath
When enabled, Nudge will enforce minor updates. This should likely never be disabled.
When enabled, Nudge will terminate the applications listed in blockedApplicationBundleIDs
upon initial launch.
A Notification Profile should be implemented so the user can see why the application is closed.
{
"optionalFeatures": {
"acceptableAssertionApplicationNames": [
"zoom.us",
"Meeting Center",
"Google Chrome",
"Safari"
],
"acceptableAssertionUsage": true,
"acceptableApplicationBundleIDs": [
"us.zoom.xos",
"com.cisco.webexmeetingsapp"
],
"asynchronousSoftwareUpdate": true,
"attemptToFetchMajorUpgrade": true,
"enforceMinorUpdates": true
},
}
<?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>PayloadContent</key>
<array>
<dict>
<key>PayloadDescription</key>
<string>Configures optionalFeatures preferences</string>
<key>PayloadDisplayName</key>
<string>Nudge Preferences</string>
<key>PayloadIdentifier</key>
<string>com.github.macadmins.Nudge.preferences.example.optionalFeatures</string>
<key>PayloadOrganization</key>
<string></string>
<key>PayloadType</key>
<string>com.github.macadmins.Nudge</string>
<key>PayloadUUID</key>
<string>CA02957C-7472-446B-9F77-3E0414405556</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>optionalFeatures</key>
<dict>
<key>acceptableApplicationBundleIDs</key>
<array>
<string>us.zoom.xos</string>
</array>
<key>asynchronousSoftwareUpdate</key>
<true/>
<key>attemptToFetchMajorUpgrade</key>
<true/>
<key>enforceMinorUpdates</key>
<true/>
</dict>
</dict>
</array>
<key>PayloadDescription</key>
<string>Configures Nudge application</string>
<key>PayloadDisplayName</key>
<string>Nudge</string>
<key>PayloadIdentifier</key>
<string>com.github.macadmins.Nudge.example.optionalFeatures</string>
<key>PayloadOrganization</key>
<string>Nudge</string>
<key>PayloadScope</key>
<string>System</string>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>2F54F734-132D-4539-B583-F1DCF23DB5EB</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>