Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Signal is broken with Uncaught Exception: libsignal-client.node not found #751

Open
fredmorcos opened this issue Sep 27, 2024 · 15 comments
Open

Comments

@fredmorcos
Copy link

fredmorcos commented Sep 27, 2024

I suffered from the broken database issue. So I had to uninstall signal with flatpak --user uninstall org.signal.Signal --delete-data, then I reinstalled it. I followed the instruction of removing org.freedesktop.secrets access in Flatseal.

Now when I run Signal with flatpak --user run org.signal.Signal --password-store=basic I get this message box:

image

When I click "Yes" I get the following message on the terminal:

~ >  flatpak --user run org.signal.Signal --password-store=basic
Debug: Using password store: basic
# <--------- message box shows up here
Debug: Will run signal with the following arguments: --password-store=basic
Debug: Additionally, user gave: --password-store=basic
A JavaScript error occurred in the main process
Uncaught Exception:
Error: ENOENT, node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node not found in /app/Signal/resources/app.asar
    at createError (node:electron/js2c/node_init:2:2002)
    at Object.func [as .node] (node:electron/js2c/node_init:2:2721)
    at Module.load (node:internal/modules/cjs/loader:1215:32)
    at Module._load (node:internal/modules/cjs/loader:1031:12)
    at c._load (node:electron/js2c/node_init:2:17025)
    at Module.require (node:internal/modules/cjs/loader:1240:19)
    at require (node:internal/modules/helpers:179:18)
    at load (/app/Signal/resources/app.asar/node_modules/node-gyp-build/node-gyp-build.js:22:10)
    at Object.<anonymous> (/app/Signal/resources/app.asar/node_modules/@signalapp/libsignal-client/Native.js:6:43)
    at Module._compile (node:internal/modules/cjs/loader:1373:14)

EDIT: The file it's complaining about seems to exist:

~ >  ll .local/share/flatpak/app/org.signal.Signal/x86_64/stable/2d3107e48d9f49cbcc0c1667448b7c3429dab28176daf066b2eb33f79e121c45/files/Signal/resources/app.asar.unpacked/node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node
.rw-r--r-- 14M fred fred  1 Jan  1970 .local/share/flatpak/app/org.signal.Signal/x86_64/stable/2d3107e48d9f49cbcc0c1667448b7c3429dab28176daf066b2eb33f79e121c45/files/Signal/resources/app.asar.unpacked/node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node
@bermeitinger-b
Copy link
Collaborator

Don't set your own password-store. basic is the default.

We should treat double command line switches in the future.

@fredmorcos
Copy link
Author

Alright, but that doesn't fix the issue.

@bermeitinger-b
Copy link
Collaborator

Is it the same error message?

@fredmorcos
Copy link
Author

Yes

@gx42
Copy link

gx42 commented Sep 28, 2024

I get the same error. I updated Signal this morning, and received a prompt about database corruption. Now Signal Desktop throws an exception and doesn't start.

[user@signal Signal]$ flatpak run org.signal.Signal
Debug: Using password store: basic
Debug: Will run signal with the following arguments: --password-store=basic
Debug: Additionally, user gave: 
A JavaScript error occurred in the main process
Uncaught Exception:
Error: ENOENT, node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node not found in /app/Signal/resources/app.asar
    at createError (node:electron/js2c/node_init:2:2002)
    at Object.func [as .node] (node:electron/js2c/node_init:2:2721)
    at Module.load (node:internal/modules/cjs/loader:1215:32)
    at Module._load (node:internal/modules/cjs/loader:1031:12)
    at c._load (node:electron/js2c/node_init:2:17025)
    at Module.require (node:internal/modules/cjs/loader:1240:19)
    at require (node:internal/modules/helpers:179:18)
    at load (/app/Signal/resources/app.asar/node_modules/node-gyp-build/node-gyp-build.js:22:10)
    at Object.<anonymous> (/app/Signal/resources/app.asar/node_modules/@signalapp/libsignal-client/Native.js:6:43)
    at Module._compile (node:internal/modules/cjs/loader:1373:14)
[2:0928/113847.712677:ERROR:browser_main_loop.cc(283)] Gdk: gdk_atom_intern: assertion 'atom_name != NULL' failed
[2:0928/113847.713126:ERROR:browser_main_loop.cc(283)] Gdk: gdk_atom_intern: assertion 'atom_name != NULL' failed
Gtk-Message: 11:38:47.742: Failed to load module "canberra-gtk-module"
Gtk-Message: 11:38:47.742: Failed to load module "pk-gtk-module"
Gtk-Message: 11:38:47.743: Failed to load module "canberra-gtk-module"
Gtk-Message: 11:38:47.743: Failed to load module "pk-gtk-module"
[39:0928/113847.842702:ERROR:viz_main_impl.cc(166)] Exiting GPU process due to errors during initialization

After accepting the prompt and deleting the database, the exception is still being thrown:

Debug: Using password store: basic
Debug: Will run signal with the following arguments: --password-store=basic
Debug: Additionally, user gave: 
Set Windows Application User Model ID (AUMID) { AUMID: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /app/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME signal
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/user/.var/app/org.signal.Signal/config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
making app single instance
LaunchProcess: failed to execvp:
xdg-settings
LaunchProcess: failed to execvp:
xdg-settings
[2:0928/114805.996016:ERROR:browser_main_loop.cc(283)] Gdk: gdk_atom_intern: assertion 'atom_name != NULL' failed
Gtk-Message: 11:48:06.112: Failed to load module "canberra-gtk-module"
Gtk-Message: 11:48:06.112: Failed to load module "pk-gtk-module"
Gtk-Message: 11:48:06.119: Failed to load module "canberra-gtk-module"
Gtk-Message: 11:48:06.119: Failed to load module "pk-gtk-module"
{"level":30,"time":"2024-09-28T01:48:06.712Z","msg":"got fast localeOverride setting null"}
{"level":30,"time":"2024-09-28T01:48:06.713Z","msg":"app.ready: hour cycle preference: UnknownPreference"}
{"level":30,"time":"2024-09-28T01:48:06.714Z","msg":"app.ready: preferred system locales: en"}
{"level":30,"time":"2024-09-28T01:48:06.718Z","msg":"locale: Supported locales: af-ZA, ar, az-AZ, bg-BG, bn-BD, bs-BA, ca, cs, da, de, el, en, es, et-EE, eu, fa-IR, fi, fr, ga-IE, gl-ES, gu-IN, he, hi-IN, hr-HR, hu, id, it, ja, ka-GE, kk-KZ, km-KH, kn-IN, ko, ky-KG, lt-LT, lv-LV, mk-MK, ml-IN, mr-IN, ms, my, nb, nl, pa-IN, pl, pt-BR, pt-PT, ro-RO, ru, sk-SK, sl-SI, sq-AL, sr, sv, sw, ta-IN, te-IN, th, tl-PH, tr, ug, uk-UA, ur, vi, yue, zh-CN, zh-HK, zh-Hant"}
{"level":30,"time":"2024-09-28T01:48:06.719Z","msg":"locale: Preferred locales: en"}
{"level":30,"time":"2024-09-28T01:48:06.719Z","msg":"locale: Locale Override: null"}
{"level":30,"time":"2024-09-28T01:48:06.722Z","msg":"locale: Matched locale: en"}
{"level":40,"time":"2024-09-28T01:48:06.817Z","msg":"intl.onWarn [@formatjs/intl] \"defaultRichTextElements\" was specified but \"message\" was not pre-compiled. \nPlease consider using \"@formatjs/cli\" to pre-compile your messages for performance.\nFor more details see https://formatjs.io/docs/getting-started/message-distribution"}
{"level":30,"time":"2024-09-28T01:48:06.822Z","msg":"locale: Text info direction for en: ltr"}
{"level":30,"time":"2024-09-28T01:48:06.823Z","msg":"getSQLKey: using legacy key"}
{"level":30,"time":"2024-09-28T01:48:06.824Z","msg":"getSystemTraySetting got value DoNotUseSystemTray"}
{"level":30,"time":"2024-09-28T01:48:06.824Z","msg":"getSystemTraySetting returning DoNotUseSystemTray"}
{"level":30,"time":"2024-09-28T01:48:06.825Z","msg":"app ready"}
{"level":30,"time":"2024-09-28T01:48:06.825Z","msg":"starting version 7.24.1"}
{"level":30,"time":"2024-09-28T01:48:06.825Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2024-09-28T01:48:06.836Z","msg":"got fast theme-setting value dark"}
{"level":30,"time":"2024-09-28T01:48:06.865Z","msg":"got fast theme-setting value dark"}
{"level":30,"time":"2024-09-28T01:48:06.865Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2024-09-28T01:48:06.866Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":1920,\"height\":1025,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"backgroundColor\":\"#121212\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"enableBlinkFeatures\":\"CSSPseudoDir,CSSLogical\",\"enablePreferredSizeMode\":true,\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.bundle.js\",\"backgroundThrottling\":true,\"disableBlinkFeatures\":\"Accelerated2dCanvas,AcceleratedSmallCanvases\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\",\"x\":0,\"y\":55}"}
{"level":30,"time":"2024-09-28T01:48:07.015Z","msg":"spellcheck: user locales: [\"en\"]"}
{"level":30,"time":"2024-09-28T01:48:07.015Z","msg":"spellcheck: available spellchecker languages: [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2024-09-28T01:48:07.015Z","msg":"spellcheck: setting languages to: [\"en\"]"}
{"level":30,"time":"2024-09-28T01:48:07.393Z","msg":"MainSQL: migrateDatabase: Migration without cipher change failed"}
{"level":50,"time":"2024-09-28T01:48:07.415Z","msg":"MainSQL: Database startup error: Error: ENOENT, node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node not found in [REDACTED]\n    at createError (node:electron/js2c/node_init:2:2002)\n    at Object.func [as .node] (node:electron/js2c/node_init:2:2721)\n    at Module.load (node:internal/modules/cjs/loader:1215:32)\n    at Module._load (node:internal/modules/cjs/loader:1031:12)\n    at c._load (node:electron/js2c/node_init:2:17025)\n    at Module.require (node:internal/modules/cjs/loader:1240:19)\n    at require (node:internal/modules/helpers:179:18)\n    at bindings ([REDACTED]/node_modules/bindings/bindings.js:112:48)\n    at new Database ([REDACTED]/node_modules/@signalapp/better-sqlite3/lib/database.js:48:64)\n    at openAndMigrateDatabase ([REDACTED]/ts/sql/Server.js:432:8)"}
{"level":50,"time":"2024-09-28T01:48:07.416Z","msg":"Failed to get zoom factor {\"name\":\"Error\"}"}
{"level":30,"time":"2024-09-28T01:48:07.922Z","msg":"got fast theme-setting value dark"}
{"level":50,"time":"2024-09-28T01:48:08.080Z","msg":"Preload error in [REDACTED]/preload.bundle.js:  ENOENT, node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node not found in [REDACTED]"}
{"level":50,"time":"2024-09-28T01:48:08.150Z","msg":"sql.initialize was unsuccessful; returning early"}
{"level":30,"time":"2024-09-28T01:48:08.150Z","msg":"close event {\"readyForShutdown\":false,\"shouldQuit\":false}"}
{"level":30,"time":"2024-09-28T01:48:08.151Z","msg":"maybeRequestCloseConfirmation: Checking to see if close confirmation is needed"}

(signal-desktop:2): Gdk-WARNING **: 11:48:10.065: ../gdk/x11/gdkproperty-x11.c:224 invalid X atom: 3002241878
{"level":50,"time":"2024-09-28T01:48:23.841Z","msg":"onDatabaseError: Deleting all data"}
{"level":50,"time":"2024-09-28T01:48:23.854Z","msg":"maybeRequestCloseConfirmation: Response never received; continuing with close."}
{"level":50,"time":"2024-09-28T01:48:23.856Z","msg":"MainSQL close, failed: Error: ENOENT, node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node not found in [REDACTED]\n    at createError (node:electron/js2c/node_init:2:2002)\n    at Object.func [as .node] (node:electron/js2c/node_init:2:2721)\n    at Module.load (node:internal/modules/cjs/loader:1215:32)\n    at Module._load (node:internal/modules/cjs/loader:1031:12)\n    at c._load (node:electron/js2c/node_init:2:17025)\n    at Module.require (node:internal/modules/cjs/loader:1240:19)\n    at require (node:internal/modules/helpers:179:18)\n    at bindings ([REDACTED]/node_modules/bindings/bindings.js:112:48)\n    at new Database ([REDACTED]/node_modules/@signalapp/better-sqlite3/lib/database.js:48:64)\n    at openAndMigrateDatabase ([REDACTED]/ts/sql/Server.js:432:8)"}
{"level":30,"time":"2024-09-28T01:48:23.857Z","msg":"before-quit event {\"readyForShutdown\":true,\"shouldQuit\":false,\"hasEventBeenPrevented\":false,\"windowCount\":1,\"mainWindowExists\":false}"}
{"level":30,"time":"2024-09-28T01:48:23.857Z","msg":"close event: no main window"}
{"level":30,"time":"2024-09-28T01:48:23.859Z","msg":"main window is ready-to-show"}
{"level":30,"time":"2024-09-28T01:48:23.868Z","msg":"main window closed event"}
{"level":30,"time":"2024-09-28T01:48:23.870Z","msg":"will-quit event {\"hasEventBeenPrevented\":false,\"windowCount\":0,\"mainWindowExists\":false}"}
{"level":30,"time":"2024-09-28T01:48:23.870Z","msg":"quit event {\"hasEventBeenPrevented\":false,\"windowCount\":0,\"mainWindowExists\":false}"}
{"level":40,"time":"2024-09-28T01:48:23.873Z","msg":"MainSQL: removeDB: Removing all database files"}
{"level":30,"time":"2024-09-28T01:48:23.874Z","msg":"config/remove: Deleting user config from disk"}
{"level":30,"time":"2024-09-28T01:48:23.874Z","msg":"config/remove: Deleted user config from disk"}
{"level":50,"time":"2024-09-28T01:48:23.874Z","msg":"onDatabaseError: Requesting immediate restart after quit"}
{"level":50,"time":"2024-09-28T01:48:23.937Z","msg":"onDatabaseError: Quitting application"}

Version details:

[user@signal Signal]$ flatpak info org.signal.Signal

Signal Foundation - Private messenger

          ID: org.signal.Signal
         Ref: app/org.signal.Signal/x86_64/stable
        Arch: x86_64
      Branch: stable
     Version: 7.24.1
     License: AGPL-3.0-only
      Origin: flathub
  Collection: org.flathub.Stable
Installation: user
   Installed: 479.4 MB
     Runtime: org.freedesktop.Platform/x86_64/24.08
         Sdk: org.freedesktop.Sdk/x86_64/24.08

      Commit: 2d3107e48d9f49cbcc0c1667448b7c3429dab28176daf066b2eb33f79e121c45
      Parent: a86572347a1f1567a4415637c6488a1951dc48304366146de9eecce3bc201d8d
     Subject: Do update check of master and beta separately (#749) (69440046)
        Date: 2024-09-27 13:54:24 +0000

@secur1tree
Copy link

Same issue since the recent updates. Running flatpak installed on a whonix-17-workstation TemplateVM on Qubes 4.2.3. org.signal.Signal is also installed in the TemplateVM. User data is stored in the AppVM.

[workstation user ~]% uname -a
Linux host 6.6.48-1.qubes.fc37.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Sep  4 01:09:59 GMT 2024 x86_64 GNU/Linux
[workstation user ~]% flatpak info org.signal.Signal

Signal Desktop - Private messenger

          ID: org.signal.Signal
         Ref: app/org.signal.Signal/x86_64/stable
        Arch: x86_64
      Branch: stable
     Version: 7.24.1
     License: AGPL-3.0-only
      Origin: flathub
  Collection: org.flathub.Stable
Installation: system
   Installed: 479.4 MB
     Runtime: org.freedesktop.Platform/x86_64/24.08
         Sdk: org.freedesktop.Sdk/x86_64/24.08

      Commit: 2d3107e48d9f49cbcc0c1667448b7c3429dab28176daf066b2eb33f79e121c45
      Parent: a86572347a1f1567a4415637c6488a1951dc48304366146de9eecce3bc201d8d
     Subject: Do update check of master and beta separately (#749) (69440046)
        Date: 2024-09-27 13:54:24 +0000

I did flatpak override --user --env=SIGNAL_PASSWORD_STORE=basic org.signal.Signal in the AppVM, then:


[workstation user ~]% flatpak run org.signal.Signal             
Debug: Using password store: basic
Debug: Will run signal with the following arguments: --password-store=basic
Debug: Additionally, user gave: --debug
Set Windows Application User Model ID (AUMID) { AUMID: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /app/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME host
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/user/.var/app/org.signal.Signal/config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
making app single instance
LaunchProcess: failed to execvp:
xdg-settings
LaunchProcess: failed to execvp:
xdg-settings
{"level":30,"time":"2024-10-01T06:45:33.189Z","msg":"got fast localeOverride setting null"}
{"level":30,"time":"2024-10-01T06:45:33.191Z","msg":"app.ready: hour cycle preference: UnknownPreference"}
{"level":30,"time":"2024-10-01T06:45:33.191Z","msg":"app.ready: preferred system locales: en-US, en"}
{"level":30,"time":"2024-10-01T06:45:33.212Z","msg":"locale: Supported locales: af-ZA, ar, az-AZ, bg-BG, bn-BD, bs-BA, ca, cs, da, de, el, en, es, et-EE, eu, fa-IR, fi, fr, ga-IE, gl-ES, gu-IN, he, hi-IN, hr-HR, hu, id, it, ja, ka-GE, kk-KZ, km-KH, kn-IN, ko, ky-KG, lt-LT, lv-LV, mk-MK, ml-IN, mr-IN, ms, my, nb, nl, pa-IN, pl, pt-BR, pt-PT, ro-RO, ru, sk-SK, sl-SI, sq-AL, sr, sv, sw, ta-IN, te-IN, th, tl-PH, tr, ug, uk-UA, ur, vi, yue, zh-CN, zh-HK, zh-Hant"}
{"level":30,"time":"2024-10-01T06:45:33.213Z","msg":"locale: Preferred locales: en-US, en"}
{"level":30,"time":"2024-10-01T06:45:33.213Z","msg":"locale: Locale Override: null"}
{"level":30,"time":"2024-10-01T06:45:33.222Z","msg":"locale: Matched locale: en"}
{"level":40,"time":"2024-10-01T06:45:33.882Z","msg":"intl.onWarn [@formatjs/intl] \"defaultRichTextElements\" was specified but \"message\" was not pre-compiled. \nPlease consider using \"@formatjs/cli\" to pre-compile your messages for performance.\nFor more details see https://formatjs.io/docs/getting-started/message-distribution"}
{"level":30,"time":"2024-10-01T06:45:33.884Z","msg":"locale: Text info direction for en: ltr"}
{"level":30,"time":"2024-10-01T06:45:33.897Z","msg":"getSQLKey: using legacy key"}
{"level":30,"time":"2024-10-01T06:45:33.908Z","msg":"getSystemTraySetting got value DoNotUseSystemTray"}
{"level":30,"time":"2024-10-01T06:45:33.908Z","msg":"getSystemTraySetting returning DoNotUseSystemTray"}
{"level":30,"time":"2024-10-01T06:45:33.934Z","msg":"app ready"}
{"level":30,"time":"2024-10-01T06:45:33.946Z","msg":"starting version 7.24.1"}
{"level":30,"time":"2024-10-01T06:45:33.947Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2024-10-01T06:45:33.953Z","msg":"got fast theme-setting value dark"}
{"level":30,"time":"2024-10-01T06:45:34.053Z","msg":"got fast theme-setting value dark"}
{"level":30,"time":"2024-10-01T06:45:34.054Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2024-10-01T06:45:34.055Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":1366,\"height\":713,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"backgroundColor\":\"#121212\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"enableBlinkFeatures\":\"CSSPseudoDir,CSSLogical\",\"enablePreferredSizeMode\":true,\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.bundle.js\",\"backgroundThrottling\":true,\"disableBlinkFeatures\":\"Accelerated2dCanvas,AcceleratedSmallCanvases\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\",\"x\":0,\"y\":55}"}
{"level":30,"time":"2024-10-01T06:45:35.898Z","msg":"spellcheck: user locales: [\"en-US\",\"en\"]"}
{"level":30,"time":"2024-10-01T06:45:35.898Z","msg":"spellcheck: available spellchecker languages: [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2024-10-01T06:45:35.898Z","msg":"spellcheck: setting languages to: [\"en-US\",\"en\"]"}
{"level":30,"time":"2024-10-01T06:45:35.901Z","msg":"MainSQL: migrateDatabase: Migration without cipher change failed"}
{"level":50,"time":"2024-10-01T06:45:35.902Z","msg":"MainSQL: Database startup error: Error: ENOENT, node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node not found in [REDACTED]\n    at createError (node:electron/js2c/node_init:2:2002)\n    at Object.func [as .node] (node:electron/js2c/node_init:2:2721)\n    at Module.load (node:internal/modules/cjs/loader:1215:32)\n    at Module._load (node:internal/modules/cjs/loader:1031:12)\n    at c._load (node:electron/js2c/node_init:2:17025)\n    at Module.require (node:internal/modules/cjs/loader:1240:19)\n    at require (node:internal/modules/helpers:179:18)\n    at bindings ([REDACTED]/node_modules/bindings/bindings.js:112:48)\n    at new Database ([REDACTED]/node_modules/@signalapp/better-sqlite3/lib/database.js:48:64)\n    at openAndMigrateDatabase ([REDACTED]/ts/sql/Server.js:432:8)"}
{"level":50,"time":"2024-10-01T06:45:35.910Z","msg":"Failed to get zoom factor {\"name\":\"Error\"}"}
{"level":30,"time":"2024-10-01T06:45:41.503Z","msg":"got fast theme-setting value dark"}
{"level":50,"time":"2024-10-01T06:45:42.307Z","msg":"Preload error in [REDACTED]/preload.bundle.js:  ENOENT, node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node not found in [REDACTED]"}
{"level":50,"time":"2024-10-01T06:45:42.707Z","msg":"sql.initialize was unsuccessful; returning early"}
{"level":30,"time":"2024-10-01T06:45:42.709Z","msg":"close event {\"readyForShutdown\":false,\"shouldQuit\":false}"}
{"level":30,"time":"2024-10-01T06:45:42.709Z","msg":"maybeRequestCloseConfirmation: Checking to see if close confirmation is needed"}
{"level":50,"time":"2024-10-01T06:45:46.437Z","msg":"onDatabaseError: Quitting application"}
{"level":30,"time":"2024-10-01T06:45:46.483Z","msg":"main window closed event"}
{"level":30,"time":"2024-10-01T06:45:46.484Z","msg":"quit event {\"hasEventBeenPrevented\":false,\"windowCount\":0,\"mainWindowExists\":false}"}
zsh: exit 1     flatpak run org.signal.Signal

~/.var/app/org.signal.Signal/config/Signal/config.json does contain an unencrypted database key:

{ "key": "64-Characters-here", 
"mediaPermissions": true, 
"mediaCameraPermissions": true }%

I was curious and tried running org.signal.Signal in a DisposableVM (so this is if i would delete all user data) based on the whonix-17-workstation TemplateVM with flatpak and org.signal.Signal installed, exactly same ENOENT:

[workstation user ~]% flatpak run org.signal.Signal
Debug: Using password store: basic

(zenity:3): dbind-WARNING **: 18:31:52.466: AT-SPI: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: org.freedesktop.DBus.Error.ServiceUnknown
Debug: Will run signal with the following arguments: --password-store=basic
Debug: Additionally, user gave: 
Set Windows Application User Model ID (AUMID) { AUMID: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /app/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME host
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/user/.var/app/org.signal.Signal/config/Signal
config/start: Did not find user config file (or it was empty), cache is now empty object
config/start: Did not find ephemeral config file (or it was empty), cache is now empty object
making app single instance
LaunchProcess: failed to execvp:
xdg-settings
LaunchProcess: failed to execvp:
xdg-settings
[2:1002/183217.005709:ERROR:object_proxy.cc(576)] Failed to call method: org.freedesktop.DBus.StartServiceByName: object_path= /org/freedesktop/DBus: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
{"level":30,"time":"2024-10-02T18:32:20.146Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:20.270Z","msg":"config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:20.270Z","msg":"initializing localeOverride setting null"}
{"level":30,"time":"2024-10-02T18:32:20.270Z","msg":"app.ready: hour cycle preference: UnknownPreference"}
{"level":30,"time":"2024-10-02T18:32:20.271Z","msg":"app.ready: preferred system locales: en-US, en"}
{"level":30,"time":"2024-10-02T18:32:20.291Z","msg":"locale: Supported locales: af-ZA, ar, az-AZ, bg-BG, bn-BD, bs-BA, ca, cs, da, de, el, en, es, et-EE, eu, fa-IR, fi, fr, ga-IE, gl-ES, gu-IN, he, hi-IN, hr-HR, hu, id, it, ja, ka-GE, kk-KZ, km-KH, kn-IN, ko, ky-KG, lt-LT, lv-LV, mk-MK, ml-IN, mr-IN, ms, my, nb, nl, pa-IN, pl, pt-BR, pt-PT, ro-RO, ru, sk-SK, sl-SI, sq-AL, sr, sv, sw, ta-IN, te-IN, th, tl-PH, tr, ug, uk-UA, ur, vi, yue, zh-CN, zh-HK, zh-Hant"}
{"level":30,"time":"2024-10-02T18:32:20.291Z","msg":"locale: Preferred locales: en-US, en"}
{"level":30,"time":"2024-10-02T18:32:20.291Z","msg":"locale: Locale Override: null"}
{"level":30,"time":"2024-10-02T18:32:20.294Z","msg":"locale: Matched locale: en"}
{"level":40,"time":"2024-10-02T18:32:21.030Z","msg":"intl.onWarn [@formatjs/intl] \"defaultRichTextElements\" was specified but \"message\" was not pre-compiled. \nPlease consider using \"@formatjs/cli\" to pre-compile your messages for performance.\nFor more details see https://formatjs.io/docs/getting-started/message-distribution"}
{"level":30,"time":"2024-10-02T18:32:21.031Z","msg":"locale: Text info direction for en: ltr"}
{"level":40,"time":"2024-10-02T18:32:21.031Z","msg":"getSQLKey: got key from config, but it wasn't a string"}
{"level":30,"time":"2024-10-02T18:32:21.031Z","msg":"key/initialize: Generating new encryption key, since we did not find it on disk"}
{"level":30,"time":"2024-10-02T18:32:21.032Z","msg":"getSQLKey: updating plaintext key in the config"}
{"level":30,"time":"2024-10-02T18:32:21.032Z","msg":"config/set: Saving user config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.176Z","msg":"config/set: Saved user config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.177Z","msg":"getSystemTraySetting got no value, returning Uninitialized"}
{"level":30,"time":"2024-10-02T18:32:21.180Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.244Z","msg":"config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.245Z","msg":"app.ready: setting system-tray-setting to DoNotUseSystemTray"}
{"level":30,"time":"2024-10-02T18:32:21.246Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.359Z","msg":"config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.362Z","msg":"app ready"}
{"level":30,"time":"2024-10-02T18:32:21.363Z","msg":"starting version 7.24.1"}
{"level":30,"time":"2024-10-02T18:32:21.363Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2024-10-02T18:32:21.388Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.522Z","msg":"config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.522Z","msg":"saving theme-setting value system"}
{"level":30,"time":"2024-10-02T18:32:21.523Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.621Z","msg":"config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2024-10-02T18:32:21.621Z","msg":"initializing spellcheck setting true"}
{"level":50,"time":"2024-10-02T18:32:21.622Z","msg":"visibleOnAnyScreen: windowOptions didn't have valid bounds fields"}
{"level":30,"time":"2024-10-02T18:32:21.622Z","msg":"Location reset needed"}
{"level":30,"time":"2024-10-02T18:32:21.622Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":800,\"height\":610,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"backgroundColor\":\"#3a76f0\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"enableBlinkFeatures\":\"CSSPseudoDir,CSSLogical\",\"enablePreferredSizeMode\":true,\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.bundle.js\",\"backgroundThrottling\":true,\"disableBlinkFeatures\":\"Accelerated2dCanvas,AcceleratedSmallCanvases\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\"}"}
{"level":30,"time":"2024-10-02T18:32:22.721Z","msg":"spellcheck: user locales: [\"en-US\",\"en\"]"}
{"level":30,"time":"2024-10-02T18:32:22.722Z","msg":"spellcheck: available spellchecker languages: [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2024-10-02T18:32:22.722Z","msg":"spellcheck: setting languages to: [\"en-US\",\"en\"]"}
{"level":30,"time":"2024-10-02T18:32:22.723Z","msg":"MainSQL: migrateDatabase: Migration without cipher change failed"}
{"level":50,"time":"2024-10-02T18:32:22.724Z","msg":"MainSQL: Database startup error: Error: ENOENT, node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node not found in [REDACTED]\n    at createError (node:electron/js2c/node_init:2:2002)\n    at Object.func [as .node] (node:electron/js2c/node_init:2:2721)\n    at Module.load (node:internal/modules/cjs/loader:1215:32)\n    at Module._load (node:internal/modules/cjs/loader:1031:12)\n    at c._load (node:electron/js2c/node_init:2:17025)\n    at Module.require (node:internal/modules/cjs/loader:1240:19)\n    at require (node:internal/modules/helpers:179:18)\n    at bindings ([REDACTED]/node_modules/bindings/bindings.js:112:48)\n    at new Database ([REDACTED]/node_modules/@signalapp/better-sqlite3/lib/database.js:48:64)\n    at openAndMigrateDatabase ([REDACTED]/ts/sql/Server.js:432:8)"}
{"level":50,"time":"2024-10-02T18:32:22.724Z","msg":"Failed to get zoom factor {\"name\":\"Error\"}"}
{"level":30,"time":"2024-10-02T18:32:23.076Z","msg":"spellcheck: dictionary download begin: en"}
{"level":30,"time":"2024-10-02T18:32:23.077Z","msg":"spellcheck: dictionary download begin: en-US"}
{"level":30,"time":"2024-10-02T18:32:26.145Z","msg":"got fast theme-setting value system"}
{"level":50,"time":"2024-10-02T18:32:26.551Z","msg":"Preload error in [REDACTED]/preload.bundle.js:  ENOENT, node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node not found in [REDACTED]"}
{"level":50,"time":"2024-10-02T18:32:26.877Z","msg":"sql.initialize was unsuccessful; returning early"}
{"level":30,"time":"2024-10-02T18:32:26.879Z","msg":"close event {\"readyForShutdown\":false,\"shouldQuit\":false}"}
{"level":30,"time":"2024-10-02T18:32:26.880Z","msg":"maybeRequestCloseConfirmation: Checking to see if close confirmation is needed"}
{"level":50,"time":"2024-10-02T18:32:31.165Z","msg":"onDatabaseError: Quitting application"}
{"level":30,"time":"2024-10-02T18:32:31.194Z","msg":"main window closed event"}
{"level":30,"time":"2024-10-02T18:32:31.195Z","msg":"quit event {\"hasEventBeenPrevented\":false,\"windowCount\":0,\"mainWindowExists\":false}"}
zsh: exit 1     flatpak run org.signal.Signal

@av2k
Copy link

av2k commented Oct 17, 2024

The error ist

Uncaught Exception:
Error: ENOENT, node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node not found in /app/Signal/resources/app.asar

It has nothing to do with the password store.

Something else is broken.

@Lik-the-Fluffin
Copy link

Lik-the-Fluffin commented Nov 6, 2024

I had the same error.
/run/user/1000 had no space and doing rm -r /run/user/1000/app/org.signal.Signal fixed it
Also, all that space was used only by org.signal.Signal dir, it was around 1.5G

@theamazing0
Copy link

Also had this error, my /run/user/1000/app/org.signal.Signal folder had 800mb of storage used. I deleted it according to @Lik-the-Fluffin's advice and now it works.

@indivisualvj
Copy link

deleteing all files in /run/user/1000/app/org.signal.Signal solved it for me too.
reboot also helped on Linux Mint 21.2 Cinnamon

@xyhhx
Copy link

xyhhx commented Nov 27, 2024

i'm running signal on qubes as well, in an appvm. i ran into the issue, and running rm -r /run/user/1000/app/org.signal.Signal made it at least show the window, but if i run it from the terminal with run --user org.signal.Signal and watch the logs, it still shows the same error:

log output of `run --user org.signal.Signal` on my machine:
user@flatpak-signal:~% flatpak --user run org.signal.Signal
Debug: Using password store: basic
Debug: Will run signal with the following arguments: --password-store=basic
Debug: Additionally, user gave:
Set Windows Application User Model ID (AUMID) { AUMID: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /app/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME flatpak-signal
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/user/.var/app/org.signal.Signal/config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
making app single instance
LaunchProcess: failed to execvp:
xdg-settings
LaunchProcess: failed to execvp:
xdg-settings
{"level":30,"time":"2024-11-27T19:42:35.728Z","msg":"got fast localeOverride setting null"}
{"level":30,"time":"2024-11-27T19:42:35.731Z","msg":"app.ready: hour cycle preference: UnknownPreference"}
{"level":30,"time":"2024-11-27T19:42:35.732Z","msg":"app.ready: preferred system locales: en-US, en"}
{"level":30,"time":"2024-11-27T19:42:35.732Z","msg":"locale: Supported locales: af-ZA, ar, az-AZ, bg-BG, bn-BD, bs-BA, ca, cs, da, de, el, en, es, et-EE, eu, fa-IR, fi, fr, ga-IE, gl-ES, gu-IN, he, hi-IN, hr-HR, hu, id, it, ja, ka-GE, kk-KZ, km-KH, kn-IN, ko, ky-KG, lt-LT, lv-LV, mk-MK, ml-IN, mr-IN, ms, my, nb, nl, pa-IN, pl, pt-BR, pt-PT, ro-RO, ru, sk-SK, sl-SI, sq-AL, sr, sv, sw, ta-IN, te-IN, th, tl-PH, tr, ug, uk-UA, ur, vi, yue, zh-CN, zh-HK, zh-Hant"}
{"level":30,"time":"2024-11-27T19:42:35.732Z","msg":"locale: Preferred locales: en-US, en"}
{"level":30,"time":"2024-11-27T19:42:35.732Z","msg":"locale: Locale Override: null"}
{"level":30,"time":"2024-11-27T19:42:35.739Z","msg":"locale: Matched locale: en"}
{"level":40,"time":"2024-11-27T19:42:35.829Z","msg":"intl.onWarn [@formatjs/intl] \"defaultRichTextElements\" was specified but \"message\" was not pre-compiled. \nPlease consider using \"@formatjs/cli\" to pre-compile your messages for performance.\nFor more details see https://formatjs.io/docs/getting-started/message-distribution"}
{"level":30,"time":"2024-11-27T19:42:35.829Z","msg":"locale: Text info direction for en: ltr"}
{"level":30,"time":"2024-11-27T19:42:35.838Z","msg":"getSQLKey: using legacy key"}
{"level":30,"time":"2024-11-27T19:42:35.839Z","msg":"getSystemTraySetting got value DoNotUseSystemTray"}
{"level":30,"time":"2024-11-27T19:42:35.839Z","msg":"getSystemTraySetting returning DoNotUseSystemTray"}
{"level":30,"time":"2024-11-27T19:42:35.840Z","msg":"app ready"}
{"level":30,"time":"2024-11-27T19:42:35.840Z","msg":"starting version 7.34.0"}
{"level":30,"time":"2024-11-27T19:42:35.840Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2024-11-27T19:42:35.842Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2024-11-27T19:42:35.924Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2024-11-27T19:42:35.927Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2024-11-27T19:42:35.927Z","msg":"visibleOnAnyScreen(window): x=880, y=443, width=800, height=610"}
{"level":30,"time":"2024-11-27T19:42:35.927Z","msg":"visibleOnAnyScreen(display #78): x=0, y=0, width=2560, height=1440"}
{"level":30,"time":"2024-11-27T19:42:35.927Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":800,\"height\":610,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"backgroundColor\":\"#3a76f0\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"enableBlinkFeatures\":\"CSSPseudoDir,CSSLogical\",\"enablePreferredSizeMode\":true,\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.wrapper.js\",\"backgroundThrottling\":true,\"disableBlinkFeatures\":\"Accelerated2dCanvas,AcceleratedSmallCanvases\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\",\"x\":880,\"y\":443}"}
{"level":30,"time":"2024-11-27T19:42:36.049Z","msg":"spellcheck: user locales: [\"en-US\",\"en\"]"}
{"level":30,"time":"2024-11-27T19:42:36.052Z","msg":"spellcheck: available spellchecker languages: [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2024-11-27T19:42:36.052Z","msg":"spellcheck: setting languages to: [\"en-US\",\"en\"]"}
{"level":30,"time":"2024-11-27T19:42:36.490Z","msg":"MainSQL: updateSchema:\n  Current user_version: 1250;\n  Most recent db schema: 1250;\n  SQLite version: 3.46.1;\n  SQLCipher version: 4.6.1 community;\n  (deprecated) schema_version: 513;\n"}
{"level":30,"time":"2024-11-27T19:42:36.854Z","msg":"got fast theme-setting value system"}
{"level":50,"time":"2024-11-27T19:42:36.985Z","msg":"Preload error in [REDACTED]/preload.wrapper.js:  ENOENT, node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node not found in [REDACTED]"}
{"level":30,"time":"2024-11-27T19:42:37.020Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2024-11-27T19:42:37.031Z","msg":"System tray service: created"}
{"level":30,"time":"2024-11-27T19:42:37.031Z","msg":"System tray service: updating main window. Previously, there was not a window, and now there is"}
{"level":30,"time":"2024-11-27T19:42:37.031Z","msg":"System tray service: rendering no tray"}
{"level":30,"time":"2024-11-27T19:42:37.032Z","msg":"Begin ensuring permissions"}
{"level":30,"time":"2024-11-27T19:42:37.035Z","msg":"Ensuring file permissions for 4 files"}
{"level":30,"time":"2024-11-27T19:42:37.036Z","msg":"Finish ensuring permissions in 4ms"}
{"level":30,"time":"2024-11-27T19:42:37.048Z","msg":"main window is ready-to-show"}
{"level":30,"time":"2024-11-27T19:42:37.048Z","msg":"showing main window"}
{"level":30,"time":"2024-11-27T19:42:37.055Z","msg":"System tray service: rendering no tray"}
{"level":30,"time":"2024-11-27T19:42:37.603Z","msg":"Updating BrowserWindow config: %s {\"maximized\":false,\"autoHideMenuBar\":false,\"fullscreen\":false,\"width\":800,\"height\":610,\"x\":880,\"y\":471}"}
{"level":30,"time":"2024-11-27T19:42:37.607Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2024-11-27T19:42:37.615Z","msg":"config/set: Saved ephemeral config to disk"}

afterward, running it again just shows the error as it first did:

log output of `run --user org.signal.Signal` again
user@flatpak-signal:~% flatpak --user run org.signal.Signal                                                 (130)
Debug: Using password store: basic
Debug: Will run signal with the following arguments: --password-store=basic --disable-gpu --disable-gpu-sandbox
Debug: Additionally, user gave:
A JavaScript error occurred in the main process
Uncaught Exception:
Error: ENOENT, node_modules/@signalapp/libsignal-client/prebuilds/linux-x64/@signalapp+libsignal-client.node not found in /app/Signal/resources/app.asar
    at createError (node:electron/js2c/node_init:2:2002)
    at Object.func [as .node] (node:electron/js2c/node_init:2:2721)
    at Module.load (node:internal/modules/cjs/loader:1295:32)
    at Module._load (node:internal/modules/cjs/loader:1111:12)
    at c._load (node:electron/js2c/node_init:2:16955)
    at Module.require (node:internal/modules/cjs/loader:1318:19)
    at require (node:internal/modules/helpers:179:18)
    at load (/app/Signal/resources/app.asar/node_modules/node-gyp-build/node-gyp-build.js:22:10)
    at Object.<anonymous> (/app/Signal/resources/app.asar/node_modules/@signalapp/libsignal-client/Native.js:6:43)
    at Module._compile (node:internal/modules/cjs/loader:1484:14)
^C
zsh: interrupt  flatpak --user run org.signal.Signal
[2:1127/144840.330919:FATAL:bus.cc(1246)] D-Bus connection was disconnected. Aborting.

@FabrizioRomanoGenovese
Copy link

Same problem here on Qubes. Any solutions?

@av2k
Copy link

av2k commented Dec 6, 2024 via email

@nickzana
Copy link

nickzana commented Dec 6, 2024

For me, increasing the Qube's Initial Memory from 400MB to 2000MB resolved the issue. Maybe the runtime didn't interact well with the Qubes memory balancing?

@FabrizioRomanoGenovese
Copy link

I can confirm that on QubesOS increasing the Qube initial memory worked for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.