FS#65419 - [signal-desktop] does not work: "binding.donna is not a function"

Attached to Project: Community Packages
Opened by Lukas Erlacher (luketheduke) - Saturday, 08 February 2020, 01:03 GMT
Last edited by Toolybird (Toolybird) - Sunday, 30 April 2023, 22:39 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Levente Polyak (anthraxx)
kpcyrd (kpcyrd)
Santiago Torres (sangy)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No



signal-desktop - in any version I could acquire on my archlinux - always fails with the same error:

{"name":"log","hostname":"laprbg12","pid":284333,"level":50,"time":"2020-02-08T00:54:12.438Z","msg":"provisioning failed TypeError: binding.donna is not a function\n at keyPair ([REDACTED]/app.asar/node_modules/curve25519-n/index.js:36:21)\n at Object.exports.createKeyPair ([REDACTED]/app.asar/node_modules/curve25519-n/index.js:116:17)\n at Object.exports.generateKeyPair ([REDACTED]/app.asar/node_modules/curve25519-n/index.js:110:18)\n at generateKeyPair ([REDACTED]/app.asar/preload.js:309:39)\n at Object.generateKeyPair ([REDACTED]/app.asar/preload.js:301:39)\n at file://[REDACTED]/app.asar/js/libtextsecure.js:41734:42","v":0}

The electron app starts up fine, but then only displays a big "Something went wrong" error.

It looks like the curve25519-n npm package (https://www.npmjs.com/package/curve25519-n) is failing to import its binary dependency on the curve25519-donna library, which it vendors and builds directly. (https://github.com/volschin/node-curve25519)

A few other people have run into this issue:


Steps to reproduce: Just run signal desktop

All packages I've tried:
- community/signal-desktop 1.30.1-1
- aur/signal-desktop-beta-bin 1.31.0beta.2-1
- aur/signal-desktop-noto 1.30.0-1
- flatpack org.signal.Signal 1.30.1
This task depends upon

Closed by  Toolybird (Toolybird)
Sunday, 30 April 2023, 22:39 GMT
Reason for closing:  Fixed
Additional comments about closing:  Old and stale. Assuming fixed by upstream in an update. See also:
https://github.com/flathub/org.signal.Si gnal/issues/96
Comment by Lukas Erlacher (luketheduke) - Saturday, 08 February 2020, 01:05 GMT
Add: This bug is triggered by creating a new Keypair, so it might not show up if Signal is already set up. You might need to run "Set Up as New Device" to trigger the bug.