distccd-x86_64

maintainer graysky · 3 votes · scanned 2026-08-03 00:08:14.047287
MEDIUM
View on AUR ↗
Why flagged The PKGBUILD downloads prebuilt cross-compiler toolchain binaries (x-tools86-*.tar.zst) from repo-ck.com, a personal/unofficial host operated by the maintainer graysky. These binaries are extracted and installed into /opt and executed as a cross-compilation toolchain. The PGP signature verification is in place (validpgpkeys with graysky's key), but the signature checksums for the .sig files are 'SKIP', meaning the signature files themselves are not integrity-checked — only the tarball b2sums are verified. The tarballs do have non-SKIP b2sums, so integrity of the downloaded binaries is checked via b2sum. The PGP key 4E22BB637E26407D5DEE550988A032865EE46C4C belongs to graysky who is also the maintainer and the operator of repo-ck.com, so this is a self-hosted binary by the package author. The real concern is that these are executed prebuilt binaries from a personal host rather than an official upstream or distro mirror. If repo-ck.com were compromised or the key were compromised, malicious binaries could be installed. This is a genuine medium supply-chain risk: unofficial host, prebuilt executed binaries, SKIP on .sig b2sums (though PGP verification should still occur at pacman level). Not clearly malicious, but not clean either.

Triggered rules

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:14 source_armv7h=("http://repo-ck.com/PKG_source/x-tools86-armv7h-$_date.tar.zst"{,.sig})
MEDIUM AI review llm_review

An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The PKGBUILD downloads prebuilt cross-compiler toolchain binaries (x-tools86-*.tar.zst) from repo-ck.com, a personal/unofficial host operated by the maintainer graysky. These binaries are extracted and installed into /opt and executed as a cross-compilation toolchain. The PGP signature verification is in place (validpgpkeys with graysky's key), but the signature checksums for the .sig files are 'SKIP', meaning the signature files themselves are not integrity-checked — only the tarball b2sums are verified. The tarballs do have non-SKIP b2sums, so integrity of the downloaded binaries is checked via b2sum. The PGP key 4E22BB637E26407D5DEE550988A032865EE46C4C belongs to graysky who is also the maintainer and the operator of repo-ck.com, so this is a self-hosted binary by the package author. The real concern is that these are executed prebuilt binaries from a personal host rather than an official upstream or distro mirror. If repo-ck.com were compromised or the key were compromised, malicious binaries could be installed. This is a genuine medium supply-chain risk: unofficial host, prebuilt executed binaries, SKIP on .sig b2sums (though PGP verification should still occur at pacman level). Not clearly malicious, but not clean either.

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: graysky <therealgraysky AT protonmail DOT com>
2
3pkgname=distccd-x86_64
4arch=(armv7h aarch64)
5_date=20220531
6# inspect source tarball under $name/share/gcc-x.y.z
7pkgver=12.1.0.$_date
8pkgrel=1
9license=('GPL' )
10url="https://github.com/graysky2/crosstool-ng_for_distcc"
11pkgdesc="Toolchain for x86_64 builds on Arch ARM volunteers via distcc"
12depends=('distcc')
13options=('libtool' 'emptydirs' '!strip')
14source_armv7h=("http://repo-ck.com/PKG_source/x-tools86-armv7h-$_date.tar.zst"{,.sig})
15source_aarch64=("http://repo-ck.com/PKG_source/x-tools86-aarch64-$_date.tar.zst"{,.sig})
16source=(distccd-x86_64.{service,config})
17noextract=("x-tools86-armv7h-$_date.tar.zst"
18"x-tools86-aarch64-$_date.tar.zst")
19backup=(etc/conf.d/distccd-x86_64)
20install=readme.install
21validpgpkeys=(
22'4E22BB637E26407D5DEE550988A032865EE46C4C' # graysky
23)
24b2sums=('86124551b3ad8abd9c26c6225c3a79cddccf13142f8a8764f71a84331c03426529eebdd9a7dd2048e2da3b69192c54b572031ce127b983671d84d92940688821'
25 '964d1f584c0d26a6a720edabcf0f7293949cf247d1ebecb87534cfb90e84493c6f2e97f23bd55090d774f8d136fdf33bc571d0927bb54893895bdf55e2f0a958')
26b2sums_armv7h=('0df8f6d450c00e94af59b352010c434283243eaa7b97908d6afff4f5ad3966a942c09000d8c8713b317065f68e0e3b1e77306521933c006034f2c9d695abd42f'
27 'SKIP')
28b2sums_aarch64=('477a819993307a44221668dc75a7c41df0a2bc69dd547a955849442b21d6cefa3a7c2fe18f9e455aeabd5e59dc9431a0e03515792386b7b71c59ea7787daf98a'
29 'SKIP')
30
31package() {
32 # install symlink to distccd
33 install -d "${pkgdir}/usr/bin"
34 ln -sf /usr/bin/distccd "${pkgdir}/usr/bin/distccd-x86_64"
35
36 # install whitelist for toolchain new for v3.3
37 install -d "${pkgdir}/usr/lib/distcc"
38
39 # currently no clang support
40 # https://github.com/crosstool-ng/crosstool-ng/issues/652
41 _targets=(c++ cc cpp g++ gcc)
42 for bin in "${_targets[@]}"; do
43 ln -sf /usr/bin/distcc "${pkgdir}/usr/lib/distcc/x86_64-pc-linux-gnu-$bin"
44 done
45
46 # FS#67629 - since distcc is a dependency there is no need to provide a sysuser.d config
47
48 # install service and config
49 install -Dm644 "${srcdir}/distccd-x86_64.service" \
50 "${pkgdir}/usr/lib/systemd/system/distccd-x86_64.service"
51 install -Dm644 "${srcdir}/distccd-x86_64.config" \
52 "${pkgdir}/etc/conf.d/distccd-x86_64"
53
54 # copy in toolchain
55 install -d "${pkgdir}/opt"
56 bsdtar -x --uid 0 --gid 0 -f "${srcdir}/x-tools86-$CARCH-$_date.tar.zst" \
57 -C "${pkgdir}/opt/"
58}
59

Scan history

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

Report a package

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

0 / 4000
Your suggestion