New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Auto-update on Mac doesn't work as a non-Admin user #2860

Open
pbhogan opened this Issue Jul 8, 2014 · 124 comments

Comments

Projects
None yet
@pbhogan

pbhogan commented Jul 8, 2014

I've never been able to get the autoupdate to work. It detects a new version, happily downloads, but when I click restart and update, it quits the app, presumably fails to update, and then relaunches, and starts redownloading the update. Usually then I have to get into a hit-quit-a-bunch-war to get it to stop relaunching on quit.

I've pasted the error output from OS X console below:

7/8/14 8:04:09.265 AM Atom[39769]: App load time: 201ms
7/8/14 8:04:35.014 AM Atom[39769]: Download completed to: file:///Volumes/Secondary/Users/pbhogan/Library/Application%20Support/com.github.atom.ShipIt/update.ja3pAYF/download
7/8/14 8:04:42.995 AM com.apple.launchd.peruser.569031419[209]: (com.github.atom.ShipIt[39791]) assertion failed: 13E28: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
7/8/14 8:04:44.875 AM ShipIt[39791]: Beginning installation
7/8/14 8:04:44.893 AM ShipIt[39791]: Couldn't abort install and restore owned bundle to previous location file:///Applications/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
7/8/14 8:04:56.125 AM ShipIt[39791]: Application launched at file:///Applications/Atom.app
7/8/14 8:04:56.125 AM ShipIt[39791]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7fefdc41a260 {NSLocalizedDescription=Permission denied}
7/8/14 8:04:56.125 AM ShipIt[39791]: ShipIt quitting
7/8/14 8:04:56.131 AM com.apple.launchd.peruser.569031419[209]: (com.github.atom.ShipIt[39791]) Exited with code: 1
7/8/14 8:04:56.132 AM com.apple.launchd.peruser.569031419[209]: (com.github.atom.ShipIt[39794]) assertion failed: 13E28: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
7/8/14 8:04:56.435 AM Atom[39792]: App load time: 190ms
@izuzak

This comment has been minimized.

Member

izuzak commented Jul 8, 2014

@pbhogan Sorry for the trouble! Can you clarify which version of Atom you're on currently?

cc @probablycorey

@izuzak izuzak added the bug label Jul 8, 2014

@pbhogan

This comment has been minimized.

pbhogan commented Jul 8, 2014

I'm on 0.110.0

I did some experimenting and found that it works if placed in ~/Applications instead of the usual /Applications, but this is not really a desirable place to put the app bundle.

It's fairly common (particularly in organizations) on OS X to have a super user account and be logged in with a regular user account. Standard app behavior in this case is to request elevated admin privileges when self-updating. My guess is Atom is not doing so and therefore fails to copy the updated bundle in to /Applications.

@probablycorey

This comment has been minimized.

Member

probablycorey commented Jul 8, 2014

It looks like squirrel (the updater we use) fixed this. @keithduncan, do we need to do anything special to get the permissions prompt working with squirrel?

@keithduncan

This comment has been minimized.

keithduncan commented Jul 11, 2014

Which version of Squirrel.Mac are we bundling in Atom currently?

@probablycorey

This comment has been minimized.

Member

probablycorey commented Jul 11, 2014

We build and store the external frameworks on https://github.com/atom/atom-shell-frameworks/releases, so it looks like we build it around Apr 28. But I'm not sure where to look in the Squirrel.framework to get the exact version number.

@keithduncan

This comment has been minimized.

keithduncan commented Jul 22, 2014

Do we have the sha that was built for the Apr 28 release?

@probablycorey

This comment has been minimized.

Member

probablycorey commented Jul 22, 2014

@keithduncan, I'm not sure of the exact sha, but it is most likely Squirrel/Squirrel.Mac@b407f94. That is the commit my local copy of Squirrel.Mac is on, and I'm pretty sure I built the latest version of Squirrel that is being used.

@keithduncan

This comment has been minimized.

keithduncan commented Aug 6, 2014

Sorry I took so long to get to this, I’ve confirmed there is an issue when updating an app when running as a user that doesn’t have BSD permissions to write to the directory. We’re working on a fix now.

@ioquatix

This comment has been minimized.

ioquatix commented Oct 17, 2014

I'm also having this problem and I think it occasionally trashes launchd because my computer won't boot up and I have to trash /var/db/launch.db and then once I run Atom again and I see the ShipIt error, it fails again to boot.

@keithduncan

This comment has been minimized.

keithduncan commented Oct 17, 2014

I think it occasionally trashes launchd because my computer won't boot up and I have to trash /var/db/launch.db

Squirrel doesn’t touch this directory directly. Though from looking at it, the subdirectories store per-user launchd job override state.

Could you zip up this directory while in a broken state and send a link to the archive for us to inspect?

my computer won't boot up

What errors are you seeing when booting?

@ioquatix

This comment has been minimized.

ioquatix commented Oct 17, 2014

Okay, well it's pretty odd.

Basically, what happens is I try to reboot and my system just gets stuck. If I boot using single user mode, I can get to a root prompt, but if I exit it just hangs (no output, nothing happening). I found that if I do launchctl load -D system it will get to the login screen, but things are pretty flakey from that point onward - e.g. I found that some parts of the system won't work (some apps hang, stuff just generally locking up/hanging where it usually doesn't).

To completely fix the issue, what I've found works is the following:

1/ Boot to single user root prompt.
2/ launchctl load -D system get to login window. Log in as a basic user with admin privileges.
3/ Trash /var/folders/* and /var/db/launch.db/*
4/ Reboot.

Usually this seems to fix the problem. I tried just rebooting after step 2 but it still hangs. So, something in launch.db is going wrong. I just trash /var/folders/* for good measure but I haven't tried not doing this.

I've noticed a correlation with this problem, and when Atom appears to try and download updates. I've never had the Atom updater work correctly, I've always had to download updates manually. I have Atom installed in /Applications/User/Atom.app.

If the problem manifests again, I will provide a copy of the two directories I trash along with the LaunchDaemon plists, etc.

Here is some log data regarding some of the ShipIt issues I've been having:

Oct 17 11:10:20 Fukurou.local Atom[5162]: Download completed to: file:///Users/samuel/Library/Application%20Support/com.github.atom.ShipIt/update.iEv1ix8/download
Oct 17 11:10:24 Fukurou.local Atom[5162]: FAILURE: Job com.github.atom.ShipIt is not loaded in launchd.
Oct 17 11:10:24 Fukurou com.apple.launchd.peruser.501[169] (com.github.atom.ShipIt[5183]): assertion failed: 13F34: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
Oct 17 11:22:11 Fukurou.local ShipIt[5183]: Beginning installation
Oct 17 11:22:11 Fukurou.local ShipIt[5183]: Couldn't abort install and restore owned bundle to previous location file:///Applications/User/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
Oct 17 11:22:21 Fukurou.local ShipIt[5183]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7fbb662164e0 {NSLocalizedDescription=Permission denied}
Oct 17 11:22:21 Fukurou.local ShipIt[5183]: ShipIt quitting
Oct 17 11:22:21 Fukurou com.apple.launchd.peruser.501[169] (com.github.atom.ShipIt[5183]): Exited with code: 1
Oct 17 11:22:21 Fukurou com.apple.launchd.peruser.501[169] (com.github.atom.ShipIt[5250]): assertion failed: 13F34: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
Oct 17 11:22:21 Fukurou.local ShipIt[5250]: Resuming installation attempt 2
Oct 17 11:22:21 Fukurou.local ShipIt[5250]: Couldn't abort install and restore owned bundle to previous location file:///Applications/User/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
Oct 17 11:22:28 Fukurou.local ShipIt[5250]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7fd2e2553ef0 {NSLocalizedDescription=Permission denied}
Oct 17 11:22:28 Fukurou.local ShipIt[5250]: ShipIt quitting
Oct 17 11:22:28 Fukurou com.apple.launchd.peruser.501[169] (com.github.atom.ShipIt[5250]): Exited with code: 1
Oct 17 11:22:28 Fukurou com.apple.launchd.peruser.501[169] (com.github.atom.ShipIt[5253]): assertion failed: 13F34: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
Oct 17 11:22:28 Fukurou.local ShipIt[5253]: Resuming installation attempt 3
Oct 17 11:22:28 Fukurou.local ShipIt[5253]: Couldn't abort install and restore owned bundle to previous location file:///Applications/User/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
Oct 17 11:22:34 Fukurou.local ShipIt[5253]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7fcc3b3449f0 {NSLocalizedDescription=Permission denied}
Oct 17 11:22:34 Fukurou.local ShipIt[5253]: ShipIt quitting
Oct 17 11:22:34 Fukurou com.apple.launchd.peruser.501[169] (com.github.atom.ShipIt[5253]): Exited with code: 1
Oct 17 11:22:34 Fukurou com.apple.launchd.peruser.501[169] (com.github.atom.ShipIt[5254]): assertion failed: 13F34: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
Oct 17 11:22:34 Fukurou.local ShipIt[5254]: Too many attempts to install, aborting update
Oct 17 11:22:34 Fukurou.local ShipIt[5254]: Error aborting installation: Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory" UserInfo=0x7fc983e2da20 {NSLocalizedDescription=No such file or directory}
Oct 17 11:22:34 Fukurou.local ShipIt[5254]: ShipIt quitting
Oct 17 11:30:30 Fukurou.local Atom[239]: Download completed to: file:///Users/samuel/Library/Application%20Support/com.github.atom.ShipIt/update.sZ6OPQu/download
Oct 17 11:30:34 Fukurou.local Atom[239]: FAILURE: Job com.github.atom.ShipIt is not loaded in launchd.
Oct 17 11:30:34 Fukurou com.apple.launchd.peruser.501[174] (com.github.atom.ShipIt[720]): assertion failed: 13F34: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
Oct 17 12:59:37 Fukurou.local ShipIt[720]: Beginning installation
Oct 17 12:59:37 Fukurou.local ShipIt[720]: Couldn't abort install and restore owned bundle to previous location file:///Applications/User/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
Oct 17 12:59:45 Fukurou.local ShipIt[720]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7f8632ea98d0 {NSLocalizedDescription=Permission denied}
Oct 17 12:59:45 Fukurou.local ShipIt[720]: ShipIt quitting
Oct 17 12:59:45 Fukurou com.apple.launchd.peruser.501[174] (com.github.atom.ShipIt[720]): Exited with code: 1
Oct 17 12:59:45 Fukurou com.apple.launchd.peruser.501[174] (com.github.atom.ShipIt[1511]): assertion failed: 13F34: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
Oct 17 12:59:45 Fukurou.local ShipIt[1511]: Resuming installation attempt 2
Oct 17 12:59:45 Fukurou.local ShipIt[1511]: Couldn't abort install and restore owned bundle to previous location file:///Applications/User/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
Oct 17 12:59:53 Fukurou.local ShipIt[1511]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7f8ba3691080 {NSLocalizedDescription=Permission denied}
Oct 17 12:59:53 Fukurou.local ShipIt[1511]: ShipIt quitting
Oct 17 12:59:53 Fukurou com.apple.launchd.peruser.501[174] (com.github.atom.ShipIt[1511]): Exited with code: 1
Oct 17 12:59:53 Fukurou com.apple.launchd.peruser.501[174] (com.github.atom.ShipIt[1512]): assertion failed: 13F34: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
Oct 17 12:59:53 Fukurou.local ShipIt[1512]: Resuming installation attempt 3
Oct 17 12:59:53 Fukurou.local ShipIt[1512]: Couldn't abort install and restore owned bundle to previous location file:///Applications/User/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
Oct 17 13:00:00 Fukurou.local ShipIt[1512]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7feb4364f9c0 {NSLocalizedDescription=Permission denied}
Oct 17 13:00:00 Fukurou.local ShipIt[1512]: ShipIt quitting
Oct 17 13:00:00 Fukurou com.apple.launchd.peruser.501[174] (com.github.atom.ShipIt[1512]): Exited with code: 1
Oct 17 13:00:00 Fukurou com.apple.launchd.peruser.501[174] (com.github.atom.ShipIt[1516]): assertion failed: 13F34: launchd + 105865 [364E35A7-9FA7-3950-8494-40B49A2E7250]: 0xd
Oct 17 13:00:00 Fukurou.local ShipIt[1516]: Too many attempts to install, aborting update
Oct 17 13:00:00 Fukurou.local ShipIt[1516]: Error aborting installation: Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory" UserInfo=0x7fcc5ad1e680 {NSLocalizedDescription=No such file or directory}
Oct 17 13:00:00 Fukurou.local ShipIt[1516]: ShipIt quitting
Oct 17 13:00:25 Fukurou.local sudo[1591]:   samuel : TTY=ttys000 ; PWD=/Library ; USER=root ; COMMAND=/usr/bin/find ./ -name *ShipIt*

My gut feeling is something gets really screwed in launchd somehow, but I'm not 100% sure what is going on.

@keithduncan

This comment has been minimized.

keithduncan commented Oct 17, 2014

@ioquatix thanks for the detailed write up, I’m particularly interested in the contents of the /var/db/launch.db/com.apple.launchd.peruser.501/ directory after Squirrel has run and potentially broken something.

/cc @jspahrsummers

@ioquatix

This comment has been minimized.

ioquatix commented Oct 22, 2014

With the latest update, the same thing appears to have happened again. I haven't rebooted my computer yet. Here is the log file.

23/10/14 12:14:23.384 pm Atom[32565]: Download completed to: file:///Users/samuel/Library/Application%20Support/com.github.atom.ShipIt/update.Xk6PQBQ/download
23/10/14 12:14:27.226 pm com.apple.xpc.launchd[1]: (com.github.atom.ShipIt) The Debug key is no longer respected. Please remove it.
23/10/14 12:21:10.693 pm ShipIt[55944]: Beginning installation
23/10/14 12:21:10.706 pm ShipIt[55944]: Couldn't abort install and restore owned bundle to previous location file:///Applications/User/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
23/10/14 12:21:17.226 pm ShipIt[55944]: Application launched at file:///Applications/User/Atom.app
23/10/14 12:21:17.227 pm ShipIt[55944]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7fa1850c5350 {NSLocalizedDescription=Permission denied}
23/10/14 12:21:17.227 pm ShipIt[55944]: ShipIt quitting
23/10/14 12:21:17.230 pm com.apple.xpc.launchd[1]: (com.github.atom.ShipIt[55944]) Service exited with abnormal code: 1

I'm going to reboot and see what happens..

@ioquatix

This comment has been minimized.

ioquatix commented Oct 22, 2014

Okay, so didn't have any problems this time (running 10.10 now which is different). But, also Atom hasn't updated either.

@jspahrsummers

This comment has been minimized.

jspahrsummers commented Oct 23, 2014

@ioquatix Silly question, but just to cover all bases: are /Applications/User/Atom.app and /Applications/User/ writable by your account?

@ioquatix

This comment has been minimized.

ioquatix commented Oct 23, 2014

I don't think that's a silly question at all.

The applications directory by default is not world writable. I have to type in an admin password to install apps to those directories using the Finder.

@TGOS

This comment has been minimized.

TGOS commented Oct 23, 2014

Same Problem here. /Applications/User/Atom.app and /Applications/User are not writable by my account. Why should they? Atom asks me for an admin password prior to downloading the update, so Atom could even become root from that moment on and they are both writable for root. I don't have any issues with other software; it will also prompt me for an admin password and then just update, but updating Atom has never worked. Not in 10.8, not in 10.9 and not in 10.10 and with no version of Atom ever. It always fails with "(com.github.atom.ShipIt[838]) Service exited with abnormal code: 1" since the very first day and that on all my OS X systems (I have more than one Mac).

@jspahrsummers

This comment has been minimized.

jspahrsummers commented Oct 23, 2014

/Applications/User/Atom.app and /Applications/User are not writable by my account. Why should they?

I'm just trying to diagnose possible causes.

At this point, it sounds like Squirrel fails to install updates properly that require administrator privileges. I've filed an issue there that we can use to track this bug.

@davidcastellani

This comment has been minimized.

davidcastellani commented Dec 12, 2014

I am having this same issue on 10.10.1. I have to manually update. My daily user account is a non-privileged user. I do NOT get prompted after the update downloads, when it tries to reinstall, Atom basically enters a loop after I quit out of Atom.

I am currently running 0.154.0

12/11/14 8:00:38.567 PM Atom[30905]: Download completed to: file:///Users/dcastellani/Library/Application%20Support/com.github.atom.ShipIt/update.wM1qoed/download
12/11/14 8:06:36.089 PM ShipIt[31387]: Beginning installation
12/11/14 8:06:36.128 PM ShipIt[31387]: Couldn't abort install and restore owned bundle to previous location file:///Applications/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
12/11/14 8:06:47.652 PM ShipIt[31387]: Application launched at file:///Applications/Atom.app
12/11/14 8:06:47.652 PM ShipIt[31387]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7f8d2d28ff30 {NSLocalizedDescription=Permission denied}
12/11/14 8:06:47.652 PM ShipIt[31387]: ShipIt quitting
12/11/14 8:06:48.104 PM Atom[51611]: App load time: 314ms
12/11/14 8:07:23.325 PM ShipIt[51613]: Resuming installation attempt 2
12/11/14 8:07:23.363 PM ShipIt[51613]: Couldn't abort install and restore owned bundle to previous location file:///Applications/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
12/11/14 8:07:23.410 PM ShipIt[51613]: Application launched at file:///Applications/Atom.app
12/11/14 8:07:23.413 PM ShipIt[51613]: Installation error: Error Domain=SQRLInstallerErrorDomain Code=-1 "Failed to copy bundle file:///Users/dcastellani/Library/Application%20Support/com.github.atom.ShipIt/update.wM1qoed/Atom.app/ to directory file:///var/folders/x8/bvhgh_gj7418l43q81vsmmx00000gn/T/com.github.atom.ShipIt.9XCjyhIF/Atom.app" UserInfo=0x7fcc0ac2de80 {NSFilePath=/Users/dcastellani/Library/Application Support/com.github.atom.ShipIt/update.wM1qoed/Atom.app, NSLocalizedDescription=Failed to copy bundle file:///Users/dcastellani/Library/Application%20Support/com.github.atom.ShipIt/update.wM1qoed/Atom.app/ to directory file:///var/folders/x8/bvhgh_gj7418l43q81vsmmx00000gn/T/com.github.atom.ShipIt.9XCjyhIF/Atom.app, NSUnderlyingError=0x7fcc0ac2f5d0 "The file “Atom.app” couldn’t be opened because there is no such file."}
12/11/14 8:07:23.413 PM ShipIt[51613]: ShipIt quitting
12/11/14 8:07:23.913 PM Atom[51641]: App load time: 329ms
12/11/14 8:07:28.599 PM ShipIt[51643]: Resuming installation attempt 3
12/11/14 8:07:28.653 PM ShipIt[51643]: Couldn't abort install and restore owned bundle to previous location file:///Applications/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
12/11/14 8:07:28.685 PM ShipIt[51643]: Application launched at file:///Applications/Atom.app
12/11/14 8:07:28.687 PM ShipIt[51643]: Installation error: Error Domain=SQRLInstallerErrorDomain Code=-1 "Failed to copy bundle file:///Users/dcastellani/Library/Application%20Support/com.github.atom.ShipIt/update.wM1qoed/Atom.app/ to directory file:///var/folders/x8/bvhgh_gj7418l43q81vsmmx00000gn/T/com.github.atom.ShipIt.tH1h9jcI/Atom.app" UserInfo=0x7fa210e0e1e0 {NSFilePath=/Users/dcastellani/Library/Application Support/com.github.atom.ShipIt/update.wM1qoed/Atom.app, NSLocalizedDescription=Failed to copy bundle file:///Users/dcastellani/Library/Application%20Support/com.github.atom.ShipIt/update.wM1qoed/Atom.app/ to directory file:///var/folders/x8/bvhgh_gj7418l43q81vsmmx00000gn/T/com.github.atom.ShipIt.tH1h9jcI/Atom.app, NSUnderlyingError=0x7fa210e0f930 "The file “Atom.app” couldn’t be opened because there is no such file."}
12/11/14 8:07:28.688 PM ShipIt[51643]: ShipIt quitting
12/11/14 8:07:29.168 PM Atom[51655]: App load time: 336ms
12/11/14 8:07:31.677 PM ShipIt[51657]: Too many attempts to install, aborting update
12/11/14 8:07:31.680 PM ShipIt[51657]: Error aborting installation: Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory" UserInfo=0x7fbcc940a680 {NSLocalizedDescription=No such file or directory}
12/11/14 8:07:31.734 PM ShipIt[51657]: Application launched at file:///Applications/Atom.app
12/11/14 8:07:31.734 PM ShipIt[51657]: ShipIt quitting
12/11/14 8:07:32.254 PM Atom[51670]: App load time: 341ms
@ioquatix

This comment has been minimized.

ioquatix commented Jan 30, 2015

Still having this problem:

30/01/15 2:13:42.514 pm Atom[5958]: Download completed to: file:///Users/samuel/Library/Application%20Support/com.github.atom.ShipIt/update.inrtCFO/download
30/01/15 2:13:48.948 pm com.apple.xpc.launchd[1]: (com.github.atom.ShipIt) The Debug key is no longer respected. Please remove it.
30/01/15 3:06:55.961 pm ShipIt[10207]: Beginning installation
30/01/15 3:06:55.983 pm ShipIt[10207]: Couldn't abort install and restore owned bundle to previous location file:///Applications/User/Atom.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
30/01/15 3:07:08.231 pm ShipIt[10207]: Application launched at file:///Applications/User/Atom.app
30/01/15 3:07:08.231 pm ShipIt[10207]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7f8217df31d0 {NSLocalizedDescription=Permission denied}
30/01/15 3:07:08.232 pm ShipIt[10207]: ShipIt quitting
30/01/15 3:07:08.238 pm com.apple.xpc.launchd[1]: (com.github.atom.ShipIt[10207]) Service exited with abnormal code: 1
@ioquatix

This comment has been minimized.

ioquatix commented Mar 25, 2015

Still having this problem.

25/03/15 1:29:44.246 pm ShipIt[2082]: Application launched at file:///Applications/User/Atom.app
25/03/15 1:29:44.247 pm ShipIt[2082]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo=0x7fbd71d94470 {NSLocalizedDescription=Permission denied}
25/03/15 1:29:44.247 pm ShipIt[2082]: ShipIt quitting
@NilsEnevoldsen

This comment has been minimized.

NilsEnevoldsen commented Apr 20, 2015

Discussion of this issue at the Atom forums. Note the related issue of ShipIt trying to respawn every two seconds forever.

My ShipIt_stderr.log is 38MB in one of my user accounts.

Another discussion of this issue at the Atom forums.

This issue doesn't just affect Atom, it also affects GitHub (and presumably any other app using Squirrel/ShipIt). The issue at Squirrel is probably the better home for this issue, but there has been no activity there since the issue was created in October 2014.

I've also seen a possibly related issue where GitHub run from my admin account incorrectly reports there is no update available.

@jiku

This comment has been minimized.

jiku commented May 15, 2015

Experiencing something that could be related with both Atom and GitHub (OS X 10.10.4). Updates seem to download, with Atom saying 'Relaunch and install update' and GitHub saying 'An update will be installed the next time you relaunch the app.'. On relaunching the apps nothing happens, except they both download the same updates, etc. User is admin and write permissions for 'everyone' didn't help. Download- and updating manually for now.

@lee-dohm

This comment has been minimized.

Member

lee-dohm commented Jun 27, 2017

I understand that people are frustrated with this issue still being open. Everyone has different priorities for what the Atom team should be working on and we can't satisfy them all. Venting frustrations is completely understandable.

However, personal attacks, or insulting or derogatory comments are violations of the Atom Code of Conduct. For this reason, @TGOS, your comment has been deleted. You may consider this an official warning.

@atom atom deleted a comment from TGOS Jun 27, 2017

@TerjeNorderhaug

This comment has been minimized.

TerjeNorderhaug commented Jun 29, 2017

I encountered the same issue and was able to update to the current Atom 1.18.0 by:

  1. Let Atom download the latest version (see the About dialog) then quit Atom.
  2. Open ~/Library/Caches/com.github.atom.ShipIt/update.*/
  3. Move Atom.app in this directory to /Applications replacing the original Atom app.

Expect to be asked for admin password to complete the replacement of the original app.

@winterflags

This comment has been minimized.

winterflags commented Jun 29, 2017

@TerjeNorderhaug I don't suppose your steps will enable future uploads to download & auto-install? Otherwise it's pretty equivalent to just downloading the newest version from the official webpage (albeit a bit quicker if one has ready access to the directory ~/Library/Caches/com.github.atom.ShipIt/update.*/

@ungb

This comment has been minimized.

Contributor

ungb commented Jun 29, 2017

One of the problems with this issue is that the one repro we had we were able to fix it with the given steps in #2860 (comment). I'm not certain but might have to do with version of Mac OSX that people are running or upgrading from a old version to a new version of Mac OSX might of caused some issues. I do understand the frustration people are having as auto update should be a seemless experience.

This issue is prioritized and in our backlog, but it's very hard to fix something if we can't get a solid repro. If someone is willing to discuss this on https://atomio.slack.com feel free to pm.

@bbgdzxng1

This comment has been minimized.

bbgdzxng1 commented Aug 17, 2017

It looks like the good people at Github Desktop have made some progress. They had a similar issue desktop/desktop#2323 and they addressed the root cause of their issue with Squirrel/Squirrel.Mac#207. They have subsequently closed Squirrel/Squirrel.Mac#131. Tech details are in the individual issues and related pull requests.

The fix requires a new Electron release cycle to ripple itself through to Github Desktop, but now the Squirrel updater has seen some love, it is QuiteLikely(TM) that Atom will benefit and the permissions issue will disappear.

A huge shoutout to @joshaber at the Github Desktop electron-based project for identifying a common issue across many different Electron-based projects. Fingers crossed that it resolves the issue for Github Desktop, Atom, VSCode and many other projects that are using Electron + Squirrel/Shipit.

@50Wliu

This comment has been minimized.

Member

50Wliu commented Aug 21, 2017

@bbgdzxng1 yep, I've been following those PRs closely :). However, the only two versions the fix is currently present in are 1.6.12 and 1.7.6, which are both still in beta. So we'll need to wait a bit longer for Electron to release a stable version.

Adding the electron label so this doesn't forget to be closed in the next Electron upgrade PR.

@50Wliu 50Wliu added the electron label Aug 21, 2017

@rsese rsese referenced this issue Sep 21, 2017

Open

There was an error checking for updates. #15417

1 of 1 task complete
@bbgdzxng1

This comment has been minimized.

bbgdzxng1 commented Nov 11, 2017

Atom 1.21.1 includes Electron 1.6.15. Should we expect Atom 1.21.1 under a non-admin user to be able to auto-update to either 1.21.2 or 1.22.0?

@50Wliu

This comment has been minimized.

Member

50Wliu commented Nov 11, 2017

There was an issue with the initial fix where the actual binary releases weren't updated (electron/electron#10298). Unfortunately, that wasn't fixed until Electron 1.7.9.

@50Wliu 50Wliu removed the blocked label Nov 11, 2017

@bla1089

This comment has been minimized.

bla1089 commented Nov 11, 2017

@50Wliu

This comment has been minimized.

Member

50Wliu commented Nov 11, 2017

It means that this issue should be fixed when Atom updates to an Electron version 1.7.9 or higher.

@bbgdzxng1

This comment has been minimized.

bbgdzxng1 commented Mar 21, 2018

It means that this issue should be fixed when Atom updates to an Electron version 1.7.9 or higher.

Atom Editor 1.25.0 now uses Electron 1.7.11. Hopefully, non-admin users will get a smooth upgrade from 1.25.0 to 1.25.1. https://github.com/atom/atom/releases/tag/v1.25.0.

Notable Changes

  • Electron has been upgraded to 1.7.11.

For anyone watching this ticket, please confirm if the non-admin upgrade issue is resolved for you with the 1.25.0 > 1.25.1 release. Fingers crossed...

@Apollon77

This comment has been minimized.

Apollon77 commented Mar 21, 2018

Cool, I'm currently on 1.26.0-beta0 on beta channel ... so should also work with 1.26.0.beta1 ?!

@CodingItWrong

This comment has been minimized.

CodingItWrong commented Apr 6, 2018

Unfortunately, no, the automatic upgrade for me from 1.25.0 to 1.25.1 isn't working =[

@sww1235

This comment has been minimized.

sww1235 commented Apr 7, 2018

As a note, I was successfully able to update to 1.25.0 as well as 1.25.1 using the built in update script. It seemed to take a reboot in order to get the updater to recognize that there was an update but the actual update process went smoothly.

I never had to provide credentials in order to update.

On mac 10.11.6

@TerjeNorderhaug

This comment has been minimized.

TerjeNorderhaug commented Apr 11, 2018

Auto upgrade from from 1.25.0 to 1.25.1 did not work for me. It downloaded the update and asked to provide credentials, but did not install the new version. I still had to manually upgrade using the steps in my comment above.

On legacy OSX 10.10.5 which could be the reason.

@davidcelis

This comment has been minimized.

davidcelis commented Apr 16, 2018

It took clicking "Download and Reinstall Update" four or five times to finally go from 1.25.0 to 1.25.1 for me

@Apollon77

This comment has been minimized.

Apollon77 commented Apr 16, 2018

I also needed to try some times. Partly a Atom process was running but without UI. I needed to exit that process and then it was updated

@bhutchinson

This comment has been minimized.

bhutchinson commented Apr 19, 2018

It took a couple tries to get Atom to quit and then restart (perhaps I was impatient) but then it did successfully update from 1.25.1 to 1.26.0 for me.

@CodingItWrong

This comment has been minimized.

CodingItWrong commented Apr 20, 2018

I left the 1.26.0 update running overnight, and it didn't work. Manually killing the running Atom processes didn't help either. I think I'm just going to disable automatic updating and download updates myself instead.

@davidcelis

This comment has been minimized.

davidcelis commented Apr 20, 2018

My Atom still thinks 1.25.1 is the latest version 🤷‍♂️

@bbgdzxng1

This comment has been minimized.

bbgdzxng1 commented May 21, 2018

In order to test from scratch, I uninstalled Atom and reinstalled 1.25.1, still as a non-admin user. On launch of Atom 1.25.1, the app automatically downloaded 1.27.0, prompted for an administrative account, restarted 1.27.0. In other words, it worked as expected for me.

Many users affected by this issue may have adjusted the permissions of Atom and ShipIt folders. Here is a clean install:

  1. Backup your computer.

  2. If you previously installed using the awesome Homebrew, remove:

$ brew cask uninstall atom
$ brew cask zap atom
$ rm -r /usr/local/Caskroom/atom
$ brew cask cleanup
$ brew cleanup
  1. Uninstall Atom via AppCleaner

  2. Clean up any Atom and ShipIt folders if they still exist, which may have funky permissions...

$ rm -r ~/Library/Caches/com.github.atom.ShipIt
$ rm -r ~/Library/Caches/com.github.atom
$ rm -r ~/Applications/Atom.app
$ rm -r /Applications/Atom.app
  1. Empty Trash.

  2. Download Atom 1.25.1, although anything greater than 1.25.0 should work.

  3. Let auto-update do it's thing.

I believe that the issue is now resolved (for me, at least). Thanks for the resolution.

@davidcelis

This comment has been minimized.

davidcelis commented Jun 8, 2018

After updating from Atom 1.25.1 to 1.27.2 just now, I've noticed that choosing Restart and install update from the macOS menu bar almost always works, but pressing the Restart and install update button found on the "About Atom" screen (found either via the menu bar or clicking the squirrel in the status bar when there's an update) almost never works for me. Hope that additional info helps!

@Apollon77

This comment has been minimized.

Apollon77 commented Jun 8, 2018

I have comparable observations.
When I use "Restart and install update" then for me always the Window disappears, but the Atom process is still running (seen inprocesses and also in dock). When I end the process via dock (soft) or process (hard) then I mostly get no install and at next starts he downloads the update again.

BUT I have good success with:

  • Restart and install, WIndow disappears but process still runs.
  • klick on dock icon again and an Atom window is opened again
  • klick on "restart and install" again
  • then it shuts down and installs on next start

I now experienced that 2 times ad will have a deep focus with next update :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment