Atom does not start


#1

Hi!

I’m running ArchLinux and recently performed a full system upgrade. (I know, kinda my fault.)

Here’s a whole bunch of version info:

┏[username@jannice][~]
┗[uname -a
Linux jannice 4.12.10-1-ARCH #1 SMP PREEMPT Wed Aug 30 12:40:24 CEST 2017 i686 GNU/Linux
┏[username@jannice][~]
┗[electron --version
v1.6.11
┏[username@jannice][~]
┗[node --version
v8.4.0
┏[username@jannice][~]
┗[apm --version
(node:11308) [DEP0022] DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead.
apm 1.18.5
npm 5.3.0
node 8.4.0 ia32
python 2.7.13
git 2.14.1
┏[username@jannice][~]
┗[python --version
Python 3.6.2

Now you may have noticed that I haven’t included ‘atom --version’. That’s because atom doesn’t just not start, but it really really doesn’t start. No atom -v, no atom -h, no atom --version.

In fact, the only thing that does anything is ‘atom’ and ‘atom --safe’

When I run those commands, two things happen.

  • both atom and electron create processes. They sit there until I kill them. They respond to signal 15, SIGTERM, so I think that’s good, they’re not frozen or anything.
  • This real handy log file shows up! (After fresh installs, this log file is the only thing in ~/.atom)

/home/username/.atom/nohup.out

App threw an error during load
Error: The module '/usr/lib/atom/node_modules/nslog/build/Release/nslog.node’
was compiled against a different Node.js version using
NODE_MODULE_VERSION 50. This version of Node.js requires
NODE_MODULE_VERSION 53. Please try re-compiling or re-installing
the module (for instance, using npm rebuild ornpm install).
at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:173:20)
at Object.Module._extensions…node (module.js:598:18)
at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:173:20)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
at Object. (/usr/lib/atom/node_modules/nslog/lib/nslog.js:5:11)
at Object. (/usr/lib/atom/node_modules/nslog/lib/nslog.js:15:4)
A JavaScript error occurred in the main process
Uncaught Exception:
Error: The module '/usr/lib/atom/node_modules/nslog/build/Release/nslog.node’
was compiled against a different Node.js version using
NODE_MODULE_VERSION 50. This version of Node.js requires
NODE_MODULE_VERSION 53. Please try re-compiling or re-installing
the module (for instance, using npm rebuild ornpm install).
at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:173:20)
at Object.Module._extensions…node (module.js:598:18)
at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:173:20)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
at Object. (/usr/lib/atom/node_modules/nslog/lib/nslog.js:5:11)
at Object. (/usr/lib/atom/node_modules/nslog/lib/nslog.js:15:4)

Now, I have tried a few things.

  • Uninstall, re-install. No results.
  • Uninstall, but for real this time. ~/.atom deleted. Everything gone. Re-install. No dice.
  • Downgrade apm, atom, and nodejs. Eventually this worked, although the linter plugin didn’t.
  • npm rebuild and npm install, as suggested by the error file. Nope.
  • Google it. Little to no results, none dealing with this node module, none within the past year.

The most I know about this is that it’s a nodejs issue and a versioning issue. I’m not entirely sure how to compile a nodejs module against a different nodejs version, or if atom will fix this, or if I need a different nodejs system.

Oh, and while atom --version doesn’t work, looking up the package in the pacman cache does.

The two versions I have - working and non-working.

atom-1.14.3-1-i686.pkg.tar.xz
atom-1.18.0-2-i686.pkg.tar.xz

Any help would be greatly appreciated. Email alerts go right to my phone, so I’ll try to respond as quickly as possible.

Thank you in advance!


#2

Arch is not officially supported, but it does usually work. As with Arch in general, it just requires a little more of a DIY attitude.

Your versions of Atom are behind the latest version in the AUR (1.19.5). I feel like one of the first things you should do is to try with the newest version that has been packaged for Arch. If that doesn’t work, you can try building from source with the same version of the code.