aurupdater

icu74

Build times (auto-updated)


LICENSE checksum breaks periodically (fixed 2026-09-19)

source= fetched the license file from GitHub’s moving main branch (.../icu/raw/main/LICENSE) instead of a pinned ref. Every time upstream touches LICENSE on main, the pinned md5/sha256 in the PKGBUILD goes stale and the build fails checksum validation. This had already happened twice before (Feb 2025, May 2025 – see AUR comment history) and recurred again 2026-09-18 (AUR comment from nanoka).

Root-cause fix (pkgrel 10 -> 11): point at the same release tag already used for the source tarball instead of main: .../icu/raw/release-${pkgver//./-}/LICENSE. Since that expands from pkgver (already used for the tarball URL above it), it self-updates on every version bump and can never drift again. Verified via makepkg --verifysource.

Same exact bug existed in [[icu75]] and [icu76] – fixed all three together. icu75’s copy was already silently broken (stale checksum) before anyone reported it there.

No AUR reply posted for the nanoka comment – the fix is obvious/ self-evident from the new pkgrel, matches the pattern for prior comments on this thread (andreas_baumann fixed the Feb 2025 recurrence silently too, only replying to the earlier zarianu report).

Tooling gotcha found while investigating: repo_build.sh’s arch parser (sed -n 's/^arch=(\(.*\))$/\1/p') only matches a single-line arch=(...). This PKGBUILD’s arch=() spans multiple lines, so the parser returns empty and the build silently falls back to “any (via x86_64)” – meaning i486/i686/pentium4/armv6h/armv7h/aarch64 (all listed in arch=()) have never actually been built via this pipeline, despite being declared. Not fixed (shared script, broad blast radius, would also need the ARM boards up) – flagged to the user, disposition pending.

Tooling gotcha #2: repo_build_staged.sh’s staging rsync (rsync -a --exclude=.git, no --delete) never removes files from /data/INSTALL/<pkg> that were deleted from the tracked arch/ pkgdir. A year-old stale icu75-LICENSE/icu76-LICENSE (the original broken checksum file) survived in staging and got silently reused instead of re-downloaded, causing an otherwise-fixed build to fail again on the first retry. Worked around by manually rm-ing the stale staged file before each retry; not fixed at the script level.

Re-checked 2026-09-24 (FEEDBACK.txt sweep): no new comments since, nanoka’s report stays resolved by the pkgrel 11 fix above.

2026-09-22: ARM build/publish

Built for armv7h + aarch64 via the remote ARM boards, published cleanly (same version as x86_64). armv6h (eurobuild4) failed: gcc: fatal error: Killed signal terminated program cc1 – the OOM killer, not a code issue. eurobuild4 is memory-constrained and ICU is a heavy C++ build; same failure hit all three of icu74/[[icu75]]/[[icu76]] identically. Not attempted further this pass – would need more RAM/swap on that board, or a lower-memory build config, to actually fix armv6h.