Comments (18)
I am able to use actionButtonPath on the latest release but I have a suspicion you are running on macOS 13 or lower and attempting to go to a major upgrade version. Is that the case?
I see you are putting the key in the exact same spot in my test (within osVersionRequirements
).
My test was a macOS 14.3.1 device pretending to update to 14.99.99
from nudge.
If I make it 15.99.99, I receive the same message, as Nudge cannot understand how to enforce this event without additional keys being set.
from nudge.
I think I have discovered that it is a mix of several keys being set in different out of box configurations that lead to this not working, specifically attemptToFetchMajorUpgrade
with actionButtonPath
for major upgrades.
When in this case, new logic was written to exit Nudge because of the primary keys not being set and nudge's backup files being set. With this new build, I will now warn about this behavior because it is still non-ideal from a major upgrade, but that the admin has created their own set of workarounds.
Please try https://github.com/macadmins/nudge/releases/tag/v1.1.14.81549
from nudge.
hm, I tested the URI functionality with munki. I'm wondering if it's rejecting certain characters. Do you have a simple URI path you could try?
from nudge.
I am not super familiar with URI honestly. Do you have any suggestions? The URI I used is from a JAMF policy, taken directly from the policy page.
from nudge.
Can you try some of these and report back if any of them work?
https://github.com/SKaplanOfficial/macOS-URL-Schemes-for-macOS-Applications
from nudge.
Hey @erikng I'm @jshirle2's coworker. Tried changing to just jamfselfservice:// and same result.
But if I just do "open jamfselfservice://" in terminal, it properly opens jamf self service.
Testing with "ical://" and even downloading munki software center and trying "munki://" doesn't work. All of them just throw back "unable to find major upgrade application".
I unconfigured "attemptToFetchMajorUpgrade" and the error changed to "Unable to fetch major upgrade and application missing, exiting nudge". Configuring again, and setting to false, returned to the previous error "unable to find major upgrade application, exiting Nudge".
Here's our plist at this point: https://pastebin.com/9MBCYZPp
from nudge.
so you need to set majorUpgradeAppPath
for devices that require major upgrades. By default nudge will look for backup paths, but if they do not exist, you will get that message
func getBackupMajorUpgradeAppPath() -> String {
switch VersionManager.getMajorRequiredNudgeOSVersion() {
case 12:
return "/Applications/Install macOS Monterey.app"
case 13:
return "/Applications/Install macOS Ventura.app"
case 14:
return "/Applications/Install macOS Sonoma.app"
default:
return "/Applications/Install macOS Monterey.app"
}
}
Someone in the #nudge channel posted this as a solution a few days ago
<key>osVersionRequirements</key>
<array>
<dict>
<key>actionButtonPath</key>
<string>[jamfselfservice://content?entity=policy&id=161&action=execute](jamfselfservice://content?entity=policy&id=161&action=execute)</string>
<key>majorUpgradeAppPath</key>
<string>/System/Library/CoreServices/Software Update.app</string>
<key>requiredInstallationDate</key>
<string>2024-03-15T11:00:00Z</string>
<key>requiredMinimumOSVersion</key>
<string>14.3.1</string>
</dict>
</array>
</key>
from nudge.
I think I have found an alternative workaround that I am happy with that solves the issue without you needing to change your config.
Please try https://github.com/macadmins/nudge/releases/tag/v1.1.14.81547
from nudge.
Thanks @erikng . we'll give that a shot shortly. yes, this is on macOS 12 and 13, since we're trying to push people to Ventura/Sonoma (respectively).
Stay tuned... =)
from nudge.
Doesn't seem to work at least on Monterey. Ventura also doesn't work. =/
from nudge.
Can you define what isn't working? Is nudge still exiting or is the button not working?
If the former, what happens when you deploy the key I mentioned above that someone else did?
from nudge.
Adding in that key worked. Seems odd that that key is required when trying to have the workflow go through Self Service. In any case, much appreciate the assistance on this one.
One thing I did notice is that the aggressiveUserFullScreenExperience key does not seem to be working. Does that key only work in later OS versions?
from nudge.
That key shouldn't have been needed since my solution was the backup to that key. I would love to have logs prior to you trying the key.
As far as aggressive mode, it should be working, but again I need logs, preferably debug logs to understand. It also only triggers after the requiredInstallationDate has been passed.
from nudge.
How can I go about getting the debug logs? I cannot find info on them in the wiki and I can't recall anything on it.
from nudge.
It's in the wiki but
log show --predicate 'subsystem == "com.github.macadmins.Nudge"' --info --style json --debug
from nudge.
Great thanks for that new version it worked like a charm even after I removed the majorUpgradePath
key.
from nudge.
Fantastic. Thanks for the report and confirmation it's fixed.
from nudge.
Related Issues (20)
- Investigate what happens when someone intentionally malforms sofa json cache HOT 1
- Document breaking change on bold text with markdown support HOT 3
- Move to gzipped sofa url HOT 1
- Inaccurate log related to `requiredMinimumOSVersion` HOT 1
- Drop down menu in lower right hand corner is displaying in the upper left. HOT 4
- if requiredInstallationDate is set and using sofa, key is not honored HOT 1
- if sofa feed is used and contains no supported devices, unsupported ui is shown HOT 3
- When using sofa feed the requiredMinimumOSVersion may not be honored HOT 1
- When a profile update is installed, Nudge may not update the UI and logic HOT 1
- "latest-minor" has incorrect user experience when running an unreleased major OS HOT 1
- splay is not honored for SOFA download HOT 1
- Spelling Error HOT 1
- Command-line arguments to emulate a specific macOS version and hardware model for testing purposes HOT 2
- nudge hammers SOFA feed every 30 minutes because randomDelay is opt-in HOT 2
- Nudge Suite missing in latest version HOT 2
- Actively Exploited CVEs displays "false" when using -simulate-os-version flag HOT 6
- Add option to be more forceful with overly outdated devices HOT 2
- Enforce "active exploit" logic on devices running older operating systems HOT 1
- Use Local Date Format for Required Date in v2.0 unless specified in JSON/Profile HOT 6
- Github actions using deprecated APIs HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nudge.