Package Details: signal-desktop-beta 7.37.0beta1-3

Git Clone URL: https://aur.archlinux.org/signal-desktop-beta.git (read-only, click to copy)
Package Base: signal-desktop-beta
Description: Signal Private Messenger for Linux - Beta version.
Upstream URL: https://signal.org
Keywords: secure-messenger signal signal-desktop
Licenses: GPL3
Conflicts: signal-desktop-beta-bin
Submitter: Edu4rdSHL
Maintainer: Edu4rdSHL
Last Packager: Edu4rdSHL
Votes: 16
Popularity: 0.43
First Submitted: 2020-08-17 19:09 (UTC)
Last Updated: 2024-12-12 17:09 (UTC)

Latest Comments

« First ‹ Previous 1 .. 3 4 5 6 7 8 9 10 11 12 13 14 Next › Last »

hotschi commented on 2023-01-11 06:32 (UTC)

Hi! Thanks for the quick reply! I already tried to build the package again with your updated PKBUILD. But unfortunately I still get the same error message. Maybe it has something to do with a previously occurring exception raised by the electron builder?

[4/5] Building fresh packages...
[5/5] Cleaning modules...
$ yarn build:acknowledgments && patch-package && yarn electron:install-app-deps && rimraf node_modules/dtrace-provider
yarn run v1.22.19
$ node scripts/generate-acknowledgments.js
Done in 0.27s.
patch-package 6.4.7
Applying patches...
@formatjs/intl@2.4.1 ✔
@types/backbone@1.4.5 ✔
@types/blueimp-load-image@5.14.1 ✔
@types/fabric@4.5.3 ✔
@types/jest@28.1.1 ✔
@types/node-fetch@2.6.2 ✔
app-builder-lib@23.0.8 ✔
backbone@1.4.0 ✔
casual@1.6.2 ✔
electron-util@0.13.1 ✔
fabric@4.6.0 ✔
got@11.8.5 ✔
mac-screen-capture-permissions@2.0.0 ✔
node-fetch@2.6.7 ✔
protobufjs@6.11.3 ✔
react-blurhash@0.1.2 ✔
react-contextmenu@2.11.0 ✔
react-textarea-autosize@8.3.4 ✔
websocket@1.0.28 ✔
yarn run v1.22.19
$ electron-builder install-app-deps
  • electron-builder  version=23.0.8
  • loaded configuration  file=package.json ("build" field)
  • rebuilding native dependencies  dependencies=@signalapp/better-sqlite3@8.0.3, fs-xattr@0.3.0, mac-screen-capture-permissions@2.0.0, websocket@1.0.28 platform=linux arch=arm64
  • install prebuilt binary  name=mac-screen-capture-permissions version=2.0.0 platform=linux arch=arm64 napi=
  • build native dependency from sources  name=mac-screen-capture-permissions
                                          version=2.0.0
                                          platform=linux
                                          arch=arm64
                                          napi=
                                          reason=prebuild-install failed with error (run with env DEBUG=electron-builder to get more information)
                                          error=/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/node-abi/index.js:30
      throw new Error('Could not detect abi for version ' + target + ' and runtime ' + runtime + '.  Updating "node-abi" might help solve this issue if it is a new release of ' + runtime)
      ^

    Error: Could not detect abi for version 21.3.3 and runtime electron.  Updating "node-abi" might help solve this issue if it is a new release of electron
        at getAbi (/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/node-abi/index.js:30:9)
        at module.exports (/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/prebuild-install/rc.js:53:57)
        at Object.<anonymous> (/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/prebuild-install/bin.js:8:25)
        at Module._compile (node:internal/modules/cjs/loader:1239:14)
        at Module._extensions..js (node:internal/modules/cjs/loader:1293:10)
        at Module.load (node:internal/modules/cjs/loader:1096:32)
        at Module._load (node:internal/modules/cjs/loader:935:12)
        at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:84:12)
        at node:internal/main/run_main_module:23:47

    Node.js v19.4.0

  • rebuilding native dependency  name=fs-xattr version=0.3.0
  • rebuilding native dependency  name=@signalapp/better-sqlite3 version=8.0.3
  • rebuilding native dependency  name=mac-screen-capture-permissions version=2.0.0
  • rebuilding native dependency  name=websocket version=1.0.28

The error message I get is still the same as jnnk posted, namely:

[build:typed-scss] [GENERATED TYPES] /home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/sticker-creator/elements/Typography.scss.d.ts
[build:typed-scss] [GENERATED TYPES] /home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/sticker-creator/elements/Toast.scss.d.ts
[build:webpack   ] $ run-p build:webpack:sticker-creator "build:esbuild --prod"
[build:webpack   ] $ node scripts/esbuild.js --prod
[build:webpack   ] $ cross-env NODE_ENV=production webpack
[build:webpack   ] 
[build:webpack   ]   ts/groups.js                                           174.2kb
[build:webpack   ]   ts/models/conversations.js                             144.0kb
[build:webpack   ]   ts/sql/Server.js                                       123.1kb
[build:webpack   ]   ts/background.js                                       111.7kb
[build:webpack   ]   ts/state/ducks/conversations.js                        105.0kb
[build:webpack   ]   ts/models/messages.js                                  103.8kb
[build:webpack   ]   ts/textsecure/MessageReceiver.js                        87.5kb
[build:webpack   ]   ts/test-electron/state/ducks/conversations_test.js      84.0kb
[build:webpack   ]   ts/test-electron/state/ducks/calling_test.js            71.4kb
[build:webpack   ]   ts/test-node/sql_migrations_test.js                     71.0kb
[build:webpack   ]   ts/components/conversation/TimelineMessage.stories.js   67.0kb
[build:webpack   ]   app/main.js                                             64.7kb
[build:webpack   ]   ts/components/conversation/Message.js                   63.8kb
[build:webpack   ]   ts/services/calling.js                                  60.8kb
[build:webpack   ]   ts/textsecure/WebAPI.js                                 60.5kb
[build:webpack   ]   ts/textsecure/SendMessage.js                            59.4kb
[build:webpack   ]   ts/SignalProtocolStore.js                               55.3kb
[build:webpack   ]   ts/services/storage.js                                  52.8kb
[build:webpack   ]   ts/test-both/state/selectors/conversations_test.js      52.5kb
[build:webpack   ]   ts/test-electron/SignalProtocolStore_test.js            52.5kb
[build:webpack   ]   ...and 1661 more output files...
[build:webpack   ] 
[build:webpack   ] 
[build:webpack   ]   preload.bundle.js  8.9mb ⚠
[build:webpack   ] 
[build:webpack   ] Error: error:0308010C:digital envelope routines::unsupported
[build:webpack   ]     at new Hash (node:internal/crypto/hash:71:19)
[build:webpack   ]     at Object.createHash (node:crypto:140:10)
[build:webpack   ]     at BulkUpdateDecorator.hashFactory (/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/webpack/lib/util/createHash.js:144:18)
[build:webpack   ]     at BulkUpdateDecorator.update (/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/webpack/lib/util/createHash.js:46:50)
[build:webpack   ]     at RawSource.updateHash (/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/webpack/node_modules/webpack-sources/lib/RawSource.js:64:8)
[build:webpack   ]     at NormalModule._initBuildHash (/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/webpack/lib/NormalModule.js:838:17)
[build:webpack   ]     at handleParseResult (/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/webpack/lib/NormalModule.js:903:10)
[build:webpack   ]     at /home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/webpack/lib/NormalModule.js:994:4
[build:webpack   ]     at processResult (/home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/webpack/lib/NormalModule.js:717:11)
[build:webpack   ]     at /home/hansi/.cache/paru/clone/signal-desktop-beta/src/Signal-Desktop-6.2.0-beta.3/node_modules/webpack/lib/NormalModule.js:777:5
[build:webpack   ] error Command failed with exit code 1.
[build:webpack   ] info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
[build:webpack   ] ERROR: "build:webpack:sticker-creator" exited with 1.
[build:webpack   ] error Command failed with exit code 1.
[build:webpack   ] info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
ERROR: "build:webpack" exited with 1.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
==> FEHLER: Ein Fehler geschah in build().
    Breche ab...
Fehler: kann ‚signal-desktop-beta-6.2.0beta3-2‘ nicht bauen: 
Fehler: kann Pakete nicht bauen: signal-desktop-beta-6.2.0beta3-2

Am I missing some package/dependency? Or am I doing something really wrong here?

Edu4rdSHL commented on 2023-01-10 22:37 (UTC) (edited on 2023-01-10 22:39 (UTC) by Edu4rdSHL)

Hey guys, I appreciate your patience with this, I was in vacations/holidays and haven't had time to check it. Should build fine again. Also, jnnk error is not related to the patch so you shouldn't be getting the same error, hotschi.

Happy new year to everyone.

hotschi commented on 2023-01-10 17:06 (UTC)

Hi all!

I tried to build this package and got the exact same problem as jnnk reported. I tried to build it with paru -S signal-desktop-beta as well as with paru -S signal-desktop-beta --chroot in order to use a clean chroot environment as Edu4rdSHL mentioned. However, I always get the same error message as jnnk already posted on 2022-12-12.

Am I doing something wrong here or is the upstream code currently not buildable?

bradpitcher commented on 2023-01-02 16:24 (UTC) (edited on 2023-01-02 16:26 (UTC) by bradpitcher)

Looks like the patch is no longer needed. When I went to build it failed to apply, looking at the source it looks like upstream has made the change in https://github.com/signalapp/Signal-Desktop/pull/5753

bradpitcher commented on 2023-01-02 15:59 (UTC)

@Edu4rdSHL can you please apply the changes suggested by @mkurz to get this supported on aarch64? Here is the complete diff

diff --git a/.SRCINFO b/.SRCINFO
index a27a075..a752f5f 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -4,6 +4,7 @@ pkgbase = signal-desktop-beta
    pkgrel = 1
    url = https://signal.org
    arch = x86_64
+   arch = aarch64
    license = GPL3
    makedepends = yarn
    makedepends = git
@@ -13,6 +14,7 @@ pkgbase = signal-desktop-beta
    makedepends = git-lfs
    makedepends = libxcrypt-compat
    makedepends = openjpeg2
+   makedepends = fpm
    depends = gtk3
    depends = libvips
    depends = libxss
diff --git a/PKGBUILD b/PKGBUILD
index addb860..fd9aa20 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,11 +12,11 @@ pkgrel=1
 pkgdesc='Signal Private Messenger for Linux - Beta version.'
 license=('GPL3')
 conflicts=('signal-desktop-beta-bin')
-arch=('x86_64')
+arch=('x86_64' 'aarch64')
 url="https://signal.org"
 depends=('gtk3' 'libvips' 'libxss' 'hicolor-icon-theme')
 # We need libxcrypt-compat for it to build: https://github.com/electron-userland/electron-builder-binaries/issues/47
-makedepends=('yarn' 'git' 'nodejs' 'npm' 'python' 'git-lfs' 'libxcrypt-compat' 'openjpeg2')
+makedepends=('yarn' 'git' 'nodejs' 'npm' 'python' 'git-lfs' 'libxcrypt-compat' 'openjpeg2' 'fpm')
 source=(
   "${pkgname}-${pkgver}.tar.gz::https://github.com/signalapp/${_pkgname}/archive/v${pkgver//beta*}-beta.${pkgver##*beta}.tar.gz"
   "${pkgname}.desktop"
@@ -50,14 +50,14 @@ build() {

   yarn generate
   yarn prepare-beta-build
-  yarn build
+  USE_SYSTEM_FPM=1 yarn build
 }

 package() {
   cd "${_pkgname}-${pkgver//beta*}-beta.${pkgver##*beta}"

   install -d "${pkgdir}/usr/"{lib,bin}
-  cp -a release/linux-unpacked "${pkgdir}/usr/lib/${pkgname}"
+  cp -a release/linux-*unpacked "${pkgdir}/usr/lib/${pkgname}"
   ln -s "/usr/lib/${pkgname}/${pkgname}" "${pkgdir}/usr/bin/"

   chmod u+s "${pkgdir}/usr/lib/${pkgname}/chrome-sandbox"

Edu4rdSHL commented on 2022-12-13 03:23 (UTC)

jnnk, build the package in a clean chroot environment, that issue is likely cause by residual artifacts of previous failed builds.

Edu4rdSHL commented on 2022-12-13 03:23 (UTC)

jnnk, build the package in a clean chroot environment, that issue is likely cause by residual artifacts of previous failed builds.

<deleted-account> commented on 2022-12-12 23:39 (UTC)

Hey there. I'm getting the following error when trying to build this package. The package fails to build for the last 3 releases or so, every time I tried it fails on build:webpack:sticker-creator:

[build:webpack   ]   preload.bundle.js  8.8mb ⚠️
[build:webpack   ] 
[build:webpack   ] Error: error:0308010C:digital envelope routines::unsupported
[build:webpack   ]     at new Hash (node:internal/crypto/hash:71:19)
[build:webpack   ]     at Object.createHash (node:crypto:130:10)
[build:webpack   ]     at BulkUpdateDecorator.hashFactory (/tmp/makepkg/signal-desktop-beta/src/Signal-Desktop-6.1.0-beta.1/node_modules/webpack/lib/util/createHash.js:144:18)
[build:webpack   ]     at BulkUpdateDecorator.update (/tmp/makepkg/signal-desktop-beta/src/Signal-Desktop-6.1.0-beta.1/node_modules/webpack/lib/util/createHash.js:46:50)
[build:webpack   ]     at RawSource.updateHash (/tmp/makepkg/signal-desktop-beta/src/Signal-Desktop-6.1.0-beta.1/node_modules/webpack/node_modules/webpack-sources/lib/RawSource.js:64:8)
[build:webpack   ]     at NormalModule._initBuildHash (/tmp/makepkg/signal-desktop-beta/src/Signal-Desktop-6.1.0-beta.1/node_modules/webpack/lib/NormalModule.js:838:17)
[build:webpack   ]     at handleParseResult (/tmp/makepkg/signal-desktop-beta/src/Signal-Desktop-6.1.0-beta.1/node_modules/webpack/lib/NormalModule.js:903:10)
[build:webpack   ]     at /tmp/makepkg/signal-desktop-beta/src/Signal-Desktop-6.1.0-beta.1/node_modules/webpack/lib/NormalModule.js:994:4
[build:webpack   ]     at processResult (/tmp/makepkg/signal-desktop-beta/src/Signal-Desktop-6.1.0-beta.1/node_modules/webpack/lib/NormalModule.js:717:11)
[build:webpack   ]     at /tmp/makepkg/signal-desktop-beta/src/Signal-Desktop-6.1.0-beta.1/node_modules/webpack/lib/NormalModule.js:777:5
[build:webpack   ] error Command failed with exit code 1.
[build:webpack   ] info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
[build:webpack   ] ERROR: "build:webpack:sticker-creator" exited with 1.
[build:webpack   ] error Command failed with exit code 1.
[build:webpack   ] info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
ERROR: "build:webpack" exited with 1.

Any ideas what might go wrong/ I'm doing wrong?

bradpitcher commented on 2022-09-27 15:05 (UTC)

Thanks @mkurz that works for me, though I used this simpler change for the folder name

-  cp -a release/linux-unpacked "${pkgdir}/usr/lib/${pkgname}"
+  cp -a release/linux-*unpacked "${pkgdir}/usr/lib/${pkgname}"

mkurz commented on 2022-09-02 10:14 (UTC)

Below you can find the patch to make this package compatible with arm / aarch64. Just two fixes were necessary, I now can run signal-desktop-beta successfully now on my Macbook Pro M1 with Asahi Linux, using the upstream sources!

A guy from the Signal community fixed everything that was necessary to make Signal run on arm. Based on his comment https://github.com/dennisameling/Signal-Desktop/issues/1#issuecomment-1046097807 (also see the next comment below where he successfully provided a deb package) these are the things that needed to be changed:

  1. Make use of fpm that is provided by your system, otherwise yarn will use a fpm version that is not compatible with arm (it actually displays x86 somewhere even when using aarch64). We can easily fix that by depending on https://aur.archlinux.org/packages/fpm and tell yarn to use that one by setting the env var USE_SYSTEM_FPM=true. Details can be found in the comment I linked above and here: https://github.com/electron-userland/electron-builder/issues/3901#issuecomment-499121694

  2. Depending on the architecture, when running arm, the release folder is called linux-arm64-unpacked, not linux-unpacked. I made a simple condition to fix that.

That is all, with this patch applied I was able to build and install on Asahi Linux, and Signal is working great!

Would be nice if you could apply my patch so we have "official" arm/aarch64 support for Signal. Thanks!

Here is the patch (as you can see it's no magic and fully backwards compatible for x86):

diff --git a/.SRCINFO b/.SRCINFO
index bfb5580..9fd6139 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -4,6 +4,7 @@ pkgbase = signal-desktop-beta
    pkgrel = 1
    url = https://signal.org
    arch = x86_64
+   arch = aarch64
    license = GPL3
    makedepends = yarn
    makedepends = git
@@ -13,6 +14,7 @@ pkgbase = signal-desktop-beta
    makedepends = git-lfs
    makedepends = libxcrypt-compat
    makedepends = openjpeg2
+   makedepends = fpm
    depends = gtk3
    depends = libvips
    depends = libxss
diff --git a/PKGBUILD b/PKGBUILD
index 4bfc890..11fd3ae 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,11 +12,11 @@ pkgrel=1
 pkgdesc='Signal Private Messenger for Linux - Beta version.'
 license=('GPL3')
 conflicts=('signal-desktop-beta-bin')
-arch=('x86_64')
+arch=('x86_64' 'aarch64')
 url="https://signal.org"
 depends=('gtk3' 'libvips' 'libxss' 'hicolor-icon-theme')
 # We need libxcrypt-compat for it to build: https://github.com/electron-userland/electron-builder-binaries/issues/47
-makedepends=('yarn' 'git' 'nodejs-lts-gallium' 'npm' 'python' 'git-lfs' 'libxcrypt-compat' 'openjpeg2')
+makedepends=('yarn' 'git' 'nodejs-lts-gallium' 'npm' 'python' 'git-lfs' 'libxcrypt-compat' 'openjpeg2' 'fpm')
 source=(
   "${pkgname}-${pkgver}.tar.gz::https://github.com/signalapp/${_pkgname}/archive/v${pkgver//beta*}-beta.${pkgver##*beta}.tar.gz"
   "${pkgname}.desktop"
@@ -47,14 +47,18 @@ build() {

   yarn generate
   yarn prepare-beta-build
-  yarn build
+  USE_SYSTEM_FPM=true yarn build
 }

 package() {
   cd "${_pkgname}-${pkgver//beta*}-beta.${pkgver##*beta}"

   install -d "${pkgdir}/usr/"{lib,bin}
-  cp -a release/linux-unpacked "${pkgdir}/usr/lib/${pkgname}"
+  case "${CARCH}" in
+   "aarch64") folder="linux-arm64-unpacked" ;;
+   *) folder="linux-unpacked" ;;
+  esac
+  cp -a release/${folder} "${pkgdir}/usr/lib/${pkgname}"
   ln -s "/usr/lib/${pkgname}/${pkgname}" "${pkgdir}/usr/bin/"

   chmod u+s "${pkgdir}/usr/lib/${pkgname}/chrome-sandbox"