Posted on 04-08-2019 09:31 AM
Hello everyone, I just wanted to share something that myself and @OmahaAdam have been working on for quite some time now. It is our version of a Mac patching system/methodology for use with JAMF Pro with a boring name of macPatch-It. macPatch-It provides a unified UI for both Apple Software updates and 3rd party application updates deployed via JAMF.
Project is located here:
macPatch-It on GitHub
If you decide to try this, use at your own risk and TEST, TEST, TEST, in a sandbox environment. I can not be held responsible if you publish this into a production environment and the sky starts falling..
This script was put together based off of several other JAMFNation users posts and projects and modified to fit my environments specific needs.
@signetmac @mm2270 @loceee @OmahaAdam
I would not consider myself to be an expert scripter so I would love any constructive feedback from you guys!
Posted on 04-28-2019 01:29 AM
Hey this looks really interesting. Sorry I haven’t looked closer yet!
Posted on 07-23-2019 12:07 PM
I've had a handful of users reporting that it's not working well with the 10.14.6 update. I added an issue ticket through your github page on it. When I ran
softwareupdate -ia
and then manually rebooted (Apple menu --> Restart) , the device came up with "an error occurred installing the update". when I did it again and chose Apple --> Shutdown and then powered up it seemed to go through.
Posted on 07-23-2019 12:15 PM
@jwojda There are certain updates that require a shutdown now not just a simple reboot. Not sure if 10.14.6 is one of them. I have been meaning to go back to my GitHub and update the script to account for this.
edit: I haven't integrated this into my script yet but I believe this is what is needed. I haven't looked to see if the updates list report if they require a shutdown or not.
softwareupdate -i -a; shutdown -h now
Thanks for the feedback.
Posted on 07-24-2019 05:05 AM
I changed the (2) lines with, hopefully that should be sufficient
/usr/sbin/softwareupdate -ia &
to
softwareupdate -i -a; shutdown -h now &
Posted on 07-24-2019 05:39 AM
where do I get cocoa dialog? can't find it anywhere
Posted on 07-24-2019 06:47 AM
@jwojda Let me know how it goes. I was thinking about adding a warning for updates that required a shutdown if I can query what those updates are.
@hdsreid I am not sure of an active location where it can be downloaded right now unfortunately. I have been planning on updating this to use Pashua but just haven't had the time to get to it yet.
Posted on 07-24-2019 08:14 AM
@FritzsCorner at first blush it seems that that modification helped, though it was on an older (Mid 2015) silver rMBP and not one of the newer touchbar ones.
Guess I will go find one of those next to test with.
Posted on 07-29-2019 10:57 AM
@FritzsCorner still not right, now it's not installing anything, any thoughts when an update will be out?
Posted on 07-29-2019 11:01 AM
@jwojda It may be a few weeks until I have a chance to get back to this. I do have Apple coming on-site this week to review the upcoming Catalina so I will pick his brain on the best way to handle this if the opportunity presents itself.
Posted on 08-02-2019 10:32 AM
@jwojda I had some time to test 10.14.6 on a handful of Macs through the Mac Patch-It script and didn't encounter the same issue you are reporting. Everything worked as it has in the past. The update indicated a restart was needed, the system went down for a reboot and came back up with 10.14.6. All tests were done from 10.14.5 systems.
Posted on 08-05-2019 04:32 AM
What exactly gets cached at the "cache packages to waiting room" step? Will every update available be cached?
Posted on 08-05-2019 07:31 AM
@FritzsCorner looks like it's working. shrugs However I've noticed the counter reset is not resetting. once the users get to 0 it doesn't reset the counter after the install, so this re-released 10.14.6 isn't getting a fresh set of defers had about 3-4 people this morning just get it force installed. Full disclosure though, I did have the policy disabled for a few days and re-activated this morning.
Posted on 08-07-2019 06:40 AM
@leonwun JAMF Packages that you have scoped for deployment will be cached down to the JAMF Waiting Room. The GitHub ReadMe has more details. Apple Updates are downloaded when they are first discovered silently in the background so that when a user is prompted to install it speeds up the process a bit and they aren't waiting for the entire update to download.
Posted on 08-07-2019 06:47 AM
@jwojda Make sure that the deferral count is actually updating. You can validate this by checking the Deferral count file located here:
/Library/Application Support/macPatchIt/DeferralOptions/DEFERRAL_COUNT
When the user chooses Defer it runs the following function.
# ----------------------------------------------------------------------------------------
# Function: updateDeferral
# Description: Updates the Deferral counter and Last Time Stamp
# ----------------------------------------------------------------------------------------
updateDeferral () {
WriteToLog "user chose to defer" "$LOGFILE"
WriteToLog "Current Deferral: $1" "$LOGFILE"
deferCheck=$(($1+1))
WriteToLog "New Deferral: $deferCheck" "$LOGFILE"
echo $deferCheck > "$DEFERRAL_COUNT"
WriteToLog "Setting Deferral Timestamp" "$LOGFILE"
timeStamp=$(date +"%s")
echo $timeStamp > "$LAST_DEFERRAL_TIME"
WriteToLog "Exiting." "$LOGFILE"
exit 0
}
Posted on 12-10-2019 12:57 PM
I'm trying this on Catalina and it seems to be having issues...
when I look at the macpatchit.log file it looks like it's running normally, but not listing the update as pending. when I look at the bash -x output it clearly states 10.15.2 is available...
[Tue Dec 10 14:48:43 CST 2019] --------------------------------------------------
[Tue Dec 10 14:48:43 CST 2019] Begin Script
[Tue Dec 10 14:48:43 CST 2019] Installing Icon
[Tue Dec 10 14:48:46 CST 2019] CocoaDialog Found
[Tue Dec 10 14:48:46 CST 2019] Deferral Options Directory not found. Creating now.
[Tue Dec 10 14:48:46 CST 2019] Deferral Count Timer not found. Creating one now.
[Tue Dec 10 14:48:46 CST 2019] Deferral limit not met. Continuing.
[Tue Dec 10 14:48:46 CST 2019] No last deferral time stamp. Might be first run.
[Tue Dec 10 14:48:46 CST 2019] Checking for Available Updates
[Tue Dec 10 14:48:51 CST 2019] Checking for Cached JAMF Packages
[Tue Dec 10 14:48:51 CST 2019] No JAMF Packages found.
[Tue Dec 10 14:48:51 CST 2019] No updates at this time
[Tue Dec 10 14:48:52 CST 2019] Exiting.
Script exit code: 0
Script result: + LOGDIR=/var/log/macPatchIt
+ mkdir -p /var/log/macPatchIt
+ LOGFILE=/var/log/macPatchIt/macPatchIt.log
++ date +%Y-%m-%d_%H-%M
+ TimeStamp=2019-12-10_14-48
++ printf %0.s- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
+ sep=---------------------------------------------------------------------------
+ debugMode=1
+ UPDATES_NO_RESTART=
+ RESTART_REQUIRED=
+ message=
+ JAMFHELPER_PATH='/Library/Application Support/JAMF/bin/jamfHelper.app/Contents/MacOS/jamfHelper'
+ CD_PATH=<redacted>/cocoaDialog
+ iconsize=72
+ dialogtimeout=900
+ DEFER_LIMIT=5
+ HOURS_TO_DEFER=12
+ DEFERRAL_OPTIONS='/Library/Application Support/macPatchIt/DeferralOptions'
+ DEFERRAL_COUNT='/Library/Application Support/macPatchIt/DeferralOptions/DEFERRAL_COUNT'
+ LAST_DEFERRAL_TIME='/Library/Application Support/macPatchIt/DeferralOptions/LAST_DEFERRAL_TIME'
+ ICON_PATH='/Library/Application Support/JAMF/bin/logo.png'
+ EPOCH_EXT_ATTRIB_ID=77
+ EPOCH_EXT_ATTRIB_NAME='SWU EPOCH'
+ API_AUTH='<redacted>'
+ JAMF_TRIGGER=install_cached_
++ defaults read /Library/Preferences/com.jamfsoftware.jamf.plist jss_url
++ sed 's/.$//'
+ JSSURL=https://<redacted>.
+ WriteToLog -------------------------------------------------- /var/log/macPatchIt/macPatchIt.log
+ lmesg=--------------------------------------------------
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo --------------------------------------------------
++ date
+ echo '[Tue Dec 10 14:48:43 CST 2019] --------------------------------------------------'
+ WriteToLog 'Begin Script' /var/log/macPatchIt/macPatchIt.log
+ lmesg='Begin Script'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'Begin Script'
Begin Script
++ date
+ echo '[Tue Dec 10 14:48:43 CST 2019] Begin Script'
+ '[' -e '/Library/Application Support/JAMF/bin/logo.png' ']'
+ WriteToLog 'Installing Icon' /var/log/macPatchIt/macPatchIt.log
+ lmesg='Installing Icon'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'Installing Icon'
Installing Icon
++ date
+ echo '[Tue Dec 10 14:48:43 CST 2019] Installing Icon'
+ jamf policy -event install_logo
Checking for policies triggered by "install_logo" for user "<redacted>"...
No policies were found for the "install_logo" trigger.
+ '[' -e /<redacted>/cocoaDialog ']'
+ WriteToLog 'CocoaDialog Found' /var/log/macPatchIt/macPatchIt.log
+ lmesg='CocoaDialog Found'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'CocoaDialog Found'
CocoaDialog Found
++ date
+ echo '[Tue Dec 10 14:48:46 CST 2019] CocoaDialog Found'
+ '[' '!' -d '/Library/Application Support/macPatchIt/DeferralOptions' ']'
+ WriteToLog 'Deferral Options Directory not found. Creating now.' /var/log/macPatchIt/macPatchIt.log
+ lmesg='Deferral Options Directory not found. Creating now.'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'Deferral Options Directory not found. Creating now.'
Deferral Options Directory not found. Creating now.
++ date
+ echo '[Tue Dec 10 14:48:46 CST 2019] Deferral Options Directory not found. Creating now.'
+ mkdir -p '/Library/Application Support/macPatchIt/DeferralOptions'
+ '[' -e '/Library/Application Support/macPatchIt/DeferralOptions/DEFERRAL_COUNT' ']'
+ WriteToLog 'Deferral Count Timer not found. Creating one now.' /var/log/macPatchIt/macPatchIt.log
+ lmesg='Deferral Count Timer not found. Creating one now.'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'Deferral Count Timer not found. Creating one now.'
Deferral Count Timer not found. Creating one now.
++ date
+ echo '[Tue Dec 10 14:48:46 CST 2019] Deferral Count Timer not found. Creating one now.'
+ echo 0
++ cat '/Library/Application Support/macPatchIt/DeferralOptions/DEFERRAL_COUNT'
+ curDeferral=0
+ [[ 0 -ge 5 ]]
+ WriteToLog 'Deferral limit not met. Continuing.' /var/log/macPatchIt/macPatchIt.log
+ lmesg='Deferral limit not met. Continuing.'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'Deferral limit not met. Continuing.'
Deferral limit not met. Continuing.
++ date
+ echo '[Tue Dec 10 14:48:46 CST 2019] Deferral limit not met. Continuing.'
+ execution_period_check
+ [[ '' = T
ue ]]
+ '[' -e '/Library/Application Support/macPatchIt/DeferralOptions/LAST_DEFERRAL_TIME' ']'
+ WriteToLog 'No last deferral time stamp. Might be first run.' /var/log/macPatchIt/macPatchIt.log
+ lmesg='No last deferral time stamp. Might be first run.'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'No last deferral time stamp. Might be first run.'
No last deferral time stamp. Might be first run.
++ date
+ echo '[Tue Dec 10 14:48:46 CST 2019] No last deferral time stamp. Might be first run.'
+ noDeferralsLeft=False
+ [[ ! -z '' ]]
+ get_rec_updates
+ WriteToLog 'Checking for Available Updates' /var/log/macPatchIt/macPatchIt.log
+ lmesg='Checking for Available Updates'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'Checking for Available Updates'
Checking for Available Updates
++ date
+ echo '[Tue Dec 10 14:48:46 CST 2019] Checking for Available Updates'
++ softwareupdate --list --recommended
+ REC_UPDATES='Software Update Tool
Finding available software
Software Update found the following new or updated software:
* Label: macOS 10.15.2 Update-
Title: macOS 10.15.2 Update, Version: , Size: 3383383K, Recommended: YES, Action: restart, '
++ grep recommended
++ grep -v restart
+ UPDATES_NO_RESTART=
++ grep restart
++ grep -v '*'
++ cut -d , -f 1
+ RESTART_REQUIRED=' Title: macOS 10.15.2 Update'
++ grep recommended
++ grep -v '*'
++ cut -d , -f 1
+ ALL_SWU=
+ swu_array=()
+ IFS=
+ read -r line
++ echo ''
++ sed 's/^[[:space:]]*//'
+ update=
+ swu_array+=("$update")
+ IFS=
+ read -r line
+ WriteToLog 'Checking for Cached JAMF Packages' /var/log/macPatchIt/macPatchIt.log
+ lmesg='Checking for Cached JAMF Packages'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'Checking for Cached JAMF Packages'
Checking for Cached JAMF Packages
++ date
+ echo '[Tue Dec 10 14:48:51 CST 2019] Checking for Cached JAMF Packages'
++ find '/Library/Application Support/JAMF/Waiting Room/' -type f '(' -name '*.pkg' -or -name '*.dmg' -or -name '*.mpkg' ')'
+ cachedPkg=
+ app_array=()
+ IFS=
+ read -r line
++ echo ''
+ app=
+ ext=
+ [[ '' == pkg ]]
+ [[ '' == dmg ]]
+ [[ '' == mpkg ]]
+ app_array+=("$app")
+ IFS=
+ read -r line
+ pkg_Reboot=false
+ [[ '' != '' ]]
+ WriteToLog 'No JAMF Packages found.' /var/log/macPatchIt/macPatchIt.log
+ lmesg='No JAMF Packages found.'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'No JAMF Packages found.'
No JAMF Packages found.
++ date
+ echo '[Tue Dec 10 14:48:51 CST 2019] No JAMF Packages found.'
+ [[ '' = '' ]]
+ [[ '' = '' ]]
+ WriteToLog 'No updates at this time' /var/log/macPatchIt/macPatchIt.log
+ lmesg='No updates at this time'
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo 'No updates at this time'
No updates at this time
++ date
+ echo '[Tue Dec 10 14:48:51 CST 2019] No updates at this time'
+ remove_from_scope
++ date +%s
+ epoch=1576010931
++ system_profiler SPHardwareDataType
++ grep UUID
++ awk '{print $3}'
+ udid=BF03E5CE-24FA-56F0-AC15-46273430268D
+ rm -rf '/Library/Application Support/macPatchIt/DeferralOptions'
+ curl -k -s -X PUT https://<redacted>/subset/extension_attributes -H 'Content-Type: application/xml' -H 'Authorization: <redacted>==' -H 'Accept: application/xml' -d '<computer><extension_attributes><extension_attribute><id>77</id><name>SWU EPOCH</name><type>String</type><value>1576010931</value></extension_attribute></extension_attributes></computer>'
+ WriteToLog Exiting. /var/log/macPatchIt/macPatchIt.log
+ lmesg=Exiting.
+ lfile=/var/log/macPatchIt/macPatchIt.log
+ '[' 1 -eq 1 ']'
+ echo Exiting.
Exiting.
++ date
+ echo '[Tue Dec 10 14:48:52 CST 2019] Exiting.'
+ exit 0
Posted on 12-10-2019 01:05 PM
@jwojda There are a number of things I need to look into with this. Unfortunately, there are a number of other projects that have kept me from getting back to it. Are you using a NetSUS or standard Apple Updates? If using Apple Updates do you have it set to allow beta versions? With the NetSUS I have not seen the issue you are describing.
My personal biggest issue is with how I implemented the package caching/installation portion and users getting prompted to install the same update due to an orphaned installer. I know how I want to address this but again, I just haven't had the cycles to get back to it.
I do appreciate the feedback and hopefully I will have some time after the holidays to circle back and spend some time on this.
Posted on 12-11-2019 11:26 AM
@jwojda I am able to replicate this issue on my end as well. I will see if I can pin-point the issue and let you know what I find.
Posted on 12-11-2019 11:55 AM
@jwojda Well I know what the problem is.. I just need to figure out how to fix it in my script. Apple changed the output for software updates so it is now in this format:
Software Update Tool
Finding available software
Software Update found the following new or updated software:
* Label: Command Line Tools beta 5 for Xcode-11.0
Title: Command Line Tools beta 5 for Xcode, Version: 11.0, Size: 224804K, Recommended: YES,
* Label: macOS Catalina Developer Beta-6
Title: macOS Catalina Public Beta, Version: 5, Size: 3084292K, Recommended: YES, Action: restart,
* Label: BridgeOSUpdateCustomer
Title: BridgeOSUpdateCustomer, Version: 10.15.0.1.1.1560926689, Size: 390674K, Recommended: YES, Action: shut down,
- Label: iCal-1.0.2
Title: iCal, Version: 1.0.2, Size: 6520K,
I found an example of parsing this output in Python at the link below, and I will need to do something similar in bash. https://github.com/saltstack/salt/pull/54281/files
I will try to get to this before the holidays but I can't promise anything.
Posted on 12-11-2019 12:50 PM
@FritzsCorner no problem, thank you for everything!
Posted on 12-11-2019 02:01 PM
@jwojda I actually had some time to work on this today. Please replace the get_rec_updates() function with the following updated function:
Note: Also added a new function checkCachedJamfPackages() that includes logic to see if a cached package has already been installed to decrease the chance of a user getting repeated prompts to install the same package. I have not added this logic to my GitHub yet. I also still need to add in logic to better handle updates that require a shutdown instead of restart. I will work on that when I have the time. The more I look back at this script the more I see that I need to overhaul, cleanup, and optimize.
# ----------------------------------------------------------------------------------------
# Function: checkCachedJamfPackages
# Description: Checks for all JAMF Cached Packages
# ----------------------------------------------------------------------------------------
checkCachedJamfPackages()
{
# Check for Cached JAMF Pro Packages
cachedPkg=$(find /Library/Application Support/JAMF/Waiting Room/ -type f ( -name "*.pkg" -or -name "*.dmg" -or -name "*.mpkg" ))
}
# ----------------------------------------------------------------------------------------
# Function: get_rec_updates
# Description: Checks the Apple Update Server for list of available Recommended updates.
# ----------------------------------------------------------------------------------------
get_rec_updates() {
WriteToLog "Checking for Available Updates" "$LOGFILE"
REC_UPDATES=$(softwareupdate --list --recommended)
# Check installed macOS Version
os_ver=$(sw_vers -productVersion)
IFS='.' read -r -a ver <<< "$os_ver"
if [[ ${ver[1]} -le "14" ]]; then
WriteToLog "macOS is not Catalina" "$LOGFILE"
UPDATES_NO_RESTART=$(grep -v restart <<<"$REC_UPDATES")
WriteToLog "Updates that don't require restart: $UPDATES_NO_RESTART" "$LOGFILE"
RESTART_REQUIRED=$(grep restart <<<"$REC_UPDATES"
| grep -v '*'
| cut -d , -f 1)
WriteToLog "Updates that require restart: $RESTART_REQUIRED" "$LOGFILE"
ALL_SWU=$(grep recommended <<<"$REC_UPDATES"
| grep -v '*'
| cut -d , -f 1)
WriteToLog "All recommended updates: $ALL_SWU" "$LOGFILE"
else
WriteToLog "macOS Catalina is intalled." "$LOGFILE"
UPDATES_NO_RESTART=$(grep -v restart <<<"$REC_UPDATES"
| sed -n -e 's/^.*(Title: )/1/p'
| cut -d , -f 1
| sed 's/^[^:]*://g')
WriteToLog "Updates that don't require restart: $UPDATES_NO_RESTART" "$LOGFILE"
RESTART_REQUIRED=$(grep restart <<<"$REC_UPDATES"
| sed -n -e 's/^.*(Title: )/1/p'
| cut -d , -f 1
| sed 's/^[^:]*://g')
WriteToLog "Updates that require restart: $RESTART_REQUIRED" "$LOGFILE"
ALL_SWU=$(grep 'Recommended: YES' <<<"$REC_UPDATES"
| sed -n -e 's/^.*(Title: )/1/p'
| cut -d , -f 1
| sed 's/^[^:]*://g')
WriteToLog "All recommended updates: $ALL_SWU" "$LOGFILE"
fi
# Adding all recommended updates into an array
swu_array=()
while IFS= read -r line; do
update=$(sed 's/^[[:space:]]*//' <<< "$line")
swu_array+=( "$update" )
done < <( echo "$ALL_SWU" )
# 1st Check for Cached JAMF Pro Packages
WriteToLog "Checking to see if any cached packages are already installed." "$LOGFILE"
checkCachedJamfPackages
# Receipt and Cached Packages Paths
receiptsPath="/Library/Application Support/JAMF/Receipts"
cachedPath="/Library/Application Support/JAMF/Waiting Room"
# Check if a cached Package is already installed and if it is, deletes it
if [[ ! "$cachedPkg" ]]; then
WriteToLog "No Cached Packages Found" "$LOGFILE"
else
app_array=()
while IFS= read -r line; do
app=${line#*//}
receipt="$receiptsPath/$app"
if [[ -f "$receipt" ]]; then
WriteToLog "$app already installed" "$LOGFILE"
cachedApp="$cachedPath/$app"
WriteToLog "Deleting $app and $app.cache.xml files." "$LOGFILE"
rm -rf "$cachedApp"
rm -rf "$cachedApp.cache.xml"
else
WriteToLog "$app has not been installed" "$LOGFILE"
fi
done < <( echo "$cachedPkg" )
fi
# 2nd Check for Cached JAMF Pro Packages
checkCachedJamfPackages
app_array=()
while IFS= read -r line; do
app=${line#*//}
ext=${app##*.}
if [[ "$ext" == "pkg" ]]; then
app=${app%.pkg}
elif [[ "$ext" == "dmg" ]]; then
app=${app%.dmg}
elif [[ "$ext" == "mpkg" ]]; then
app=${app%.mpkg}
fi
app_array+=( "$app" )
done < <( echo "$cachedPkg" )
# If there are no recommended updates, quit
if [[ "${app_array[@]}" = "" ]] && [[ "${swu_array[@]}" = "" ]]; then
WriteToLog "No updates at this time" "$LOGFILE"
description_text="Your Mac is up to date."
"$JAMFHELPER_PATH" -windowType hud -lockHUD -icon "$ICON_PATH" -heading "No Updates Available" -description "$description_text" -button1 "OK"
# Computer has no pending recommended updates, so remove computer from scope to prevent repitition
remove_from_scope
rm -rf "$DEFERRAL_OPTIONS"
WriteToLog "Exiting." "$LOGFILE"
WriteToLog "End Execution" "$LOGFILE"
WriteToLog "------------------------------------" "$LOGFILE"
WriteToLog "" "$LOGFILE"
exit 0
fi
}
Posted on 12-12-2019 12:53 PM
@FritzsCorner made the changes this morning, nothings erring out that I've seen. Will let it run a few days and see what shakes loose.
Thank you!
Posted on 04-14-2020 06:41 AM
@FritzsCorner I know it's been a while, but I've been running with these changes for a while now and they still aren't registering the shutdowns properly. :(
Posted on 06-08-2020 11:42 PM
Just found this and looks very good. Does it work under catalina - would just like some basic patch management for adobe products ec
Posted on 06-09-2020 07:54 AM
@Captainamerica It does work with Catalina but I haven't had any time to maintain my public Github as of late. I know @jwodja has had some issues with updates that require a shutdown but that is not an issue I have experienced.
I personally haven't tested this process with Adobe Products outside of Adobe Flash.
Posted on 06-10-2020 05:31 AM
OK thanks. Isn´t the cocoadialog a discontinued product for a while ? - just think I once read that it could be a bit of security risk continue to having this still in production as no one is updating it
Posted on 06-12-2020 04:33 AM
wrong topic...