notion-enhancer / notion-repackaged

notion executables with the notion-enhancer embedded & a vanilla port of the official app to linux
https://notion-enhancer.github.io/getting-started/installation
MIT License
912 stars 52 forks source link

crash on start - gpu process isn't usable #46

Closed Pshemas closed 2 years ago

Pshemas commented 3 years ago

Tried appimage and rpm and sadly I get a crash on start with this in the log:

FATAL:gpu_data_manager_impl_private.cc(445)] GPU process isn't usable. Goodbye.

I'm tried it running on OpenSUSE TW (Gnome 41) , Nvidia 470.74 .

jamezrin commented 3 years ago

Did you install the regular or enhanced versions? Try running the binary with --no-sandbox, that might fix it.

Pshemas commented 3 years ago

@jamezrin - that's it. --no-sandbox makes the app start correctly. Without it both versions crash on my end.

jamezrin commented 3 years ago

Can you also try running the binary without --no-sandbox but doing sudo chmod -R 0775 /opt/notion-app-enhanced (or /opt/notion-app if vanilla)

brad1111 commented 3 years ago

This is a chromium bug that has been patched in electron >=12. It's to do with some changes that happened in glibc 2.34, and from my experience only occurs on nvidia cards (my Intel integrated gpu is unaffected). As far as I know "--no-sandbox" is the only workaround without either backporting this patch to electron 11 or updating the electron version of the app.

Patch can be found here: https://github.com/electron/electron/pull/31091

PetrusZ commented 2 years ago

I encounterd same issue.

blvckmvgicdotexe commented 2 years ago

For now the only feasible solution is to launch notion-app or notion-app-enhanced with the argument --no-sandbox since glibc 2.34 broke sandboxing in electron If you'd like a more seamless solution, run sudo nvim (or whatever editor you use) /usr/share/applications/notion-app-enhanced.desktop and modify Exec to Exec="/opt/Notion Enhanced/notion-app-enhanced" --no-sandbox %U

jamezrin commented 2 years ago

This is a chromium bug that has been patched in electron >=12. It's to do with some changes that happened in glibc 2.34, and from my experience only occurs on nvidia cards (my Intel integrated gpu is unaffected). As far as I know "--no-sandbox" is the only workaround without either backporting this patch to electron 11 or updating the electron version of the app.

Patch can be found here: electron/electron#31091

Unfortunately, we depend on what the original Notion app is based on, and running this app on newer electron versions is not working because of security related changes and other breaking changes between electron 11 and electron 12+.

I'm going to take a look at what's necessary to upgrade to newer versions like electron 12, but I'm afraid it's not going to be easy.

And we could maybe backport that patch, but we would have to build electron with that patch and distribute it, or build it every release build, which is going to really complicate everything to a level which I don't really like.

As of now, I am looking at these three options:

I will try to get the app working on newer versions, but if that fails, I think we will go with the wrapper script.

dragonwocky commented 2 years ago

To add to that, upgrading to electron 12+ could make it very difficult for the enhancer to support future releases of the Notion app (which presumably would still be on electron 11) -- notion-repackaged should ideally be as thin a wrapper as possible around Notion & the notion-enhancer. If it gets to the point where the notion-repackaged build script is replacing major dependencies and rewriting chunks of the app to make it work with them, we may even be better off just writing a new Notion app entirely (and that should really be a last resort!).