aw-server-rust-git

LOW
maintainer nojo 0 votes scanned 2026-09-26 21:15:27.200055
View on AUR
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: Nikolay Bryskin <nikicat@users.noreply.github.com>
2
3# aw-server-rust has no tags or releases at all - it is consumed as a submodule
4# of the activitywatch bundle, pinned by sha. ActivityWatch 0.13.2 ships
5# 656f3c9 (2024-10-05); this tracks master, which carries two things that
6# release does not: --profile named instances (c8533a0) and an /api/0/import
7# that merges into an existing bucket instead of returning 500 (0a94e0f).
8#
9# activitywatch-bin also contains these binaries, but only under /opt and its
10# PKGBUILD fails to symlink them (its loop tests the live path at build time),
11# so there is no file conflict today. Declared anyway rather than relying on
12# that bug staying unfixed.
13pkgname=aw-server-rust-git
14pkgver=r897.5bd198f
15pkgrel=1
16pkgdesc="ActivityWatch server, built from master"
17arch=('x86_64')
18url="https://github.com/ActivityWatch/aw-server-rust"
19license=('MPL-2.0')
20depends=('gcc-libs' 'glibc')
21makedepends=('git' 'rust' 'npm')
22# makepkg.conf enables lto globally. rusqlite's bundled sqlite3.c is compiled
23# through the cc crate with those CFLAGS while the Rust side links its own way,
24# and the C symbols go missing - the build dies on undefined sqlite3_column_*.
25# Verified by toggling it: with lto the link fails, without it the same build
26# succeeds. An earlier theory blaming cargo feature resolution was wrong.
27options=('!lto')
28provides=('aw-server-rust')
29conflicts=('aw-server-rust')
30source=("git+$url.git")
31sha256sums=('SKIP')
32
33pkgver() {
34 cd "$srcdir/aw-server-rust"
35 printf 'r%s.%s' "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
36}
37
38prepare() {
39 cd "$srcdir/aw-server-rust"
40 # Fetched here rather than declared as sources: aw-webui has its own nested
41 # submodule, and wiring two levels by hand buys nothing for a local package.
42 git submodule update --init --recursive aw-webui
43}
44
45build() {
46 cd "$srcdir/aw-server-rust"
47
48 # The webui is compiled into the server, so it has to exist first.
49 make -C ./aw-webui build
50
51 # Exactly what `make build` runs, minus aw-sync - see below for why that is
52 # left out. Nothing else about the Makefile is a problem; the sqlite link
53 # failure this package used to hit is entirely the lto option above.
54 cargo build --release --bin aw-server
55
56 # aw-sync is deliberately not built. It pulls in aw-client-rust, whose
57 # src/config.rs uses `toml` while Cargo.toml declares it only under
58 # [dev-dependencies] - so the lib builds under `cargo test` and nowhere else.
59 # Broken on master as of r897. Add it back once that is fixed upstream.
60}
61
62package() {
63 cd "$srcdir/aw-server-rust"
64 install -Dm755 target/release/aw-server "$pkgdir/usr/bin/aw-server"
65 # the bundle calls this binary aw-server-rust; keep that name working too
66 ln -s aw-server "$pkgdir/usr/bin/aw-server-rust"
67 install -Dm644 aw-server.service "$pkgdir/usr/lib/systemd/user/aw-server.service"
68}
69

Scan history

Scanned at (UTC)SeverityRules
2026-09-26 21:15:27 Low 1

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion