blob: c6d81a07a599f9dc7e52e076f5f4531f9a6b4755 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
# Maintainer: Cedric Roijakkers <cedric [the at sign goes here] roijakkers [the dot sign goes here] be>.
# Inspired from the PKGBUILD for ferdi-bin.
_pkgname='ferdium'
pkgname="$_pkgname-bin"
_electron='electron29'
_electronpackage='electron29'
pkgverorg='6.7.1'
pkgver='6.7.1'
pkgrel='1'
pkgdesc='A messaging browser that allows you to combine your favorite messaging services into one application (binary release).'
arch=('x86_64' 'armv7l' 'aarch64')
url="https://$_pkgname.org"
license=('Apache')
depends=('nss' 'atk' 'at-spi2-atk' 'libcups' 'libdrm' 'gdk-pixbuf2' 'gtk3' 'alsa-lib' 'c-ares' 'ffmpeg' 'libevent' 'libxkbfile' 'libxslt' 'minizip' 're2' 'snappy' "$_electronpackage")
makedepends=('asar')
options=(!strip)
provides=(
'ferdium'
)
conflicts=(
'ferdium'
'ferdium-nightly-bin'
'ferdium-nightly'
'ferdium-beta-bin'
'ferdium-beta'
'ferdium-git'
'ferdium-electron'
)
_releaseurl="https://github.com/$_pkgname/$_pkgname-app/releases/download/v$pkgverorg"
source_x86_64=("$pkgname-$pkgverorg-$pkgrel-amd64.zip::${_releaseurl}/Ferdium-linux-${pkgverorg}-amd64.deb")
source_armv7l=("$pkgname-$pkgverorg-$pkgrel-armv7l.zip::${_releaseurl}/Ferdium-linux-${pkgverorg}-armv7l.deb")
source_aarch64=("$pkgname-$pkgverorg-$pkgrel-arm64.zip::${_releaseurl}/Ferdium-linux-${pkgverorg}-arm64.deb")
sha512sums_x86_64=('7bcba5bf20d85c45cb3e2409e788b77aac39b24b9f66f1c5d9c02b99727a193897db389db25ea02d763490cdd36592a5d92bcc714993619b9b0115bd2e14760e')
sha512sums_armv7l=('28a2968c5f4d56b2f346bd5eba85da6184748eed44123665541ba7166643e6c7fb18274f78fff87ed1907209b53ade2f9eda78e3d887c4ac88e3438ae2a10e63')
sha512sums_aarch64=('3eb82e35463e088cec1a4e76df2ff788e5ec5aea9d3199d8ad2f29e8a21e207de14d6e1f0a428d435167c550df182e7b21972aa0fbc1558a76441c9b467dd71d')
_sourcedirectory="$pkgname-$pkgverorg-$pkgrel"
prepare() {
cd "$srcdir/"
mkdir -p "$_sourcedirectory/"
bsdtar -xf 'data.tar.xz' -C "$_sourcedirectory/"
cd "$srcdir/$_sourcedirectory/"
sed -E -i -e "s|Exec=/opt/${_pkgname^}/$_pkgname|Exec=/usr/bin/$_pkgname|" "usr/share/applications/$_pkgname.desktop"
}
package() {
cd "$srcdir/$_sourcedirectory/"
# Create a shell script to start Ferdium with Electron
install -d -m755 "${pkgdir}/usr/bin/"
cat > "$pkgdir/usr/bin/$_pkgname" <<EOF
#!/bin/sh
ELECTRON_IS_DEV=0 exec /usr/bin/$_electron /opt/$pkgname/ "\$@"
EOF
chmod +x "$pkgdir/usr/bin/ferdium"
# Extract the asar file from the downloaded package to the system
install -d -m755 "${pkgdir}/opt/$pkgname/"
asar e "opt/${_pkgname^}/resources/app.asar" "${pkgdir}/opt/$pkgname/"
# Install the .desktop file from the downloaded package
install -Dm644 "usr/share/applications/$_pkgname.desktop" "$pkgdir/usr/share/applications/$_pkgname.desktop"
for _size in 16 24 32 48 64 96 128 256 512 1024; do
install -Dm644 "usr/share/icons/hicolor/${_size}x${_size}/apps/$_pkgname.png" "$pkgdir/usr/share/icons/hicolor/${_size}x${_size}/apps/$_pkgname.png"
done
# Add an extra desktop file to run Ferdium with Wayland
cat << EOF > "$pkgdir/usr/share/applications/$_pkgname-wayland.desktop"
[Desktop Entry]
Name=${_pkgname^} - Wayland
Exec=/usr/bin/$_pkgname --enable-features=WaylandWindowDecorations --ozone-platform-hint=wayland %U
Terminal=falseparu
Type=Application
Icon=ferdium
StartupWMClass=Ferdium
Comment=Ferdium is your messaging app / former heir to the throne of Austria-Hungary and combines chat & messaging services into one application. Ferdium currently supports Slack, WhatsApp, Gmail, Facebook Messenger, Telegram, Google Hangouts, GroupMe, Skype and many more. You can download Ferdium for free for Mac, Windows, and Linux.
MimeType=x-scheme-handler/ferdium;
Categories=Network;InstantMessaging;
EOF
install -dm755 "$pkgdir/usr/share/licenses/$pkgname/"
for _license in 'LICENSE.electron.txt' 'LICENSES.chromium.html'; do
ln -sf "/opt/$pkgname/$_license" "$pkgdir/usr/share/licenses/$pkgname/$_license"
done
}
|