henrikingo / impressionist

A Visual 3D editor for creating stunning impress.js presentations
MIT License
197 stars 37 forks source link

Linux support #12

Closed AdrienLemaire closed 6 years ago

AdrienLemaire commented 6 years ago

Arch linux Impressionist master branch

No error/traceback to show... Is there no linux support ?

henrikingo commented 6 years ago

Hi Fandekasp

Sure there is, I developed it exclusively on Linux myself. It's Mac/Win users who should be worried.

Do you get more output if you simply stay in bash and do

node main.js
AdrienLemaire commented 6 years ago

I see :) Here's the output:

node main.js                                                                                                                                                       [0ac2726; 23:52:39]
/home/dori/Projects/3rdpart/impressionist/main.js:29
app.on('ready', createWindow)
   ^

TypeError: Cannot read property 'on' of undefined
    at Object.<anonymous> (/home/dori/Projects/3rdpart/impressionist/main.js:29:4)
    at Module._compile (module.js:624:30)
    at Object.Module._extensions..js (module.js:635:10)
    at Module.load (module.js:545:32)
    at tryModuleLoad (module.js:508:12)
    at Function.Module._load (module.js:500:3)
    at Function.Module.runMain (module.js:665:10)
    at startup (bootstrap_node.js:187:16)
    at bootstrap_node.js:607:3

Thanks for your support

henrikingo commented 6 years ago

Yeah, something is definitively wrong with your electron installation. Your require('electron).app resolves to undefined.

One thing to check would be your electron version. I have 1.4.4, but it is not pinned in package.json. (Yeah, should have...) If the version suddenly jumped to something newer, such as 2.x, it's possible it doesn't work the same way.

AdrienLemaire commented 6 years ago

I'm currently using electron 1.6.15-1 system wide, and the impressionist project installed the version 1.7.9 locally.

I couldn't find any breaking change while reading the release notes, thus it's probably unrelated. I'd recommend you to regularly upgrade the packages though :P Confirmed by downgrading electron to 1.4.4, still seeing this white empty window on npm start

How about Node ? I'm using v8.6.0

henrikingo commented 6 years ago

I have Node v7.4.0

When you say white empty window... That's kind of how it looks at start. The only thing there is a File menu. Do you have that? If you open an impress.js presentation, it should kick into action. (Has to be a very recent impress.js to work.)

davegregg commented 6 years ago

I'm getting the same behavior with almost exactly the same error message. The difference, which may not be substantive, and may be due to Node version (?), is that my Cannot read property 'on' of undefined message throws on the property itself ("o" in .on, at character position 5), instead of on the accessor (., at position 4).

This is my first install of Impressionist (verbatim per the README instructions) -- and I have no global install of Electron.

Node v9.3.0 Electron 1.7.10 Ubuntu 17.10, running Gnome 3 (but original install was Ubuntu Budgie)

henrikingo commented 6 years ago

Did either one of you try the versions I have mentioned above though?

Sorry I haven't had time to look into this as I've worked on impress.js itself the last months. But as a first step, I know it works for me with those versions, I just wasn't disciplined enough to pin them back when.

henrikingo commented 6 years ago

Ok. I finally fixed remaining issues in impress.js queue.

For now I just set the version to 1.4.4 but we could certainly upgrade to newest version separately.

Could either of you confirm whether it now works out of the box for you?

AdrienLemaire commented 6 years ago

@henrikingo sorry for the late reply. It seems to work

Icons are a bit over the place, and I seem to be missing a font for the top left icon, but otherwise, I think we can close this issue. Thanks !

henrikingo commented 6 years ago

Cool.

The icons are ok too, and correctly placed. The first one is supposed to be a square :-) The ones not on top left are draggable!

Obviously, these need to be replaced with graphics, but I've kept focusing on writing the functionality for now.