From 665da767dcccf19a55f80e01c231f5ab027a1bac Mon Sep 17 00:00:00 2001 From: Alexander Miroshnichenko Date: Fri, 10 Mar 2023 11:59:42 +0300 Subject: [PATCH] add pkg gui-apps/waypipe --- gui-apps/waypipe/Manifest | 3 ++ gui-apps/waypipe/metadata.xml | 19 +++++++ gui-apps/waypipe/waypipe-0.8.4.ebuild | 71 +++++++++++++++++++++++++++ 3 files changed, 93 insertions(+) create mode 100644 gui-apps/waypipe/Manifest create mode 100644 gui-apps/waypipe/metadata.xml create mode 100644 gui-apps/waypipe/waypipe-0.8.4.ebuild diff --git a/gui-apps/waypipe/Manifest b/gui-apps/waypipe/Manifest new file mode 100644 index 0000000..3fbe79f --- /dev/null +++ b/gui-apps/waypipe/Manifest @@ -0,0 +1,3 @@ +DIST waypipe-0.8.4.tar.gz 238371 BLAKE2B d3ff2629958ced90d8b70ef810e105d17215d68b46c3398db2dfe5f75f4178d70f6fa827a19527204be902835c00fae4f0fdd8fc84401087835f1bb1a8f4633f SHA512 f0b1091b396b19bde519f008ae15e68b566201a110d439172f4d328576af145b94d43caed4c8744dbd71ba253a9d2275c52933ae28be12c74939dfe2123b3966 +EBUILD waypipe-0.8.4.ebuild 1863 BLAKE2B b41a116b470e9e3f12956f1f323cd7f0c1fc5eb5f779eb276b66cf962642fc4a4a69a81fa1045edc370247d8ab18e7efb9f1dc6e4ecaca74cc0e70e29d9f66d0 SHA512 88efd3f3a197ec05f33a1818126d2489be9df465575448d88e48eb0622a625950dcdc795c13c8d32e3f1c52f1c8e9d950fb770b7f654bdb5ebd225b715fb6c7f +MISC metadata.xml 790 BLAKE2B 8928c96854495a9bd18ee980c4ab1a3d5d93e06b3ed5f11a1fa90b719f24391fbfbb99cafddaf6fa75ff4b59a0aa72f92cf1db48d9f3d62df8f0603e628e6aac SHA512 eab5538af33b220a5f7896c80d42429677da4cb39426ddbaa18594a39fd23aa1fd00e500f7599c3956105ab47380cee75e1aa42b413f540a5425d6563d9f1c07 diff --git a/gui-apps/waypipe/metadata.xml b/gui-apps/waypipe/metadata.xml new file mode 100644 index 0000000..418f312 --- /dev/null +++ b/gui-apps/waypipe/metadata.xml @@ -0,0 +1,19 @@ + + + + + + Waypipe is a proxy for all Wayland clients to allow streaming + sessions over tcp. It forwards Wayland messages and serializes + changes to shared memory buffers over a single socket, to allow + application forwarding similar to ssh -X. + + + Use DMABUFs for data exchange and hardware decoding + Link with ffmpeg to allow buffer displays using video streams + Enable SystemTAP/DTrace tracing + + + mstoeckl/waypipe + + diff --git a/gui-apps/waypipe/waypipe-0.8.4.ebuild b/gui-apps/waypipe/waypipe-0.8.4.ebuild new file mode 100644 index 0000000..0d8968a --- /dev/null +++ b/gui-apps/waypipe/waypipe-0.8.4.ebuild @@ -0,0 +1,71 @@ +# Copyright 2020-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{9..11} ) +inherit meson python-any-r1 + +DESCRIPTION="Transparent network proxy for Wayland compositors" +HOMEPAGE="https://gitlab.freedesktop.org/mstoeckl/waypipe" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.freedesktop.org/mstoeckl/waypipe" +else + SRC_URI="https://gitlab.freedesktop.org/mstoeckl/waypipe/-/archive/v${PV}/${PN}-v${PV}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}"/${PN}-v${PV} + KEYWORDS="~amd64 ~arm ~arm64 ~x86" +fi + +LICENSE="MIT" +SLOT="0" + +WAYPIPE_FLAG_MAP_X86=( avx2:with_avx2 avx512f:with_avx512f sse3:with_sse3 ) +WAYPIPE_FLAG_MAP_ARM=( neon:with_neon_opts ) +WAYPIPE_FLAG_MAP=( + "${WAYPIPE_FLAG_MAP_X86[@]/#/cpu_flags_x86_}" + "${WAYPIPE_FLAG_MAP_ARM[@]/#/cpu_flags_arm_}" +) + +IUSE="dmabuf ffmpeg lz4 man systemtap test vaapi zstd ${WAYPIPE_FLAG_MAP[@]%:*}" +REQUIRED_USE="vaapi? ( ffmpeg )" +RESTRICT="!test? ( test )" + +DEPEND=" + dmabuf? ( + media-libs/mesa[gbm(+),vaapi?,wayland] + x11-libs/libdrm + ) + lz4? ( app-arch/lz4 ) + systemtap? ( dev-util/systemtap ) + vaapi? ( media-libs/libva[drm(+),wayland] ) + ffmpeg? ( + media-video/ffmpeg[x264,vaapi?] + ) + zstd? ( app-arch/zstd ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + ${PYTHON_DEPS} + virtual/pkgconfig + man? ( app-text/scdoc ) + test? ( dev-libs/weston[examples,headless,remoting,screen-sharing,wayland-compositor] ) +" + +src_configure() { + local emesonargs=( + $(meson_use systemtap with_systemtap) + $(meson_feature dmabuf with_dmabuf) + $(meson_feature ffmpeg with_video) + $(meson_feature lz4 with_lz4) + $(meson_feature man man-pages) + $(meson_feature vaapi with_vaapi) + $(meson_feature zstd with_zstd) + ) + local fl + for fl in "${WAYPIPE_FLAG_MAP[@]}"; do + emesonargs+=( $(meson_use "${fl%:*}" "${fl#*:}") ) + done + meson_src_configure +}