I’ve been waging a desultory war on a Google Chrome Mac Update Error 12 bug for years. I can’t remember when Chrome updated itself correctly on my Mac, but I didn’t really dig into the bug. I figured Google would fix it sooner or later, in the meantime I’ve been manually downloading Chrome installers every few months (not a great idea obviously).
Today I gave up on Google and started work on the bug. The key to finding the answer was logging into my admin account, starting Console, clearing the log, then watching what showed up as I started Chrome and opened the About screen while Chrome tried to update and generated the usual error: 12 message. I saw something like this:
…. CODE SIGNING: cs_invalid_page(0x1000): p=809[GoogleSoftwareUp] clearing CS_VALID …
Searching on that string I found an old AskDifferent post on a related topic. That pointed to
/Library/Google/GoogleSoftwareUpdate/GoogleSoftwareUpdate.bundle/Contents/Resources
where, like Daniel Azuelos, I found these file dates.
![Screen Shot 2015-03-07 at 11.35.16 AM.png Screen Shot 2015 03 07 at 11 35 16 AM](//lh3.ggpht.com/-DBEOz7jqWiY/VPtBNLQrqHI/AAAAAAAAAzw/lhlIyaiCJGg/Screen%252520Shot%2525202015-03-07%252520at%25252011.35.16%252520AM.png?imgmax=800)
Yeah, 2012.
The fix is to quite Chrome, delete /Library/Google/GoogleSoftwareUpdate (root Library, not User), reinstall Google Software Update Installer and restart. Then you get something like this:
![Screen Shot 2015-03-07 at 12.02.44 PM.png Screen Shot 2015 03 07 at 12 02 44 PM](//lh4.ggpht.com/-8tFS2s7sGfM/VPtBNwd5GKI/AAAAAAAAAz4/DGLXhBebPVE/Screen%252520Shot%2525202015-03-07%252520at%25252012.02.44%252520PM.png?imgmax=800)
Yeah, 2014. A bit better.
Then, still from my Admin Account, I ran Chrome and stepped through several versions of the Chrome About screen:
![Screen Shot 2015-03-07 at 11.35.50 AM.png Screen Shot 2015 03 07 at 11 35 50 AM](//lh4.ggpht.com/-5nhrTnWSs4E/VPtBP1gFPuI/AAAAAAAAA0Q/eQiF8hcnhxk/Screen%252520Shot%2525202015-03-07%252520at%25252011.35.50%252520AM.png?imgmax=800)
then
![Screen Shot 2015-03-07 at 11.37.41 AM.png Screen Shot 2015 03 07 at 11 37 41 AM](//lh4.ggpht.com/-GvByuiVAST8/VPtBQa37q9I/AAAAAAAAA0Y/GDlX5Mhoeeo/Screen%252520Shot%2525202015-03-07%252520at%25252011.37.41%252520AM.png?imgmax=800)
Do the relaunch, then ..
![Screen Shot 2015-03-07 at 11.37.57 AM.png Screen Shot 2015 03 07 at 11 37 57 AM](//lh5.ggpht.com/-oZypC91gVAM/VPtBQ9EinmI/AAAAAAAAA0g/e8uXPaSHIZw/Screen%252520Shot%2525202015-03-07%252520at%25252011.37.57%252520AM.png?imgmax=800)
Setup up Automatic Updates for All Users (I’ll be impressed if this actually works!):
![Screen Shot 2015-03-07 at 11.38.08 AM.png Screen Shot 2015 03 07 at 11 38 08 AM](//lh5.ggpht.com/-Ch3liAseYiM/VPtBRnT3KlI/AAAAAAAAA0o/ZEDXWFuz5mI/Screen%252520Shot%2525202015-03-07%252520at%25252011.38.08%252520AM.png?imgmax=800)
First automatic update in my memory.
I suspect this problem arose from years of several intersecting bugs — some belong to Apple’s famously buggy permissions infrastructure, some related to how Google interacts with people who run OS X as non-admin users, some related to how Google Chrome/Updater manages install errors, some related to how Google mangled OS X Library structures over the years.
Once I’d fixed the problem I read Google’s tech support note more carefully (with Mavericks/Mountain Lion their sudo instructions only work if you run as admin, they kind of left that out). This is the relevant bit:
Run the following command. Be careful to enter the command exactly as written:
~/Library/Google/GoogleSoftwareUpdate/GoogleSoftwareUpdate.bundle/Contents/Resources/GoogleSoftwareUpdateAgent.app/Contents/Resources/install.py --uninstall. It may result in a "No such file error"; the next command will address that.
Now run this following command. Again, carefully enter the command exactly as written:
sudo /Library/Google/GoogleSoftwareUpdate/GoogleSoftwareUpdate.bundle/Contents/Resources/GoogleSoftwareUpdateAgent.app/Contents/Resources/install.py --uninstall
The first command runs against the User account library. Google acts like there’s ONE user account on the machine, instead of say, an Admin account and many user accounts. Anyway, I didn’t have anything like that in either my Admin or Non-Admin account.
The second is closer to the real fix, but look back at 2012 files. There’s no Install.py file there. The answer was to delete parent folder in /Library, not to try to run a non-existent installer.
PS. MarsEdit image upload really needs a lot of work. Hope the new competition from Blogo will help. Also, this is relevant.