Skip to main content
Question

Google Chrome install script no longer works in macOS Tahoe

  • January 22, 2026
  • 9 replies
  • 91 views

Forum|alt.badge.img+6

We’ve been using a script that automatically downloads and installs the latest version of Google Chrome when we push a prestage policy to our Macs. This script no longer works on Tahoe. This is the error that shows up in the logs:

Script result: Wed Jan 21 16:08:00 CST 2026: Create temporary directory
Wed Jan 21 16:08:00 CST 2026: Download 'https://dl.google.com/chrome/mac/universal/stable/GGRO/googlechrome.dmg' Wed Jan 21 16:30:23 CST 2026: Check downloaded DMG hdiutil: attach failed - no mountable file systems find: : No such file or directory

I’d like to find out how I can update this script to work with Tahoe. 

Here’s the script we’re currently using:

#!/bin/bash

    bundle="Google Chrome.app"
    tmp="/private/tmp/GoogleChrome"

    echo "$(date): Create temporary directory"
    mkdir -p "${tmp}"

    echo "$(date): Download 'https://dl.google.com/chrome/mac/universal/stable/GGRO/googlechrome.dmg'"
    curl -s -o  "${tmp}"/"GoogleChrome.dmg" "https://dl.google.com/chrome/mac/universal/stable/GGRO/googlechrome.dmg"

    echo "$(date): Check downloaded DMG"
    volume=$(hdiutil attach -noautoopen -noverify -nobrowse "${tmp}/GoogleChrome.dmg" | egrep "Volumes" | grep -o "/Volumes/.*")

    if [ "$(find "${volume}" -name "${bundle}" -execdir echo '{}' ';' -print | sed -n 1p)" == "${bundle}" ]; then

        bundlepath=$(find "${volume}" -name "${bundle}" -print | sed -n 1p)
        bundlename=$(find "${volume}" -name "${bundle}" -execdir echo '{}' ';' -print | sed -n 1p)
        echo "$(date): '${bundle}' was found in '${bundlepath}'"

        if [ ! -s "${bundlepath}" ]; then

            echo "$(date): No bundle found"
            rm -rf "${tmp}"
            hdiutil detach $(/bin/df | /usr/bin/grep "${volume}" | awk '{print $1}') -quiet -force
            exit 1

        else

            if [ -s "/Applications/${bundle}" ]; then

                echo "$(date): Delete installed '${bundle}'"
                rm -rf "/Applications/${bundle}"

            fi

            echo "$(date): Move '${bundlepath}' to '/Applications'"
            rsync -ar "${bundlepath}" "/Applications/"

        fi

        echo "$(date): Unmount '${volume}'"
        hdiutil detach $(/bin/df | /usr/bin/grep "${volume}" | awk '{print $1}') -quiet -force

        echo "$(date): Purge temporary directory"
        rm -rf "${tmp}"

    else

        rm -rf "${tmp}"
        exit 1

    fi
 

9 replies

Chubs
Forum|alt.badge.img+23
  • Jamf Heroes
  • January 22, 2026

Can I ask why you aren’t leveraging the Jamf App Catalog for Google Chrome?

Also, I’d personally stay away from the DMG installer.  They have a universal PKG installer that I would go with: https://dl.google.com/dl/chrome/mac/universal/stable/gcem/GoogleChrome.pkg


Revolution
Forum|alt.badge.img+6
  • Contributor
  • January 22, 2026

Have you tried using Installomator script policy? Set to Enrollment, and will download latest version.

https://github.com/Installomator/Installomator/blob/main/Installomator.sh

 


PaulHazelden
Forum|alt.badge.img+13
  • Jamf Heroes
  • January 22, 2026

Not fixing your script, but the Jamf Apps version of Chrome keeps itself up to date. We have Google Workspace, and that is set to Keep Chrome up to date too. Its a race as to which one gets there first for the update. As alternates to help keep it up to date.
I used to run a script similar to yours, but the Jamf Apps way of working is a simple set and forget one.


peterlbk
Forum|alt.badge.img+11
  • Jamf Heroes
  • January 22, 2026

That is a pretty old script, also best to use pkg, and look into installomator, i cannot agree more


pete_c
Forum|alt.badge.img+16
  • Honored Contributor
  • January 22, 2026

Definitely move away from the .DMG and shift to .PKG (not just for Chrome, either).

That said, try adding “set -x” to the line after your shebang to enable verbose mode, which should assist in determining where the script fails.

Installomator and its ilk are excellent for automating a routine task, but increase your MITM risk and lessen your version control.


Jordy-Thery
Forum|alt.badge.img+14
  • Valued Contributor
  • January 22, 2026

+1 on Installomator and/or Jamf App Installers. 😊


Forum|alt.badge.img+6
  • Author
  • Contributor
  • January 22, 2026

Thanks for the replies. This script has been in place for years and it’s consistently worked until now. We only use it for the initial installation because Jamf Apps don’t seem to trigger right away. But we also don’t have Chrome on auto-update because we got too many complaints about Chrome restarting itself while people were in the middle of using it and it disrupted whatever they were doing. I had contacted Jamf about that issue but they couldn’t provide a solution.

I haven’t tried Installomator.

Thanks for the link to get the PKG directly. That might be the solution.


Chubs
Forum|alt.badge.img+23
  • Jamf Heroes
  • January 22, 2026

Thanks for the replies. This script has been in place for years and it’s consistently worked until now. We only use it for the initial installation because Jamf Apps don’t seem to trigger right away. But we also don’t have Chrome on auto-update because we got too many complaints about Chrome restarting itself while people were in the middle of using it and it disrupted whatever they were doing. I had contacted Jamf about that issue but they couldn’t provide a solution.

I haven’t tried Installomator.

Thanks for the link to get the PKG directly. That might be the solution.

Setup CBCM.  Wait no.  Chrome Enterprise Core?  Yea that’s what it’s called.  Enroll your browsers there and configure updates.  The updates are non-intrusive and will allow users to defer and all that jazz...all without the headache of creating all the extra non-sense in Jamf.  

It’s well worth the configuration - you’ll also have browser insights you otherwise wouldn’t have doing it any other way...oh and it’s FREE.


A_Collins
Forum|alt.badge.img+11
  • Contributor
  • January 23, 2026

I jsut use simple one : 

#!/bin/sh
pkgfile="GoogleChrome.pkg"
logfile="/Library/Logs/GoogleChromeInstallScript.log"
url='https://dl.google.com/chrome/mac/stable/accept_tos%3Dhttps%253A%252F%252Fwww.google.com%252Fintl%252Fen_ph%252Fchrome%252Fterms%252F%26_and_accept_tos%3Dhttps%253A%252F%252Fpolicies.google.com%252Fterms/googlechrome.pkg'

/bin/echo "--" >> ${logfile}
/bin/echo "`date`: Downloading latest version." >> ${logfile}
/usr/bin/curl -s -o /tmp/${pkgfile} ${url}
/bin/echo "`date`: Installing..." >> ${logfile}
cd /tmp
/usr/sbin/installer -pkg GoogleChrome.pkg -target /
/bin/sleep 5
/bin/echo "`date`: Deleting package installer." >> ${logfile}
/bin/rm /tmp/"${pkgfile}"

exit 0