rivafarabi / deckboard

Control your PC with your phone in easy way possible. News and updates on @DeckboardApp.
https://deckboard.app/
560 stars 30 forks source link

[BUG] Can't open on Fedora #641

Open raulcraveiro opened 3 years ago

raulcraveiro commented 3 years ago

Describe the bug I try to open Deckboard on Fedora, but I get an error.

To Reproduce

  1. Install Deckboard on Fedora
  2. Try to open it

Server App (please complete the following information):

Additional context

I've tried to open via terminal and got the following error:

`Fontconfig warning: "/usr/share/fontconfig/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs" { appDir: '/home/raul/deckboard', os: '/home/raul' } Checking for update node-pre-gyp info This Node instance does not support builds for N-API version 6 node-pre-gyp info This Node instance does not support builds for N-API version 6 Knex: run $ npm install sqlite3 --save Error: libnode.so.64: não é possível abrir arquivo compartilhado: Arquivo ou diretório inexistente at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:160:31) at Object.Module._extensions..node (internal/modules/cjs/loader.js:722:18) at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:169:18) at Module.load (internal/modules/cjs/loader.js:602:32) at tryModuleLoad (internal/modules/cjs/loader.js:541:12) at Function.Module._load (internal/modules/cjs/loader.js:533:3) at Module.require (internal/modules/cjs/loader.js:640:17) at require (internal/modules/cjs/helpers.js:20:18) at Object. (/opt/Deckboard/resources/app.asar/node_modules/sqlite3/lib/sqlite3-binding.js:4:15) at Object. (/opt/Deckboard/resources/app.asar/node_modules/sqlite3/lib/sqlite3-binding.js:7:3) at Module._compile (internal/modules/cjs/loader.js:693:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:704:10) at Module.load (internal/modules/cjs/loader.js:602:32) at tryModuleLoad (internal/modules/cjs/loader.js:541:12) at Function.Module._load (internal/modules/cjs/loader.js:533:3) at Module.require (internal/modules/cjs/loader.js:640:17) at require (internal/modules/cjs/helpers.js:20:18) at Object. (/opt/Deckboard/resources/app.asar/node_modules/sqlite3/lib/sqlite3.js:2:15) at Object. (/opt/Deckboard/resources/app.asar/node_modules/sqlite3/lib/sqlite3.js:207:3) at Module._compile (internal/modules/cjs/loader.js:693:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:704:10) at Module.load (internal/modules/cjs/loader.js:602:32) at tryModuleLoad (internal/modules/cjs/loader.js:541:12) at Function.Module._load (internal/modules/cjs/loader.js:533:3) at Module.require (internal/modules/cjs/loader.js:640:17) at require (internal/modules/cjs/helpers.js:20:18) at Client_SQLite3._driver (/opt/Deckboard/resources/app.asar/node_modules/knex/lib/dialects/sqlite3/index.js:79:12) at Client_SQLite3.initializeDriver (/opt/Deckboard/resources/app.asar/node_modules/knex/lib/client.js:254:26) [23:23:00.757] [error] ext:cleanTemp Error: ENOENT: no such file or directory, scandir '/home/raul/deckboard/temp' at Object.readdirSync (fs.js:764:3) at Object.fs.readdirSync (ELECTRON_ASAR.js:641:39) at /opt/Deckboard/resources/app.asar/dist/main/index.js:1:65722 at Generator.next () at n (/opt/Deckboard/resources/app.asar/dist/main/index.js:1:12032) at /opt/Deckboard/resources/app.asar/dist/main/index.js:1:12128 at process._tickCallback (internal/process/next_tick.js:68:7)

Error: Error: ENOENT: no such file or directory, open '/opt/Deckboard/resources/app-update.yml' (node:82265) UnhandledPromiseRejectionWarning: Error: ENOENT: no such file or directory, open '/opt/Deckboard/resources/app-update.yml' (node:82265) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) (node:82265) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code. Unhandled rejection TypeError: Cannot read property 'Database' of undefined at /opt/Deckboard/resources/app.asar/node_modules/knex/lib/dialects/sqlite3/index.js:106:33 at Promise._execute (/opt/Deckboard/resources/app.asar/node_modules/knex/node_modules/bluebird/js/release/debuggability.js:313:9) at Promise._resolveFromExecutor (/opt/Deckboard/resources/app.asar/node_modules/knex/node_modules/bluebird/js/release/promise.js:483:18) at new Promise (/opt/Deckboard/resources/app.asar/node_modules/knex/node_modules/bluebird/js/release/promise.js:79:10) at Client_SQLite3.acquireRawConnection (/opt/Deckboard/resources/app.asar/node_modules/knex/lib/dialects/sqlite3/index.js:105:12) at create (/opt/Deckboard/resources/app.asar/node_modules/knex/lib/client.js:283:23) at utils_1.tryPromise (/opt/Deckboard/resources/app.asar/node_modules/tarn/lib/Pool.js:315:34) at Object.tryPromise (/opt/Deckboard/resources/app.asar/node_modules/tarn/lib/utils.js:53:24) at Promise (/opt/Deckboard/resources/app.asar/node_modules/tarn/lib/Pool.js:315:17) at new Promise () at callbackOrPromise (/opt/Deckboard/resources/app.asar/node_modules/tarn/lib/Pool.js:306:12) at Pool._create (/opt/Deckboard/resources/app.asar/node_modules/tarn/lib/Pool.js:236:9) at Pool._doCreate (/opt/Deckboard/resources/app.asar/node_modules/tarn/lib/Pool.js:208:36) at Pool._tryAcquireOrCreate (/opt/Deckboard/resources/app.asar/node_modules/tarn/lib/Pool.js:159:18) at Pool.acquire (/opt/Deckboard/resources/app.asar/node_modules/tarn/lib/Pool.js:85:14) at /opt/Deckboard/resources/app.asar/node_modules/knex/lib/client.js:336:26 at tryCatcher (/opt/Deckboard/resources/app.asar/node_modules/knex/node_modules/bluebird/js/release/util.js:16:23) at Function.Promise.attempt.Promise.try (/opt/Deckboard/resources/app.asar/node_modules/knex/node_modules/bluebird/js/release/method.js:39:29) at Client_SQLite3.acquireConnection (/opt/Deckboard/resources/app.asar/node_modules/knex/lib/client.js:335:34) at Runner.ensureConnection (/opt/Deckboard/resources/app.asar/node_modules/knex/lib/runner.js:233:24) at Runner.run (/opt/Deckboard/resources/app.asar/node_modules/knex/lib/runner.js:47:42) at Builder.Target.then (/opt/Deckboard/resources/app.asar/node_modules/knex/lib/interface.js:39:43) at e.default.connectDatabase (/opt/Deckboard/resources/app.asar/dist/main/index.js:1:1495049) at c.default.exists.B (/opt/Deckboard/resources/app.asar/dist/main/index.js:1:1501213) at suppressedCallback (fs.js:200:5) at FSReqWrap.oncomplete (fs.js:141:20)`

javicv commented 3 years ago

Same problem here, Fedora 33 and Deckboard 1.9.84. I tried versions from 1.9.70-beta4 with the same result

Looking into open issues I think this is related with issue https://github.com/rivafarabi/deckboard/issues/628, which is still open but people reported to find a solution with a missing dependency. I installed nodejs and libicu with dnf but the problem is still there.

ghost commented 3 years ago

Same here on Fedora 33. I cannot find the fedora equivalent for the debian package libnode64.

javicv commented 3 years ago

Same here on Fedora 33. I cannot find the fedora equivalent for the debian package libnode64.

Hi @mauriandres

In Fedora 33 the library libnode.so is provided by the package nodejs-libs, which provides by default libnode.so.83.

❯ rpm -ql nodejs-libs
...
/usr/lib64/libnode.so.83
/usr/lib64/libv8.so.8
/usr/lib64/libv8_libbase.so.8
/usr/lib64/libv8_libplatform.so.8
...

As you can see, I have both of them installed, but the problem is still there, so I tried installing libnode.so.64, to do this you need to change to module stream nodejs:10

❯ sudo dnf module reset nodejs
...
❯ sudo dnf module install nodejs:10
...
❯ rpm -ql nodejs-libs
...
/usr/lib64/libnode.so.64
/usr/lib64/libv8.so.6
/usr/lib64/libv8_libbase.so.6
/usr/lib64/libv8_libplatform.so.6
...
❯ node -v
v10.23.1
❯ npm -v
6.14.10

But after doing this, deckboard doesn't work either. I tried both RPM and AppImage, with the same result.

❯ deckboard
Fontconfig warning: "/usr/share/fontconfig/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs"
{ appDir: '/home/javicv/deckboard', os: '/home/javicv' }
Checking for update
node-pre-gyp info This Node instance does not support builds for N-API version 6
node-pre-gyp info This Node instance does not support builds for N-API version 6
[1]    13233 segmentation fault (core dumped)  deckboard
❯ ./Deckboard-1.9.85.AppImage
Fontconfig warning: "/usr/share/fontconfig/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs"
{ appDir: '/home/javicv/deckboard', os: '/home/javicv' }
Checking for update
node-pre-gyp info This Node instance does not support builds for N-API version 6
node-pre-gyp info This Node instance does not support builds for N-API version 6
[1]    13540 segmentation fault (core dumped)  ./Deckboard-1.9.85.AppImage

Hopefully, @rivafarabi could shed some light on this, as it seems to be a dependency or nodejs issue, and I'm not very familiar with nodejs.

ghost commented 3 years ago

Thanks @javicv . I also tried to track down and install the libnode.so dependency by looking at the build information for nodejs-devel. Thanks for showing me rpm -ql.

@by-lukas on #609 installed it via snap install --beta deckboard and this worked for me on Fedora 33. The snap uses version 1.9.61. I suppose the snap package manages to include all dependencies.

For traceability, it looks like #558 is also related.

javicv commented 3 years ago

I installed the latest version (1.9.86) and the error is different, now it can't find "jimp" module. Both the RPM package: image And the AppImage: image

rivafarabi commented 3 years ago

I installed the latest version (1.9.86) and the error is different, now it can't find "jimp" module. Both the RPM package: image And the AppImage: image

This issue has been fixed in version 1.9.88

raulcraveiro commented 3 years ago

@rivafarabi Just tested the 1.9.88 RPM version and I'm getting another error:

Gtk-Message: 18:21:09.070: Failed to load module "canberra-gtk-module" Gtk-Message: 18:21:09.070: Failed to load module "pk-gtk-module" Gtk-Message: 18:21:09.071: Failed to load module "canberra-gtk-module" Gtk-Message: 18:21:09.071: Failed to load module "pk-gtk-module" A JavaScript error occurred in the main process Uncaught Exception: Error: /tmp/.org.chromium.Chromium.bPznVU: classe ELF errada: ELFCLASS64 at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:160:31) at Object.Module._extensions..node (internal/modules/cjs/loader.js:722:18) at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:169:18) at Module.load (internal/modules/cjs/loader.js:602:32) at tryModuleLoad (internal/modules/cjs/loader.js:541:12) at Function.Module._load (internal/modules/cjs/loader.js:533:3) at Module.require (internal/modules/cjs/loader.js:640:17) at require (internal/modules/cjs/helpers.js:20:18) at Object. (/opt/Deckboard/resources/app.asar/node_modules/robotjs/index.js:1:170) at Object. (/opt/Deckboard/resources/app.asar/node_modules/robotjs/index.js:38:3) Fontconfig warning: "/usr/share/fontconfig/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs"