3 %bcond_without apidocs # API documentation
5 Summary: Session / policy manager implementation for PipeWire
6 Name: pipewire-wireplumber
11 Source0: https://gitlab.freedesktop.org/pipewire/wireplumber/-/archive/%{version}/wireplumber-%{version}.tar.bz2
12 # Source0-md5: 2ab3ba8816ff5617590cee6e2ae001a9
13 URL: https://pipewire.org/
14 # required for both docs and introspection
15 BuildRequires: doxygen >= 1.8.0
16 BuildRequires: gettext-tools
17 BuildRequires: glib2-devel >= 1:2.62
18 BuildRequires: gobject-introspection-devel
19 %{?with_apidocs:BuildRequires: graphviz}
20 BuildRequires: lua-devel >= 5.3.0
21 BuildRequires: meson >= 0.56.0
23 BuildRequires: pipewire-devel >= 0.3.43
24 BuildRequires: pkgconfig
25 BuildRequires: python3
26 BuildRequires: python3-lxml
27 BuildRequires: python3-modules
28 BuildRequires: rpm-build >= 4.6
29 BuildRequires: rpmbuild(macros) >= 1.736
30 BuildRequires: systemd-devel
32 BuildRequires: python3-Sphinx
33 BuildRequires: python3-breathe
34 BuildRequires: python3-sphinx_rtd_theme
35 BuildRequires: sphinx-pdg >= 2.1.0
37 Requires: %{name}-libs = %{version}-%{release}
38 Provides: pipewire-session-manager
39 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42 WirePlumber is a modular session / policy manager for PipeWire and a
43 GObject-based high-level library that wraps PipeWire's API, providing
44 convenience for writing the daemon's modules as well as external tools
45 for managing PipeWire.
47 The WirePlumber daemon implements the session & policy management
48 service. It follows a modular design, having plugins that implement
49 the actual management functionality.
52 Summary: WirePlumber shared library
54 Requires: glib2 >= 1:2.62
55 Requires: pipewire-libs >= 0.3.43
58 WirePlumber shared library.
61 Summary: Header files for WirePlumber library
62 Group: Development/Libraries
63 Requires: %{name}-libs = %{version}-%{release}
66 Header files for WirePlumber library.
69 Summary: WirePlumber static library
70 Group: Development/Libraries
71 Requires: %{name}-devel = %{version}-%{release}
74 WirePlumber static library.
77 Summary: API documentation for PipeWire WirePlumber
82 API documentation for PipeWire WirePlumber.
85 %setup -q -n wireplumber-%{version}
89 -Ddoc=%{__enabled_disabled apidocs} \
90 -Dintrospection=enabled \
96 rm -rf $RPM_BUILD_ROOT
98 %ninja_install -C build
100 %{?with_apidocs:%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/wireplumber}
103 rm -rf $RPM_BUILD_ROOT
105 %post libs -p /sbin/ldconfig
106 %postun libs -p /sbin/ldconfig
109 %defattr(644,root,root,755)
110 %attr(755,root,root) %{_bindir}/wireplumber
111 %attr(755,root,root) %{_bindir}/wpctl
112 %attr(755,root,root) %{_bindir}/wpexec
113 %{systemduserunitdir}/wireplumber.service
114 %{systemduserunitdir}/wireplumber@.service
115 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-default-nodes-api.so
116 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-default-nodes.so
117 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-default-profile.so
118 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-device-activation.so
119 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-file-monitor-api.so
120 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-logind.so
121 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-lua-scripting.so
122 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-metadata.so
123 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-mixer-api.so
124 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-portal-permissionstore.so
125 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-reserve-device.so
126 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-route-settings-api.so
127 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-si-audio-adapter.so
128 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-si-audio-endpoint.so
129 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-si-node.so
130 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-si-standard-link.so
131 %{_datadir}/wireplumber/bluetooth.conf
132 %{_datadir}/wireplumber/bluetooth.lua.d
133 %{_datadir}/wireplumber/common
134 %{_datadir}/wireplumber/main.conf
135 %{_datadir}/wireplumber/main.lua.d
136 %{_datadir}/wireplumber/policy.conf
137 %{_datadir}/wireplumber/policy.lua.d
138 %{_datadir}/wireplumber/scripts
139 %{_datadir}/wireplumber/wireplumber.conf
142 %defattr(644,root,root,755)
143 %doc NEWS.rst README.rst
144 %attr(755,root,root) %{_libdir}/libwireplumber-0.4.so.*.*.*
145 %attr(755,root,root) %ghost %{_libdir}/libwireplumber-0.4.so.0
146 %dir %{_libdir}/wireplumber-0.4
147 %dir %{_datadir}/wireplumber
148 %{_libdir}/girepository-1.0/Wp-0.4.typelib
151 %defattr(644,root,root,755)
152 %attr(755,root,root) %{_libdir}/libwireplumber-0.4.so
153 %{_includedir}/wireplumber-0.4
154 %{_pkgconfigdir}/wireplumber-0.4.pc
157 %defattr(644,root,root,755)
158 %{_libdir}/libwireplumber-0.4.a
159 %{_datadir}/gir-1.0/Wp-0.4.gir
163 %defattr(644,root,root,755)