# Maintainer: kpcyrd # Contributor: Jean Lucas # This package is just an adaptation of the signal-desktop package # that is in the official repos in order to provide a beta version # of signal that does not use precompiled binaries. # AUR Maintainer: Eduard Tolosa pkgname=signal-desktop-beta _pkgname=Signal-Desktop pkgver=6.33.0beta1 pkgrel=1 pkgdesc='Signal Private Messenger for Linux - Beta version.' license=('GPL3') conflicts=('signal-desktop-beta-bin') 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" "signal-desktop-wrapper.sh" ) sha512sums=('c67ea6043ced0f2b0891f91a68d191a17341190124ea744ddf5d2265995938743d071c10f1a114f8c99ffb592a6e0a270f18d7183386a42d8686f72067ec1ce9' '7b25b98de8db36af1a9da49cd214d6ced45f123f098e5665b563e462b979e67d9d570fce8fbee89776a95dc5108696da64bfbe0bd1eaf748360dfcb333483dbb' '457c1bd044f4e17810a7f1b284ca38809a0c1f8fed4bdb52184a169e2996e683c4c96c1cc86a013feb7b8833557245397decdcec01dbc82bb2b12b0d80424e25') prepare() { cd "${_pkgname}-${pkgver//beta*}-beta.${pkgver##*beta}" git lfs install # Allow higher Node versions sed 's#"node": "#&>=#' -i package.json yarn install --ignore-engines } build() { cd "${_pkgname}-${pkgver//beta*}-beta.${pkgver##*beta}" # temporary fix for openssl3 export NODE_OPTIONS=--openssl-legacy-provider yarn generate yarn prepare-beta-build USE_SYSTEM_FPM=$([ $(uname -m) == "aarch64" ] && echo true || echo false) bash -c 'yarn build:esbuild:prod && yarn build:release' } package() { cd "${_pkgname}-${pkgver//beta*}-beta.${pkgver##*beta}" install -d "${pkgdir}/usr/"{lib,bin} 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" install -Dm 644 "../${pkgname}.desktop" -t "${pkgdir}/usr/share/applications" for i in 16 24 32 48 64 128 256 512 1024; do install -Dm 644 "build/icons/png/${i}x${i}.png" \ "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${pkgname}.png" done }