From 75e550acfe4912673343283a531f1701d2026936 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20Theilgaard?= Date: Fri, 7 Jan 2022 14:07:21 +0100 Subject: [PATCH] notification Now with notification: ``` Installomator/utils/assemble.sh omnidisksweeper DEBUG=0 INSTALL=force NOTIFY=all 2022-01-07 14:05:25 omnidisksweeper setting variable from argument DEBUG=0 2022-01-07 14:05:25 omnidisksweeper setting variable from argument INSTALL=force 2022-01-07 14:05:25 omnidisksweeper setting variable from argument NOTIFY=all 2022-01-07 14:05:25 omnidisksweeper ################## Start Installomator v. 9.0dev 2022-01-07 14:05:25 omnidisksweeper ################## omnidisksweeper 2022-01-07 14:05:25 omnidisksweeper BLOCKING_PROCESS_ACTION=tell_user 2022-01-07 14:05:25 omnidisksweeper NOTIFY=all 2022-01-07 14:05:25 omnidisksweeper LOGO=/System/Applications/App Store.app/Contents/Resources/AppIcon.icns 2022-01-07 14:05:26 omnidisksweeper no blocking processes defined, using OmniDiskSweeper as default 2022-01-07 14:05:26 omnidisksweeper Changing directory to /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.11IcaInb 2022-01-07 14:05:26 omnidisksweeper App(s) found: /Applications/OmniDiskSweeper.app 2022-01-07 14:05:26 omnidisksweeper found app at /Applications/OmniDiskSweeper.app, version 1.13 2022-01-07 14:05:26 omnidisksweeper appversion: 1.13 2022-01-07 14:05:26 omnidisksweeper Using force to install, so not using updateTool. 2022-01-07 14:05:26 omnidisksweeper Latest version of OmniDiskSweeper is 1.13 2022-01-07 14:05:26 omnidisksweeper There is no newer version available. 2022-01-07 14:05:26 omnidisksweeper Downloading https://downloads.omnigroup.com/software/MacOSX/10.14/OmniDiskSweeper-1.13.dmg to OmniDiskSweeper.dmg 2022-01-07 14:05:26 omnidisksweeper notifying 2022-01-07 14:05:28 omnidisksweeper no more blocking processes, continue with update 2022-01-07 14:05:28 omnidisksweeper Installing OmniDiskSweeper 2022-01-07 14:05:28 omnidisksweeper notifying 2022-01-07 14:05:28 omnidisksweeper Mounting /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.11IcaInb/OmniDiskSweeper.dmg 2022-01-07 14:05:29 omnidisksweeper Mounted: /Volumes/OmniDiskSweeper 2022-01-07 14:05:29 omnidisksweeper Verifying: /Volumes/OmniDiskSweeper/OmniDiskSweeper.app 2022-01-07 14:05:31 omnidisksweeper Team ID matching: 34YW5XSRB7 (expected: 34YW5XSRB7 ) 2022-01-07 14:05:31 omnidisksweeper Downloaded version of OmniDiskSweeper is 1.13, same as installed. 2022-01-07 14:05:31 omnidisksweeper Using force to install anyway. 2022-01-07 14:05:31 omnidisksweeper App has LSMinimumSystemVersion: 10.14 2022-01-07 14:05:32 omnidisksweeper App requires higher System Version than installed: 10.13.5 2022-01-07 14:05:32 omnidisksweeper notifying 2022-01-07 14:05:32 omnidisksweeper ERROR: Installed macOS is too old for this app. 2022-01-07 14:05:32 omnidisksweeper Deleting /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.11IcaInb 2022-01-07 14:05:32 omnidisksweeper Unmounting /Volumes/OmniDiskSweeper "disk4" ejected. 2022-01-07 14:05:32 omnidisksweeper App not closed, so no reopen. 2022-01-07 14:05:32 omnidisksweeper ################## End Installomator, exit code 6 ``` --- fragments/functions.sh | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/fragments/functions.sh b/fragments/functions.sh index b1ba7a0..02a5f86 100644 --- a/fragments/functions.sh +++ b/fragments/functions.sh @@ -345,16 +345,6 @@ installAppWithPath() { # $1: path to app to install in $targetDir cleanupAndExit 5 "Team IDs do not match" fi - # macOS versioncheck - minimumOSversion=$(defaults read $appPath/Contents/Info.plist LSMinimumSystemVersion) - if [[ $minimumOSversion =~ '[0-9.]*' ]]; then - printlog "App has LSMinimumSystemVersion: $minimumOSversion" - if ! is-at-least $minimumOSversion $installedOSversion; then - printlog "App requires higher System Version than installed: $installedOSversion" - cleanupAndExit 6 "Installed macOS is too old for this app." - fi - fi - # app versioncheck appNewVersion=$(defaults read $appPath/Contents/Info.plist $versionKey) if [[ -n $appNewVersion && $appversion == $appNewVersion ]]; then @@ -373,6 +363,21 @@ installAppWithPath() { # $1: path to app to install in $targetDir printlog "Downloaded version of $name is $appNewVersion (replacing version $appversion)." fi + # macOS versioncheck + minimumOSversion=$(defaults read $appPath/Contents/Info.plist LSMinimumSystemVersion) + if [[ $minimumOSversion =~ '[0-9.]*' ]]; then + printlog "App has LSMinimumSystemVersion: $minimumOSversion" + if ! is-at-least $minimumOSversion $installedOSversion; then + printlog "App requires higher System Version than installed: $installedOSversion" + message="Cannot install $name, version $appNewVersion, as it is not compatible with the running system version." + if [[ $currentUser != "loginwindow" && $NOTIFY == "all" ]]; then + printlog "notifying" + displaynotification "$message" "Error updating $name!" + fi + cleanupAndExit 6 "Installed macOS is too old for this app." + fi + fi + # skip install for DEBUG 1 if [ "$DEBUG" -eq 1 ]; then printlog "DEBUG mode 1 enabled, skipping remove, copy and chown steps"