]> git.pld-linux.org Git - packages/mpd.git/blob - mpd.spec
- rebuild with icu 65
[packages/mpd.git] / mpd.spec
1 # TODO:
2 # - add logrotate
3 #
4 # Conditional build:
5 %bcond_without  mod             # MOD support via libmikmod
6 %bcond_without  pulseaudio      # PulseAudio support
7 %bcond_without  audiofile       # Audiofile support (WAV and others)
8
9 Summary:        Music Player Daemon
10 Summary(pl.UTF-8):      Music Player Daemon - demon odtwarzający muzykę
11 Name:           mpd
12 Version:        0.21.15
13 Release:        2
14 License:        GPL v2+
15 Group:          Applications/Multimedia
16 Source0:        http://www.musicpd.org/download/mpd/0.21/%{name}-%{version}.tar.xz
17 # Source0-md5:  38dbf631bb6b1fc7c3ce575097411745
18 Source1:        %{name}.conf
19 Source2:        %{name}.init
20 Source3:        %{name}.sysconfig
21 Source4:        %{name}.tmpfiles
22 URL:            http://www.musicpd.org/
23 BuildRequires:  OpenAL-devel
24 BuildRequires:  adplug-devel
25 BuildRequires:  alsa-lib-devel >= 0.9.0
26 %{?with_audiofile:BuildRequires:        audiofile-devel >= 0.3}
27 BuildRequires:  avahi-devel
28 BuildRequires:  boost-devel >= 1.58
29 BuildRequires:  bzip2-devel
30 BuildRequires:  curl-devel >= 7.18
31 BuildRequires:  dbus-devel
32 BuildRequires:  doxygen
33 BuildRequires:  expat-devel
34 BuildRequires:  faad2-devel >= 2.6.1-5
35 BuildRequires:  ffmpeg-devel >= 2.4.0
36 BuildRequires:  flac-devel >= 1.2.0
37 BuildRequires:  fluidsynth-devel >= 1.1
38 BuildRequires:  game-music-emu-devel
39 BuildRequires:  gcc >= 6:5
40 BuildRequires:  glib2-devel >= 1:2.28.0
41 BuildRequires:  jack-audio-connection-kit-devel >= 0.100
42 BuildRequires:  lame-libs-devel
43 BuildRequires:  libao-devel >= 0.8.3
44 BuildRequires:  libcdio-devel
45 BuildRequires:  libcdio-paranoia-devel >= 0.4
46 BuildRequires:  libcue-devel
47 BuildRequires:  libicu-devel >= 50
48 BuildRequires:  libid3tag-devel
49 BuildRequires:  libmad-devel
50 %{?with_mod:BuildRequires:      libmikmod-devel >= 3.2}
51 BuildRequires:  libmms-devel >= 0.4
52 BuildRequires:  libmodplug-devel
53 BuildRequires:  libmpdclient-devel >= 2.9
54 BuildRequires:  libmpg123-devel
55 BuildRequires:  libnfs-devel >= 1.11
56 BuildRequires:  libogg-devel
57 BuildRequires:  libsamplerate-devel >= 0.1.3
58 BuildRequires:  libshout-devel
59 BuildRequires:  libsidplay2-devel >= 2.1.1-5
60 BuildRequires:  libsmbclient-devel >= 0.2
61 BuildRequires:  libsndfile-devel
62 BuildRequires:  libstdc++-devel >= 0.2
63 BuildRequires:  libupnp-devel
64 BuildRequires:  libvorbis-devel
65 BuildRequires:  libwrap-devel
66 BuildRequires:  meson >= 0.49.0
67 BuildRequires:  musepack-devel
68 BuildRequires:  ninja
69 BuildRequires:  opus-devel
70 BuildRequires:  pkgconfig >= 1:0.9.0
71 %{?with_pulseaudio:BuildRequires:       pulseaudio-devel >= 0.9.16}
72 BuildRequires:  rpmbuild(macros) >= 1.727
73 BuildRequires:  shine-devel >= 3.1
74 BuildRequires:  soxr-devel
75 BuildRequires:  sphinx-pdg
76 BuildRequires:  sqlite3-devel >= 3.7.3
77 BuildRequires:  systemd-devel
78 BuildRequires:  twolame-devel
79 BuildRequires:  wavpack-devel
80 BuildRequires:  wildmidi-devel
81 BuildRequires:  xmlto
82 BuildRequires:  yajl-devel >= 2.0
83 BuildRequires:  zlib-devel
84 BuildRequires:  zziplib-devel >= 0.13
85 Requires(post,postun):  gtk-update-icon-cache
86 Requires(post,preun,postun):    systemd-units >= 38
87 Requires:       alsa-lib >= 0.9.0
88 %{?with_audiofile:Requires:     audiofile >= 0.3}
89 Requires:       curl-libs >= 7.18
90 Requires:       faad2-libs >= 2.6.1-5
91 Requires:       ffmpeg-libs >= 2.4.0
92 Requires:       flac >= 1.2.0
93 Requires:       fluidsynth >= 1.1
94 Requires:       glib2 >= 1:2.28.0
95 Requires:       hicolor-icon-theme
96 Requires:       jack-audio-connection-kit-libs >= 0.100
97 Requires:       libao >= 0.8.3
98 Requires:       libcdio-paranoia >= 0.4
99 Requires:       libicu >= 50
100 %{?with_mod:Requires:   libmikmod >= 3.2}
101 Requires:       libmms >= 0.4
102 Requires:       libmpdclient >= 2.9
103 Requires:       libnfs >= 1.11
104 Requires:       libsamplerate >= 0.1.3
105 Requires:       libsidplay2 >= 2.1.1-5
106 Requires:       libsmbclient >= 0.2
107 %{?with_pulseaudio:Requires:    pulseaudio-libs >= 0.9.16}
108 Requires:       shine >= 3.1
109 Requires:       sqlite3 >= 3.7.3
110 Requires:       systemd-units >= 38
111 Requires:       yajl >= 2.0
112 Requires:       zziplib >= 0.13
113 Provides:       group(mpd)
114 Provides:       user(mpd)
115 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
116
117 %description
118 Music Player Daemon (MPD) allows remote access for playing music (MP3,
119 Ogg Vorbis, FLAC, AAC, Mod, and wave files) and managing playlists.
120 MPD is designed for integrating a computer into a stereo system that
121 provides control for music playback over a local network. It is also
122 makes a great desktop music player, especially if you are a console
123 junkie, like frontend options, or restart X often.
124
125 %description -l hu.UTF-8
126 Music Player Daemon (MPD)-vel lehetővé válik távoli zenelejátszás
127 (MP3, Ogg Vorbis, FLAC, AAC, Mod és wav fájlok) és lejátszási listák
128 menedzselése. Az MPD a számítógépben egy zenelejátszó, amelyet
129 irányíthatsz helyi hálózaton keresztül. Egyben egy zseniális desktop
130 zenelejátszó is, különösen a konzol-mániásoknak, vagy azoknak, akik
131 sűrűn indítják újra az X-et.
132
133 %description -l pl.UTF-8
134 Music Player Daemon (MPD) pozwala na zdalny dostęp do odtwarzania
135 muzyki (plików MP3, Ogg Vorbis, FLAC, AAC, Mod i wave) oraz
136 zarządzania playlistami. MPD jest zaprojektowany do integrowania
137 komputera w system stereo umożliwiający sterowanie odtwarzaniem muzyki
138 w sieci lokalnej. Służy także za dobry odtwarzacz muzyki dla
139 komputerów biurkowych, zwłaszcza dla miłośników konsoli, różnych opcji
140 frontendów albo często restartujących X.
141
142 %package doc
143 Summary:        Documentation for Music Player Daemon (MPD)
144 Summary(fr.UTF-8):      Documentation pour Music Player Daemon (MPD)
145 Summary(it.UTF-8):      Documentazione di Music Player Daemon (MPD)
146 Summary(pl.UTF-8):      Podręcznik dla Music Player Daemon (MPD)
147 Group:          Documentation
148 Obsoletes:      mpd-apidocs < 0.21
149
150 %description doc
151 Documentation for Music Player Daemon (MPD).
152
153 %description doc -l fr.UTF-8
154 Documentation pour Music Player Daemon (MPD).
155
156 %description doc -l it.UTF-8
157 Documentazione di Music Player Daemon (MPD).
158
159 %description doc -l pl.UTF-8
160 Dokumentacja do Music Player Daemon (MPD).
161
162 %prep
163 %setup -q
164
165 %build
166 %meson build \
167         -Dpulse=%{?with_pulseaudio:enabled}%{!?with_pulseaudio:disabled} \
168         -Dmikmod=%{?with_mod:enabled}%{!?with_mod:disabled} \
169         -Dadplug=enabled \
170         -Dalsa=enabled \
171         -Dao=enabled \
172         -Daudiofile=%{?with_audiofile:enabled}%{!?with_audiofile:disabled} \
173         -Dbzip2=enabled \
174         -Dcdio-paranoia=enabled \
175         -Dcurl=enabled \
176         -Ddatabase=true \
177         -Ddocumentation=true \
178         -Ddsd=true \
179         -Dexpat=enabled \
180         -Dffmpeg=enabled \
181         -Dfifo=true \
182         -Dflac=enabled \
183         -Dfluidsynth=enabled \
184         -Dgme=enabled \
185         -Dhttpd=true \
186         -Dicu=enabled \
187         -Did3=enabled \
188         -Dinotify=true \
189         -Dipv6=enabled \
190         -Diso9660=enabled \
191         -Djack=enabled \
192         -Dlame-encoder=enabled \
193         -Dlibmpdclient=enabled \
194         -Dlibwrap=enabled \
195         -Dlsr=enabled \
196         -Dmad=enabled \
197         -Dmikmod=enabled \
198         -Dmms=enabled \
199         -Dmodplug=enabled \
200         -Dmpcdec=disabled \
201         -Dnfs=enabled \
202         -Dopenal=enabled \
203         -Dopus=enabled \
204         -Doss=enabled \
205         -Dpipe=true \
206         -Drecorder=true \
207         -Dsidplay=enabled \
208         -Dshine-encoder=enabled \
209         -Dshout=enabled \
210         -Dsmbclient=enabled \
211         -Dsndfile=enabled \
212         -Dsoundcloud=enabled \
213         -Dsoxr=enabled \
214         -Dsqlite=enabled \
215         -Ddaemon=true \
216         -Dsystemd=enabled \
217         -Dtcp=true \
218         -Dtwolame-encoder=enabled \
219         -Dupnp=enabled \
220         -Dun=enabled \
221         -Dvorbis=enabled \
222         -Dvorbis-encoder=enabled \
223         -Dwave_encoder=true \
224         -Dwavpack=enabled \
225         -Dwildmidi=enabled \
226         -Dzlib=enabled \
227         -Dzzip=enabled \
228         -Dzeroconf=avahi \
229         -Dsystemd_system_unit_dir=%{systemdunitdir} \
230         -Dsystemd_user_unit_dir=%{systemduserunitdir}
231 %meson_build -C build
232
233 %install
234 rm -rf $RPM_BUILD_ROOT
235 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig}} \
236         $RPM_BUILD_ROOT{/var/lib/mpd/playlists,/var/log/mpd,/var/run/mpd} \
237         $RPM_BUILD_ROOT%{systemdtmpfilesdir}
238
239 %meson_install -C build
240
241 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
242 install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/mpd
243 cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/mpd
244 cp -p %{SOURCE4} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
245
246 touch $RPM_BUILD_ROOT/var/lib/mpd/mpd.db
247 touch $RPM_BUILD_ROOT/var/lib/mpd/mpdstate
248 touch $RPM_BUILD_ROOT/var/lib/mpd/sticker.sql
249 touch $RPM_BUILD_ROOT/var/log/mpd/mpd.log
250
251 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/mpd
252
253 %clean
254 rm -rf $RPM_BUILD_ROOT
255
256 %pre
257 %groupadd -g 204 mpd
258 %useradd -u 204 -r -d /var/lib/mpd -s /bin/false -c "Music Player Daemon (MPD) user" -G audio -g mpd mpd
259
260 %post
261 for f in mpd.log; do
262         if [ ! -f /var/log/%{name}/$f ]; then
263                 touch /var/log/%{name}/$f
264                 chown mpd:mpd /var/log/%{name}/$f
265                 chmod 644 /var/log/%{name}/$f
266         fi
267 done
268 /sbin/chkconfig --add mpd
269 %systemd_post %{name}.service %{name}.socket
270 %update_icon_cache hicolor
271
272 %preun
273 if [ "$1" = "0" ]; then
274         %service mpd stop
275         /sbin/chkconfig --del mpd
276 fi
277 %systemd_preun %{name}.service %{name}.socket
278
279 %postun
280 if [ "$1" = "0" ]; then
281         %userremove mpd
282         %groupremove mpd
283 fi
284 %systemd_reload
285 %update_icon_cache hicolor
286
287 %triggerpostun -- %{name} < 0.16.6-1
288 %systemd_trigger %{name}.service
289
290 %files
291 %defattr(644,root,root,755)
292 %doc AUTHORS NEWS README.md doc/mpdconf.example
293 %attr(755,root,root) %{_bindir}/*
294 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mpd.conf
295 %attr(754,root,root) /etc/rc.d/init.d/mpd
296 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mpd
297 %{systemdtmpfilesdir}/%{name}.conf
298 %{systemdunitdir}/mpd.service
299 %{systemdunitdir}/mpd.socket
300 %{systemduserunitdir}/mpd.service
301 %{systemduserunitdir}/mpd.socket
302 %dir %attr(770,root,mpd) /var/lib/%{name}
303 %dir %attr(770,root,mpd) /var/lib/%{name}/playlists
304 %dir %attr(751,root,root) /var/log/%{name}
305 %dir %attr(770,root,mpd) /var/run/%{name}
306 %attr(644,mpd,mpd) %ghost /var/lib/%{name}/mpd.db
307 %attr(644,mpd,mpd) %ghost /var/lib/%{name}/mpdstate
308 %attr(644,mpd,mpd) %ghost /var/lib/%{name}/sticker.sql
309 %attr(644,mpd,mpd) %ghost /var/log/%{name}/mpd.log
310 %{_iconsdir}/hicolor/scalable/apps/mpd.svg
311 %{_mandir}/man1/mpd.1*
312 %{_mandir}/man5/mpd.conf.5*
313
314 %files doc
315 %defattr(644,root,root,755)
316 %doc build/doc/html
This page took 0.100838 seconds and 3 git commands to generate.