zenith-gamestream
LOW
maintainer y0no
0 votes
scanned 2026-09-24 09:42:26.093386
Why flagged
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
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.
PKGBUILD
1
# Maintainer: Yoann ONO <contact@y0no.fr>
2
3
pkgname=zenith-gamestream
4
pkgver=2026.730.002631
5
pkgrel=2
6
pkgdesc='Linux game streaming host for Moonlight, forked from Sunshine'
7
arch=('x86_64' 'aarch64')
8
url='https://github.com/jacksonpate/zenith'
9
license=('GPL-3.0-only')
10
depends=(
11
'avahi'
12
'curl'
13
'glib2'
14
'icu'
15
'kmod'
16
'libcap'
17
'libdrm'
18
'libevdev'
19
'libglvnd'
20
'libmfx'
21
'libnotify'
22
'libpipewire'
23
'libpulse'
24
'libva'
25
'libx11'
26
'libxcb'
27
'libxext'
28
'libxfixes'
29
'libxrandr'
30
'libxtst'
31
'mesa'
32
'miniupnpc'
33
'numactl'
34
'openssl'
35
'opus'
36
'python'
37
'qt6-base'
38
'qt6-svg'
39
'sudo'
40
'systemd'
41
'vulkan-icd-loader'
42
'wayland'
43
'which'
44
)
45
makedepends=(
46
'appstream'
47
'cmake'
48
'desktop-file-utils'
49
'git'
50
'ninja'
51
'nlohmann-json'
52
'nodejs'
53
'npm'
54
'python-jinja'
55
'python-setuptools'
56
'shaderc'
57
'uv'
58
'vulkan-headers'
59
)
60
# Set ZENITH_USE_CUDA=1 before makepkg -s to install CUDA build dependencies.
61
if [[ ${ZENITH_USE_CUDA:-auto} == 1 ]]; then
62
makedepends_x86_64=('cuda' 'gcc15')
63
fi
64
optdepends=(
65
'evdi-dkms: virtual display fallback when all GPU ports are occupied'
66
'libva-mesa-driver: hardware encoding on AMD GPUs'
67
'python-gobject: GNOME virtual display control'
68
'wlr-randr: virtual display control on Niri and wlroots compositors'
69
)
70
conflicts=('sunshine' 'sunshine-bin' 'zenith' 'zenith-bin')
71
install=zenith-gamestream.install
72
73
_commit=8f5f0e95569384d4d59dad8c4fa153c287ac7670
74
_ffmpeg_tag=v2026.708.4843
75
source=(
76
"zenith::git+https://github.com/jacksonpate/zenith.git#commit=${_commit}"
77
'zenith-gamestream.conf'
78
)
79
source_x86_64=("Linux-x86_64-ffmpeg.tar.gz::https://github.com/jacksonpate/build-deps/releases/download/${_ffmpeg_tag}/Linux-x86_64-ffmpeg.tar.gz")
80
source_aarch64=("Linux-aarch64-ffmpeg.tar.gz::https://github.com/jacksonpate/build-deps/releases/download/${_ffmpeg_tag}/Linux-aarch64-ffmpeg.tar.gz")
81
sha256sums=('SKIP' '0d328038322f62ff1f3319666df5f8f58c0a028415a917ad247b0446c1ff90f5')
82
sha256sums_x86_64=('727256835b71bc203e962f3c6c0ee58ee37ae344c453a11b691298aa94136367')
83
sha256sums_aarch64=('85e2797aeebb799af32803f93d6aedafd1147dc24fb3efdbcd8f464677838157')
84
85
prepare() {
86
cd "$srcdir/zenith"
87
git submodule update --init --recursive --depth 1 -- \
88
third-party/Simple-Web-Server \
89
third-party/glad \
90
third-party/inputtino \
91
third-party/libdisplaydevice \
92
third-party/lizardbyte-common \
93
third-party/moonlight-common-c \
94
third-party/nanors \
95
third-party/nv-codec-headers \
96
third-party/plasma-wayland-protocols \
97
third-party/tray \
98
third-party/wayland-protocols \
99
third-party/wlr-protocols
100
}
101
102
build() {
103
export BRANCH=master BUILD_VERSION="v$pkgver" COMMIT="$_commit"
104
105
local cmake_options=(
106
-S "$srcdir/zenith"
107
-B "$srcdir/build"
108
-G Ninja
109
-DCMAKE_BUILD_TYPE=Release
110
-DCMAKE_INSTALL_PREFIX=/usr
111
-DCMAKE_INSTALL_LIBDIR=lib
112
-DBUILD_DOCS=OFF
113
-DBUILD_TESTS=OFF
114
-DSUNSHINE_ASSETS_DIR=share/zenith
115
-DSUNSHINE_EXECUTABLE_PATH=/usr/bin/zenith
116
-DSUNSHINE_PUBLISHER_NAME=jacksonpate
117
-DSUNSHINE_PUBLISHER_WEBSITE=https://github.com/jacksonpate/zenith
118
-DSUNSHINE_PUBLISHER_ISSUE_URL=https://github.com/jacksonpate/zenith/issues
119
-DSUNSHINE_SYSTEM_VULKAN_HEADERS=ON
120
-DFFMPEG_PREPARED_BINARIES="$srcdir/ffmpeg"
121
)
122
123
local use_cuda=${ZENITH_USE_CUDA:-auto}
124
if [[ $use_cuda == auto ]]; then
125
if [[ $CARCH == 'x86_64' && -x /opt/cuda/bin/nvcc ]] && command -v g++-15 >/dev/null; then
126
use_cuda=1
127
else
128
use_cuda=0
129
fi
130
fi
131
132
if [[ $CARCH == 'x86_64' && $use_cuda == 1 ]]; then
133
export CC=gcc-15 CXX=g++-15 CUDA_PATH=/opt/cuda
134
cmake_options+=(
135
-DSUNSHINE_ENABLE_CUDA=ON
136
-DCMAKE_CUDA_COMPILER=/opt/cuda/bin/nvcc
137
-DCMAKE_CUDA_HOST_COMPILER=/usr/bin/g++-15
138
)
139
else
140
cmake_options+=(-DSUNSHINE_ENABLE_CUDA=OFF)
141
fi
142
143
cmake "${cmake_options[@]}"
144
cmake --build "$srcdir/build" --parallel 4
145
}
146
147
check() {
148
appstreamcli validate --no-net "$srcdir/build/io.github.jacksonpate.Zenith.metainfo.xml"
149
desktop-file-validate "$srcdir/build"/*.desktop
150
"$srcdir/build/zenith" --version
151
}
152
153
package() {
154
DESTDIR="$pkgdir" cmake --install "$srcdir/build"
155
rm "$pkgdir/usr/lib/modules-load.d/60-sunshine.conf"
156
install -Dm644 "$srcdir/zenith-gamestream.conf" "$pkgdir/usr/lib/modules-load.d/zenith-gamestream.conf"
157
install -Dm644 "$srcdir/zenith/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
158
install -Dm644 "$srcdir/zenith/NOTICE" "$pkgdir/usr/share/licenses/$pkgname/NOTICE"
159
}
160
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-24 09:42:26 | Low | 1 |