alr-bin 0.0.12-1

This commit is contained in:
2025-04-30 16:43:48 +03:00
parent 28aaa0f078
commit f0e2c78b49
7 changed files with 408 additions and 109 deletions

220
obs-studio-browser/alr.sh Normal file
View File

@ -0,0 +1,220 @@
name='obs-studio-browser'
version='31.0.3'
release='1'
desc='Free and open source software for video recording and live streaming. With everything except service integration.'
desc_ru='Бесплатная и открытая система для видео- и live-стриминга. Без сервисных интеграций.'
homepage='https://github.com/obsproject/obs-studio'
maintainer='Evgeny Hramov <xpamych@yandex.ru>'
maintainer_ru="Евгений Храмов <xpamych@yandex.ru>"
architectures=('amd64' 'arm64')
licenses='GPL-2.0-or-later'
provides=('obs-studio' 'obs-vst' 'obs-websocket' 'obs-browser')
conflicts=('obs-studio' 'obs-vst' 'obs-websocket' 'obs-browser' 'obs-linuxbrowser' 'libva-vdpau-driver')
deps=(
'alsa-lib' # Зависимости плагина ALSA и CEF
'curl' # Зависимости OBS Studio и плагина rtmp-services
'ffmpeg' # Зависимости OBS Studio и плагина FFmpeg
'fontconfig' # Зависимости плагина Freetype2
'freetype' # Зависимости плагина Freetype2
'gcc' # Зависимости любых бинарных файлов на C++
'glib2' # Зависимости libobs, плагина PipeWire и CEF
'glibc' # Зависимости любых бинарных файлов на C
'jansson' # Зависимости libobs и плагина rtmp-services
'mesa-libGL' # Зависимости libobs-opengl и OBS Studio
'pipewire' # Зависимости плагина PipeWire
'pulseaudio-libs' # Зависимости мониторинга PulseAudio (в libobs) и плагина PulseAudio
'librist' # Зависимости плагина FFmpeg
'libva' # Зависимости плагина FFmpeg и плагина QSV
'libX11' # Зависимости libobs, libobs-opengl, плагина захвата X11, плагина инструментов интерфейса и CEF
'libxcb' # Зависимости libobs-opengl, плагина захвата X11 и CEF
'libXcomposite' # Зависимости плагина захвата X11
'libxkbcommon' # Зависимости libobs, OBS Studio и CEF
'mbedtls' # Зависимости OBS Studio и плагина Outputs
'pciutils' # Зависимости плагина FFmpeg
'qrcodegen' # Зависимости плагина Websocket
'qt6-qtbase' # Зависимости OBS Studio и любых плагинов интерфейса
'qt6-qtsvg' # Зависимости OBS Studio
'qt6-qtwayland' # Необходимо для использования Qt на платформе Wayland
'rnnoise' # Зависимости фильтра плагина
'speexdsp' # Зависимости фильтра плагина
'srt' # Зависимости плагина FFmpeg
'util-linux' # Зависимости libobs
'vlc' # Зависимости плагина VLC (проблема с "vlc" вызывает сбой)
'wayland' # Зависимости libobs, libobs-opengl и CEF
'x264' # Зависимости плагина X264
'zlib' # Зависимости libobs
# Зависимости CEF
'at-spi2-core' 'cairo' 'dbus' 'expat' 'libcups' 'libdrm'
'libXdamage' 'libXext' 'libXfixes' 'libXrandr' 'mesa' 'nspr'
'nss' 'pango'
)
deps_arch=(
'alsa-lib' # Зависимости плагина ALSA и CEF
'curl' # Зависимости OBS Studio и плагина rtmp-services
'ffmpeg-obs' # Зависимости OBS Studio и плагина FFmpeg
'fontconfig' # Зависимости плагина Freetype2
'freetype2' # Зависимости плагина Freetype2
'gcc-libs' # Зависимости любых бинарных файлов на C++
'glib2' # Зависимости libobs, плагина PipeWire и CEF
'glibc' # Зависимости любых бинарных файлов на C
'jansson' # Зависимости libobs и плагина rtmp-services
'libgl' # Зависимости libobs-opengl и OBS Studio
'libpipewire' # Зависимости плагина PipeWire
'libpulse' # Зависимости мониторинга PulseAudio (в libobs) и плагина PulseAudio
'librist' # Зависимости плагина FFmpeg
'libva' # Зависимости плагина FFmpeg и плагина QSV
'libx11' # Зависимости libobs, libobs-opengl, плагина захвата X11, плагина инструментов интерфейса и CEF
'libxcb' # Зависимости libobs-opengl, плагина захвата X11 и CEF
'libxcomposite' # Зависимости плагина захвата X11
'libxkbcommon' # Зависимости libobs, OBS Studio и CEF
'mbedtls' # Зависимости OBS Studio и плагина Outputs
'pciutils' # Зависимости плагина FFmpeg
'qrcodegencpp-cmake' # Зависимости плагина Websocket
'qt6-base' # Зависимости OBS Studio и любых плагинов интерфейса
'qt6-svg' # Зависимости OBS Studio
'qt6-wayland' # Необходимо для использования Qt на платформе Wayland
'rnnoise' # Зависимости фильтра плагина
'speexdsp' # Зависимости фильтра плагина
'srt' # Зависимости плагина FFmpeg
'util-linux-libs' # Зависимости libobs
'vlc-luajit' # Зависимости плагина VLC (проблема с "vlc" вызывает сбой)
'wayland' # Зависимости libobs, libobs-opengl и CEF
'x264' # Зависимости плагина X264
'zlib' # Зависимости libobs
# Зависимости CEF
'at-spi2-core' 'cairo' 'dbus' 'expat' 'libcups' 'libdrm'
'libxdamage' 'libxext' 'libxfixes' 'libxrandr' 'mesa' 'nspr'
'nss' 'pango'
)
build_deps=(
'asio-devel' # Зависимости плагина Websocket (библиотека только с заголовками)
'cmake'
'nv-codec-headers' # Зависимости плагина NVENC (библиотека только с заголовками)
'pipewire-jack-audio-connection-kit' # Зависимости плагина JACK
'git'
'uthash-devel' # Зависимости libobs
'libdatachannel' # Зависимости плагина WebRTC (вариант NICE, как в Flatpak)
'libfdk-aac' # Зависимости плагина FDK AAC
'luajit' # Зависимости плагина Scripting
'nlohmann-json' # Зависимости плагина Websocket (библиотека только с заголовками)
'python' # Зависимости плагина Scripting
'sndio' # Зависимости плагина sndio
'swig' # Зависимости плагина Scripting
'systemd-devel' # Зависимости плагина V4L2
'v4l-utils' # Зависимости плагина V4L2
'websocketpp-devel' # Зависимости плагина Websocket (библиотека только с заголовками)
)
build_deps_arch=(
'asio' # Зависимости плагина Websocket (библиотека только с заголовками)
'cmake'
'ffnvcodec-headers' # Зависимости плагина NVENC (библиотека только с заголовками)
'jack' # Зависимости плагина JACK
'git'
'uthash' # Зависимости libobs
'libajantv2' # Зависимости плагинов AJA
'libdatachannel' # Зависимости плагина WebRTC (вариант NICE, как в Flatpak)
'libfdk-aac' # Зависимости плагина FDK AAC
'luajit' # Зависимости плагина Scripting
'nlohmann-json' # Зависимости плагина Websocket (библиотека только с заголовками)
'libvpl' # Зависимости плагина QSV
'python' # Зависимости плагина Scripting
'sndio' # Зависимости плагина sndio
'swig' # Зависимости плагина Scripting
'systemd-libs' # Зависимости плагина V4L2
'v4l-utils' # Зависимости плагина V4L2
'websocketpp' # Зависимости плагина Websocket (библиотека только с заголовками)
)
opt_deps=(
'jack: Поддержка JACK'
'libfdk-aac: Поддержка кодека FDK AAC'
'libvpl: Поддержка кодировщика QSV'
'intel-media-sdk: Поддержка кодировщика QSV (<= Rocket Lake & >= Broadwell)'
'vpl-gpu-rt: Поддержка кодировщика QSV (>= Alder Lake)'
'intel-media-driver: Поддержка кодировщика VAAPI (>= Broadwell)'
'libva-intel-driver: Поддержка кодировщика VAAPI (<= Haswell)'
'libva-mesa-driver: Поддержка кодировщика VAAPI'
'swig: Скрипты'
'luajit: Скрипты Lua'
'python: Скрипты на Python'
'sndio: Клиент ввода Sndio'
'v4l-utils: Поддержка V4L2'
'systemd-devel: Поддержка V4L2' # Заменено на systemd-devel
'v4l2loopback-dkms: Вывод виртуальной камеры V4L2'
'libdatachannel: Поддержка WHIP'
'libajantv2: Поддержка AJA'
)
opt_deps_arch=(
'jack: Поддержка JACK'
'libfdk-aac: Поддержка кодека FDK AAC'
'libvpl: Поддержка кодировщика QSV'
'intel-media-sdk: Поддержка кодировщика QSV (<= Rocket Lake & >= Broadwell)'
'vpl-gpu-rt: Поддержка кодировщика QSV (>= Alder Lake)'
'intel-media-driver: Поддержка кодировщика VAAPI (>= Broadwell)'
'libva-intel-driver: Поддержка кодировщика VAAPI (<= Haswell)'
'libva-mesa-driver: Поддержка кодировщика VAAPI'
'swig: Скрипты'
'luajit: Скрипты Lua'
'python: Скрипты на Python'
'sndio: Клиент ввода Sndio'
'v4l-utils: Поддержка V4L2'
'systemd-libs: Поддержка V4L2'
'v4l2loopback-dkms: Вывод виртуальной камеры V4L2'
'libdatachannel: Поддержка WHIP'
'libajantv2: Поддержка AJA'
)
sources=(
"git+https://github.com/obsproject/obs-studio.git#tag=version"
"git+https://github.com/obsproject/obs-browser.git"
"git+https://github.com/obsproject/obs-websocket.git"
"https://cdn-fastly.obsproject.com/downloads/cef_binary_6533_linux_x86_64_v3.tar.xz")
checksums=(
'SKIP'
'SKIP'
'SKIP'
'SKIP'
)
prepare() {
cd $srcdir/obs-studio
git config submodule.plugins/obs-browser.url $srcdir/obs-browser
git config submodule.plugins/obs-websocket.url $srcdir/obs-websocket
git -c protocol.file.allow=always submodule update
## linux-v4l2: Fix virtual camera start failure
git cherry-pick -n 12c6febae21f369da50f09d511b54eadc1dc1342
## Mark log and titlebar version
sed -i "s|obs_get_version_string()|\"$version-browser-$release\"|" UI/obs-app.cpp
}
build() {
cmake -B build -S obs-studio \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DENABLE_LIBFDK=ON \
-DENABLE_JACK=ON \
-DENABLE_SNDIO=ON \
-DENABLE_BROWSER=ON \
-DCEF_ROOT_DIR="$srcdir/cef_binary_6533_linux_${CARCH/%_v?/}" \
-DOBS_VERSION_OVERRIDE="version" \
-DOBS_COMPILE_DEPRECATION_AS_WARNING=ON \
-Wno-dev
cmake --build build
}
package() {
DESTDIR="$pkgdir" cmake --install build
}