netmeter-git
LOW
maintainer shtam
0 votes
scanned 2026-09-23 15:40:39.984319
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: Hussein Hareb <shtam.hareb12@gmail.com>
2
#
3
# Builds the latest commit on main from GitHub, so only pushed work is
4
# packaged. Locally:
5
#
6
# cd packaging && makepkg -si
7
pkgname=netmeter-git
8
_pkgname=netmeter
9
pkgver=r32.3cd88a2
10
pkgrel=1
11
pkgdesc="Network usage monitor: interface totals and per-application usage, measured in the kernel"
12
arch=('x86_64')
13
url="https://github.com/husseinhareb/NetMeter"
14
license=('Apache-2.0')
15
# GUI: webkit2gtk, gtk3, the tray. netmeterd: libelf, zlib, zstd (libbpf is
16
# linked in statically).
17
depends=('webkit2gtk-4.1' 'gtk3' 'libayatana-appindicator' 'libelf' 'zlib' 'zstd'
18
'gcc-libs' 'glibc' 'systemd')
19
makedepends=('git' 'cargo' 'nodejs' 'npm' 'clang' 'libbpf')
20
optdepends=('polkit: re-enable the service from the GUI after turning it off')
21
provides=("$_pkgname")
22
conflicts=("$_pkgname")
23
# makepkg's LTO turns the bundled SQLite into GCC bitcode that the Rust link
24
# cannot read (every sqlite3_* symbol comes up undefined). The Rust side
25
# already builds with LTO from its own release profile.
26
options=('!lto')
27
install=netmeter.install
28
source=("$_pkgname::git+https://github.com/husseinhareb/NetMeter.git")
29
sha256sums=('SKIP')
30
31
pkgver() {
32
cd "$_pkgname"
33
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
34
}
35
36
prepare() {
37
cd "$_pkgname"
38
export RUSTUP_TOOLCHAIN=stable
39
# Downloads happen here so build() can run offline.
40
npm ci
41
cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')" \
42
--manifest-path src-tauri/Cargo.toml
43
cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')" \
44
--manifest-path netmeterd/Cargo.toml
45
}
46
47
build() {
48
cd "$_pkgname"
49
export RUSTUP_TOOLCHAIN=stable
50
# The binary only: the .deb and .rpm bundles are not wanted here.
51
npm run tauri build -- --no-bundle -- --frozen
52
cargo build --release --frozen --manifest-path netmeterd/Cargo.toml
53
}
54
55
check() {
56
cd "$_pkgname"
57
export RUSTUP_TOOLCHAIN=stable
58
cargo test --release --frozen --manifest-path netmeterd/Cargo.toml
59
}
60
61
package() {
62
cd "$_pkgname"
63
install -Dm755 src-tauri/target/release/netmeter "$pkgdir/usr/bin/netmeter"
64
install -Dm755 netmeterd/target/release/netmeterd "$pkgdir/usr/lib/netmeter/netmeterd"
65
install -Dm755 packaging/install-helper.sh "$pkgdir/usr/lib/netmeter/install-helper.sh"
66
install -Dm644 packaging/netmeterd.service \
67
"$pkgdir/usr/lib/systemd/system/netmeterd.service"
68
69
install -Dm644 packaging/netmeter.desktop \
70
"$pkgdir/usr/share/applications/netmeter.desktop"
71
for size in 32 64 128; do
72
install -Dm644 "src-tauri/icons/${size}x${size}.png" \
73
"$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/netmeter.png"
74
done
75
install -Dm644 src-tauri/icons/128x128@2x.png \
76
"$pkgdir/usr/share/icons/hicolor/256x256/apps/netmeter.png"
77
78
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
79
}
80
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-23 15:40:39 | Low | 1 |