mianling-apply-bin
Downloads and installs a prebuilt proprietary binary from a non-standard personal/company storage host (storage2.maoertech.cn) that is not an established official release infrastructure; while the checksum is provided and the maintainer claims it is the project's own CI, the host is a personal object store that could be silently swapped, making this a typical unverifiable prebuilt binary scenario.
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:24
source=("mianling-apply-${pkgver}-amd64.deb::https://storage2.maoertech.cn/job-apply/mianling-apply-${pkgver}-amd64.deb")
zero_votes_recent
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
llm_review
An AI model (anthropic/claude-sonnet-4.6) reviewed this and agrees it is MEDIUM (confidence 70%): Downloads and installs a prebuilt proprietary binary from a non-standard personal/company storage host (storage2.maoertech.cn) that is not an established official release infrastructure; while the checksum is provided and the maintainer claims it is the project's own CI, the host is a personal object store that could be silently swapped, making this a typical unverifiable prebuilt binary scenario.
PKGBUILD
1 offending line(s) highlighted# Maintainer: Mianling AI <karentia@maoertech.cn>
#
# 面灵网申是闭源产品,安装包不放 GitHub Releases,而是由发版 CI 构建后上传到自有
# storage(storage2.maoertech.cn),下载 URL 由版本号确定性推导。所以本包是
# 「重打包预编译产物」的 -bin 包:下载官方 .deb,把里面的文件装进系统。
#
# pkgver 与 sha256sums 由发版工作流(.github/workflows/apply-release.yml 的
# publish-aur 任务)在每次 apply-v* tag 发布时自动改写并推送到 AUR,不要手改。
pkgname=mianling-apply-bin
pkgver=0.1.1
pkgrel=1
pkgdesc="面灵网申 — 校招网申助手:一处填好档案,打开投递页自动填好重复字段,最后一步由你点"
arch=('x86_64')
url="https://www.mianlingai.com/job-apply"
license=('LicenseRef-proprietary')
# webkit2gtk-4.1 会带来 gtk3 / libsoup3,但二进制直接链接 gtk3,所以显式列出。
# 没有托盘图标,因此不需要 libayatana-appindicator。
depends=('webkit2gtk-4.1' 'gtk3')
provides=('mianling-apply')
conflicts=('mianling-apply')
# 预编译二进制,禁止 strip / 重新打包,避免破坏官方产物。
options=('!strip')
install="${pkgname}.install"
source=("mianling-apply-${pkgver}-amd64.deb::https://storage2.maoertech.cn/job-apply/mianling-apply-${pkgver}-amd64.deb")
noextract=("mianling-apply-${pkgver}-amd64.deb")
sha256sums=('d014bedd759f1e28d78de5f6b9ebe35050ccff477a2b402b0741d1d024e7c51e')
package() {
cd "$srcdir"
# .deb 是 ar 归档,libarchive(bsdtar) 能直接拆;再解内层 data.tar.*。
bsdtar -xf "mianling-apply-${pkgver}-amd64.deb"
bsdtar -xf data.tar.*
# 官方 .deb 里所有文件名已经是 mianling-apply(Tauri 的 productName 在
# src-tauri/tauri.linux.conf.json 里就是这个),不需要改名,原样搬过来即可。
install -Dm755 "usr/bin/mianling-apply" "$pkgdir/usr/bin/mianling-apply"
install -Dm644 "usr/share/applications/mianling-apply.desktop" \
"$pkgdir/usr/share/applications/mianling-apply.desktop"
# 图标尺寸以 .deb 里实际有的为准,别写死一份清单——Tauri 换了图标配置就会对不上。
for icon in usr/share/icons/hicolor/*/apps/mianling-apply.png; do
[[ -e "$icon" ]] || continue
install -Dm644 "$icon" "$pkgdir/$icon"
done
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-29 19:43:53 | Medium | 3 |
| 2026-08-29 19:40:31 | Medium | 3 |