3 %bcond_without apidocs # API documentation
5 Summary: Session / policy manager implementation for PipeWire
6 Summary(pl.UTF-8): Implementacja zarządcy sesji / polityk dla PipeWire
7 Name: pipewire-wireplumber
12 #Source0Download: https://gitlab.freedesktop.org/pipewire/wireplumber/-/tags
13 Source0: https://gitlab.freedesktop.org/pipewire/wireplumber/-/archive/%{version}/wireplumber-%{version}.tar.bz2
14 # Source0-md5: 5b1ae97978987f8790587f38a3d2241b
15 URL: https://pipewire.org/
16 # required for both docs and introspection
17 BuildRequires: doxygen >= 1.8.0
18 BuildRequires: gettext-tools
19 BuildRequires: glib2-devel >= 1:2.62
20 BuildRequires: gobject-introspection-devel
21 %{?with_apidocs:BuildRequires: graphviz}
22 BuildRequires: lua-devel >= 5.3.0
23 BuildRequires: meson >= 0.59.0
25 BuildRequires: pipewire-devel >= 0.3.52
26 BuildRequires: pkgconfig
27 BuildRequires: python3
28 BuildRequires: python3-lxml
29 BuildRequires: python3-modules
30 BuildRequires: rpm-build >= 4.6
31 BuildRequires: rpmbuild(macros) >= 2.011
32 BuildRequires: systemd-devel
34 BuildRequires: python3-Sphinx
35 BuildRequires: python3-breathe
36 BuildRequires: python3-sphinx_rtd_theme
37 BuildRequires: sphinx-pdg >= 2.1.0
39 Requires(post,preun): systemd-units >= 1:250.1
40 Requires: %{name}-libs = %{version}-%{release}
41 Requires: systemd-units >= 1:250.1
42 Provides: pipewire-session-manager
43 Obsoletes: pipewire-media-session
44 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47 WirePlumber is a modular session / policy manager for PipeWire and a
48 GObject-based high-level library that wraps PipeWire's API, providing
49 convenience for writing the daemon's modules as well as external tools
50 for managing PipeWire.
52 The WirePlumber daemon implements the session & policy management
53 service. It follows a modular design, having plugins that implement
54 the actual management functionality.
56 %description -l pl.UTF-8
57 WirePlumber to modularny zarządca sesji / polityk dla PipeWire oraz
58 oparta na GObject biblioteka wysokiego poziomu obudowująca API
59 PipeWire, pozwalająca na wygodne tworzenie modułów demona oraz
60 zewnętrznych narzędzi do zarządzania PipeWire.
63 Summary: WirePlumber shared library
64 Summary(pl.UTF-8): Biblioteka współdzielona WirePlumber
66 Requires: glib2 >= 1:2.62
67 Requires: pipewire-libs >= 0.3.52
70 WirePlumber shared library.
72 %description libs -l pl.UTF-8
73 Biblioteka współdzielona WirePlumber.
76 Summary: Header files for WirePlumber library
77 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki WirePlumber
78 Group: Development/Libraries
79 Requires: %{name}-libs = %{version}-%{release}
82 Header files for WirePlumber library.
84 %description devel -l pl.UTF-8
85 Pliki nagłówkowe biblioteki WirePlumber.
88 Summary: WirePlumber static library
89 Summary(pl.UTF-8): Biblioteka statyczna WirePlumber
90 Group: Development/Libraries
91 Requires: %{name}-devel = %{version}-%{release}
94 WirePlumber static library.
96 %description static -l pl.UTF-8
97 Biblioteka statyczna WirePlumber.
100 Summary: API documentation for PipeWire WirePlumber
101 Summary(pl.UTF-8): Dokumentacja API PipeWire WirePlumber
106 API documentation for PipeWire WirePlumber.
108 %description apidocs -l pl.UTF-8
109 Dokumentacja API PipeWire WirePlumber.
112 %setup -q -n wireplumber-%{version}
116 -Ddoc=%{__enabled_disabled apidocs} \
117 -Dintrospection=enabled \
120 %ninja_build -C build
123 rm -rf $RPM_BUILD_ROOT
125 %ninja_install -C build
127 %{?with_apidocs:%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/wireplumber}
129 %find_lang wireplumber
132 rm -rf $RPM_BUILD_ROOT
135 %systemd_user_post wireplumber.service
138 %systemd_user_preun wireplumber.service
140 %post libs -p /sbin/ldconfig
141 %postun libs -p /sbin/ldconfig
143 %files -f wireplumber.lang
144 %defattr(644,root,root,755)
145 %attr(755,root,root) %{_bindir}/wireplumber
146 %attr(755,root,root) %{_bindir}/wpctl
147 %attr(755,root,root) %{_bindir}/wpexec
148 %{systemduserunitdir}/wireplumber.service
149 %{systemduserunitdir}/wireplumber@.service
150 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-default-nodes-api.so
151 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-default-nodes.so
152 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-default-profile.so
153 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-file-monitor-api.so
154 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-logind.so
155 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-lua-scripting.so
156 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-metadata.so
157 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-mixer-api.so
158 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-portal-permissionstore.so
159 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-reserve-device.so
160 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-si-audio-adapter.so
161 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-si-audio-endpoint.so
162 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-si-node.so
163 %attr(755,root,root) %{_libdir}/wireplumber-0.4/libwireplumber-module-si-standard-link.so
164 %{_datadir}/wireplumber/bluetooth.conf
165 %{_datadir}/wireplumber/bluetooth.lua.d
166 %{_datadir}/wireplumber/common
167 %{_datadir}/wireplumber/main.conf
168 %{_datadir}/wireplumber/main.lua.d
169 %{_datadir}/wireplumber/policy.conf
170 %{_datadir}/wireplumber/policy.lua.d
171 %{_datadir}/wireplumber/scripts
172 %{_datadir}/wireplumber/wireplumber.conf
175 %defattr(644,root,root,755)
176 %doc NEWS.rst README.rst
177 %attr(755,root,root) %{_libdir}/libwireplumber-0.4.so.*.*.*
178 %attr(755,root,root) %ghost %{_libdir}/libwireplumber-0.4.so.0
179 %dir %{_libdir}/wireplumber-0.4
180 %dir %{_datadir}/wireplumber
181 %{_libdir}/girepository-1.0/Wp-0.4.typelib
184 %defattr(644,root,root,755)
185 %attr(755,root,root) %{_libdir}/libwireplumber-0.4.so
186 %{_includedir}/wireplumber-0.4
187 %{_pkgconfigdir}/wireplumber-0.4.pc
190 %defattr(644,root,root,755)
191 %{_libdir}/libwireplumber-0.4.a
192 %{_datadir}/gir-1.0/Wp-0.4.gir
196 %defattr(644,root,root,755)
197 %doc build/docs/html/{_images,_static,c_api,configuration,lua_api,*.html,*.js}