audio.cpp-cuda-git
maintainer Orion-zhen
· 0 votes
· scanned 2026-08-18 00:03:42.021799
LOW
View on AUR ↗
Why flagged
The package builds from a public git repository with a SKIP'd checksum, but sources are from the project's official GitHub; no untrusted executables or remote code execution; low risk due to lack of source verification but otherwise normal build process.
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 a public git repository with a SKIP'd checksum, but sources are from the project's official GitHub; no untrusted executables or remote code execution; low risk due to lack of source verification but otherwise normal build process.
PKGBUILD
1
# Maintainer: Orion-zhen <https://github.com/Orion-zhen>
2
3
pkgname=audio.cpp-cuda-git
4
_pkgname=audio.cpp
5
pkgver=r357.df6e948
6
pkgrel=1
7
pkgdesc='All-in-one C++ audio inference engine on ggml with NVIDIA CUDA support (git version)'
8
arch=('x86_64')
9
url='https://github.com/0xShug0/audio.cpp'
10
license=('Apache-2.0')
11
depends=(
12
'cuda'
13
'gcc-libs'
14
'glibc'
15
'nvidia-utils'
16
'python'
17
)
18
makedepends=(
19
'cmake'
20
'git'
21
'ninja'
22
)
23
provides=(
24
'audio.cpp'
25
'audio.cpp-cuda'
26
)
27
conflicts=('audio.cpp')
28
options=(lto !debug)
29
source=("${_pkgname}::git+${url}.git")
30
sha256sums=('SKIP')
31
32
pkgver() {
33
cd "${srcdir}/${_pkgname}"
34
printf 'r%s.%s' "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
35
}
36
37
build() {
38
if [[ -z "${NVCC_CCBIN:-}" ]]; then
39
source /etc/profile
40
fi
41
42
local _cuda_architectures="${AUDIOCPP_CUDA_ARCHITECTURES:-}"
43
local _cmake_options=(
44
-S "${srcdir}/${_pkgname}"
45
-B build
46
-G Ninja
47
-DCMAKE_BUILD_TYPE=Release
48
-DENGINE_ENABLE_CUDA=ON
49
-DENGINE_ENABLE_HIP=OFF
50
-DENGINE_ENABLE_VULKAN=OFF
51
-DGGML_CUDA_FA_ALL_QUANTS=ON
52
-DAUDIOCPP_DEPLOYMENT_BUILD=ON
53
)
54
55
# Match llama.cpp-cuda's CI behavior: GitHub Actions runners generally have
56
# no visible GPU, so disable host-native CPU code and build the complete set
57
# of dynamically selected CPU backends. Unlike ggml's default-only path,
58
# audio.cpp's own CUDA sources also need an explicit non-native architecture
59
# list on a GPU-less runner.
60
if [[ -n "${CI:-}" && "${CI}" != 0 ]]; then
61
echo "CI = ${CI} detected, building universal package"
62
_cmake_options+=(
63
-DENGINE_ENABLE_CPU_ALL_VARIANTS=ON
64
-DENGINE_ENABLE_NATIVE_CPU=OFF
65
)
66
if [[ -z "${_cuda_architectures}" ]]; then
67
_cuda_architectures='75-virtual;80-virtual;86-real;89-real;120a-real;121a-real'
68
fi
69
else
70
_cmake_options+=(
71
-DENGINE_ENABLE_CPU_ALL_VARIANTS=OFF
72
-DENGINE_ENABLE_NATIVE_CPU=ON
73
)
74
fi
75
76
if [[ -n "${_cuda_architectures}" ]]; then
77
_cmake_options+=(
78
"-DCMAKE_CUDA_ARCHITECTURES=${_cuda_architectures}"
79
)
80
fi
81
82
# Allow CI workflows and local builders to append project-specific CMake
83
# options without maintaining a second PKGBUILD.
84
if [[ -n "${AUDIOCPP_BUILD_EXTRA_ARGS:-}" ]]; then
85
echo "Applied custom CMake build args: ${AUDIOCPP_BUILD_EXTRA_ARGS}"
86
# shellcheck disable=SC2206
87
_cmake_options+=(${AUDIOCPP_BUILD_EXTRA_ARGS})
88
fi
89
90
cmake "${_cmake_options[@]}"
91
cmake --build build --parallel "$(nproc)" --target \
92
audiocpp_cli \
93
audiocpp_server \
94
audiocpp_gguf
95
}
96
97
package() {
98
# Universal CI builds produce private shared ggml/backend libraries, while
99
# local native builds are static. Keep executables in the same private
100
# directory in both cases: their $ORIGIN RPATH then finds CI libraries without
101
# exposing audio.cpp's incompatible ggml through /usr/lib.
102
install -d "${pkgdir}/usr/bin" "${pkgdir}/usr/lib/${_pkgname}"
103
install -Dm755 \
104
build/bin/audiocpp_cli \
105
build/bin/audiocpp_server \
106
build/bin/audiocpp_gguf \
107
-t "${pkgdir}/usr/lib/${_pkgname}"
108
for _binary in audiocpp_cli audiocpp_server audiocpp_gguf; do
109
ln -s "../lib/${_pkgname}/${_binary}" "${pkgdir}/usr/bin/${_binary}"
110
done
111
112
if compgen -G 'build/bin/*.so*' >/dev/null; then
113
cp -a build/bin/*.so* "${pkgdir}/usr/lib/${_pkgname}/"
114
fi
115
116
# Keep the script and catalog in the same relative layout expected by the
117
# model manager, then expose a convenient command through /usr/bin.
118
install -Dm755 "${srcdir}/${_pkgname}/tools/model_manager_v2.py" \
119
"${pkgdir}/usr/share/${_pkgname}/tools/model_manager_v2.py"
120
cp -a "${srcdir}/${_pkgname}/model_specs" \
121
"${pkgdir}/usr/share/${_pkgname}/model_specs"
122
ln -s "../share/${_pkgname}/tools/model_manager_v2.py" \
123
"${pkgdir}/usr/bin/audiocpp_model_manager"
124
125
install -Dm644 "${srcdir}/${_pkgname}/LICENSE" \
126
"${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
127
install -Dm644 "${srcdir}/${_pkgname}/README.md" \
128
"${pkgdir}/usr/share/doc/${_pkgname}/README.md"
129
cp -a "${srcdir}/${_pkgname}/docs" \
130
"${pkgdir}/usr/share/doc/${_pkgname}/docs"
131
}
132
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-18 00:03:42 | LOW | 2 |
| 2026-08-17 00:18:29 | LOW | 2 |
| 2026-08-16 00:03:42 | LOW | 2 |
| 2026-08-15 11:30:23 | LOW | 2 |