blob: 8759806e77924eaf0fe9b8f99ba2a182eeb911b4 (
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
89
90
91
92
93
94
|
# Maintainer: Jonas Geiler <aur@jonasgeiler.com>
# Maintainer: SoftExpert <softexpert at gmail dot com>
pkgname=yaak-git
pkgver=2025.1.1.r0.g6a63cc2
pkgrel=1
pkgdesc='Offline and Git friendly API client for HTTP, GraphQL, WebSockets, SSE, and gRPC (Development version)'
arch=(aarch64 armv7h i686 pentium4 x86_64)
url='https://yaak.app/'
license=(MIT)
depends=(
# As reported by namcap
cairo
gcc-libs
gdk-pixbuf2
glib2
glibc
gtk3
hicolor-icon-theme
libsoup3
pango
webkit2gtk-4.1
zlib
)
makedepends=(
appmenu-gtk-module # Tauri
cargo # Rust dependencies & Tauri build
git # Sources
libappindicator-gtk3 # Tauri
librsvg # Tauri
nodejs # Custom scripts & web build
npm # Node dependencies & web build
protobuf # Yaak
)
provides=(yaak yaak-app)
conflicts=(
yaak
yaak-app-beta
yaak-appimage
yaak-bin
)
options=(
!lto # Some Rust dependencies don't support link time optimization
!strip # Stripping symbols would break the output binary
!emptydirs # Remove empty directories from package because why not
)
source=(
"yaak::git+https://github.com/mountain-loop/yaak.git"
"yaak-plugins::git+https://github.com/mountain-loop/plugins.git"
)
b2sums=('SKIP'
'SKIP')
pkgver() {
cd "${srcdir}/yaak/"
# The tags don't belong to a branch so we have to get the latest tag across all branches
git describe --long --tags --abbrev=7 "$(git rev-list --tags --max-count=1)" |
sed -e 's/^v//' -e 's/-\([[:digit:]]\+\)-\(g[[:alnum:]]\{7\}\)$/.r\1.\2/' -e 's/-/./g'
}
_semver() {
cd "${srcdir}/yaak/"
# Same as above but with a different sed replacement to make the output valid semver
git describe --long --tags --abbrev=7 "$(git rev-list --tags --max-count=1)" |
sed -e 's/^v//' -e 's/-\([[:digit:]]\+\)-\(g[[:alnum:]]\{7\}\)$/-r.\1+\2/'
}
build() {
local _semver && _semver="$(_semver)"
export YAAK_VERSION="${_semver}"
export YAAK_PLUGINS_DIR="${srcdir}/yaak-plugins/"
export TAURI_APP_PATH="${srcdir}/yaak/src-tauri/"
export CI=true
cd "${srcdir}/yaak/"
npm ci
npm install @yaakapp/cli
npm run build
npm run replace-version
npm run tauri build -- --bundles deb --config '{ "bundle": { "createUpdaterArtifacts": false } }'
sed -e 's|Name=yaak|Name=Yaak|' \
-e '$aGenericName=API Client' \
-i "${srcdir}/yaak/src-tauri/target/release/bundle/deb/yaak_${_semver}_"*/data/usr/share/applications/yaak.desktop
}
package() {
local _semver && _semver="$(_semver)"
cp -a \
"${srcdir}/yaak/src-tauri/target/release/bundle/deb/yaak_${_semver}_"*/data/usr/ \
"${pkgdir}/usr/"
install -Dm644 \
"${srcdir}/yaak/LICENSE" \
"${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
|