]> git.pld-linux.org Git - packages/pipewire-wireplumber.git/blob - pipewire-wireplumber.spec
3f000a06ee2861981f91e6adf4b6477186761ead
[packages/pipewire-wireplumber.git] / pipewire-wireplumber.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs         # API documentation
4
5 Summary:        Session / policy manager implementation for PipeWire
6 Summary(pl.UTF-8):      Implementacja zarządcy sesji / polityk dla PipeWire
7 Name:           pipewire-wireplumber
8 Version:        0.4.11
9 Release:        1
10 License:        MIT
11 Group:          Libraries
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:  6db6998ba8c2b0c4295b1d464ca5867f
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
24 BuildRequires:  ninja
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
33 %if %{with apidocs}
34 BuildRequires:  python3-Sphinx
35 BuildRequires:  python3-breathe
36 BuildRequires:  python3-sphinx_rtd_theme
37 BuildRequires:  sphinx-pdg >= 2.1.0
38 %endif
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)
45
46 %description
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.
51
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.
55
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.
61
62 %package libs
63 Summary:        WirePlumber shared library
64 Summary(pl.UTF-8):      Biblioteka współdzielona WirePlumber
65 Group:          Libraries
66 Requires:       glib2 >= 1:2.62
67 Requires:       pipewire-libs >= 0.3.52
68
69 %description libs
70 WirePlumber shared library.
71
72 %description libs -l pl.UTF-8
73 Biblioteka współdzielona WirePlumber.
74
75 %package devel
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}
80
81 %description devel
82 Header files for WirePlumber library.
83
84 %description devel -l pl.UTF-8
85 Pliki nagłówkowe biblioteki WirePlumber.
86
87 %package static
88 Summary:        WirePlumber static library
89 Summary(pl.UTF-8):      Biblioteka statyczna WirePlumber
90 Group:          Development/Libraries
91 Requires:       %{name}-devel = %{version}-%{release}
92
93 %description static
94 WirePlumber static library.
95
96 %description static -l pl.UTF-8
97 Biblioteka statyczna WirePlumber.
98
99 %package apidocs
100 Summary:        API documentation for PipeWire WirePlumber
101 Summary(pl.UTF-8):      Dokumentacja API PipeWire WirePlumber
102 Group:          Documentation
103 BuildArch:      noarch
104
105 %description apidocs
106 API documentation for PipeWire WirePlumber.
107
108 %description apidocs -l pl.UTF-8
109 Dokumentacja API PipeWire WirePlumber.
110
111 %prep
112 %setup -q -n wireplumber-%{version}
113
114 %build
115 %meson build \
116         -Ddoc=%{__enabled_disabled apidocs} \
117         -Dintrospection=enabled \
118         -Dsystem-lua=true
119
120 %ninja_build -C build
121
122 %install
123 rm -rf $RPM_BUILD_ROOT
124
125 %ninja_install -C build
126
127 %{?with_apidocs:%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/wireplumber}
128
129 %find_lang wireplumber
130
131 %clean
132 rm -rf $RPM_BUILD_ROOT
133
134 %post
135 %systemd_user_post wireplumber.service
136
137 %preun
138 %systemd_user_preun wireplumber.service
139
140 %post   libs -p /sbin/ldconfig
141 %postun libs -p /sbin/ldconfig
142
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
173
174 %files libs
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
182
183 %files devel
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
188
189 %files static
190 %defattr(644,root,root,755)
191 %{_libdir}/libwireplumber-0.4.a
192 %{_datadir}/gir-1.0/Wp-0.4.gir
193
194 %if %{with apidocs}
195 %files apidocs
196 %defattr(644,root,root,755)
197 %doc build/docs/html/{_images,_static,c_api,configuration,lua_api,*.html,*.js}
198 %endif
This page took 0.057095 seconds and 2 git commands to generate.