celeste-client-bin

MEDIUM
maintainer orphaned 1 votes scanned 2026-11-01 00:21:48.120785
View on AUR
Why flagged

The PKGBUILD downloads a prebuilt snap binary from api.snapcraft.io and extracts/installs the binary directly. api.snapcraft.io is Canonical's official Snap Store API, so this is a legitimate vendor distribution channel (analogous to downloading from the Ubuntu Snap Store). However, the concern is real from an Arch packaging perspective: snap binaries are not the upstream source, they are pre-compiled opaque blobs from a third-party distribution channel rather than the project's own GitHub releases. The binary is installed directly to /usr/bin without any source build. The sha256sum pins a specific snap revision (_snap token includes revision _36), which mitigates substitution risk somewhat, but the snap store could theoretically serve different content under the same URL in the future. This is a genuine medium-severity supply-chain concern: an executed binary from a non-primary distribution channel (not GitHub releases, not the project's own hosting), even if Canonical's infrastructure is generally trustworthy. The pattern is common in AUR for snap-based packages but does represent a real risk compared to building from source or downloading from the project's own release page.

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:31 source=("${pkgname%-bin}-${pkgver}.snap::https://api.snapcraft.io/api/v1/snaps/download/${_snap}.snap")
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 a prebuilt snap binary from api.snapcraft.io and extracts/installs the binary directly. api.snapcraft.io is Canonical's official Snap Store API, so this is a legitimate vendor distribution channel (analogous to downloading from the Ubuntu Snap Store). However, the concern is real from an Arch packaging perspective: snap binaries are not the upstream source, they are pre-compiled opaque blobs from a third-party distribution channel rather than the project's own GitHub releases. The binary is installed directly to /usr/bin without any source build. The sha256sum pins a specific snap revision (_snap token includes revision _36), which mitigates substitution risk somewhat, but the snap store could theoretically serve different content under the same URL in the future. This is a genuine medium-severity supply-chain concern: an executed binary from a non-primary distribution channel (not GitHub releases, not the project's own hosting), even if Canonical's infrastructure is generally trustworthy. The pattern is common in AUR for snap-based packages but does represent a real risk compared to building from source or downloading from the project's own release page.

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: zxp19821005 <zxp19821005 at 163 dot com>
2# Contributor: Fabio 'Lolix' Loli <fabio.loli@disroot.org> -> https://github.com/FabioLolix
3#_getverurl="https://github.com/flathub/com.hunterwittenborn.Celeste/blob/master/com.hunterwittenborn.Celeste.yml"
4_pkgname=celeste
5pkgname="${_pkgname}-client-bin"
6_appname=com.hunterwittenborn.Celeste
7pkgver=0.8.3
8_snap="a9zAmHVl4doDwIGkptVyA7VI7fMlPPpE_36"
9pkgrel=3
10pkgdesc="GUI file synchronization client that can sync with any cloud provider "
11arch=('x86_64')
12url="https://github.com/hwittenborn/celeste"
13license=('GPL-3.0-or-later')
14provides=(
15 "${pkgname%-bin}=${pkgver}"
16 "${_pkgname}=${pkgver}"
17)
18conflicts=(
19 "${pkgname%-bin}"
20 "${_pkgname}"
21)
22depends=(
23 'libadwaita'
24 'rclone'
25)
26makedepends=(
27 'squashfs-tools'
28)
29source=()
30
31source=("${pkgname%-bin}-${pkgver}.snap::https://api.snapcraft.io/api/v1/snaps/download/${_snap}.snap")
32sha256sums=('b8dc5d75c795930529018096523ade359aff22543a18c9eaeff8b20bbf0d7f38')
33prepare() {
34 unsquashfs -f "${srcdir}/${pkgname%-bin}-${pkgver}.snap"
35 sed -e "
36 s/Exec=${_pkgname}/Exec=${pkgname%-bin}/g
37 s/Icon=${_appname}/Icon=${pkgname%-bin}/g
38 " -i "${srcdir}/squashfs-root/usr/share/applications/${_appname}.desktop"
39 sed -i "s/${_appname}/${pkgname%-bin}/g" "${srcdir}/squashfs-root/usr/share/metainfo/${_appname}.metainfo.xml"
40}
41package() {
42 install -Dm755 "${srcdir}/squashfs-root/usr/bin/${_pkgname}" "${pkgdir}/usr/bin/${pkgname%-bin}"
43 install -Dm644 "${srcdir}/squashfs-root/usr/share/applications/${_appname}.desktop" "${pkgdir}/usr/share/applications/${pkgname%-bin}.desktop"
44 install -Dm644 "${srcdir}/squashfs-root/usr/share/icons/hicolor/scalable/apps/${_appname}.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/app/${pkgname%-bin}.svg"
45}

Scan history

Scanned at (UTC)SeverityRules
2026-11-01 00:21:48 Medium 2
2026-10-31 00:07:41 Medium 2
2026-10-30 00:29:30 Medium 2
2026-10-29 00:13:55 Medium 2
2026-10-28 00:06:54 Medium 2
2026-10-27 00:23:28 Medium 2
2026-10-26 00:12:40 Medium 2
2026-10-25 00:20:48 Medium 2
2026-10-24 00:14:55 Medium 2
2026-10-23 00:02:19 Medium 2
2026-10-22 00:13:10 Medium 2
2026-10-21 00:12:50 Medium 2
2026-10-20 00:10:31 Medium 2
2026-10-19 00:03:55 Medium 2
2026-10-18 00:06:55 Medium 2
2026-10-17 00:21:55 Medium 2
2026-10-16 00:12:47 Medium 2
2026-10-15 00:28:05 Medium 2
2026-10-14 00:06:47 Medium 2
2026-10-13 00:23:45 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