swiftpeek-bin

maintainer Orelbi · 0 votes · scanned 2026-08-03 00:08:14.047287
MEDIUM
View on AUR ↗
Why flagged The PKGBUILD downloads and installs a precompiled x86_64 binary from a Cloudflare R2 bucket (pub-a604c65ec55d4555ba01a5dab3d0e2b4.r2.dev) rather than from the official GitHub releases page. This is a personal/unofficial storage host with no verifiable chain of custody back to the upstream project. While sha256sums are present, they only verify integrity against the current content — if the bucket owner replaces the file, the hash would change and users would notice, but the host itself is not a trusted release channel. The binary is executed directly (install -Dm755) and links against GTK/WebKit2 stack, giving it significant attack surface. The correct packaging practice would be to source the binary from GitHub releases. This is a genuine supply-chain concern: an unofficial host serving an executed binary, not a false positive.

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:13 "https://pub-a604c65ec55d4555ba01a5dab3d0e2b4.r2.dev/swiftpeek-${pkgver}-x86_64.tar.gz"
MEDIUM AI review llm_review

An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 82%): The PKGBUILD downloads and installs a precompiled x86_64 binary from a Cloudflare R2 bucket (pub-a604c65ec55d4555ba01a5dab3d0e2b4.r2.dev) rather than from the official GitHub releases page. This is a personal/unofficial storage host with no verifiable chain of custody back to the upstream project. While sha256sums are present, they only verify integrity against the current content — if the bucket owner replaces the file, the hash would change and users would notice, but the host itself is not a trusted release channel. The binary is executed directly (install -Dm755) and links against GTK/WebKit2 stack, giving it significant attack surface. The correct packaging practice would be to source the binary from GitHub releases. This is a genuine supply-chain concern: an unofficial host serving an executed binary, not a false positive.

PKGBUILD

1 offending line(s) highlighted
1pkgname=swiftpeek-bin
2pkgver=0.1.0
3pkgrel=3
4pkgdesc="Ultralight file previewer written in Rust (precompiled binary)"
5arch=('x86_64')
6url="https://github.com/acosta-dev/SwiftPeek"
7license=('MIT')
8depends=('webkit2gtk-4.1' 'gtk3' 'cairo' 'pango' 'glib2' 'hicolor-icon-theme')
9provides=('swiftpeek')
10conflicts=('swiftpeek')
11
12source=(
13 "https://pub-a604c65ec55d4555ba01a5dab3d0e2b4.r2.dev/swiftpeek-${pkgver}-x86_64.tar.gz"
14 "swiftpeek.desktop"
15 "swiftpeek.svg"
16)
17
18sha256sums=(
19 'bcf0d0a6d4fca7af1ed4072bcbbad076cbdad0a2311633e5ddaad86974c676b8'
20 '3eaeaffd9037899ec947dc7f7083d7714f589aad00a95b65633b82bf299d671e'
21 '71682ead9e9ae62f0617026a7a0bb78483b0ca0531c7a2798fe26eea932a4a12'
22)
23
24package() {
25 # Binary
26 install -Dm755 "${srcdir}/swiftpeek" "${pkgdir}/usr/bin/swiftpeek"
27
28 # Desktop entry
29 install -Dm644 "${srcdir}/swiftpeek.desktop" "${pkgdir}/usr/share/applications/swiftpeek.desktop"
30
31 # Icon (SVG for hicolor theme — scales to any resolution)
32 install -Dm644 "${srcdir}/swiftpeek.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/swiftpeek.svg"
33}
34

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