There seems to be a lot of configuration options but they all seem pretty similar to me when reading the wiki
I tried running it just with defaults and it made the nudge window active constantly... what settings are recommended to kind of tone down the aggressiveness of behavior? Our patches prior to macOS 11 would run once a day and prompt to install or defer. In hindsight that seems not aggressive enough, so maybe every couple hours? I'm open to suggestions, but with all the different timer options I'm getting a little lost and confused.
I use a launchagent that tells nudge to run every 3 hours (or 10800 seconds)
<?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>Label</key> <string>com.github.macadmins.Nudge</string> <key>LimitLoadToSessionType</key> <array> <string>Aqua</string> </array> <key>ProgramArguments</key> <array> <string>/Applications/Utilities/Nudge.app/Contents/MacOS/Nudge</string> <!-- <string>-json-url</string> --> <!-- <string>https://raw.githubusercontent.com/macadmins/nudge/main/Nudge/example.json</string> --> <!-- <string>-demo-mode</string> --> </array> <key>RunAtLoad</key> <true/> <key>StartInterval</key> <integer>10800</integer> </dict> </plist>
Are you guys seeing different behavior/result using config profile vs. json ?
I'm not seeing consistent behavior using config profile. Preference domain is set to com.github.macadmins.Nudge and I have requiredMinimumOSVersion key set to 11.4.0. Not being prompted every hour, with the default LaunchAgent.
@WaqasKhan I did see some inconsistencies with it still displaying even though I had the "don't display until downloaded" key set. What you're seeing may be down to your min version number choice. Since 11.4 isn't a production release it may balk at that. Someone correct me if I'm wrong, but that seems like a plausible cause. Try setting it to 11.3.1.
To apply customized settings, are you using Application and Custom Settings --> External Application --> Source --> Custom Schema and uploading the customized json file ?
I must be doing something wrong because I can't get the application to Jamf deployed configuration either via plist or json.
It works as expected if I manually add the plist or json to /Library/Preferences.
@rickwhois Maybe a stupid question but when I deploy this scheme via custom schema and the preference domain is com.github.macadmins.Nudge and I try to change the right side text for the Nudge screen it doesn't change anything. Any idea's?
Further I just deploy a launchagent and the Nudge PKG version 1.0.1.06092021201805.
@Joostvantwout Are you testing this in demo mode? that wont show you the changes. When I test, I usual scope a test config to just my test machine and make sure the targetosversion of my test machine is in the test config, and then make sure the requiredminimumosversion is newer than whats on the test mac. It should pop up on its own, but you can run it from terminal /Applications/Utilities/Nudge.app/Contents/MacOS/Nudge
The nudge repo is very thorough as well if your looking to make other changes! https://github.com/macadmins/nudge Hope this helps!
@rickwhois No I'm not testing in Demo mode, testing with launchagent config profile, Nudge is showing up every 30 minutes like it's supposed to be, requiredminimumosversion is also showing as expected only the "Update device" button doesn't change. I want to change the context of the button as our company needs but looks like it doesn't come through.
Is there maybe a good order to deploy nudge? Maybe first the package then the config or other way around?
I have this same issue. Using the JSON info in a Jamf Configuration profile. The More Info link to uRL and simple vs regular changes in the Config profile takes on the laptop with Nudge. The Text I edit under "user element" does not reflect the changes made via the JSON config profile. The profile on the computer shows the edited text but Nudge itself does not show the correct text.
@Joostvantwout Are other elements in the updateElements section changing? I don't modify that actionButtonText element, mainly just subHeader & mainContentText. But actionButtonText is listed as a modifiable element so from a functionality stand point it should work. I don't believe there is a preferred order of installation, but whenever I change the config, I don't reinstall nudge and things work fine. I'm not an expert with nudge, I just haven't had many issues with it. You may want to inquire with the helpful folks in the nudge slack channel.
Our Nudge deployment is set up with Nudge.pkg and LaunchAgent.pkg pushed once per computer along with scoping the Nudge JSON configuration profile. Didn't set it up via this Jamf Guide Scripting method. Just started to test and deploy this for the Big Sur machines. It was working perfectly for the testing and we pushed it out to more users and now we are unable to click on the "Update Device" button but able to hit the return key to get the software update pane to open. Posted to macadmins slack to see if others have seen this.
The developer posted this update in GitHub:
"That has been fixed as of a40c521 and will be in the next release of Nudge v1.1.0.
Moving forward, if you need additional text for mainContentText that takes over 125 pixels in height, a scroll bar will appear and the user can scroll up/down to read the additional context. The button no longer fails to trigger as well."
I am still having issues getting Nudge to work correctly. I was able to change the wording to my liking. Even able to change the Apple logo on the left side pane. I uploaded the Config Profile using the Custom Schema. Everything seems to look good in the config profile. I can make changes and I see the updated info in System Preferences>Profiles. If I open Nudge from Applications it opens fine and looks great.
The problem is the setting I have in the Config Profile, initialrefreshcycle, approachingrefreshcycle, immenentrefreshcycle, elasperefreshcycle does not initiate Nudge to open. Even if I change to 60 sec just to get it to open. If I use the launch agent it will reopen if I reboot the device.
Can someone confirm that by setting these parameters that Nudge should open? I'm using the Config Profile method because I am having even more issues trying JSON. Has anyone had the config profile method working?
I am also experiencing issues getting Nudge to work. I can't even get the JSON Configuration Profile to deploy to my test machine. I am getting the error:
-[__NSCFConstantString objectForKeyedSubscript:]: unrecognized selector sent to instance 0x7fff80a00ad0
I took the default example JSON provided in the repo and made minimal changes and I am still getting the error above. I also tried to deploy the mobileconfig file via Jamf Pro and it also did not work. I lastly tried to download the mobileconfig file to the mac and install manually, and it doesn't work either, and actually causes my Profiles window to become "corrupt", and I am unable to open it until I reboot the machine.
My plist file is below. Any guidance would be appreciated.
<?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>optionalFeatures</key> <dict> <key>acceptableApplicationBundleIDs</key> <array> <string>us.zoom.xos</string> </array> <key>aggressiveUserExperience</key> <false/> <key>asyncronousSoftwareUpdate</key> <false/> <key>attemptToFetchMajorUpgrade</key> <false/> <key>enforceMinorUpdates</key> <false/> </dict> <key>osVersionRequirements</key> <array> <dict> <key>aboutUpdateURL</key> <string>https://support.apple.com/en-us/HT211896#macos1121</string> <key>aboutUpdateURLs</key> <array> <dict> <key>_language</key> <string>en</string> <key>aboutUpdateURL</key> <string>https://support.apple.com/en-us/HT211896#macos1121</string> </dict> </array> <key>majorUpgradeAppPath</key> <string>/Applications/Install macOS Big Sur.app</string> <key>requiredInstallationDate</key> <string>2021-09-13T00:00:00Z</string> <key>requiredMinimumOSVersion</key> <string>11.6</string> <key>targetedOSVersionsRule</key> <string>11</string> </dict> </array> <key>userExperience</key> <dict> <key>allowUserQuitDeferrals</key> <true/> <key>allowedDeferrals</key> <integer>1000000</integer> <key>allowedDeferralsUntilForcedSecondaryQuitButton</key> <integer>14</integer> <key>approachingRefreshCycle</key> <integer>6000</integer> <key>approachingWindowTime</key> <integer>72</integer> <key>elapsedRefreshCycle</key> <integer>300</integer> <key>imminentWindowTime</key> <integer>24</integer> <key>imminentRefreshCycle</key> <integer>600</integer> <key>initialRefreshCycle</key> <integer>18000</integer> <key>maxRandomDelayInSeconds</key> <integer>1200</integer> <key>noTimers</key> <false/> <key>nudgeRefreshCycle</key> <integer>60</integer> <key>randomDelay</key> <false/> </dict> <key>userInterface</key> <dict> <key>actionButtonPath</key> <string>jamfselfservice://remediate</string> <key>fallbackLanguage</key> <string>en</string> <key>forceFallbackLanguage</key> <false/> <key>forceScreenShotIcon</key> <false/> <key>iconDarkPath</key> <string>/usr/local/shared/logo.png</string> <key>iconLightPath</key> <string>/usr/local/shared/logo.png</string> <key>screenShotDarkPath</key> <string/> <key>screenShotLightPath</key> <string/> <key>showDeferralCount</key> <false/> <key>simpleMode</key> <false/> <key>singleQuitButton</key> <false/> </dict> </dict> </plist>
Nudge 1.1 version issue
Anyone else having an issue with version 1.1? I'm testing with current stage at ApproachingRefresh Cycle (<72hrs). Running nudge it opens and shows the tam "I Understand". If you leave Nudge active, the main display on screen, the "I Understand" tab disappears with no other option. Like the time has elapsed. Days remaining to update still show 3.
Am I missing a setting in the Configuration Profile? If I roll back to v 1.0 this does not happen.
Also just to confirm the Launch agent and logger have not changed? I still see LaunchAgent at 1.0.0 and Logger at 1.0.1. I have not change the pkg in Jamf as I did the Nudge app.