discord-latest-bin
The package downloads a prebuilt .deb from Discord's official distribution domain (dl2.discordapp.net), which is plausibly controlled by the project; although the host is not a standard code forge, it is an official release endpoint for Discord, making the supply chain risk low despite the non-whitelisted host.
Triggered rules
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 a prebuilt .deb from Discord's official distribution domain (dl2.discordapp.net), which is plausibly controlled by the project; although the host is not a standard code forge, it is an official release endpoint for Discord, making the supply chain risk low despite the non-whitelisted host.
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:18
source=("discord-${pkgver}.deb::https://stable.dl2.discordapp.net/apps/linux/${pkgver}/discord-${pkgver}.deb")
PKGBUILD
1 offending line(s) highlighted# Maintainer: Mathias DeWeerdt <your@email.com>
pkgname=discord-latest-bin
pkgver=1.0.151
pkgrel=1
pkgdesc="Discord - All-in-one voice, video and text communication (latest upstream .deb release)"
arch=('x86_64')
url="https://discord.com"
license=('LicenseRef-custom')
depends=('gtk3' 'nss' 'libxss' 'alsa-lib' 'libnotify' 'xdg-utils' 'libglvnd')
optdepends=(
'libappindicator-gtk3: systray support'
'libayatana-appindicator: systray support'
)
provides=('discord')
conflicts=('discord')
# Discord ships pre-built Electron binaries — stripping them breaks the app
options=('!strip' '!debug')
source=("discord-${pkgver}.deb::https://stable.dl2.discordapp.net/apps/linux/${pkgver}/discord-${pkgver}.deb")
sha256sums=('469a6460dad6c2738b358f3ebf44a5210f0298f795287419b93b0724e8e08bfe')
package() {
cd "${srcdir}"
ar x "discord-${pkgver}.deb"
local data_tar
data_tar=$(find . -maxdepth 1 -name 'data.tar.*' | head -1)
[[ -n "${data_tar}" ]] || { echo "error: data.tar.* not found in .deb"; exit 1; }
tar xf "${data_tar}" -C "${pkgdir}"
# Install license — search common locations since path varies between releases
local license_file
license_file=$(find "${pkgdir}/usr/share/discord" -name 'LICENSE.html' | head -1 || true)
if [[ -n "${license_file}" ]]; then
install -Dm644 "${license_file}" \
"${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.html"
fi
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 00:19:22 | Low | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 00:04:09 | Low | 2 |
| 2026-09-08 00:18:08 | Low | 2 |
| 2026-09-07 00:30:15 | Low | 2 |
| 2026-09-06 00:17:06 | Low | 2 |
| 2026-09-05 00:16:27 | Low | 2 |
| 2026-09-04 00:03:13 | Low | 2 |
| 2026-09-03 00:15:47 | Low | 2 |
| 2026-09-02 00:02:31 | Low | 2 |
| 2026-09-01 00:11:19 | Low | 2 |
| 2026-08-31 00:19:57 | Low | 2 |
| 2026-08-30 00:04:14 | Low | 2 |
| 2026-08-29 00:29:17 | Low | 2 |