remove xattr com.apple.quarantine before trying spctl
[webi-installers/.git] / _webi / template.sh
index c595d90991c48cc80f80cae0aa47210dbf477774..274bfa17d01fc107a625e1b296d7cf7003c91f2f 100644 (file)
@@ -147,8 +147,9 @@ webi_download() {
         return 0
     fi
 
-    echo "Downloading $PKG_NAME from:" #Show the package and the source URL  
-    echo "$WEBI_PKG_URL"
+    echo "Downloading $PKG_NAME from"
+    echo "$my_url"
+
     # It's only 2020, we can't expect to have reliable CLI tools
     # to tell us the size of a file as part of a base system...
     if [ -n "$WEBI_WGET" ]; then
@@ -166,9 +167,10 @@ webi_download() {
         # TODO curl -fsSL --remote-name --remote-header-name --write-out "$my_url"
         curl -fSL -H "User-Agent: curl $WEBI_UA" "$my_url" -o "$my_dl.part"
     fi
-    echo ""
-    echo "Saved as $my_dl" #Show the path of the package
     mv "$my_dl.part" "$my_dl"
+
+    echo ""
+    echo "Saved as $my_dl"
 }
 
 # detect which archives can be used
@@ -237,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
@@ -317,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