eccodes

maintainer jankoh · 15 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The package downloads source code and test data from official ECMWF domains (confluence.ecmwf.int and get.ecmwf.int), which are legitimate project hosts despite not being on standard whitelisted domains; the sources are verified with matching sha512sums and built locally, posing no remote code execution or supply-chain risk.

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-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads source code and test data from official ECMWF domains (confluence.ecmwf.int and get.ecmwf.int), which are legitimate project hosts despite not being on standard whitelisted domains; the sources are verified with matching sha512sums and built locally, posing no remote code execution or supply-chain risk.

1 higher static finding superseded - not the current verdict (shown for transparency)
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:16 "${pkgname}-${pkgver}-Source.tar.gz::https://confluence.ecmwf.int/download/attachments/${_attnum}/${pkgname}-${pkgver}-Source.tar.gz?api=v2"
  • PKGBUILD:17 "${pkgname}-${pkgver}-test-data.tar.gz::https://get.ecmwf.int/repository/test-data/eccodes/eccodes_test_data.tar.gz"

PKGBUILD

2 offending line(s) highlighted
1# Maintainer: "Jan Kohnert <bughunter@jan-kohnert.de"
2# Contributor: Graziano Giuliani <graziano.giuliani@poste.it>
3pkgname=eccodes
4pkgver=2.48.0
5_attnum=45757960
6pkgrel=1
7pkgdesc="ECMWF decoding library for GRIB, BUFR and GTS"
8arch=("i686" "x86_64")
9url="https://confluence.ecmwf.int/display/ECC/ecCodes+Home"
10license=("Apache-2.0")
11depends=("glibc" "libaec" "libgcc" "libgfortran" "libpng" "libstdc++" "openjpeg2" "netcdf")
12makedepends=("gcc-fortran" "cmake")
13optdepends=("bash" "ksh")
14conflicts=("grib_api" "libbufr-ecmwf")
15source=(
16 "${pkgname}-${pkgver}-Source.tar.gz::https://confluence.ecmwf.int/download/attachments/${_attnum}/${pkgname}-${pkgver}-Source.tar.gz?api=v2"
17 "${pkgname}-${pkgver}-test-data.tar.gz::https://get.ecmwf.int/repository/test-data/eccodes/eccodes_test_data.tar.gz"
18)
19sha512sums=(
20 "9e1b7c456ed65a06415038b2181543ce89ad9aa606380653d635b4304f5ef0ec243742702b441b265e927b98242bbc342ebd55e2426627dc1a40ab45e5ce3674"
21 "8b4c7159dd7ed0e1e69068ec7dcabe94064f0d2abf9eac4fca2a9c730d500999e8edf1e7eeebba6fb12ae99b223c1b0843e31414538333c52f2508cb2d410151"
22)
23
24build() {
25 # make sure we have a clean build environment
26 if [ -d build ]; then
27 rm -rf build
28 fi
29 local cmake_options=(
30 -B build
31 -S "$pkgname-$pkgver-Source"
32 -W no-dev
33 -D CMAKE_BUILD_TYPE=None
34 -D CMAKE_INSTALL_PREFIX=/usr
35 -D CMAKE_INSTALL_DATADIR=/usr/share
36 -D CMAKE_INSTALL_DATAROOTDIR="/usr/share/$pkgname/definitions"
37 -D ENABLE_AEC=ON
38 -D ENABLE_ECCODES_THREADS=ON
39 -D ENABLE_EXTRA_TESTS=ON
40 -D ENABLE_JPG=ON
41 -D ENABLE_JPG_LIBJASPER=OFF
42 -D ENABLE_JPG_LIBOPENJPEG=ON
43 -D ENABLE_PNG=ON
44 )
45 cmake "${cmake_options[@]}"
46 cmake --build build
47}
48
49check() {
50 # copy extra test data to build dir so we can skip downloading data while testing
51 cp -a data/* build/data/
52 # Test 'eccodes_t_grib_ecc-2221' does not work reliably an all machines
53 local excluded_tests="eccodes_t_grib_ecc-2221"
54 local ctest_flags=(
55 --test-dir build
56 # show the stdout and stderr when the test fails
57 --output-on-failure
58 # execute tests in parallel
59 --parallel $(nproc)
60 # exclude problematic tests
61 --exclude-regex "$excluded_tests"
62 )
63 ctest "${ctest_flags[@]}"
64}
65
66package() {
67 DESTDIR="$pkgdir" cmake --install build
68}
69

Changes since previous scan

--- PKGBUILD @ 2026-07-25 00:13
+++ PKGBUILD @ 2026-08-03 00:08
@@ -1,7 +1,7 @@
# Maintainer: "Jan Kohnert <bughunter@jan-kohnert.de"
# Contributor: Graziano Giuliani <graziano.giuliani@poste.it>
pkgname=eccodes
-pkgver=2.47.0
+pkgver=2.48.0
_attnum=45757960
pkgrel=1
pkgdesc="ECMWF decoding library for GRIB, BUFR and GTS"
@@ -17,7 +17,7 @@
"${pkgname}-${pkgver}-test-data.tar.gz::https://get.ecmwf.int/repository/test-data/eccodes/eccodes_test_data.tar.gz"
)
sha512sums=(
- "4cb0491c327d2832dc3e4b14a67a90e4d6b459c2baa132a6a37c5e7d4886eb3ea0e83dcbc95aa9487c207c685dc4ed338b743be60345a581725d2cba80e11ae8"
+ "9e1b7c456ed65a06415038b2181543ce89ad9aa606380653d635b4304f5ef0ec243742702b441b265e927b98242bbc342ebd55e2426627dc1a40ab45e5ce3674"
"8b4c7159dd7ed0e1e69068ec7dcabe94064f0d2abf9eac4fca2a9c730d500999e8edf1e7eeebba6fb12ae99b223c1b0843e31414538333c52f2508cb2d410151"
)

Scan history

Scanned at (UTC)SeverityRules
2026-08-03 00:08:14 LOW 2
2026-08-02 00:16:08 LOW 2
2026-08-01 00:11:18 LOW 2
2026-07-31 00:14:10 LOW 2
2026-07-30 00:17:23 LOW 2
2026-07-29 00:25:53 LOW 2
2026-07-28 00:07:28 LOW 2
2026-07-27 00:24:32 LOW 2
2026-07-26 00:07:32 LOW 2
2026-07-25 09:29:42 MEDIUM 1
2026-07-25 00:13:44 LOW 2
2026-07-24 00:02:28 LOW 2
2026-07-23 00:14:47 LOW 2
2026-07-22 00:29:32 LOW 2
2026-07-21 00:24:15 LOW 2
2026-07-20 00:19:49 LOW 2
2026-07-19 00:17:08 LOW 2
2026-07-18 00:14:48 LOW 2
2026-07-17 00:06:16 LOW 2
2026-07-16 00:05:41 LOW 2

Report a package

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

0 / 4000
Your suggestion