Manually updating atom installed from atom-windows.zip?


#1

I extracted v0.165.0 atom-windows.zip into C:\Apps\atom and would like to manually update to v0.172.0 by using C:\Apps\atom\Update.exe.

I know about AtomSetup.exe but have no plans to use it.

What is the working update.exe incantation as none of these work for me?

C:\Apps\atom>update.exe --update=v0.172.0
C:\Apps\atom>update.exe --update=0.172.0
C:\Apps\atom>update --update=https://atom.io/api/updates
C:\Apps\atom>update --update=https://atom.io/api/updates/v0.172.0
C:\Apps\atom>update --update=https://atom.io/api/updates/0.172.0
C:\Apps\atom>update --update=0.172.0 https://atom.io/api/updates
C:\Apps\atom>update --update=v0.172.0 https://atom.io/api/updates

#2

@paulcbetts, do you have any information on this?


#3

Eeek…I just discovered one of the above update.exe CLI commands performed a silent update :frowning:

On my win8.1 x64 system, I now have my manually installed v0.165.0 atom in C:\Apps\atom (~205MB) and a v0.172.0 atom in C:\Users\Jon\AppData\Local\atom (~298MB), a gaggle of v0.172.0 atom entries infecting my registry, and an Open with Atom item in my context (right-click) menu. And finally a svelte ~34Mb C:\Users\Jon\.atom dir.

While this behavior can be nice for a certain segment of atom newcomers, I specifically wanted a clean manual install without all the auto cruft helpers. Looks like I should have just extracted the newer atom-windows.zip over my existing C:\Apps\atom install rather than tempting update.exe.

While I consider it a bug that update.exe silently injected these changes into my system, I do see its value for many usage scenarios.

That said, I’d like to know:

  1. How is update.exe meant to be used and what update scenarios do you plan to support? I have no issue with not supporting my use case.
  2. How do you suggest updating manual atom installs (overwrite via extract?) without using update.exe?

#4

What is the working update.exe incantation as none of these work for me?

I’m not actually sure where Atom hosts their Windows updates, the link https://atom.io/api/updates looks like it’s for the Mac app

How is update.exe meant to be used and what update scenarios do you plan to support? I have no issue with not supporting my use case.

https://github.com/Squirrel/Squirrel.Windows/tree/master/specs and https://github.com/Squirrel/Squirrel.Windows/tree/master/docs describe Everything You’d Ever Want To Know About Squirrel™.

How do you suggest updating manual atom installs (overwrite via extract?) without using update.exe?

Just delete update.exe and update by hand - Atom will ignore updates if Update.exe doesn’t exist. That being said, there probably isn’t much in Squirrel that would require changing to allow you to put the root folder somewhere else (i.e. what is now C:\Users\Jon\AppData\Local\atom).


#5

My use case also requires manual updates. I would like Atom to be installed in another directory than the default (with no /version/ in the path, I think C:\Users\UserName\AppData\Local\atom contains a .bat kickstarter and is not the actual install directory?) and preferably not create any registry entries. The reason is so that I can maintain my own shortcuts with different options, e.g. --dev. Since this is a rather specific scenario I don’t mind updating by hand.

Sadly Atom stopped notifying me of new releases at some point after one of the Windows installers came out, so I added https://github.com/atom/atom/releases to a RSS Reader. I don’t think it’s possible to subscribe to releases on GitHub to get an e-mail notification?

It is probably possible to (to a large extent) automate the whole thing with a script or package, but I haven’t had the time to cook something up yet and I don’t mind the manual install.


#6

@paulcbetts I looked over the squirrel docs you mention, but they don’t shed much light on what I’m trying to figure out. Specifically, did atom or update.exe do the full-on, registry hacking, update of my manual atom-windows.zip install?

After skimming the atom code, looks atom did the unwanted (in my scenario) full-on upgrade, not squirrel.

Looking at this chain of atom code, do you agree that none of my update.exe invocations caused squirrel to inject into the registry? It appears this atom code ends up doing the registry hacking update via this.

Said another way, I see no way to manually invoke atom’s update.exe from the command line and get it to manipulate the registry for context menus, PATH mods, etc. Agree?


#7

The Squirrel installer will only ever touch a single registry entry, to add the Uninstaller. All of the registry stuff around file / folder menus are done by Atom.

Said another way, I see no way to manually invoke atom’s update.exe from the command line and get it to manipulate the registry for context menus, PATH mods, etc. Agree?

Correct. So, another thing you can do, is Trick™ Atom into thinking it’s being installed, by just running atom.exe --squirrel-install 0.172.0 - you can do this with -uninstall too.