suzuri-bin

LOW
maintainer Cranyozen 1 votes scanned 2026-10-17 00:21:55.226236
View on AUR
Why flagged

The package installs a prebuilt binary from the project's official GitHub releases, which is a normal AUR packaging practice; the low severity is due to limited votes and recent upload, not malicious content.

Triggered rules

Low Few votes, recently uploaded zero_votes_recent

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

Low AI review llm_review

An AI model (qwen/qwen3-235b-a22b-2507) reviewed this and agrees it is LOW (confidence 95%): The package installs a prebuilt binary from the project's official GitHub releases, which is a normal AUR packaging practice; the low severity is due to limited votes and recent upload, not malicious content.

PKGBUILD

1# Maintainer: Cranyozen <cranyozen@outlook.com>
2# suzuri is NOT in the AUR; this PKGBUILD packages the official prebuilt
3# Linux release tarball so that paru/pacman can manage it.
4
5pkgname=suzuri-bin
6pkgver=0.5.6
7pkgrel=1
8pkgdesc='Writing environment built on Zed: Obsidian-style live preview, Typst/LaTeX preview, PDF pane'
9arch=('x86_64' 'aarch64')
10url='https://github.com/harrywang/suzuri'
11license=('GPL-3.0-or-later' 'Apache-2.0')
12
13depends=('alsa-lib'
14 'gcc-libs'
15 'glib2'
16 'glibc'
17 'libglvnd'
18 'libx11'
19 'libxcb'
20 'libxkbcommon'
21 'libxkbcommon-x11'
22 'vulkan-driver'
23 'vulkan-icd-loader'
24 'wayland'
25 'zlib')
26
27optdepends=('libpulse: PulseAudio audio backend'
28 'typst: Typst live preview compiler'
29 'tectonic: LaTeX live preview compiler (alternative to TeX Live)'
30 'openbsd-netcat: SSH remote development support'
31 'clang: improved C/C++ language support'
32 'cmake: building C/C++ projects'
33 'gopls: improved Go language support'
34 'pyright: improved Python language support'
35 'rust-analyzer: improved Rust language support'
36 'typescript-language-server: improved TypeScript/JavaScript support'
37 'org.freedesktop.secrets: to keep you logged into your Suzuri account')
38
39provides=('suzuri')
40conflicts=('suzuri' 'suzuri-git')
41
42source_x86_64=("${pkgname}-${pkgver}-x86_64.tar.gz::${url}/releases/download/suzuri-v${pkgver}/suzuri-linux-x86_64.tar.gz")
43source_aarch64=("${pkgname}-${pkgver}-aarch64.tar.gz::${url}/releases/download/suzuri-v${pkgver}/suzuri-linux-aarch64.tar.gz")
44sha256sums_x86_64=('5eb8a9061f053d72816185465a74c0069579ee42d06e5e15246d74eb6504e529')
45sha256sums_aarch64=('0d50f77f17704bfe040e688c11c23f7afec68fff66233720c8acfa1a60d89f74')
46
47package() {
48 cd 'suzuri.app'
49
50 # Keep the upstream app-directory layout: the launcher resolves its main
51 # binary through '../libexec/zed-editor' relative to its own path.
52 # Installing under /usr/lib/suzuri (and not /usr/lib/zed) keeps this package
53 # installable alongside extra/zed, which owns /usr/lib/zed/zed-editor.
54 install -Dm755 'bin/suzuri' "${pkgdir}/usr/lib/suzuri/bin/suzuri"
55 install -Dm755 'libexec/zed-editor' "${pkgdir}/usr/lib/suzuri/libexec/zed-editor"
56
57 # Wrapper: hand updates to the package manager. The editor polls GitHub for
58 # releases and self-installs unless ZED_UPDATE_EXPLANATION is set in the
59 # environment; it also turns "Check for Updates" into an informational
60 # prompt. See crates/auto_update/src/auto_update.rs.
61 install -d "${pkgdir}/usr/bin"
62 cat > "${pkgdir}/usr/bin/suzuri" <<'EOF'
63#!/bin/sh
64export ZED_UPDATE_EXPLANATION='Suzuri is managed by your package manager. Update with: paru -Syu'
65exec /usr/lib/suzuri/bin/suzuri "$@"
66EOF
67 chmod 755 "${pkgdir}/usr/bin/suzuri"
68
69 # Desktop entry.
70 #
71 # A compositor resolves a window's icon by matching its app_id against a
72 # desktop file name. Through 0.5.4 those two disagreed on the dev channel
73 # (app_id 'dev.zed.Zed-Dev' vs file 'app.suzuri.Suzuri.desktop'), so this
74 # package renamed the file to compensate. Suzuri 0.5.5 fixed the runtime side
75 # (ReleaseChannel::app_id() now returns 'app.suzuri.Suzuri'), so the rename is
76 # gone. Keep whichever name upstream ships, derived from the tarball rather
77 # than hard-coded, and only make the Exec paths absolute.
78 mapfile -t desktops < <(find share/applications -maxdepth 1 -name '*.desktop')
79 if (( ${#desktops[@]} != 1 )); then
80 echo "error: expected exactly 1 .desktop file, found ${#desktops[@]}" >&2
81 return 1
82 fi
83 desktop="${pkgdir}/usr/share/applications/${desktops[0]##*/}"
84 install -Dm644 "${desktops[0]}" "$desktop"
85 sed -i -e 's|^Exec=suzuri |Exec=/usr/bin/suzuri |' \
86 -e 's|^TryExec=suzuri$|TryExec=/usr/bin/suzuri|' \
87 "$desktop"
88
89 # Icons into hicolor so the desktop entry's plain 'Icon=suzuri' resolves.
90 install -Dm644 'share/icons/hicolor/512x512/apps/suzuri.png' \
91 "${pkgdir}/usr/share/icons/hicolor/512x512/apps/suzuri.png"
92 install -Dm644 'share/icons/hicolor/1024x1024/apps/suzuri.png' \
93 "${pkgdir}/usr/share/icons/hicolor/1024x1024/apps/suzuri.png"
94
95 # Licenses (licenses.md carries the bundled theme/component licenses)
96 install -Dm644 'licenses.md' "${pkgdir}/usr/share/licenses/${pkgname}/licenses.md"
97}
98

Changes since previous scan

--- PKGBUILD @ 2026-10-15 00:28
+++ PKGBUILD @ 2026-10-17 00:21
@@ -3,7 +3,7 @@
# Linux release tarball so that paru/pacman can manage it.
pkgname=suzuri-bin
-pkgver=0.5.5
+pkgver=0.5.6
pkgrel=1
pkgdesc='Writing environment built on Zed: Obsidian-style live preview, Typst/LaTeX preview, PDF pane'
arch=('x86_64' 'aarch64')
@@ -41,8 +41,8 @@
source_x86_64=("${pkgname}-${pkgver}-x86_64.tar.gz::${url}/releases/download/suzuri-v${pkgver}/suzuri-linux-x86_64.tar.gz")
source_aarch64=("${pkgname}-${pkgver}-aarch64.tar.gz::${url}/releases/download/suzuri-v${pkgver}/suzuri-linux-aarch64.tar.gz")
-sha256sums_x86_64=('ece1c321194c2e91f10811ccff912ada94a20d374e9d4c33b01dd5e5ecf73fe9')
-sha256sums_aarch64=('c52f06f4039be5a352ddddfda2e71a3d4716d6e324663591ec161f603406b3d5')
+sha256sums_x86_64=('5eb8a9061f053d72816185465a74c0069579ee42d06e5e15246d74eb6504e529')
+sha256sums_aarch64=('0d50f77f17704bfe040e688c11c23f7afec68fff66233720c8acfa1a60d89f74')
package() {
cd 'suzuri.app'

Scan history

Scanned at (UTC)SeverityRules
2026-10-17 00:21:55 Low 2
2026-10-16 00:12:47 Low 2
2026-10-15 09:11:05 Low 2
2026-10-15 00:28:05 Low 2
2026-10-14 03:18:50 Low 2
2026-10-14 00:06:47 Low 2
2026-10-13 09:16:20 Low 2
2026-10-13 00:23:45 Low 2
2026-10-12 13:13:52 Low 2
2026-10-12 11:13:20 Low 2

Report a package

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

0 / 4000
Your suggestion