Spec URL: https://dcavalca.fedorapeople.org/review/pipewire-epel/pipewire-epel.spec SRPM URL: https://dcavalca.fedorapeople.org/review/pipewire-epel/pipewire-epel-1.2.7-2.el10.src.rpm Description: PipeWire is a multimedia server for Linux and other Unix like operating systems. Fedora Account System Username: dcavalca
This is an EPEL-only package to workaround https://issues.redhat.com/browse/RHEL-62314 by providing the pipewire-module-filter-chain-lv2 subpackage. It is designed to minimize the delta with the upstream spec for ease of maintenance. Here's the full diff: --- pipewire.spec 2025-04-22 19:13:48.736486047 -0700 +++ pipewire-epel.spec 2025-04-22 19:51:01.509282769 -0700 @@ -1,3 +1,6 @@ +%global srcname pipewire +%global pipewire_release 1.el10 + %global majorversion 1 %global minorversion 2 %global microversion 7 @@ -9,11 +12,11 @@ %global ms_version 0.4.2 # For rpmdev-bumpspec and releng automation -%global baserelease 1 +%global baserelease 2 #global snapdate 20210107 #global gitcommit b17db2cebc1a5ab2c01851d29c05f79cd2f262bb -#global shortcommit %(c=%{gitcommit}; echo ${c:0:7}) +#global shortcommit %%(c=%%{gitcommit}; echo ${c:0:7}) # https://bugzilla.redhat.com/983606 %global _hardened_build 1 @@ -23,7 +26,7 @@ # Build conditions for various features %bcond_without alsa -%bcond_without vulkan +%bcond_with vulkan # Features disabled for RHEL 8 %if 0%{?rhel} && 0%{?rhel} < 9 @@ -38,7 +41,7 @@ %if 0%{?rhel} %bcond_with jackserver_plugin %bcond_with libmysofa -%bcond_with lv2 +%bcond_without lv2 %bcond_with roc %else %bcond_without jackserver_plugin @@ -57,12 +60,12 @@ %if (0%{?rhel} && 0%{?rhel} < 10) || (0%{?fedora} && 0%{?fedora} < 36) || ("%{_arch}" == "s390x") || ("%{_arch}" == "ppc64le") %bcond_with libcamera_plugin %else -%bcond_without libcamera_plugin +%bcond_with libcamera_plugin %endif %bcond_without v4l2 -Name: pipewire +Name: %{srcname}-epel Summary: Media Sharing Server Version: %{majorversion}.%{minorversion}.%{microversion} Release: %{baserelease}%{?snapdate:.%{snapdate}git%{shortcommit}}%{?dist} @@ -95,6 +98,7 @@ BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) >= 1.10.0 BuildRequires: pkgconfig(gstreamer-net-1.0) >= 1.10.0 BuildRequires: pkgconfig(gstreamer-allocators-1.0) >= 1.10.0 +%if 0 # libldac is not built on x390x, see rhbz#1677491 %ifnarch s390x BuildRequires: pkgconfig(ldacBT-enc) @@ -102,6 +106,7 @@ %endif BuildRequires: pkgconfig(fdk-aac) BuildRequires: pkgconfig(bluez) +%endif BuildRequires: systemd BuildRequires: systemd-devel BuildRequires: alsa-lib-devel @@ -109,8 +114,10 @@ BuildRequires: doxygen BuildRequires: python-docutils BuildRequires: graphviz +%if 0 BuildRequires: sbc-devel BuildRequires: liblc3-devel +%endif BuildRequires: libsndfile-devel BuildRequires: ncurses-devel BuildRequires: pulseaudio-libs-devel @@ -142,6 +149,7 @@ PipeWire is a multimedia server for Linux and other Unix like operating systems. +%if 0 %package libs Summary: Libraries for PipeWire clients License: MIT @@ -395,22 +403,23 @@ %description module-filter-chain-sofa This package contains the mysofa support for PipeWire filter-chain. %endif +%endif %if %{with lv2} -%package module-filter-chain-lv2 +%package -n %{srcname}-module-filter-chain-lv2 Summary: PipeWire media server lv2 filter-chain support License: MIT BuildRequires: lilv-devel -Recommends: %{name}%{?_isa} = %{version}-%{release} -Requires: %{name}-libs%{?_isa} = %{version}-%{release} +Recommends: %{srcname}%{?_isa} = %{version}-%{pipewire_release} +Requires: %{srcname}-libs%{?_isa} = %{version}-%{pipewire_release} -%description module-filter-chain-lv2 +%description -n %{srcname}-module-filter-chain-lv2 This package contains the mysofa support for PipeWire filter-chain. %endif %prep -%autosetup -p1 %{?snapdate:-n %{name}-%{gitcommit}} +%autosetup -p1 %{?snapdate:-n %{srcname}-%{gitcommit}} %{!?snapdate:-n %{srcname}-%{version}} %if %{with media-session} @@ -441,6 +450,7 @@ %{!?with_lv2:-D lv2=disabled} \ %{!?with_roc:-D roc=disabled} \ %{!?with_ffado:-D libffado=disabled} \ + -D bluez5=disabled \ %{nil} %meson_build @@ -481,7 +491,9 @@ install -d -m 0755 %{buildroot}%{_datadir}/pipewire/pipewire-pulse.conf.d/ %endif -%find_lang %{name} +%find_lang %{srcname} + +find %{buildroot} \( -type f -o -type l \) ! -path %{buildroot}%{_libdir}/pipewire-%{apiversion}/libpipewire-module-filter-chain-lv2.so -delete %check %meson_test || TESTS_ERROR=$? @@ -490,6 +502,7 @@ %{!?tests_nonfatal:exit $TESTS_ERROR} fi +%if 0 %pre %sysusers_create_compat %{SOURCE1} @@ -829,13 +842,20 @@ %files module-filter-chain-sofa %{_libdir}/pipewire-%{apiversion}/libpipewire-module-filter-chain-sofa.so %endif +%endif %if %{with lv2} -%files module-filter-chain-lv2 +%files -n %{srcname}-module-filter-chain-lv2 +%license LICENSE COPYING %{_libdir}/pipewire-%{apiversion}/libpipewire-module-filter-chain-lv2.so %endif %changelog +* Tue Apr 22 2025 Davide Cavalca <dcavalca> - 1.2.7-2 +- Rename to pipewire-epel +- Enable lv2, disable bluez5, vulkan, libcamera +- Only build the lv2 subpackage + * Thu Jan 23 2025 Wim Taymans <wtaymans> - 1.2.7-1 - Update version to 1.2.7 - Resolves: RHEL-76017
Copr build: https://copr.fedorainfracloud.org/coprs/build/8953931 (failed) Build log: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2361814-pipewire-epel/fedora-rawhide-x86_64/08953931-pipewire-epel/builder-live.log.gz Please make sure the package builds successfully at least for Fedora Rawhide. - If the build failed for unrelated reasons (e.g. temporary network unavailability), please ignore it. - If the build failed because of missing BuildRequires, please make sure they are listed in the "Depends On" field --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
Taking this review.