Very few people cared when I commented this https://news.ycombinator.com/item?id=20398084
Suffice it to say, I no longer trust Zoom to be running in my regular user account. I have a separate user on my Mac to isolate it. If you have the means, you might even consider a spare computer or a VM to run Zoom.
Even their iOS/iPadOS app is annoying, because the first time you open it and sign in, it pops 3 (!) permission dialogs (Calendar, Notifications, and TouchID/FaceID). Way too aggressive IMO.
Now, if only they'd make a Mac App Store version of Zoom. I'd be so happy...
I do think on macOS the average user doesn't understand DMG files, run apps from inside the DMG instead of copying them to /Applications and deleting the disk image. My guess is that most people install Zoom after a meeting has started and this was the quickest, fewest dialog method of getting it up and running.
First, there's nothing wrong with that.
Also, some apps display a message asking to be moved to /Applications when launched from a DMG.
Sure, you can technically run .app from most places. It becomes problematic in that you can't write to that directory or self update the app if it's still in the DMG. If you reboot you have to know to remount before launching. Not having it in /Applications also becomes a mess if you're in a multi-user environment.
> Also, some apps display a message asking to be moved to /Applications when launched from a DMG.
This is the kind of friction and extra dialog boxes I'm sure they were avoiding.
Personally, I hate pkg files. I wish macOS had a better flow for unsavvy users to deal with DMG and app files.
So I can totally understand why they would want to use 7zip to shave kilobytes off the download size.
Honestly zoom is something that I would never let near a personal computer. What really surprised me is that there’s a “zoomgov.” (a friend at a defense contractor showed me) Either our government is enjoying the benefits of being able to force companies to be audited because of defense budgets or things have become way more relaxed than they should be. Judging by our “stockpiles” and inability to get critical equipment I’m guessing the second one.
...I was about to write a reply saying "well in that case I don't understand what the GP is complaining about", but then I opened up the installer again.
I didn't fully take in what the parent was saying. Zoom is completely short-circuiting the normal macOS package install flow. You click continue once to acknowledge that "this package will run a program to determine if the software can be installed", and then Zoom is suddenly installed and the installer exits.
I can understand why they did it, but it's not good.
Although, Apple deserves some blame here. Firstly because their non-app-store software install flow has been screwed up since the release of Lion, and secondly because why can't you use Installer's "Show Files" option before the preinstall step?
1. You download an installer.
2. You activate that installer.
3. Your system tells you that the installer can run some code.
4. You agree to the installer running some code.
5. The installer installs some software, via the code that you said the installer could run.
Seems perfectly acceptable to me. If you literally cannot open up the archive file to inspect its contents without running some code inside it, that's not Zoom's problem. It's just a really stupid decision on the part of Apple.
The message reads "this package will run a program _to determine if the software can be installed_". Old iWork updates used this to see you had a previous version of iWork on your computer. nVidia's Web Drivers used it to check if your Mac had an nVidia card. No other macOS pkg that I'm aware of makes actual changes made to your system during this step. That's not what the user agreed to.
Behind the consent message is a grayed-out "next" button that you never get to click.
I suppose this system was ripe for abuse, but that doesn't excuse the people who abuse it.
Pre-install scripts are only supposed to do things like check if you have prerequisites installed, eg if your app requires some version of Python or whatever.
Instead they are abusing that to just install everything immediately.
There is literally no reason for it beyond saving one or two clicks.
Also packages allow for easier deployment rather than dmg's.
Par for the course with Zoom, so it seems.
NVM I decided to inspect the package with `pkgutil`
Here's the offending code
```################################### function install_app_to_path(){ #path=$1 InstallPath="$1/.zoomus_"$(date)"" mkdir -p "$InstallPath" mkdir -p "$InstallPath/Frameworks" if [[ $? != 0 ]] ; then rm -rf "$InstallPath" return 1 fi
if [[ -d "$1/zoom.us.app" ]] ; then
rm -f "$1/zoom.us.app/Contents/Info.plist"
mv "$1/zoom.us.app/Contents" "$InstallPath/trash"
fi
if [[ $? != 0 ]] ; then
rm -rf "$InstallPath"
return 4
fi
rm -rf "$1/zoom.us.app"
if [[ $? != 0 ]] ; then
rm -rf "$InstallPath"
return 4
fi
mdfind 'kMDItemCFBundleIdentifier == "us.zoom.xos"'> .zoom.us.applist.txt
echo "["$(date)"]un7z zm.7z =================================" >>"$LOG_PATH"
if [[ -f res.7z ]] ; then
./7zr x -mmt ./res.7z -o"$InstallPath/Frameworks"&
fi
if [[ -f resReitna.7z ]] ; then
./7zr x -mmt ./resReitna.7z -o"$InstallPath/Frameworks"&
fi
if [[ -f bundles.7z ]] ; then
./7zr x -mmt ./bundles.7z -o"$InstallPath/Frameworks"&
fi
un7zresult=$(./7zr x -mmt ./zm.7z -o"$InstallPath" 2>>"$LOG_PATH")
ret=$?
echo "["$(date)"]check un7z return:$ret, $un7zresult">>"$LOG_PATH"
wait
echo "["$(date)"]un7z all finished">>"$LOG_PATH"
if [[ $ret != 0 ]] ; then
rm -rf "$InstallPath"
return 3
fi
mv "$InstallPath/Frameworks/"* "$InstallPath/zoom.us.app/Contents/Frameworks">>"$LOG_PATH"
mv "$InstallPath/zoom.us.app" "$1" >>"$LOG_PATH"
if [[ $? != 0 ]] ; then
rm -rf "$InstallPath"
return 1
fi
if [[ "$APP_PATH" == "$GLOBAL_APP_PATH" ]] ; then
chmod -R 775 "$APP_PATH"
chown -R :admin "$APP_PATH"
fi
echo "["$(date)"]mv $InstallPath/zoom.us.app into $1">>"$LOG_PATH"
rm -rf "$InstallPath"&
return 0
}```Whenever I have been told that I have a meeting coming up with some kind of conferencing software that I don't have installed, I immediately install it. I don't wait until 3 minutes before the call to try and install. All kinds of things could happen, such as incompatibilities or missing passcodes.
I open the .pkg, click Continue so it can run its script, then a second later Installer quits and the app launches. What?!
Turns out, Zoom installs the entire app in the 'preinstall' script of the installer package! Inside there's a copy of '7z', and the app is extracted with that. The preinstall script is littered with typos and poor grammar.
I'm not one of those people who thinks that Apple is going to force all Mac software to come through the App Store, but when I see stuff this stupid...I start to wonder.