Package Details: signal-desktop-beta 7.8.0beta1-1

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: 15
Popularity: 0.21
First Submitted: 2020-08-17 19:09 (UTC)
Last Updated: 2024-05-02 00:18 (UTC)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 .. 10 Next › Last »

mkurz commented on 2023-01-11 17:16 (UTC) (edited on 2023-01-11 17:21 (UTC) by mkurz)

@Edu4rdSHL No problem, we can install the fpm dependency when running on aarch64 only, using makedepends_aarch64. Also it's possible to set the USE_SYSTEM_FPM env variable to true only when running on aarch64 also. So for x86_64 absolutely nothing changes. Please give the updated patch below a shot, like run it on your x86_64 system, you will see nothing changes.

@bradpitcher you can also try this patch. Before remove fpm from you system (with sudo pacman -Rn fpm) and you will see when running the new PKGBUILD file that it will complain and after installing it you again will be able to build signal.

diff --git a/.SRCINFO b/.SRCINFO
index 9730d03..0d4c5dc 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -4,6 +4,7 @@ pkgbase = signal-desktop-beta
    pkgrel = 2
    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_aarch64 = fpm
    depends = gtk3
    depends = libvips
    depends = libxss
diff --git a/PKGBUILD b/PKGBUILD
index 9070a31..2810031 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,11 +12,12 @@ pkgrel=2
 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_aarch64=('fpm')
 source=(
   "${pkgname}-${pkgver}.tar.gz::https://github.com/signalapp/${_pkgname}/archive/v${pkgver//beta*}-beta.${pkgver##*beta}.tar.gz"
   "${pkgname}.desktop"
@@ -45,14 +46,14 @@ build() {

   yarn generate
   yarn prepare-beta-build
-  yarn build
+  USE_SYSTEM_FPM=$([ $(uname -m) == "aarch64" ] && echo true) bash -c '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 2023-01-11 15:40 (UTC) (edited on 2023-01-11 15:40 (UTC) by Edu4rdSHL)

Has anyone else validated that it will work for x86_64 with the proposed patch? Honestly, I'm a bit skeptical about adding fpm as dependency.

bradpitcher commented on 2023-01-11 15:20 (UTC)

@mkurz Fair enough! Yes, as long as it gets applied I'm happy. I've also been using this in Asahi for several months and a couple different versions and it's working perfectly.

mkurz commented on 2023-01-11 15:13 (UTC)

@bradpitcher yeah sure, that's a bit shorter, however mine is "safe" in case there would be other folders name similar. However in reality we could use your line.

@Edu4rdSHL would be really nice to consider applying my patch (with the change from bradpitcher if you like) so we don't need to maintain our own patches... Thanks! I do use this since Summer and it worked everytime upgrading your package.

bradpitcher commented on 2023-01-11 15:04 (UTC)

Hey @mkurz I posted a nearly identical patch a few days ago, but the change in package() is a bit simpler

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

and that's forward compatible with any different folder names electron might use with other arches

mkurz commented on 2023-01-11 11:44 (UTC)

@hotschi @Edu4rdSHL I am the somebody from GitHub who mentioned that I am able to build this package for aarch64 (since many months actually). And I still can with the latest release (6.2.0-beta.3). Below is the patch you need to use... @Edu4rdSHL maybe you can finally integrate that into this package? The change is very subtle, so instead of using outdated fpm that comes with electron builder, we pull in the current fpm version and use that to build the package. Easy. You just need to apply my patch with git apply /path/where/you/saved/the/cool.patch

diff --git a/.SRCINFO b/.SRCINFO
index 9730d03..7bfe910 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -4,6 +4,7 @@ pkgbase = signal-desktop-beta
        pkgrel = 2
        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 9070a31..e5dbb52 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,11 +12,11 @@ pkgrel=2
 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"
@@ -45,14 +45,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"

hotschi commented on 2023-01-11 07:58 (UTC)

Oh sorry for the inconvenience, I didn't know that! I ignored the warning/error of the PKGBUILD since somebody mentioned in an issue of the signal repo on github (https://github.com/signalapp/Signal-Desktop/issues/6063#issuecomment-1235329786), that he was able to build this package for aarch64.

Edu4rdSHL commented on 2023-01-11 07:10 (UTC)

The package only supports x86_64 at the moment as you can see in the PKGBUILD.

hotschi commented on 2023-01-11 07:07 (UTC) (edited on 2023-01-11 08:00 (UTC) by hotschi)

I am using the default Asahi-Linux distribution, which consists of a modified kernel but a standard aarch64 Archlinux as far as I know.

I stumbled across this package since I sread somewhere that this will work on aarch64 Archlinux.