remove xattr com.apple.quarantine before trying spctl
[webi-installers/.git] / _webi / template.sh
index fc7629a27fec5bf2b4543f1614bd94d46e504975..274bfa17d01fc107a625e1b296d7cf7003c91f2f 100644 (file)
@@ -239,6 +239,12 @@ webi_post_install() {
 }
 
 _webi_enable_exec() {
+    if [ -n "$(command -v spctl)" ] && [ -n "$(command -v xattr)" ] ; then
+        xattr -r -d com.apple.quarantine "$pkg_src"
+        return 0
+    fi
+    # TODO need to test that the above actually worked
+    # (and proceed to this below if it did not)
     if [ -n "$(command -v spctl)" ]; then
         echo "Checking permission to execute '$pkg_cmd_name' on macOS 11+"
         set +e
@@ -319,10 +325,10 @@ if [ -n "$(command -v pkg_get_current_version)" ]; then
 
     webi_link
 
+    _webi_enable_exec
     pushd "$WEBI_TMP" 2>&1 >/dev/null
         [ -n "$(command -v pkg_post_install)" ] && pkg_post_install || webi_post_install
     popd 2>&1 >/dev/null
-    _webi_enable_exec
 
     pushd "$WEBI_TMP" 2>&1 >/dev/null
         [ -n "$(command -v pkg_done_message)" ] && pkg_done_message || _webi_done_message