signalapp / Signal-Desktop

A private messenger for Windows, macOS, and Linux.
https://signal.org/download
GNU Affero General Public License v3.0
14.68k stars 2.68k forks source link

Signal cannot start anymore! #6996

Closed thlkmoeller closed 2 months ago

thlkmoeller commented 2 months ago

Using a supported version?

Overall summary

since the update to 7.22.0, which just happened now, i cannot start signal desktop anymore. I get the message "database mistake" and i can either copy the mistake and exit, or delete files and start over. Both options do not start the app. i tried it several times.

Steps to reproduce

start the app

Expected result

signal desktop is starting

Actual result

the above described error message appears.

Screenshots

Bildschirmfoto vom 2024-08-28 23-53-26

Signal version

7.22.0

Operating system

Linux Mint

Version of Signal on your phone

signal cli, no phone

Link to debug log

impossible, since the app does not start

skladd commented 2 months ago

Same here on Ubuntu 20.04. Console output reveals error version GLIBCXX_3.4.29' not found by libstdc++.so.6:

MainSQL: Database startup error: Error: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by [REDACTED].unpacked/node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node)
    at process.func [as dlopen] (node:electron/js2c/node_init:2:2559)
    at Module._extensions..node (node:internal/modules/cjs/loader:1470:18)
    at Object.func [as .node] (node:electron/js2c/node_init:2:2786)
    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 bindings ([REDACTED]/node_modules/bindings/bindings.js:112:48)
    at new Database ([REDACTED]/node_modules/@signalapp/better-sqlite3/lib/database.js:48:64)

Full console output:

$ signal-desktop 
Set Windows Application User Model ID (AUMID) { AUMID: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /opt/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME spc-ast-ws099i7
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/user/.config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
making app single instance
{"level":30,"time":"2024-08-29T07:01:39.540Z","msg":"got fast localeOverride setting null"}
{"level":30,"time":"2024-08-29T07:01:39.541Z","msg":"app.ready: hour cycle preference: UnknownPreference"}
{"level":30,"time":"2024-08-29T07:01:39.541Z","msg":"app.ready: preferred system locales: de-DE, de"}
{"level":30,"time":"2024-08-29T07:01:39.542Z","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-08-29T07:01:39.542Z","msg":"locale: Preferred locales: de-DE, de"}
{"level":30,"time":"2024-08-29T07:01:39.542Z","msg":"locale: Locale Override: null"}
{"level":30,"time":"2024-08-29T07:01:39.545Z","msg":"locale: Matched locale: de"}
{"level":40,"time":"2024-08-29T07:01:39.601Z","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-08-29T07:01:39.601Z","msg":"locale: Text info direction for de: ltr"}
{"level":30,"time":"2024-08-29T07:01:39.602Z","msg":"getSQLKey: decrypting key"}
{"level":30,"time":"2024-08-29T07:01:39.602Z","msg":"getSystemTraySetting got value DoNotUseSystemTray"}
{"level":30,"time":"2024-08-29T07:01:39.602Z","msg":"getSystemTraySetting returning DoNotUseSystemTray"}
{"level":30,"time":"2024-08-29T07:01:39.604Z","msg":"app ready"}
{"level":30,"time":"2024-08-29T07:01:39.604Z","msg":"starting version 7.22.0"}
{"level":30,"time":"2024-08-29T07:01:39.604Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2024-08-29T07:01:39.606Z","msg":"got fast theme-setting value light"}
{"level":30,"time":"2024-08-29T07:01:39.626Z","msg":"got fast theme-setting value light"}
{"level":30,"time":"2024-08-29T07:01:39.626Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2024-08-29T07:01:39.627Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":960,\"height\":686,\"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\",\"x\":3964,\"y\":690}"}
{"level":30,"time":"2024-08-29T07:01:39.686Z","msg":"spellcheck: user locales: [\"de-DE\",\"de\"]"}
{"level":30,"time":"2024-08-29T07:01:39.687Z","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-08-29T07:01:39.687Z","msg":"spellcheck: setting languages to: [\"de-DE\",\"de\"]"}
{"level":30,"time":"2024-08-29T07:01:39.759Z","msg":"MainSQL: migrateDatabase: Migration without cipher change failed"}
{"level":50,"time":"2024-08-29T07:01:39.760Z","msg":"MainSQL: Database startup error: Error: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by [REDACTED].unpacked/node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node)\n    at process.func [as dlopen] (node:electron/js2c/node_init:2:2559)\n    at Module._extensions..node (node:internal/modules/cjs/loader:1470:18)\n    at Object.func [as .node] (node:electron/js2c/node_init:2:2786)\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)"}
{"level":50,"time":"2024-08-29T07:01:39.761Z","msg":"Failed to get zoom factor {\"name\":\"Error\"}"}
{"level":30,"time":"2024-08-29T07:01:40.214Z","msg":"got fast theme-setting value light"}
{"level":50,"time":"2024-08-29T07:01:40.915Z","msg":"sql.initialize was unsuccessful; returning early"}
{"level":30,"time":"2024-08-29T07:01:40.916Z","msg":"close event {\"readyForShutdown\":false,\"shouldQuit\":false}"}
{"level":30,"time":"2024-08-29T07:01:40.916Z","msg":"maybeRequestCloseConfirmation: Checking to see if close confirmation is needed"}
chthal commented 2 months ago

Same here on Ubuntu 20.04. It offers me to delete the database ...

sebrhex commented 2 months ago

Same on Debian 11 (using signal xenial apt repo)

dobonpalik commented 2 months ago

Same here on PureOS 10, which is based on Debian 11.

I had to force-downgrade to Signal Desktop 7.21.0, and that works after blowing away ~/.config/Signal (which I backed up). That meant I had to re-link with my phone, re-import my contacts, and I lost the chat histories in Signal Desktop. Pretty ugly.

Scypio81 commented 2 months ago

Same on Ubuntu 20.04.6 LTS. Tried solving by installing the missing versions for the "better-sqlite3", didn't help, still getting errors like:

Database startup error:

Error: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by [REDACTED].unpacked/node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node)
    at process.func [as dlopen] (node:electron/js2c/node_init:2:2559)
    at Module._extensions..node (node:internal/modules/cjs/loader:1470:18)
    at Object.func [as .node] (node:electron/js2c/node_init:2:2786)
    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 bindings ([REDACTED]/node_modules/bindings/bindings.js:112:48)
    at new Database ([REDACTED]/node_modules/@signalapp/better-sqlite3/lib/database.js:48:64)

App Version: 7.22.0
OS: linux
Database startup error:

Error: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by [REDACTED].unpacked/node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node)
    at process.func [as dlopen] (node:electron/js2c/node_init:2:2559)
    at Module._extensions..node (node:internal/modules/cjs/loader:1470:18)
    at Object.func [as .node] (node:electron/js2c/node_init:2:2786)
    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 bindings ([REDACTED]/node_modules/bindings/bindings.js:112:48)
    at new Database ([REDACTED]/node_modules/@signalapp/better-sqlite3/lib/database.js:48:64)

App Version: 7.22.0
OS: linux
RubenBrusselmans commented 2 months ago

Same here on PureOS 10, which is based on Debian 11.

I had to force-downgrade to Signal Desktop 7.21.0, and that works after blowing away ~/.config/Signal (which I backed up). That meant I had to re-link with my phone, re-import my contacts, and I lost the chat histories in Signal Desktop. Pretty ugly.

This worked: sudo apt-get install signal-desktop=7.21.0 If you did not click delete database and restart, you get to keep your history.

It looks like Signal Desktop was compiled for a newer version of the C++ standard library that is not yet available in the current version of Debian 11 or Ubuntu 20. It is looking for GLIBCXX_3.4.29 but Ubuntu is compatible with GLIBCXX_3.4.28 and lower.

ptandler commented 2 months ago

downgrade worked also on Linux Mint 20.3 ... seems it's time to update my OS :)

This worked: sudo apt-get install signal-desktop=7.21.0 If you did not click delete database and restart, you get to keep your history.

And you can add sudo apt-mark hold signal-desktop to prevent further updates, until this is - hopefully - fixed.

thlkmoeller commented 2 months ago

Same here on PureOS 10, which is based on Debian 11. I had to force-downgrade to Signal Desktop 7.21.0, and that works after blowing away ~/.config/Signal (which I backed up). That meant I had to re-link with my phone, re-import my contacts, and I lost the chat histories in Signal Desktop. Pretty ugly.

This worked: sudo apt-get install signal-desktop=7.21.0 If you did not click delete database and restart, you get to keep your history.

It looks like Signal Desktop was compiled for a newer version of the C++ standard library that is not yet available in the current version of Debian 11 or Ubuntu 20. It is looking for GLIBCXX_3.4.29 but Ubuntu is compatible with GLIBCXX_3.4.28 and lower.

great.... yesterday, when i started the app after the update, i was confused and i am sure, that i clicked both buttons, because the app didn't start up. that means, now i deleted my own whole message and chat history?? is there any way, which is humanly possible to restore my messages? as i mentioned in my original post, i do not use signal android as master, but signal CLI. Actually of course I never really "use" it. I just used it for creating my account and then just used my desktop app.

is it all gone now?

pfsenseuser commented 2 months ago

is it all gone now?

If you dont have a backup (timeshift for example) I'm afraid the answer is Yes :-( (the signal folder is located here: ~/.config/Signal/ )

thlkmoeller commented 2 months ago

is it all gone now?

If you dont have a backup (timeshift for example) I'm afraid the answer is Yes :-( (the signal folder is located here: ~/.config/Signal/ )

are the messages maybe saved in Signal CLI somehow and I could transfer them from there... or at least access?

pfsenseuser commented 2 months ago

Signal CLI

Sorry, I'm not familiary with signal cli ...

trevor-signal commented 2 months ago

Really sorry about this, all. We are working on a fix and should have it out shortly.

FVL-txapa commented 2 months ago

did the downgrade and it worked fine (Linux Mint 20.1 Ulyssa (base Ubuntu 20.04 focal) kernel 5.4.0-187 gcc 9.4.0)¹


¹ yes, i know i should upgrade the OS :)

pfsenseuser commented 2 months ago

¹ yes, i know i should upgrade the OS :)

If a OS upgrade is necessary then it should be communicated in a les "destructive" way ... :-))) (IMHO)

sebrem commented 2 months ago

Possible the same issue as #6970

bertwesarg commented 2 months ago

Possible the same issue as #6970

I don't think so. This comment is the first one, which includes the /lib/x86_64-linux-gnu/libstdc++.so.6: version 'GLIBCXX_3.4.29' not found error, but this comment was posted 10 hours after this report. So I assume that this poster posted in the wrong issue.

trevor-signal commented 2 months ago

We just released v7.22.1; please let us know if it fixes the issue. Thanks!

bertwesarg commented 2 months ago

does this needs a little more time, before the repo is usable?


Get:38 https://updates.signal.org/desktop/apt xenial/main amd64 Packages [61.5 kB]
Err:38 https://updates.signal.org/desktop/apt xenial/main amd64 Packages
  Hash Sum mismatch
  Hashes of expected file:
   - Filesize:61524 [weak]
   - SHA512:8a4c002810f1cb0763d4e73f69b9810f463e42cb18fc075b4dd3bb79b677d38308d0f517359a8cd6ddaabc0cb3b86f1ca13fb8525d0e47d747b99b6371d9b385
   - SHA256:d7694a8d7ef61f7d8720207b4665c86119a5c70e4336c342f84a2569c48728ad
   - SHA1:d04ce7c2e452a5c69353067592f37c686393e08e [weak]
   - MD5Sum:5fffd654960dec6a0efe46ea5038e0c9 [weak]
  Hashes of received file:
   - SHA512:39eb66cd4045429c1026c95d7393b84a627b7ac94077b81c4f71344eedc3fff9858746ab9396166c774e0c365f53ba4b0b98334b2a2c009626f6b10cf6d54ad6
   - SHA256:d96eac67ff7188dcbec5a3a173b381f2d27c608213ab1790e41697ddbccc487d
   - SHA1:e6dd60f46b52aa973fcb98c9467d472ca87997ef [weak]
   - MD5Sum:6ced1d48d89cb0605e89b04db539996e [weak]
   - Filesize:61524 [weak]
  Last modification reported: Thu, 29 Aug 2024 16:37:09 +0000
  Release file created at: Thu, 29 Aug 2024 16:29:46 +0000
trevor-signal commented 2 months ago

Sorry about that -- looks like something went wrong in our release process.

bertwesarg commented 2 months ago

Its working now, thanks and no need to be sorry for your service to the free internet

bertwesarg commented 2 months ago

…and I can also confirm that 7.22.1 is working fine on Ubuntu 20.04 LTS now. Thanks again

pfsenseuser commented 2 months ago

... confirm, here too 7.22.2 (Linux Mint 20.3) works as expected, Thank you!

ayumi-signal commented 2 months ago

Hi everyone, glad it's working again and sorry for all the issues. Just wanted to give an explanation. We've been moving toward reproducible builds for Linux to improve security guarantees, and this week we did the first production release using the new system. Prior to this, last week we did a Beta release using the new system and it seemed to go well so we decided to promote it to production. However as everyone has reported this week's prod release had dependency issues with Ubuntu 20, so we've reverted production to the previous build pipeline for now.

We found that we weren't testing on Ubuntu 20, so going forward we're going to add it to our verification flow to make sure future releases go okay. Sorry again, especially to those who lost data while debugging the app files, and we'll get this right next time.

SpecularReflection commented 2 months ago

Thanks a lot! Version 7.22.2 runs on my Ubuntu 20.04 LTS machine again!

jnsgruk commented 2 months ago

Ubuntu 20.04 is 4 years old now, are there any plans to test on 22.04 or 24.04 which are the subsequent LTS releases?