discord-ptb
The package downloads a prebuilt tarball from Discord's official PTB domain and installs it; while the host is not a standard code forge, it is Discord's own infrastructure, making supply-chain risk low despite the non-whitelisted domain.
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 tarball from Discord's official PTB domain and installs it; while the host is not a standard code forge, it is Discord's own infrastructure, making supply-chain risk low despite the non-whitelisted domain.
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:19
source=("https://dl-ptb.discordapp.net/apps/linux/$pkgver/$pkgname-$pkgver.tar.gz" -
PKGBUILD:20
"LICENSE-$pkgver.html::https://discordapp.com/terms"
PKGBUILD
2 offending line(s) highlighted# Contributor: Filipe Laíns (FFY00) <lains@archlinux.org>
# Contributor: Morgan <morganamilo@archlinux.org>
# Contributor: Robin Candau <antiz@archlinux.org>
# Contributor: Christian Heusel <gromit@archlinux.org>
# Contributor: T.J. Townsend <blakkheim@archlinux.org>
pkgname=discord-ptb
_pkgname=DiscordPTB
pkgver=1.0.214
pkgrel=1
pkgdesc="All-in-one voice and text chat for gamers - public test build"
arch=('x86_64')
url='https://discord.com'
license=('custom')
options=(!debug !strip)
optdepends=('libpulse: PulseAudio support'
'libappindicator-gtk3: Systray indicator support'
'xdg-utils: For opening URLs and files')
source=("https://dl-ptb.discordapp.net/apps/linux/$pkgver/$pkgname-$pkgver.tar.gz"
"LICENSE-$pkgver.html::https://discordapp.com/terms"
"OSS-LICENSES-$pkgver.html::https://discordapp.com/licenses")
sha512sums=('6a402d678339bd06bb88a444c357d4fcf8d46a9ddee5afc622b06e16cc631fba86a290e5e35a04b451a5da6988488f9195d07299ec5fd904c1f7ab002edb6933'
'SKIP'
'SKIP')
# Skip license hashes as they are unstable (discord#2)
# Since "updpkgsums"/"pkgctl version upgrade" overwrite the checksum array with
# literal hashes, set them to SKIP with indexed assignments (pacman-contrib#119)
# https://gitlab.archlinux.org/archlinux/packaging/packages/discord/-/issues/2
# https://gitlab.archlinux.org/pacman/pacman-contrib/-/issues/119
sha512sums[1]='SKIP'
sha512sums[2]='SKIP'
package() {
depends=('libnotify' 'libxss' 'nspr' 'nss' 'gtk3')
install -d "$pkgdir"/opt/$pkgname
cp -a $_pkgname/. "$pkgdir"/opt/$pkgname
chmod 755 "$pkgdir"/opt/$pkgname/$pkgname
rm "$pkgdir"/opt/$pkgname/postinst.sh
install -d "$pkgdir"/usr/bin
ln -s /opt/$pkgname/$pkgname "$pkgdir"/usr/bin/$pkgname
install -d "$pkgdir"/usr/share/applications
ln -s /opt/$pkgname/$pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
install -d "$pkgdir"/usr/share/icons/hicolor/256x256/apps
ln -s /opt/$pkgname/discord.png "$pkgdir"/usr/share/icons/hicolor/256x256/apps/$pkgname.png
install -Dm644 LICENSE-$pkgver.html "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.html
install -Dm644 OSS-LICENSES-$pkgver.html "$pkgdir"/usr/share/licenses/$pkgname/OSS-LICENSES.html
}
Changes since previous scan
--- PKGBUILD @ 2026-09-10 00:22+++ PKGBUILD @ 2026-09-17 00:27@@ -6,7 +6,7 @@ pkgname=discord-ptb _pkgname=DiscordPTB-pkgver=1.0.213+pkgver=1.0.214 pkgrel=1 pkgdesc="All-in-one voice and text chat for gamers - public test build" arch=('x86_64')@@ -19,7 +19,7 @@ source=("https://dl-ptb.discordapp.net/apps/linux/$pkgver/$pkgname-$pkgver.tar.gz" "LICENSE-$pkgver.html::https://discordapp.com/terms" "OSS-LICENSES-$pkgver.html::https://discordapp.com/licenses")-sha512sums=('3bbedbb0dee097f39ae927f4f1e600e03f859a52efc07e31229e386b327a4dd4c0d51d8fcc921959d40ca1bddf777be93ee51af64db6a985ffbadb488926f16b'+sha512sums=('6a402d678339bd06bb88a444c357d4fcf8d46a9ddee5afc622b06e16cc631fba86a290e5e35a04b451a5da6988488f9195d07299ec5fd904c1f7ab002edb6933' 'SKIP' 'SKIP') 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 21:21:21 | Medium | 1 |
| 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 23:55:21 | Medium | 1 |
| 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 |