diff options
author | Giovanni Santini | 2020-11-15 22:39:18 +0100 |
---|---|---|
committer | Giovanni Santini | 2020-11-15 22:39:18 +0100 |
commit | 2337a8a5ed7ddaefc2834ab41ea68bad62b44572 (patch) | |
tree | 176bb4ac8a79f0799fc22d33d5064745b168e04e | |
parent | 91dbef76ce80f237191f5652ab17a289536c6bea (diff) | |
download | aur-2337a8a5ed7ddaefc2834ab41ea68bad62b44572.tar.gz |
upgpkg: franz 5.5.0-4
- Using Electron 9, which is not the official one but still the last one
I got working thanks to @yuyichaoi & working with the stable, not-beta
version of Franz
- Preparation steps have been reorganized and got better comments.
- The package is version-locked against the build-time `electron9`
package
-> when it should be upgraded, it will fail and people will properly
complain about it ;)
- The `franz.sh` script is generated from `franz.sh.in`
-> switching between Electron packages is now easy.
- Added `python2` as `makedepends` for `node-sass`.
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | PKGBUILD | 58 | ||||
-rw-r--r-- | franz.sh | 3 | ||||
-rw-r--r-- | franz.sh.in | 3 |
4 files changed, 42 insertions, 32 deletions
@@ -1,7 +1,7 @@ pkgbase = franz pkgdesc = Free messaging app for services like WhatsApp, Slack, Messenger and many more. pkgver = 5.5.0 - pkgrel = 3 + pkgrel = 4 epoch = 1 url = https://meetfranz.com arch = x86_64 @@ -11,15 +11,17 @@ pkgbase = franz makedepends = git makedepends = npm makedepends = python - depends = electron + makedepends = python2 + depends = electron9 source = git+https://github.com/meetfranz/franz#tag=v5.5.0 source = franz.desktop - source = franz.sh + source = franz.sh.in source = electron-9.patch::https://github.com/archlinuxcn/repo/raw/eb2e113ff042ef5353450c0ec4f4f621689a23d7/archlinuxcn/franz/0001-.patch sha512sums = SKIP sha512sums = 049c4bf2e0f362f892e8eef28dd18a6c321251c686a9c9e49e4abfb778057de2fc68b95b4ff7bb8030a828a48b58554a56b810aba078c220cb01d5837083992e - sha512sums = 4bf3c692b216909afa98eae2d4e29106b8a53ede43ea12745b86517057af845a34c7e87aaa5024c29ce7cd3440d04cfd0dc881db8e35f85d1428de26db326585 + sha512sums = 7ccf058421b173830493f35417d204e3a735fc20f801283dad3f658abeb484f6244bc535634c2f02ab2cb8e35a0e1a92dd3d06be5943e121ddccbbee7ad74b48 sha512sums = 463b07949c789d2be7568b93e0c7f79ab5fc753aef4c869c40ba29444ba10c12db4ad1bc0353d8b73a51619bcd8666ed3c72c070cb24b05087604e04791bda52 pkgname = franz + depends = electron9= @@ -5,7 +5,7 @@ pkgname=franz #pkgver=${_pkgver//-/_} # Leaving it here for possible dev/beta package :) pkgver=5.5.0 -pkgrel=3 +pkgrel=4 # Due to the previous "_beta" naming epoch=1 pkgdesc='Free messaging app for services like WhatsApp, Slack, Messenger and many more.' @@ -13,25 +13,31 @@ arch=(x86_64 i686) url='https://meetfranz.com' license=(Apache) # Allow to easily switch between Electron versions. -# Expected one is 'electron' (Electron 9). May change soon. -# Remember to replace it also in `franz.sh`. -_electron='electron' +# Expected one is 'electron9' (Electron 9). May change soon. +# This is automatically replaced in `franz.sh` with the package name, as +# the executable matches the package name (as of 2020-11-15). +_electron='electron9' depends=($_electron) -makedepends=(expac git npm python) +makedepends=(expac git npm python python2) source=("git+https://github.com/meetfranz/$pkgname#tag=v$pkgver" - 'franz.desktop' - 'franz.sh' + franz.desktop + franz.sh.in 'electron-9.patch::https://github.com/archlinuxcn/repo/raw/eb2e113ff042ef5353450c0ec4f4f621689a23d7/archlinuxcn/franz/0001-.patch') sha512sums=('SKIP' '049c4bf2e0f362f892e8eef28dd18a6c321251c686a9c9e49e4abfb778057de2fc68b95b4ff7bb8030a828a48b58554a56b810aba078c220cb01d5837083992e' - '4bf3c692b216909afa98eae2d4e29106b8a53ede43ea12745b86517057af845a34c7e87aaa5024c29ce7cd3440d04cfd0dc881db8e35f85d1428de26db326585' + '7ccf058421b173830493f35417d204e3a735fc20f801283dad3f658abeb484f6244bc535634c2f02ab2cb8e35a0e1a92dd3d06be5943e121ddccbbee7ad74b48' '463b07949c789d2be7568b93e0c7f79ab5fc753aef4c869c40ba29444ba10c12db4ad1bc0353d8b73a51619bcd8666ed3c72c070cb24b05087604e04791bda52') prepare() { # Small patching - cd $pkgname + cd "$pkgname" + + # Adjust the electron version to use when building + echo "--> Using Electron package: $_electron" + electron_version="`expac %v $_electron | cut -d'-' -f1`" + sed -i -E "s|(\s+\"electron\":).*,|\1 \"$electron_version\",|" package.json - # Thanks @yuyichao for this! :) + # Thanks @yuyichao from archlinuxcn for this! :) patch -Np1 -i "$srcdir/electron-9.patch" # Prevent franz from being launched in dev mode @@ -42,26 +48,22 @@ prepare() { "s|import isDevMode from 'electron-is-dev'|export const isDevMode = false|g" \ src/index.js - # Adjust the electron version to use when building - electron_version="`expac %v $_electron | cut -d'-' -f1`" - sed -i "s|\(\s\+\"electron\":\).*,|\1 \"$electron_version\",|" package.json + # Fix tricky dependencies versions before-hand + node_sass_version="4.14.1" + sed -i -E "s|(\s+\"node-sass\":).*,|\1 \"$node_sass_version\",|" package.json # Better configuration for npm cache and calling installed binaries - export npm_config_cache="$srcdir"/npm_cache - - # Install tricky dependencies before-hand - node_sass_version="4.14.1" - sed -i "s|\(\s\+\"node-sass\":\).*,|\1 \"$node_sass_version\",|" package.json + export npm_config_cache="$srcdir/npm_cache" # Prepare the packages for building npx lerna bootstrap } build() { - cd $pkgname + cd "$pkgname" # Better configuration for npm cache and calling installed binaries - export npm_config_cache="$srcdir"/npm_cache + export npm_config_cache="$srcdir/npm_cache" # Actually build the package npx gulp build @@ -71,14 +73,20 @@ build() { package() { cd $pkgname + # Point the proper Electron package version, so that people can complain when it's updated. + # This is for extra safety & reminds me of upgrading the package. + electron_version="`expac %v $_electron | cut -d'-' -f1`" + depends=("${_electron}=${electron_version}") + # Install the .asar files - install -dm 755 "$pkgdir"/usr/lib/$pkgname - cp -r --no-preserve=ownership --preserve=mode out/linux-unpacked/resources "$pkgdir"/usr/lib/$pkgname/ + install -dm 755 "$pkgdir/usr/lib/$pkgname" + cp -r --no-preserve=ownership --preserve=mode out/linux-unpacked/resources "$pkgdir/usr/lib/$pkgname/" # Install icon - install -Dm 644 "$srcdir"/franz.desktop "$pkgdir"/usr/share/applications/franz.desktop - install -Dm 644 build-helpers/images/icon.png "$pkgdir"/usr/share/icons/franz.png + install -Dm 644 "$srcdir/franz.desktop" "$pkgdir/usr/share/applications/franz.desktop" + install -Dm 644 build-helpers/images/icon.png "$pkgdir/usr/share/icons/franz.png" # Install run script - install -Dm 755 "$srcdir"/franz.sh "$pkgdir"/usr/bin/franz + sed "s|@ELECTRON@|$_electron|" "$srcdir/franz.sh.in" > franz.sh + install -Dm 755 franz.sh "$pkgdir/usr/bin/franz" } diff --git a/franz.sh b/franz.sh deleted file mode 100644 index 4a41eefedd79..000000000000 --- a/franz.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -exec electron /usr/lib/franz/resources/app.asar "$@" diff --git a/franz.sh.in b/franz.sh.in new file mode 100644 index 000000000000..a9728ff27348 --- /dev/null +++ b/franz.sh.in @@ -0,0 +1,3 @@ +#!/bin/sh + +exec @ELECTRON@ /usr/lib/franz/resources/app.asar "$@" |