publishport-bin

maintainer wearzdk · 1 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The package downloads a prebuilt .deb from the project's own storage domain and extracts it; while the host is not a standard release platform, it is plausibly official and used consistently by the project, with versioned URLs and verified checksums, limiting supply-chain risk to low.

Triggered rules

LOW AI review downgraded a static finding 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 .deb from the project's own storage domain and extracts it; while the host is not a standard release platform, it is plausibly official and used consistently by the project, with versioned URLs and verified checksums, limiting supply-chain risk to low.

1 higher static finding superseded - not the current verdict (shown for transparency)
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:23 source=("publishport-${pkgver}-amd64.deb::https://storage2.maoertech.cn/desktop/publishport-${pkgver}-amd64.deb")

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: PublishPort <karentia@maoertech.cn>
2#
3# PublishPort 是闭源产品,安装包不放在 GitHub Releases,而是由发版 CI 构建后
4# 上传到自有 storage(storage2.maoertech.cn),下载 URL 由版本号确定性推导。
5# 因此本包是「重打包预编译产物」的 -bin 包:下载官方 .deb,解出文件装进系统。
6# 版本号与 sha256sums 由发版工作流(.github/workflows/release-desktop.yml 的
7# publish-aur 任务)在每次 desktop-v* tag 发布时自动改写并推送到 AUR。
8pkgname=publishport-bin
9pkgver=1.1.0
10pkgrel=1
11pkgdesc="让线上 AI 用你本机真实登录环境,一键发布内容到小红书/知乎/微博/B站/Twitter 等平台(GUI 客户端)"
12arch=('x86_64')
13url="https://publishport.app"
14license=('LicenseRef-proprietary')
15# webkit2gtk-4.1 已带来 gtk3 / libsoup3;二进制直接链接 gtk3,故显式列出。
16# libayatana-appindicator 供托盘图标在运行时按需加载(不被 webkit 带入)。
17depends=('webkit2gtk-4.1' 'gtk3' 'libayatana-appindicator')
18provides=('publishport')
19conflicts=('publishport')
20# 预编译二进制,禁止 strip / 重新打包,避免破坏官方产物。
21options=('!strip')
22install="${pkgname}.install"
23source=("publishport-${pkgver}-amd64.deb::https://storage2.maoertech.cn/desktop/publishport-${pkgver}-amd64.deb")
24noextract=("publishport-${pkgver}-amd64.deb")
25sha256sums=('6ed1fdd2f5d219a64a70b68476d7c077f263f5ef8b27cd7837a7711dfa66fe4e')
26
27package() {
28 cd "$srcdir"
29 # .deb 是 ar 归档,libarchive(bsdtar) 能直接拆;再解内层 data.tar.*。
30 bsdtar -xf "publishport-${pkgver}-amd64.deb"
31 bsdtar -xf data.tar.*
32
33 # 二进制装到 /usr/lib/publishport,/usr/bin 放符号链接做命令入口。
34 install -Dm755 "usr/bin/desktop" "$pkgdir/usr/lib/publishport/publishport"
35 install -dm755 "$pkgdir/usr/bin"
36 ln -s "/usr/lib/publishport/publishport" "$pkgdir/usr/bin/publishport"
37
38 # agent.js 必须放在 Tauri 实际解析的资源目录。Tauri 在 Linux 下按 productName
39 # 把资源目录定位到 /usr/lib/PublishPort(大写),与可执行文件实际所在目录无关
40 # (即使经 /usr/bin 符号链接启动也一样)——官方 .deb 正是放在这里。早先误以为
41 # 它按「可执行文件同级目录」解析、装进了 /usr/lib/publishport/resources(小写),
42 # 结果 Tauri 找不到 agent 入口、回退到构建机源码路径(/home/runner/...),
43 # bun 启动即失败,GUI 永远卡在「本地执行器连接中…」。保持与官方 .deb 一致。
44 install -Dm644 "usr/lib/PublishPort/resources/agent.js" \
45 "$pkgdir/usr/lib/PublishPort/resources/agent.js"
46
47 # 桌面入口:上游 .deb 用通用名 desktop,这里改用 publishport,避免命名污染。
48 install -Dm644 /dev/stdin "$pkgdir/usr/share/applications/publishport.desktop" <<'EOF'
49[Desktop Entry]
50Name=PublishPort
51Comment=让线上 AI 经你本机的真实环境发布内容
52Exec=publishport
53Icon=publishport
54StartupWMClass=publishport
55Terminal=false
56Type=Application
57Categories=Network;Utility;
58EOF
59
60 for size in 32x32 128x128 256x256@2; do
61 install -Dm644 "usr/share/icons/hicolor/${size}/apps/desktop.png" \
62 "$pkgdir/usr/share/icons/hicolor/${size}/apps/publishport.png"
63 done
64}
65

Changes since previous scan

--- PKGBUILD @ 2026-07-24 00:02
+++ PKGBUILD @ 2026-08-03 00:08
@@ -6,7 +6,7 @@
# 版本号与 sha256sums 由发版工作流(.github/workflows/release-desktop.yml 的
# publish-aur 任务)在每次 desktop-v* tag 发布时自动改写并推送到 AUR。
pkgname=publishport-bin
-pkgver=1.0.0
+pkgver=1.1.0
pkgrel=1
pkgdesc="让线上 AI 用你本机真实登录环境,一键发布内容到小红书/知乎/微博/B站/Twitter 等平台(GUI 客户端)"
arch=('x86_64')
@@ -22,7 +22,7 @@
install="${pkgname}.install"
source=("publishport-${pkgver}-amd64.deb::https://storage2.maoertech.cn/desktop/publishport-${pkgver}-amd64.deb")
noextract=("publishport-${pkgver}-amd64.deb")
-sha256sums=('87a4bce24671aa1055059639b02be10f99104c8352d4e29ea14efb76ada94b64')
+sha256sums=('6ed1fdd2f5d219a64a70b68476d7c077f263f5ef8b27cd7837a7711dfa66fe4e')
package() {
cd "$srcdir"

Scan history

Scanned at (UTC)SeverityRules
2026-08-03 00:08:14 LOW 2
2026-08-02 00:16:08 LOW 2
2026-08-01 00:11:18 LOW 2
2026-07-31 00:14:10 LOW 2
2026-07-30 00:17:23 LOW 2
2026-07-29 00:25:53 LOW 2
2026-07-28 00:07:28 LOW 2
2026-07-27 00:24:32 LOW 2
2026-07-26 00:07:32 LOW 2
2026-07-25 00:13:44 LOW 2
2026-07-24 11:27:50 MEDIUM 1
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

Report a package

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

0 / 4000
Your suggestion