Do I look like an idiot? I don't know. But I felt like one for the last 2 days.
npm startto bring up Brackets in it's new electron shell. But that first attempt failed with this error:
> Brackets@1.3.0-0 start ~/develop/fun/OSS/brackets-electron > electron . ~/develop/fun/OSS/brackets-electron/app/shell-config.js:13 r CONFIG_PATH = path.resolve(utils.convertWindowsPathToUnixPath(app.getPath("u ^ TypeError: app.getPath is not a function at Object.<anonymous> (~/develop/fun/OSS/brackets-electron/app/shell-config.js:13:71) at Module._compile (module.js:418:26) at Object.Module._extensions..js (module.js:436:10)
I was wondering, if there was something important missing in the setup instruction, I simply made a mistake or my system config was tricking me. After checking with the guys who started that effort, I was left with this weird error.
I started to research and looked for others having the same issue, but I couldn't find anything. Okay, it has to be my machine setup. Back at home, I started to setup everything on another machine to see if it works there. The result was the same! The error showed up on a different Macs, with a different OSX versions.
I went back to our slack channel and carefully mentioned, that I'm still not able to get it running yet. Someone replied, that I can install Electron globally and try it again. But this turned out to be a red herring. Nothing has changed and it was really frustrating, since nobody else seemed to have these issues on OSX. I promised them to help, but I could even review and test pull requests.
I did some more research and came across this great blogpost from Thorstenhans. He provided a boilerplate project for an app that uses Electron. I was so happy. I followed his instructions to create a clean app. Everything went fine and I was excited because it's using es6. Unfortunately, the result with Electron was the same.
I left a comment for the blogpost asking, if he has encountered this issue before. Nothing worked for me as expected. So, it must be my machine I concluded. But two machines at the same time?
I mentioned my inability to launch Electron on OSX, briefly in the slack channel for electron-brackets. I felt like an idiot at this point. Somebody who distracts everybody with some nonsense. Nobody had an idea what might help to resolve this misery to help me getting started.
Since the electron-brackets version on Linux seemed to work fine, I decided to pull my Linux VM out of the drawer and give it a try. I cloned the repo, installed everything and typed
npm startat the console. Guess what? It worked! I was happy. That is awesome and I'm finally able to help.
But I wasn't happy that my day-to-day machine didn't play well with me. I had a conversation with Thorsten Hans (look at the comments here). He solved another mystery for himself along the way, but I didn't make any progress.
Long story short, I started to get rid of my nodejs installation, install nvm from scratch and hoped to resolve the issue. No luck. But then I inspected the environment variables for anything nodejs related and I found
NODE_PATH. It seemed somehow messed up. This post recommended to undef
NODE_PATHto solve another issue. But it helped me too.
npm startis finally working and the biggest mystery, that let me look like an idiot was resolved.