belenios

LOW
maintainer BenjaminVoisin 2 votes scanned 2026-09-17 00:27:14.276658
View on AUR
Why flagged

The package builds from the project's own GitLab repository (INRIA, a research institute), which is a plausible project-owned source; the use of opam to install dependencies is standard for OCaml projects and not inherently malicious, despite the non-whitelisted host and skipped checksum.

Triggered rules

Low AI review downgraded a static finding llm_review

The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package builds from the project's own GitLab repository (INRIA, a research institute), which is a plausible project-owned source; the use of opam to install dependencies is standard for OCaml projects and not inherently malicious, despite the non-whitelisted host and skipped checksum.

2 higher static findings superseded - not the current verdict (shown for transparency)
Medium External install via pipx/uv/poetry/cargo/go/gem alt_pkg_manager_install

A non-pip/npm package manager (pipx, uv, poetry, cargo install, go install, gem, conda…) fetches and builds an external package at build time, outside source=() and makepkg's checksums.

  • PKGBUILD:26 opam install --yes --switch=$pkgname base64 hex dune atdgen zarith cryptokit calendar cmdliner sqlite3 csv ocsipersist-sqlite eliom gettext-camomile ocamlnet
Medium source=() URL on a non-standard host source_untrusted_domain

One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).

  • PKGBUILD:13 source=( "$pkgname-$pkgver::git+https://gitlab.inria.fr/belenios/belenios.git#tag=$_tag")

PKGBUILD

2 offending line(s) highlighted
1# Maintainer: Your Name <benjamin.voisin@ens-rennes.fr>
2pkgname=belenios
3pkgver=2.5.1
4pkgrel=1
5pkgdesc="State-of-the-art secure, private and verifiable voting system"
6arch=('x86_64')
7url="https://gitlab.inria.fr/belenios/belenios.git"
8license=('GPL')
9groups=()
10depends=('ocaml' 'opam' 'npm' 'nodejs')
11makedepends=('dune' 'git' 'gmp' 'libsodium' 'pkg-config' 'm4' 'sqlite3' 'openssl' 'curl' 'zip' 'unzip' 'ncurses' 'gd' 'cracklib' 'jq' 'sed')
12_tag=55f9dc8ea92a8ff60e4e93d3473bfd496e179616 #git rev-parse $pkgver
13source=( "$pkgname-$pkgver::git+https://gitlab.inria.fr/belenios/belenios.git#tag=$_tag")
14sha256sums=('SKIP')
15
16prepare() {
17 cd "$srcdir/$pkgname-$pkgver"
18 opam init -n > /dev/null
19 if (( $(opam switch list | grep "$pkgname" -c) == "0" )); then
20 echo "Creating the $pkgname switch"
21 opam switch create $pkgname --empty > /dev/null
22 fi
23 opam switch $pkgname
24 eval $(opam env --switch=$pkgname --set-switch)
25 opam switch set-invariant ocaml-base-compiler=4.14.1 --switch=$pkgname > /dev/null
26 opam install --yes --switch=$pkgname base64 hex dune atdgen zarith cryptokit calendar cmdliner sqlite3 csv ocsipersist-sqlite eliom gettext-camomile ocamlnet
27}
28
29build() {
30 cd "$srcdir/$pkgname-$pkgver"
31 eval $(opam env --switch=$pkgname --set-switch)
32 make
33 sed -i "s/nodejs/node/g" frontend/Makefile
34 make build-release-server
35}
36
37package() {
38 cd "$srcdir/$pkgname-$pkgver"
39 cp -r _run/usr $pkgdir/
40}
41
42check() {
43 cd "$srcdir/$pkgname-$pkgver"
44 eval $(opam env --switch=$pkgname --set-switch)
45 make check
46}
47

Scan history

Scanned at (UTC)SeverityRules
2026-09-17 00:27:14 Low 3
2026-09-16 00:03:17 Low 3
2026-09-15 00:25:31 Low 3
2026-09-14 00:27:57 Low 3
2026-09-13 00:19:54 Low 3
2026-09-12 00:25:17 Low 3
2026-09-11 00:19:22 Low 3
2026-09-10 00:22:44 Low 3
2026-09-09 00:04:09 Low 3
2026-09-08 00:18:08 Low 3
2026-09-07 00:30:15 Low 3
2026-09-06 00:17:06 Low 3
2026-09-05 00:16:27 Low 3
2026-09-04 00:03:13 Low 3
2026-09-03 00:15:47 Low 3
2026-09-02 00:02:31 Low 3
2026-09-01 00:11:19 Low 3
2026-08-31 00:19:57 Low 3
2026-08-30 00:04:14 Low 3
2026-08-29 00:29:17 Low 3

Report a package

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

0 / 4000
Your suggestion