boardmix-uos
The package downloads a prebuilt binary .deb from home-store-packages.uniontech.com, which is the Deepin/UOS app store CDN (uniontech.com is the company behind Deepin Linux). This is not the software vendor's own official host (boardmix.cn), but rather a third-party app store mirror. The installed content is an Electron/Chromium-based application binary that will be executed on the user's system. While uniontech.com is a known Chinese Linux distribution company and their app store is a legitimate distribution channel, it is not the upstream vendor's own release infrastructure, creating a supply-chain dependency on a third party. The sha512sum is present and pins the specific artifact, which mitigates (but does not eliminate) the risk of substitution. This is a genuine medium-risk pattern: prebuilt executed binaries from a non-upstream host, consistent with the original rating.
Triggered rules
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
"https://home-store-packages.uniontech.com/appstore/pool/appstore/c/cn.bosyun.boardmix/cn.bosyun.boardmix_${pkgver}_amd64.deb"
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): The package downloads a prebuilt binary .deb from home-store-packages.uniontech.com, which is the Deepin/UOS app store CDN (uniontech.com is the company behind Deepin Linux). This is not the software vendor's own official host (boardmix.cn), but rather a third-party app store mirror. The installed content is an Electron/Chromium-based application binary that will be executed on the user's system. While uniontech.com is a known Chinese Linux distribution company and their app store is a legitimate distribution channel, it is not the upstream vendor's own release infrastructure, creating a supply-chain dependency on a third party. The sha512sum is present and pins the specific artifact, which mitigates (but does not eliminate) the risk of substitution. This is a genuine medium-risk pattern: prebuilt executed binaries from a non-upstream host, consistent with the original rating.
PKGBUILD
1 offending line(s) highlighted# Maintainer: Integral <integral@member.fsf.org>
# Maintainer: ston <2424284164@qq.com>
pkgname=boardmix-uos
pkgver=1.13.0
pkgrel=2
pkgdesc="Online collaborative whiteboard software."
arch=('x86_64')
url="https://boardmix.cn/"
license=('custom')
depends=('gtk3' 'nss' 'alsa-lib')
optdepends=('libappindicator-gtk3: Allow boardmix to extend a menu via Ayatana indicators in Unity, KDE or Systray (GTK+ 3 library).')
source=(
"https://home-store-packages.uniontech.com/appstore/pool/appstore/c/cn.bosyun.boardmix/cn.bosyun.boardmix_${pkgver}_amd64.deb"
)
sha512sums=('24ed16f2652dc8dbebe2bb44ae4a200f5a6defdb7b297931c739edcee0a9e5b83b8aeb79ef48a4b4a0ee7e1b0d6e2c14f5a6bdf9ea446b0462b7dd21d2fcf366')
package() {
echo " -> Extracting the data.tar.xz..."
bsdtar -xvf data.tar.xz -C "${pkgdir}/"
chmod 755 -R "${pkgdir}/opt"
echo " -> Installing..."
# Launcher
install -Dm755 "${pkgdir}/opt/apps/cn.bosyun.boardmix/files/boardmix.sh" "${pkgdir}/usr/bin/${pkgname}"
# Desktop Entry
install -Dm644 "${pkgdir}/opt/apps/cn.bosyun.boardmix/entries/applications/cn.bosyun.boardmix.desktop" -t "${pkgdir}/usr/share/applications/"
# License
install -Dm644 "${pkgdir}/opt/apps/cn.bosyun.boardmix/files/LICENSE.electron.txt" -t "${pkgdir}/usr/share/licenses/${pkgname}/"
install -Dm644 "${pkgdir}/opt/apps/cn.bosyun.boardmix/files/LICENSES.chromium.html" -t "${pkgdir}/usr/share/licenses/${pkgname}/"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Medium | 2 |
| 2026-09-16 00:03:17 | Medium | 2 |
| 2026-09-15 00:25:31 | Medium | 2 |
| 2026-09-14 00:27:57 | Medium | 2 |
| 2026-09-13 00:19:54 | Medium | 2 |
| 2026-09-12 00:25:17 | Medium | 2 |
| 2026-09-11 00:19:22 | Medium | 2 |
| 2026-09-10 00:22:44 | Medium | 2 |
| 2026-09-09 00:04:09 | Medium | 2 |
| 2026-09-08 00:18:08 | Medium | 2 |
| 2026-09-07 00:30:15 | Medium | 2 |
| 2026-09-06 00:17:06 | Medium | 2 |
| 2026-09-05 00:16:27 | Medium | 2 |
| 2026-09-04 00:03:13 | Medium | 2 |
| 2026-09-03 00:15:47 | Medium | 2 |
| 2026-09-02 00:02:31 | Medium | 2 |
| 2026-09-01 00:11:19 | Medium | 2 |
| 2026-08-31 00:19:57 | Medium | 2 |
| 2026-08-30 00:04:14 | Medium | 2 |
| 2026-08-29 00:29:17 | Medium | 2 |