synthos-git
LOW
maintainer vitamindb
0 votes
scanned 2026-09-17 11:25:44.432472
Why flagged
The package builds from source hosted on the project's own GitHub repositories; skipped checksums are common for git sources and do not imply remote code execution risk.
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 builds from source hosted on the project's own GitHub repositories; skipped checksums are common for git sources and do not imply remote code execution risk.
PKGBUILD
1
# Maintainer: Alexeyev Vitaly <vitamindbnfkz@gmail.com>
2
pkgname=synthos-git
3
_pkgname=synthos
4
pkgver=0.2.0.r375.g07d278e
5
pkgrel=1
6
pkgdesc="Local AI desktop studio: agentic chat, notes workspace, node editor for video/music/speech, code editor — on the native synaptix engine (git)"
7
arch=("x86_64")
8
url="https://github.com/VitaminDB/synthos"
9
license=("MIT" "Apache-2.0")
10
11
depends=(
12
"alsa-lib"
13
"fontconfig"
14
"vulkan-icd-loader"
15
"libxkbcommon"
16
"wayland"
17
"gtk3"
18
"ffmpeg"
19
)
20
# nvcc читается на этапе сборки, чтобы зафиксировать версию CUDA API; сам
21
# драйвер грузится динамически в рантайме.
22
makedepends=(
23
"git"
24
"rust"
25
"cuda"
26
"pkgconf"
27
"clang"
28
)
29
optdepends=(
30
"nvidia-utils: GPU-инференс (CUDA-драйвер грузится в рантайме)"
31
)
32
# makepkg.conf по умолчанию включает lto и добавляет -flto=auto в CFLAGS: C-код,
33
# который крейты собирают сами (встроенный SQLite у rusqlite), становится
34
# LTO-байткодом GCC, а rust-lld (линкер Rust по умолчанию с 1.90) его не читает —
35
# линковка падает на undefined symbol sqlite3_*. LTO самого Rust задаёт профиль
36
# release в Cargo.toml, от этой опции оно не зависит.
37
options=("!lto")
38
provides=("$_pkgname=${pkgver%%.r*}")
39
conflicts=("$_pkgname" "$_pkgname-bin")
40
41
# synthos path-зависит на соседние syngui и synaptix, и makepkg кладёт все три
42
# рядом в $srcdir — ровно та раскладка, которую ждут манифесты.
43
#
44
# Берётся master всех трёх, а не пины из packaging/deps.lock: пины описывают
45
# релиз по тегу и устаревают, как только master synthos переходит на новый API
46
# syngui. Master же пушится согласованно, и окно рассинхрона — минуты.
47
source=(
48
"$_pkgname::git+$url.git"
49
"syngui::git+https://github.com/VitaminDB/syngui.git"
50
"synaptix::git+https://github.com/VitaminDB/synaptix.git"
51
)
52
sha256sums=("SKIP" "SKIP" "SKIP")
53
54
pkgver() {
55
cd "$srcdir/$_pkgname"
56
local ver
57
ver="$(grep -m1 '^pkgver=' packaging/PKGBUILD | cut -d= -f2)"
58
printf "%s.r%s.g%s" "$ver" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
59
}
60
61
build() {
62
cd "$srcdir/$_pkgname"
63
64
export RUSTUP_TOOLCHAIN=stable
65
export CARGO_TARGET_DIR=target
66
# Без --all-features: в манифесте есть фичи android и testing, они здесь
67
# только навредят. Без --frozen: Cargo.lock synthos не обязан совпадать с
68
# версиями крейтов на master syngui/synaptix.
69
cargo build --release -p synthos
70
}
71
72
package() {
73
cd "$srcdir/$_pkgname"
74
75
install -Dm755 "target/release/synthos" "$pkgdir/usr/bin/synthos"
76
install -Dm644 "packaging/synthos.desktop" \
77
"$pkgdir/usr/share/applications/synthos.desktop"
78
install -Dm644 "packaging/synthos.svg" \
79
"$pkgdir/usr/share/icons/hicolor/scalable/apps/synthos.svg"
80
81
install -Dm644 "README.md" "$pkgdir/usr/share/doc/$_pkgname/README.md"
82
install -Dm644 "LICENSE-MIT" "$pkgdir/usr/share/licenses/$pkgname/LICENSE-MIT"
83
install -Dm644 "LICENSE-APACHE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE-APACHE"
84
}
85
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 11:25:44 | Low | 2 |