1 | %bcond_with systemd |
---|
2 | %bcond_with rtkit |
---|
3 | %bcond_with man |
---|
4 | |
---|
5 | %global apiversion 0.3 |
---|
6 | %global spaversion 0.2 |
---|
7 | |
---|
8 | #global snap 20141103 |
---|
9 | #global gitrel 327 |
---|
10 | #global gitcommit aec811798cd883a454b9b5cd82c77831906bbd2d |
---|
11 | #global shortcommit %(c=%{gitcommit}; echo ${c:0:5}) |
---|
12 | |
---|
13 | # https://bugzilla.redhat.com/983606 |
---|
14 | %global _hardened_build 1 |
---|
15 | |
---|
16 | # where/how to apply multilib hacks |
---|
17 | %global multilib_archs x86_64 %{ix86} ppc64 ppc s390x s390 sparc64 sparcv9 ppc64le |
---|
18 | |
---|
19 | Name: pipewire |
---|
20 | Summary: Media Sharing Server |
---|
21 | Version: 0.3.8 |
---|
22 | Release: 1%{?snap:.%{snap}git%{shortcommit}}%{?_dist_release}%{?with_systemd:.systemd} |
---|
23 | Vendor: Project Vine |
---|
24 | Distribution: Vine Linux |
---|
25 | |
---|
26 | License: LGPLv2+ |
---|
27 | URL: https://pipewire.org/ |
---|
28 | %if 0%{?gitrel} |
---|
29 | # git clone git://anongit.freedesktop.org/gstreamer/pipewire |
---|
30 | # cd pipewire; git reset --hard %{gitcommit}; ./autogen.sh; make; make distcheck |
---|
31 | Source0: pipewire-%{version}-%{gitrel}-g%{shortcommit}.tar.gz |
---|
32 | %else |
---|
33 | Source0: https://github.com/PipeWire/pipewire/archive/%{version}.tar.gz |
---|
34 | %endif |
---|
35 | |
---|
36 | ## upstream patches |
---|
37 | |
---|
38 | ## upstreamable patches |
---|
39 | |
---|
40 | ## fedora patches |
---|
41 | Patch0: 0001-conf-disable-bluez5.patch |
---|
42 | |
---|
43 | BuildRequires: meson >= 0.35.0 |
---|
44 | BuildRequires: gcc |
---|
45 | BuildRequires: pkgconfig |
---|
46 | BuildRequires: pkgconfig(dbus-1) |
---|
47 | BuildRequires: pkgconfig(glib-2.0) >= 2.32 |
---|
48 | BuildRequires: pkgconfig(gio-unix-2.0) >= 2.32 |
---|
49 | BuildRequires: pkgconfig(gstreamer-1.0) >= 1.10.0 |
---|
50 | BuildRequires: pkgconfig(gstreamer-base-1.0) >= 1.10.0 |
---|
51 | BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) >= 1.10.0 |
---|
52 | BuildRequires: pkgconfig(gstreamer-net-1.0) >= 1.10.0 |
---|
53 | BuildRequires: pkgconfig(gstreamer-allocators-1.0) >= 1.10.0 |
---|
54 | BuildRequires: pkgconfig(vulkan) |
---|
55 | BuildRequires: pkgconfig(bluez) |
---|
56 | %if %{with systemd} |
---|
57 | BuildRequires: systemd-devel >= 184 |
---|
58 | %else |
---|
59 | BuildRequires: pkgconfig(libudev) |
---|
60 | %endif |
---|
61 | BuildRequires: alsa-lib-devel |
---|
62 | BuildRequires: libv4l-devel |
---|
63 | BuildRequires: doxygen |
---|
64 | %if %{with man} |
---|
65 | BuildRequires: xmltoman |
---|
66 | %endif |
---|
67 | BuildRequires: graphviz |
---|
68 | BuildRequires: sbc-devel |
---|
69 | BuildRequires: libsndfile-devel |
---|
70 | |
---|
71 | Requires(pre): shadow-utils |
---|
72 | Requires: %{name}-libs%{?_isa} = %{version}-%{release} |
---|
73 | %if %{with systemd} |
---|
74 | Requires: systemd >= 184 |
---|
75 | %endif |
---|
76 | %if %{with rtkit} |
---|
77 | Requires: rtkit |
---|
78 | %endif |
---|
79 | |
---|
80 | # https://bugzilla.redhat.com/983606 |
---|
81 | %global _hardened_build 1 |
---|
82 | |
---|
83 | %if %{with systemd} |
---|
84 | ## enable systemd activation |
---|
85 | %global systemd 1 |
---|
86 | %endif |
---|
87 | |
---|
88 | %description |
---|
89 | PipeWire is a multimedia server for Linux and other Unix like operating |
---|
90 | systems. |
---|
91 | |
---|
92 | |
---|
93 | %package libs |
---|
94 | Summary: Libraries for PipeWire clients |
---|
95 | License: LGPLv2+ |
---|
96 | Recommends: %{name}%{?_isa} = %{version}-%{release} |
---|
97 | |
---|
98 | %description libs |
---|
99 | This package contains the runtime libraries for any application that wishes |
---|
100 | to interface with a PipeWire media server. |
---|
101 | |
---|
102 | |
---|
103 | %package devel |
---|
104 | Summary: Headers and libraries for PipeWire client development |
---|
105 | License: LGPLv2+ |
---|
106 | Requires: %{name}-libs%{?_isa} = %{version}-%{release} |
---|
107 | |
---|
108 | %description devel |
---|
109 | Headers and libraries for developing applications that can communicate with |
---|
110 | a PipeWire media server. |
---|
111 | |
---|
112 | |
---|
113 | %package doc |
---|
114 | Summary: PipeWire media server documentation |
---|
115 | License: LGPLv2+ |
---|
116 | |
---|
117 | %description doc |
---|
118 | This package contains documentation for the PipeWire media server. |
---|
119 | |
---|
120 | |
---|
121 | %package utils |
---|
122 | Summary: PipeWire media server utilities |
---|
123 | License: LGPLv2+ |
---|
124 | Requires: %{name}%{?_isa} = %{version}-%{release} |
---|
125 | Requires: %{name}-libs%{?_isa} = %{version}-%{release} |
---|
126 | |
---|
127 | %description utils |
---|
128 | This package contains command line utilities for the PipeWire media server. |
---|
129 | |
---|
130 | |
---|
131 | %prep |
---|
132 | %setup -q -T -b0 -n %{name}-%{version}%{?gitrel:-%{gitrel}-g%{shortcommit}} |
---|
133 | %autopatch -p1 |
---|
134 | |
---|
135 | |
---|
136 | %build |
---|
137 | %meson \ |
---|
138 | -D docs=true \ |
---|
139 | -D man=true \ |
---|
140 | -D gstreamer=true \ |
---|
141 | -D jack=false \ |
---|
142 | -D pipewire-jack=false \ |
---|
143 | -D pipewire-pulseaudio=false \ |
---|
144 | %if %{with systemd} |
---|
145 | -D systemd=true |
---|
146 | %else |
---|
147 | -D systemd=false |
---|
148 | %endif |
---|
149 | %meson_build |
---|
150 | |
---|
151 | |
---|
152 | %install |
---|
153 | %meson_install |
---|
154 | |
---|
155 | mkdir -p %{buildroot}%{_sysconfdir}/alsa/conf.d/ |
---|
156 | cp %{buildroot}%{_datadir}/alsa/alsa.conf.d/50-pipewire.conf \ |
---|
157 | %{buildroot}%{_sysconfdir}/alsa/conf.d/50-pipewire.conf |
---|
158 | cp %{buildroot}%{_datadir}/alsa/alsa.conf.d/99-pipewire-default.conf \ |
---|
159 | %{buildroot}%{_sysconfdir}/alsa/conf.d/99-pipewire-default.conf |
---|
160 | |
---|
161 | |
---|
162 | %check |
---|
163 | %meson_test |
---|
164 | |
---|
165 | |
---|
166 | %pre |
---|
167 | getent group pipewire >/dev/null || groupadd -r pipewire |
---|
168 | getent passwd pipewire >/dev/null || \ |
---|
169 | useradd -r -g pipewire -d %{_localstatedir}/run/pipewire -s /sbin/nologin -c "PipeWire System Daemon" pipewire |
---|
170 | exit 0 |
---|
171 | |
---|
172 | %if %{with systemd} |
---|
173 | %post |
---|
174 | %systemd_user_post pipewire.service |
---|
175 | %systemd_user_post pipewire.socket |
---|
176 | %endif |
---|
177 | |
---|
178 | %post libs -p /sbin/ldconfig |
---|
179 | %postun libs -p /sbin/ldconfig |
---|
180 | |
---|
181 | |
---|
182 | %files |
---|
183 | %license COPYING LICENSE |
---|
184 | %doc README.md |
---|
185 | %if %{with systemd} |
---|
186 | %{_userunitdir}/pipewire.* |
---|
187 | %endif |
---|
188 | %{_bindir}/pipewire |
---|
189 | %{_bindir}/pipewire-media-session |
---|
190 | %dir %{_sysconfdir}/pipewire/ |
---|
191 | %config(noreplace) %{_sysconfdir}/pipewire/pipewire.conf |
---|
192 | %if %{with man} |
---|
193 | %{_mandir}/man1/pipewire.1* |
---|
194 | %{_mandir}/man5/pipewire.conf.5* |
---|
195 | %endif |
---|
196 | |
---|
197 | %files libs |
---|
198 | %license COPYING LICENSE |
---|
199 | %doc README.md |
---|
200 | %{_libdir}/libpipewire-%{apiversion}.so.* |
---|
201 | %{_libdir}/pipewire-%{apiversion}/ |
---|
202 | %{_libdir}/spa-%{spaversion}/ |
---|
203 | %{_libdir}/gstreamer-1.0/libgstpipewire.* |
---|
204 | %{_libdir}/alsa-lib/libasound_module_*_pipewire.so |
---|
205 | /lib/udev/rules.d/90-pipewire-alsa.rules |
---|
206 | %{_datadir}/alsa/alsa.conf.d/50-pipewire.conf |
---|
207 | %{_datadir}/alsa/alsa.conf.d/99-pipewire-default.conf |
---|
208 | %dir %{_datadir}/alsa-card-profile |
---|
209 | %dir %{_datadir}/alsa-card-profile/mixer |
---|
210 | %dir %{_datadir}/alsa-card-profile/mixer/paths |
---|
211 | %dir %{_datadir}/alsa-card-profile/mixer/profile-sets |
---|
212 | %{_datadir}/alsa-card-profile/mixer/paths/* |
---|
213 | %{_datadir}/alsa-card-profile/mixer/profile-sets/* |
---|
214 | %config(noreplace) %{_sysconfdir}/alsa/conf.d/50-pipewire.conf |
---|
215 | %config(noreplace) %{_sysconfdir}/alsa/conf.d/99-pipewire-default.conf |
---|
216 | |
---|
217 | %files devel |
---|
218 | %{_libdir}/libpipewire-%{apiversion}.so |
---|
219 | %{_includedir}/pipewire-%{apiversion}/ |
---|
220 | %{_includedir}/spa-%{spaversion}/ |
---|
221 | %{_libdir}/pkgconfig/libpipewire-%{apiversion}.pc |
---|
222 | %{_libdir}/pkgconfig/libspa-%{spaversion}.pc |
---|
223 | |
---|
224 | %files doc |
---|
225 | %{_datadir}/doc/pipewire/html |
---|
226 | |
---|
227 | %files utils |
---|
228 | %{_bindir}/pw-* |
---|
229 | |
---|
230 | %{_bindir}/spa-monitor |
---|
231 | %{_bindir}/spa-inspect |
---|
232 | |
---|
233 | |
---|
234 | %changelog |
---|
235 | * Mon Aug 03 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 0.3.8-1 |
---|
236 | - new upstream release. |
---|
237 | - dropped Patch1 and 2: fixed in upstream. |
---|
238 | - imported Patch0 from rawhide. |
---|
239 | |
---|
240 | * Wed Jul 29 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 0.2.7-1 |
---|
241 | - new upstream release. |
---|
242 | |
---|
243 | * Mon Sep 23 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 0.2.6-6 |
---|
244 | - initial build for Vine Linux. |
---|
245 | |
---|
246 | * Mon Sep 16 2019 Kalev Lember <klember@redhat.com> - 0.2.6-5 |
---|
247 | - Don't require the daemon package for -devel subpackage |
---|
248 | - Move pipewire.conf man page to the daemon package |
---|
249 | |
---|
250 | * Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.6-4 |
---|
251 | - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild |
---|
252 | |
---|
253 | * Wed Jun 19 2019 Wim Taymans <wtaymans@redhat.com> - 0.2.6-3 |
---|
254 | - Add patch to reuse fd in pipewiresrc |
---|
255 | - Add patch for device provider |
---|
256 | - Add patch to disable extra security checks until portal is fixed. |
---|
257 | |
---|
258 | * Tue Jun 04 2019 Kalev Lember <klember@redhat.com> - 0.2.6-2 |
---|
259 | - Split libpipewire and the gstreamer plugin out to -libs subpackage |
---|
260 | |
---|
261 | * Wed May 22 2019 Wim Taymans <wtaymans@redhat.com> - 0.2.6-1 |
---|
262 | - Update to 0.2.6 |
---|
263 | - Add patch for alsa-lib 1.1.9 include path |
---|
264 | |
---|
265 | * Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-3 |
---|
266 | - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild |
---|
267 | |
---|
268 | * Fri Jan 04 2019 Wim Taymans <wtaymans@redhat.com> - 0.2.5-2 |
---|
269 | - Add patch to avoid invalid conversion error with C++ compilers |
---|
270 | |
---|
271 | * Thu Nov 22 2018 Wim Taymans <wtaymans@redhat.com> - 0.2.5-1 |
---|
272 | - Update to 0.2.5 |
---|
273 | |
---|
274 | * Thu Nov 22 2018 Wim Taymans <wtaymans@redhat.com> - 0.2.4-1 |
---|
275 | - Update to 0.2.4 |
---|
276 | |
---|
277 | * Thu Oct 18 2018 Wim Taymans <wtaymans@redhat.com> - 0.2.3-2 |
---|
278 | - Add systemd socket activation |
---|
279 | |
---|
280 | * Thu Aug 30 2018 Wim Taymans <wtaymans@redhat.com> - 0.2.3-1 |
---|
281 | - Update to 0.2.3 |
---|
282 | |
---|
283 | * Tue Jul 31 2018 Wim Taymans <wtaymans@redhat.com> - 0.2.2-1 |
---|
284 | - Update to 0.2.2 |
---|
285 | |
---|
286 | * Fri Jul 20 2018 Wim Taymans <wtaymans@redhat.com> - 0.2.1-1 |
---|
287 | - Update to 0.2.1 |
---|
288 | |
---|
289 | * Tue Jul 17 2018 Wim Taymans <wtaymans@redhat.com> - 0.2.0-1 |
---|
290 | - Update to 0.2.0 |
---|
291 | |
---|
292 | * Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.9-2 |
---|
293 | - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild |
---|
294 | |
---|
295 | * Tue Feb 27 2018 Wim Taymans <wtaymans@redhat.com> - 0.1.9-1 |
---|
296 | - Update to 0.1.9 |
---|
297 | |
---|
298 | * Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.8-3 |
---|
299 | - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild |
---|
300 | |
---|
301 | * Sat Feb 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.1.8-2 |
---|
302 | - Switch to %%ldconfig_scriptlets |
---|
303 | |
---|
304 | * Tue Jan 23 2018 Wim Taymans <wtaymans@redhat.com> - 0.1.8-1 |
---|
305 | - Update to 0.1.8 |
---|
306 | |
---|
307 | * Fri Nov 24 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.7-1 |
---|
308 | - Update to 0.1.7 |
---|
309 | - Add to build when memfd_create is already defined |
---|
310 | |
---|
311 | * Fri Nov 03 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.6-1 |
---|
312 | - Update to 0.1.6 |
---|
313 | |
---|
314 | * Tue Sep 19 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.5-2 |
---|
315 | - Add patch to avoid segfault when probing |
---|
316 | |
---|
317 | * Tue Sep 19 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.5-1 |
---|
318 | - Update to 0.1.5 |
---|
319 | |
---|
320 | * Thu Sep 14 2017 Kalev Lember <klember@redhat.com> - 0.1.4-3 |
---|
321 | - Rebuilt for GNOME 3.26.0 megaupdate |
---|
322 | |
---|
323 | * Fri Sep 08 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.4-2 |
---|
324 | - Install SPA hooks |
---|
325 | |
---|
326 | * Wed Aug 23 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.4-1 |
---|
327 | - Update to 0.1.4 |
---|
328 | |
---|
329 | * Wed Aug 09 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.3-1 |
---|
330 | - Update to 0.1.3 |
---|
331 | |
---|
332 | * Tue Jul 04 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.2-1 |
---|
333 | - Update to 0.1.2 |
---|
334 | - Added more build requirements |
---|
335 | - Make separate doc package |
---|
336 | |
---|
337 | * Mon Jun 26 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.1-1 |
---|
338 | - Update to 0.1.1 |
---|
339 | - Add dbus-1 to BuildRequires |
---|
340 | - change libs-devel to -devel |
---|
341 | |
---|
342 | * Wed Sep 9 2015 Wim Taymans <wtaymans@redhat.com> - 0.1.0-2 |
---|
343 | - Fix BuildRequires to use pkgconfig, add all dependencies found in configure.ac |
---|
344 | - Add user and groups if needed |
---|
345 | - Add license to %%licence |
---|
346 | |
---|
347 | * Tue Sep 1 2015 Wim Taymans <wtaymans@redhat.com> - 0.1.0-1 |
---|
348 | - First version |
---|