commit:     151b93c157eac0144058e57af129c1c8bff1cc51
Author:     Patrick Nicolas <patricknicolas <AT> laposte <DOT> net>
AuthorDate: Thu Jun 26 19:31:01 2025 +0000
Commit:     Patrick Nicolas <patricknicolas <AT> laposte <DOT> net>
CommitDate: Thu Jun 26 19:31:01 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=151b93c1

media-libs/wivrn: add 25.6

Signed-off-by: Patrick Nicolas <patricknicolas <AT> laposte.net>

 media-libs/wivrn/Manifest          |   2 +
 media-libs/wivrn/wivrn-25.6.ebuild | 152 +++++++++++++++++++++++++++++++++++++
 2 files changed, 154 insertions(+)

diff --git a/media-libs/wivrn/Manifest b/media-libs/wivrn/Manifest
index 28d04dd211..35aa72dd45 100644
--- a/media-libs/wivrn/Manifest
+++ b/media-libs/wivrn/Manifest
@@ -1,2 +1,4 @@
 DIST wivrn-0.25-server-build-deps.tar.xz 22247744 BLAKE2B 
d11282538d68a9f4d4eb1abc473fe8e95294beada00eb4434ca7c97fb7931fd18f2cee75f09bb02bf58b77757873ea237c413bebfe4bca88b9d59bfa40683c66
 SHA512 
dd41b236784a7a5ec6fb8afdcf6b727f6f6c210be0b5d23ff82bb81315b3a8bda2c6d22ff5b5f12990b1bf11826ac0da5f96f0f4138ac170762a57ef2ee03da8
 DIST wivrn-0.25.tar.gz 11322202 BLAKE2B 
9409ef567fd6ae973313c5164d4dd043a65c7171d066105a81a19cb856104c28890a083ff4cb028f7debe05841097ea624ed93c866db35c093036cfe22d46e45
 SHA512 
c5904b9b0888d9795b1f26836c7047daa4ec43ec0729d11549b5b996976dce9818f2e28030d9a21584aedb989bb5817dbbbb54aa41e4c4d4d1778a851032b1bc
+DIST wivrn-25.6-server-build-deps.tar.xz 22291876 BLAKE2B 
894da4cf5d52d1b13d7596dc5b6bb091ea76c3825706af88d77d7acd000bf19ef746d711022618b923f75fa06d1b3cf97ad8a972d300d55cfaf12fb79ace7fa8
 SHA512 
f0e79d2a26e06c699ee2d0088883ac20ca7830454588f7d412f31821ac9c6e15c6276c862cd3c113de80a3a05880d121a9630daf11d76146afb99163aa235dd9
+DIST wivrn-25.6.tar.gz 11323169 BLAKE2B 
401f54e3a22575f7e217bc72d3b889f3528755656d5898ebdec1bcf2d9a00cd2b3921c6154f24f5257df0c0da80d5787831a0933c6ca9350c9e482c3a87c332c
 SHA512 
78409fdd890f7d748eb194389c8355347d514575c526baa03dc9d64caf200567b43b52210ce313d06ef7daa04099cfb8ee903169d5597da5789766e61fcadbe0

diff --git a/media-libs/wivrn/wivrn-25.6.ebuild 
b/media-libs/wivrn/wivrn-25.6.ebuild
new file mode 100644
index 0000000000..2445e711db
--- /dev/null
+++ b/media-libs/wivrn/wivrn-25.6.ebuild
@@ -0,0 +1,152 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake fcaps flag-o-matic xdg
+
+DESCRIPTION="WiVRn OpenXR streaming"
+HOMEPAGE="https://github.com/WiVRn/WiVRn";
+
+LICENSE="GPL-3 Apache-2.0 MIT"
+SLOT="0"
+IUSE="debug gui nvenc +pipewire pulseaudio systemd vaapi wireshark-plugins 
x264"
+REQUIRED_USE="|| ( nvenc vaapi x264 )"
+
+if [[ ${PV} == 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/WiVRn/WiVRn.git";
+       MONADO_REPO_URI="https://gitlab.freedesktop.org/monado/monado.git";
+else
+       SRC_URI="
+               https://github.com/WiVRn/WiVRn/archive/refs/tags/v${PV}.tar.gz 
-> ${P}.tar.gz
+               
https://github.com/WiVRn/WiVRn/releases/download/v${PV}/server-build-deps.tar.xz
 -> ${P}-server-build-deps.tar.xz"
+       KEYWORDS="~amd64"
+fi
+
+RDEPEND="
+       dev-libs/glib
+       dev-libs/libbsd
+       dev-libs/openssl
+       media-libs/openxr-loader
+       net-dns/avahi
+       x11-libs/libnotify
+       || (
+               sys-apps/systemd
+               sys-auth/elogind
+       )
+       gui? (
+               dev-libs/qcoro[qml]
+               kde-frameworks/kcoreaddons:6
+               kde-frameworks/ki18n:6
+               kde-frameworks/kiconthemes:6
+               kde-frameworks/kirigami:6
+               kde-frameworks/qqc2-desktop-style:6
+       )
+       pipewire? (
+               media-video/pipewire
+       )
+       pulseaudio? (
+               media-libs/libpulse
+       )
+       systemd? (
+               sys-apps/systemd
+       )
+       vaapi? ( || (
+               media-video/ffmpeg[libdrm(-),vaapi]
+               media-video/ffmpeg[drm(-),vaapi]
+       ) )
+       wireshark-plugins? (
+               net-analyzer/wireshark
+       )
+       x264? (
+               media-libs/x264
+       )
+"
+DEPEND="
+       ${RDEPEND}
+       dev-cpp/cli11
+       dev-cpp/eigen
+       dev-cpp/nlohmann_json
+       dev-libs/boost
+"
+BDEPEND="
+       dev-util/glslang
+       dev-util/gdbus-codegen
+       gui? (
+               gnome-base/librsvg
+       )
+       dev-util/vulkan-headers
+"
+
+if [[ ${PV} == 9999 ]]; then
+       src_unpack() {
+               git-r3_src_unpack
+               default_src_unpack
+
+               local MONADO_COMMIT=$(cat "${P}/monado-rev")
+               git-r3_fetch "${MONADO_REPO_URI}" "${MONADO_COMMIT}"
+               git-r3_checkout "${MONADO_REPO_URI}" "${WORKDIR}/monado-src"
+       }
+
+       src_prepare() {
+               default_src_prepare
+               eapply --directory="${WORKDIR}/monado-src" 
"${WORKDIR}/${P}/patches/monado"/*
+               cmake_src_prepare
+       }
+else
+       src_unpack() {
+               default_src_unpack
+               cd "${WORKDIR}"
+               mv "WiVRn-${PV}" "${P}"
+       }
+fi
+
+src_configure() {
+       use debug || append-cflags "-DNDEBUG"
+       use debug || append-cxxflags "-DNDEBUG"
+       if [[ ${PV} == 9999 ]]; then
+               GIT_DESC=$(git describe --tags --always)
+               GIT_COMMIT=$(git rev-parse HEAD)
+       else
+               GIT_DESC=v${PV}
+               GIT_COMMIT=v${PV}
+       fi
+       local mycmakeargs=(
+               -DGIT_DESC=${GIT_DESC}
+               -DGIT_COMMIT=${GIT_COMMIT}
+               -DWIVRN_BUILD_CLIENT=OFF
+               -DWIVRN_BUILD_SERVER=ON
+               -DWIVRN_OPENXR_MANIFEST_TYPE=relative
+               -DWIVRN_BUILD_DASHBOARD=$(usex gui)
+               -DWIVRN_BUILD_DISSECTOR=$(usex wireshark-plugins)
+               -DWIVRN_BUILD_WIVRNCTL=ON
+               -DWIVRN_FEATURE_STEAMVR_LIGHTHOUSE=ON
+               -DWIVRN_USE_PIPEWIRE=$(usex pipewire)
+               -DWIVRN_USE_PULSEAUDIO=$(usex pulseaudio)
+               -DWIVRN_USE_NVENC=$(usex nvenc)
+               -DWIVRN_USE_VAAPI=$(usex vaapi)
+               -DWIVRN_USE_VULKAN_ENCODE=ON
+               -DWIVRN_USE_X264=$(usex x264)
+               -DWIVRN_USE_SYSTEMD=$(usex systemd)
+               -DWIVRN_USE_SYSTEM_OPENXR=ON
+               -DWIVRN_USE_SYSTEM_BOOST=ON
+               -DFETCHCONTENT_FULLY_DISCONNECTED=ON
+               -DFETCHCONTENT_BASE_DIR="${WORKDIR}"
+               -DENABLE_COLOURED_OUTPUT=OFF
+       )
+
+       cmake_src_configure
+}
+
+pkg_postinst()
+{
+       fcaps cap_sys_nice usr/bin/wivrn-server
+       xdg_pkg_postinst
+       elog "WiVRn requires a compatible client on VR headset to run."
+       if [[ ${PV} == 9999 ]]; then
+               elog "For most headsets it can be downloaded from CI artifacts 
on https://github.com/WiVRn/WiVRn/actions/workflows/Build.yml";
+       else
+               elog "For most headsets it can be downloaded on 
https://github.com/WiVRn/WiVRn/releases/tag/v${PV}";
+       fi
+}

Reply via email to