Edit Package signal-desktop

Fast, simple and secure messaging app from your desktop

https://github.com/signalapp/Signal-Desktop/

Signal Desktop is an Electron application that links with your Signal Android
or Signal iOS app.

Refresh
Refresh
Source Files
Filename Size Changed
0001-ts-log-Avoid-log-spam-for-ResizeObserver-loop-limit-.patch 0000001271 1.24 KB 11 months
Remove-build-time-dependencies.patch 0000001368 1.34 KB 3 months
Signal-Desktop-5.60.0.tar.gz 0038244751 36.5 MB 6 days
Use-system-Inter-font.patch 0000004183 4.08 KB 12 days
_constraints 0000000110 110 Bytes 4 days
do-not-guess-rust-target.patch 0000001148 1.12 KB about 1 month
esbuild_version.patch 0000000805 805 Bytes 3 months
prepare_vendor.sh 0000006396 6.25 KB about 1 month
signal-desktop-better-sqlite3-openssl.patch 0000001518 1.48 KB 5 months
signal-desktop-expire-from-source-date-epoch.patch 0000000649 649 Bytes 8 months
signal-desktop-remove-heif-support.patch 0000002147 2.1 KB about 2 months
signal-desktop-webpack-openssl-3-0.patch 0000000903 903 Bytes 7 months
signal-desktop.changes 0000058216 56.9 KB 5 days
signal-desktop.desktop 0000000292 292 Bytes over 2 years
signal-desktop.spec 0000020294 19.8 KB 3 days
vendor.tar.xz 0238209696 227 MB 5 days
Comments 13

Bruno Pitrus's avatar

dziobian wrote 8 months ago

Do you know how often electron makes ABI-breaking changes? If minor updates are OK, it might be worth doing something like this:

Requires: nodejs-electron%{?_isa} >= %{electron_req_version}

Requires: nodejs-electron%{?_isa} < 17 (or whatever is current version + 1)

My Bitwarden binaries built with Electron 13 ( https://build.opensuse.org/package/show/home:dziobian:gulgul-ultron/bitwarden ) work fine on 16, but Signal does not, so there seem to be at least two types of binary Node modules.


Andreas Schneider's avatar

gladiac wrote 8 months ago

Signal requires header files for electron which are being downloaded. Same for nodejs, so the header files in the vendor tarball need to match exactly the nodejs and electron version to be able to build it.

Yes, it is quite a mess.


Bruno Pitrus's avatar

dziobian wrote 8 months ago

The nodejs headers are provided in nodejs16-devel and can be used adding --nodedir=/usr/include/node16 to npm command line. Unfortunately the SuSE distribution of electron does not include devel headers. Ouch.

My question was different tho. I was asking whether binaries built against electron 16.0.1 can run with electron 16.0.2.


Andreas Schneider's avatar

gladiac wrote 8 months ago

Yes, that should work. I was even able to run signal-desktop built against electron 13 with electron 15. However signal-desktop build with 15 and running with 16 doesn't work. Minor version updates should work.

I will look into node includes soon. However it still downloads electron headers from the web. Maybe we can package them too.


Andreas Schneider's avatar

gladiac wrote 8 months ago

If I do export npm_config_nodedir=/usr/include/node16

node-gyp doesn't find the header:

make: Entering directory '/tmp/signal-desktop-1Tah1oUK/Signal-Desktop-5.29.0/node_modules/fs-xattr/build'
  CC(target) Release/obj.target/xattr/src/async.o
In file included from ../src/async.c:6:
../src/error.h:5:10: fatal error: node_api.h: No such file or directory
    5 | #include <node_api.h>
      |  


Bruno Pitrus's avatar

dziobian wrote 8 months ago

The environment variable seems to not work, you need to use --prefix=…. See how i did it in my spec for bitwarden


Andreas Schneider's avatar

gladiac wrote 8 months ago

That's just a workaround. I think right fix is that the common.gypi sets the include path correctly.


Jos Poortvliet's avatar

jos_poortvliet wrote 8 months ago

I also see the remove-heif support patch, that's uncool, I'll miss out on lots of dog and food pictures!

Seriously, anything that can be done to have working heif support? As disabling that means 99% of the pics I get don't show :D Or does it work and does this patch do something else... Sorry, just curious I guess.


Andreas Schneider's avatar

gladiac wrote 8 months ago

Tell your friends to use royalty free image formats.


P's avatar

Ceaus wrote 7 months ago

Thank you for your dedication and hard work! This is so much appreciated!!!


Andrew Travneff's avatar

qux wrote 6 days ago

Hi Not sure if I'm writing to the right place, but I don't see a button to create requests here. Seems like there is no network:im:signal/signal-desktop build for Fedora 37 beta. Is it true?


Bruno Pitrus's avatar

dziobian wrote 6 days ago

Electron is built in devel:languages:nodejs. I will ping the admins of that project to enable builds, we can start building signal then.

openSUSE Build Service is sponsored by