arsu
LOW
maintainer amad3v
0 votes
scanned 2026-09-26 21:15:27.200055
Why flagged
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
Triggered rules
Low
Few votes, recently uploaded
zero_votes_recent
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
PKGBUILD
1
# Maintainer: Mohamed Jouini <amad3v@gmail.com>
2
3
# For ShellCheck: makepkg sets $srcdir and $pkgdir, and runs each function with
4
# `set -e`, so a failed cd already stops the build.
5
# shellcheck shell=bash disable=SC2154,SC2164
6
7
pkgname=arsu
8
pkgver=1.0.0
9
pkgrel=1
10
pkgdesc='Offline TOTP/HOTP authenticator with an encrypted local vault'
11
arch=('x86_64')
12
url='https://github.com/amad3v/arsu'
13
license=('MIT')
14
depends=(
15
'cairo'
16
'dbus'
17
'gdk-pixbuf2'
18
'glib2'
19
'glibc'
20
'gtk3'
21
'hicolor-icon-theme'
22
'libgcc'
23
'libsoup3'
24
'webkit2gtk-4.1'
25
)
26
makedepends=(
27
'cargo'
28
'git'
29
'nodejs'
30
'pnpm'
31
)
32
# The release tag is signed: makepkg checks it against this key.
33
source=(
34
"git+$url.git#tag=v$pkgver?signed"
35
'Arsu.desktop'
36
)
37
sha256sums=('SKIP'
38
'92992d20dde9d11e7171bd9aab1b1de4b85ecaf8fc62dfe20b3ee665e5adf04b')
39
validpgpkeys=('6A700E00396820D93A829FF91CAC141C34516CB6') # Mohamed Jouini <amad3v@gmail.com>
40
41
prepare() {
42
cd "$pkgname"
43
export RUSTUP_TOOLCHAIN=stable
44
cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
45
pnpm install --frozen-lockfile
46
}
47
48
build() {
49
cd "$pkgname"
50
export RUSTUP_TOOLCHAIN=stable
51
# Absolute: the Tauri CLI runs cargo from src-tauri/.
52
export CARGO_TARGET_DIR="$srcdir/target"
53
# Through the Tauri CLI, not plain cargo: it builds the interface first
54
# and compiles the app to load it from the binary instead of a dev server.
55
pnpm tauri build --no-bundle -- --frozen
56
}
57
58
check() {
59
cd "$pkgname"
60
export RUSTUP_TOOLCHAIN=stable
61
export CARGO_TARGET_DIR="$srcdir/target"
62
cargo test --frozen --workspace
63
pnpm test
64
}
65
66
package() {
67
cd "$pkgname"
68
install -Dm755 "$srcdir/target/release/arsu" "$pkgdir/usr/bin/arsu"
69
# Named after the window's app id (arsu), so desktops match the window
70
# to its icon directly.
71
install -Dm644 "$srcdir/Arsu.desktop" "$pkgdir/usr/share/applications/arsu.desktop"
72
73
local size
74
for size in 32 64 128 256; do
75
install -Dm644 "src-tauri/icons/${size}x${size}.png" \
76
"$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/arsu.png"
77
done
78
install -Dm644 src-tauri/icons/icon.png "$pkgdir/usr/share/icons/hicolor/512x512/apps/arsu.png"
79
80
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
81
}
82
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-26 21:15:27 | Low | 1 |