o3de-nightly-bin
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 72%): The domain o3debinaries.org is the official binary distribution host for the Open 3D Engine (Linux Foundation) project, not an unofficial or personal host, making the cheaper model's supply-chain concern a false positive. The PKGBUILD implements both SHA256 and PGP signature verification with a pinned GPG keyring hash (6b38139f...), providing a reasonable trust chain. However, the package() function attempts to extract data.tar.gz directly without first unpacking the .deb archive via 'ar x' or 'dpkg-deb --raw-extract', meaning the build will fail at that step — hence the 'broken' flag. The security posture is low-risk: official source, PGP-verified binary, pinned key hash.
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:23
"https://o3debinaries.org/development/Latest/Linux/${_debname}"
PKGBUILD
1 offending line(s) highlighted# Maintainer: xaque <xaque at duck dot com>
_stablever=2505.1
_engver=4.2.0
_builddate="20250806"
_debname="o3de_latest.deb"
_binname="o3de-nightly"
pkgname=o3de-nightly-bin
pkgver="${_stablever}_${_builddate}"
pkgrel=1
pkgdesc='Open 3D Engine - An open-source, real-time 3D development engine (Nightly build)'
arch=('x86_64')
license=('APACHE' "MIT")
url='https://o3de.org/'
depends=('clang' 'cmake' 'curl' 'fontconfig' 'gcc-libs' 'glibc' 'glu' 'libglvnd' 'libxau' 'libx11' 'libxcb' 'libxkbcommon' 'libxkbcommon-x11' 'mesa' 'openexr' 'openssl' 'qt5-base' 'sdl2' 'zlib')
optdepends=('ninja: Support for multiple build configurations per project')
makedepends=('icoutils')
options=('!strip')
provides=("${_binname}")
install="o3de.install"
source=("open-3d-engine-nightly.desktop"
"https://o3debinaries.org/development/Latest/Linux/${_debname}"
"https://o3debinaries.org/development/Latest/Linux/${_debname}.sha256"
"https://o3debinaries.org/main/Latest/Linux/o3de-releases.gpg"
"LICENSE.txt::https://raw.githubusercontent.com/o3de/o3de/development/LICENSE.txt"
"LICENSE_MIT.txt::https://raw.githubusercontent.com/o3de/o3de/development/LICENSE_MIT.TXT"
"LICENSE_APACHE2.txt::https://raw.githubusercontent.com/o3de/o3de/development/LICENSE_APACHE2.TXT")
sha256sums=('SKIP'
'SKIP'
'SKIP'
'6b38139f1b8c05495312003b050ab6c2e5bcf7e019a8922bf3440a7d7fa561e5'
'SKIP'
'SKIP'
'SKIP')
pkgver() {
# Look at modified date of gpg signature to determine build date
_builddate=$(date -r ${srcdir}/_gpgbuilder "+%Y%m%d")
echo "${_stablever}_${_builddate}"
}
prepare() {
echo -n " Verifying checksum for ${_debname} ..."
_expected=$(cut -d ' ' -f1 ${_debname}.sha256)
_actual=$(sha256sum ${_debname} | cut -d ' ' -f1)
[[ ${_expected} == ${_actual} ]]
echo " Passed"
echo -n " Verifying PGP for ${_debname} ..."
gpgv --keyring "./o3de-releases.gpg" "${_debname}" >/dev/null 2>&1
echo " Passed"
}
package() {
echo -n " Extracting data to /opt/O3DE ."
tar -xzf data.tar.gz -C "${pkgdir}" --checkpoint=.50000
echo " Done"
if [ ! -d "${pkgdir}/opt/O3DE/${_engver}" ]; then
echo "Expected O3DE ${_engver}. PKGBUILD may need to be updated for modified paths with a new major engine version. Aborting." 1>&2
exit 1
fi
# Symlink into /usr/bin
mkdir -p "${pkgdir}/usr/bin"
ln -s "/opt/O3DE/${_engver}/bin/Linux/profile/Default/o3de" "${pkgdir}/usr/bin/${_binname}"
# Extract .ico and install icons
icotool -x "${pkgdir}"/opt/O3DE/${_engver}/cmake/Platform/Windows/Packaging/product_icon.ico -o .
install -Dm644 "product_icon_1_256x256x64.png" "${pkgdir}/usr/share/icons/hicolor/256x256/apps/${_binname}.png"
iter=2
for size in 128 64 48 32 16; do
install -Dm644 "product_icon_${iter}_${size}x${size}x32.png" \
"${pkgdir}/usr/share/icons/hicolor/${size}x${size}/apps/${_binname}.png"
((iter++))
done
# Install desktop file
install -Dm644 open-3d-engine-nightly.desktop "${pkgdir}"/usr/share/applications/open-3d-engine-nightly.desktop
# Install license files
install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.txt"
install -Dm644 LICENSE_MIT.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE_MIT.txt"
install -Dm644 LICENSE_APACHE2.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE_APACHE2.txt"
# Fix warning for mismatched /opt permissions
chmod --reference /opt "${pkgdir}"/opt
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 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 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 |
| 2026-07-15 00:09:25 | LOW | 2 |