qgraf
The source is fetched from qgraf.tecnico.ulisboa.pt, which is the official upstream server for the QGRAF Feynman diagram generator maintained by Paulo Nogueira at Instituto Superior Técnico (Lisbon). The anonymous:aur@ credentials are simply HTTP Basic Auth used as a lightweight access gate on the official project server — this is a known pattern for this specific package. The sha256sum is hardcoded, so even if the server were compromised, a tampered tarball would be detected. The build compiles a single Fortran source file (qgraf-$pkgver.f08) with gfortran, which is standard practice. No binaries are downloaded pre-compiled; the compiled artifact is produced locally. The only concern is that the credential-gated URL is slightly non-standard, but it points to the legitimate upstream host and the checksum provides integrity verification. This is sloppy/non-standard packaging (embedding credentials in the URL) but not a genuine supply-chain risk.
Triggered rules
llm_review
The static rules flagged this MEDIUM, but an AI model (anthropic/claude-4.6-sonnet-20260217) reviewed the full PKGBUILD and judged it LOW (confidence 82%): The source is fetched from qgraf.tecnico.ulisboa.pt, which is the official upstream server for the QGRAF Feynman diagram generator maintained by Paulo Nogueira at Instituto Superior Técnico (Lisbon). The anonymous:aur@ credentials are simply HTTP Basic Auth used as a lightweight access gate on the official project server — this is a known pattern for this specific package. The sha256sum is hardcoded, so even if the server were compromised, a tampered tarball would be detected. The build compiles a single Fortran source file (qgraf-$pkgver.f08) with gfortran, which is standard practice. No binaries are downloaded pre-compiled; the compiled artifact is produced locally. The only concern is that the credential-gated URL is slightly non-standard, but it points to the legitimate upstream host and the checksum provides integrity verification. This is sloppy/non-standard packaging (embedding credentials in the URL) but not a genuine supply-chain risk.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:11
source=("http://anonymous:aur@qgraf.tecnico.ulisboa.pt/links/$pkgname-$pkgver.tgz")
PKGBUILD
1 offending line(s) highlighted# Maintainer: Magnus Schaaf <magnusschaaf plus arch at gmail dot com>
pkgname=qgraf
pkgver=3.6.10
pkgrel=1
pkgdesc="Feynman diagram generator for various types of QFT models"
arch=('x86_64')
url="http://cefema-gt.tecnico.ulisboa.pt/~paulo/qgraf.html"
license=('LicenseRef-qgraf-license')
depends=('glibc' 'gcc-libs')
makedepends=('gcc-fortran')
source=("http://anonymous:aur@qgraf.tecnico.ulisboa.pt/links/$pkgname-$pkgver.tgz")
sha256sums=('6d4b5c6eb97de1942b824d80b8cb454dd77667492d0001e3bf21e761c5702194')
build() {
sed -n 's/^!//p' "$pkgname-$pkgver.f08" > LICENSE
mkdir -p fmodules
gfortran -o "$pkgname" -O2 -J fmodules "$pkgname-$pkgver.f08"
}
package() {
# license
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
# documentation
install -m644 -Dt "$pkgdir/usr/share/doc/$pkgname/" *.pdf
# data
install -m644 -Dt "$pkgdir/usr/share/$pkgname/" *.dat *.sty phi3 qcd qed qedx
# binary
install -Dm755 "$pkgname" "$pkgdir/usr/bin/$pkgname"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-01 00:21:48 | Low | 2 |
| 2026-10-31 00:07:41 | Low | 2 |
| 2026-10-30 00:29:30 | Low | 2 |
| 2026-10-29 00:13:55 | Low | 2 |
| 2026-10-28 00:06:54 | Low | 2 |
| 2026-10-27 00:23:28 | Low | 2 |
| 2026-10-26 00:12:40 | Low | 2 |
| 2026-10-25 00:20:48 | Low | 2 |
| 2026-10-24 00:14:55 | Low | 2 |
| 2026-10-23 00:02:19 | Low | 2 |
| 2026-10-22 00:13:10 | Low | 2 |
| 2026-10-21 00:12:50 | Low | 2 |
| 2026-10-20 00:10:31 | Low | 2 |
| 2026-10-19 00:03:55 | Low | 2 |
| 2026-10-18 00:06:55 | Low | 2 |
| 2026-10-17 00:21:55 | Low | 2 |
| 2026-10-16 00:12:47 | Low | 2 |
| 2026-10-15 00:28:05 | Low | 2 |
| 2026-10-14 00:06:47 | Low | 2 |
| 2026-10-13 00:23:45 | Low | 2 |