1 |
%define version 0.13.3 |
2 |
%define git 0 |
3 |
%define release %mkrel 9 |
4 |
|
5 |
%define gstreamer 0.10.0 |
6 |
%define gstname gstreamer0.10 |
7 |
|
8 |
%define major 3 |
9 |
%define libname %mklibname rhythmbox %major |
10 |
|
11 |
Name: rhythmbox |
12 |
Summary: Music Management Application |
13 |
Version: %version |
14 |
Release: %release |
15 |
License: GPLv2+ with exception |
16 |
Group: Sound |
17 |
%if %git |
18 |
Source0: %{name}-%{git}.tar.bz2 |
19 |
%else |
20 |
Source: http://ftp.gnome.org/pub/GNOME/sources/rhythmbox/%{name}-%{version}.tar.bz2 |
21 |
%endif |
22 |
# gw take default Internet radio station listing from Fedora: |
23 |
Source1: http://cvs.fedoraproject.org/viewcvs/*checkout*/rpms/rhythmbox/devel/rhythmbox-iradio-initial.pls |
24 |
#gw: add more radio stations |
25 |
Patch6: rhythmbox-more-radios.patch |
26 |
URL: http://www.gnome.org/projects/rhythmbox/ |
27 |
|
28 |
BuildRequires: libGConf2-devel |
29 |
BuildRequires: gtk+2-devel >= 2.18.0 |
30 |
BuildRequires: libgnome-keyring-devel |
31 |
BuildRequires: libmusicbrainz3-devel |
32 |
BuildRequires: brasero-devel >= 0.9.1 |
33 |
BuildRequires: libgpod-devel |
34 |
BuildRequires: scrollkeeper |
35 |
BuildRequires: libsoup-devel >= 2.26.0 |
36 |
BuildRequires: libsm-devel |
37 |
BuildRequires: gstreamer0.10-python-devel |
38 |
BuildRequires: pygtk2.0-devel |
39 |
BuildRequires: liblirc-devel |
40 |
BuildRequires: desktop-file-utils |
41 |
BuildRequires: libcheck-devel |
42 |
BuildRequires: avahi-client-devel |
43 |
BuildRequires: avahi-glib-devel |
44 |
BuildRequires: libnotify-devel >= 0.3.2 |
45 |
BuildRequires: libgstreamer-plugins-base-devel >= %gstreamer |
46 |
BuildRequires: libtotem-plparser-devel >= 2.26.0 |
47 |
BuildRequires: libmtp-devel |
48 |
BuildRequires: gnome-media-profiles-devel |
49 |
BuildRequires: libvala-devel |
50 |
BuildRequires: libjson-glib-devel |
51 |
BuildRequires: libgudev-devel |
52 |
BuildRequires: gtk-doc |
53 |
BuildRequires: gnome-common |
54 |
BuildRequires: intltool |
55 |
BuildRequires: gnome-doc-utils |
56 |
BuildRequires: libdmapsharing-devel >= 2.1.6 |
57 |
BuildRequires: libproxy-devel |
58 |
# for the check |
59 |
BuildRequires: x11-server-xvfb |
60 |
|
61 |
Requires: %libname >= %version-%release |
62 |
Requires: %gstname-plugins-base |
63 |
Requires: %gstname-plugins-good |
64 |
Suggests: %gstname-plugins-ugly |
65 |
Requires: %gstname-soup |
66 |
Requires: %gstname-flac >= %gstreamer |
67 |
Requires: %gstname-python |
68 |
Requires: dbus-x11 |
69 |
Requires: gnome-python |
70 |
Requires: gnome-python-gconf |
71 |
Requires: gnome-python-gnomekeyring |
72 |
Requires: gvfs |
73 |
# for iphone support |
74 |
Suggests: gvfs-iphone |
75 |
#gw context pane: |
76 |
Requires: python-webkitgtk |
77 |
Requires: python-mako |
78 |
Suggests: media-player-info |
79 |
Provides: net-rhythmbox |
80 |
Obsoletes: net-rhythmbox |
81 |
Provides: rhythmbox0.7 |
82 |
Obsoletes: rhythmbox0.7 |
83 |
Provides: rhythmbox-scrobbler |
84 |
Obsoletes: rhythmbox-scrobbler |
85 |
Requires(post): scrollkeeper |
86 |
Requires(postun): scrollkeeper |
87 |
Requires(post): GConf2 >= 2.3.3 |
88 |
Requires(preun): GConf2 >= 2.3.3 |
89 |
|
90 |
%description |
91 |
Music Management application with support for ripping audio-cd's, |
92 |
playback of Ogg Vorbis and Mp3 and burning of CD-Rs. |
93 |
|
94 |
%package -n %libname |
95 |
Group:System/Libraries |
96 |
Summary: Shared library part of %name |
97 |
|
98 |
%description -n %libname |
99 |
Music Management application with support for ripping audio-cd's, |
100 |
playback of Ogg Vorbis and Mp3 and burning of CD-Rs. |
101 |
|
102 |
This is the shared library part of %name. |
103 |
|
104 |
%package mozilla |
105 |
Group: Sound |
106 |
Summary: Rhythmbox integration for Mozilla Firefox |
107 |
Requires: %name = %version |
108 |
|
109 |
%description mozilla |
110 |
This plugin integates Rhythmbox with Mozilla and compatible |
111 |
browsers. It provides a handler for itms:// Links to Apples iTunes |
112 |
Music Store. |
113 |
|
114 |
%package upnp |
115 |
Group: Sound |
116 |
Summary: Rhythmbox UPNP plugin |
117 |
Requires: %name = %version-%release |
118 |
Requires: python-coherence |
119 |
Requires: python-louie |
120 |
Requires: python-twisted |
121 |
|
122 |
%description upnp |
123 |
This plugin adds UPNP support to Rhythmbox. It allows playing media |
124 |
from, and sending media to UPnP/DLNA network devices. |
125 |
|
126 |
%package devel |
127 |
Group: Development/C |
128 |
Summary: Rhythmbox plugin development files |
129 |
|
130 |
%description devel |
131 |
Install this if you want to build Rhythmbox plugins. |
132 |
|
133 |
%prep |
134 |
%if %git |
135 |
%setup -q -n %name |
136 |
./autogen.sh -V |
137 |
%else |
138 |
%setup -q |
139 |
%endif |
140 |
|
141 |
cp %SOURCE1 . |
142 |
%patch6 -p0 |
143 |
#./autogen.sh -V |
144 |
|
145 |
%build |
146 |
#gw rb.c |
147 |
%define Werror_cflags %nil |
148 |
%configure2_5x \ |
149 |
--with-mdns=avahi \ |
150 |
--enable-gtk-doc \ |
151 |
--enable-vala \ |
152 |
--with-gnome-keyring |
153 |
|
154 |
%make |
155 |
|
156 |
%install |
157 |
rm -rf %{buildroot} |
158 |
GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 %makeinstall_std _ENABLE_SK=false |
159 |
|
160 |
%find_lang %name --with-gnome |
161 |
for omf in %buildroot%_datadir/omf/*/*{-??.omf,-??_??.omf};do |
162 |
echo "%lang($(basename $omf|sed -e s/.*-// -e s/.omf//)) $(echo $omf|sed s!%buildroot!!)" >> %name.lang |
163 |
done |
164 |
|
165 |
desktop-file-install --vendor="" \ |
166 |
--remove-category="Application" \ |
167 |
--add-category="Audio;Player" \ |
168 |
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/* |
169 |
|
170 |
|
171 |
rm -f %buildroot%_libdir/%name/plugins/*/*.a \ |
172 |
%buildroot%_libdir/%name/plugins/*.a \ |
173 |
%buildroot%_libdir/*.a \ |
174 |
%buildroot%_libdir/mozilla/plugins/lib*a |
175 |
#gw remove it until there's a devel package |
176 |
rm -f %buildroot%_libdir/librhythmbox-core.{so,la} |
177 |
|
178 |
find %buildroot -name \*.la |xargs chmod 644 |
179 |
|
180 |
# Replace the default radios with Ogg Radios |
181 |
cp -a rhythmbox-iradio-initial.pls %{buildroot}%{_libdir}/rhythmbox/plugins/iradio/iradio-initial.pls |
182 |
|
183 |
# save space by linking identical images in translated docs |
184 |
helpdir=$RPM_BUILD_ROOT%{_datadir}/gnome/help/%{name} |
185 |
for f in $helpdir/C/figures/*.png; do |
186 |
b="$(basename $f)" |
187 |
for d in $helpdir/*; do |
188 |
if [ -d "$d" -a "$d" != "$helpdir/C" ]; then |
189 |
g="$d/figures/$b" |
190 |
if [ -f "$g" ]; then |
191 |
if cmp -s $f $g; then |
192 |
rm "$g"; ln -s "../../C/figures/$b" "$g" |
193 |
fi |
194 |
fi |
195 |
fi |
196 |
done |
197 |
done |
198 |
|
199 |
%check |
200 |
# gw one test fails without a running dbus |
201 |
#xvfb-run make check |
202 |
|
203 |
%clean |
204 |
rm -rf %{buildroot} |
205 |
|
206 |
%preun |
207 |
%preun_uninstall_gconf_schemas rhythmbox |
208 |
|
209 |
%files -f %name.lang |
210 |
%defattr(-, root, root) |
211 |
%doc AUTHORS COPYING README NEWS |
212 |
%config(noreplace) %{_sysconfdir}/gconf/schemas/rhythmbox.schemas |
213 |
%{_bindir}/rhythmbox |
214 |
%{_bindir}/rhythmbox-client |
215 |
%_mandir/man1/*.1* |
216 |
%{_datadir}/applications/rhythmbox.desktop |
217 |
%{_datadir}/applications/rhythmbox-device.desktop |
218 |
%{_datadir}/icons/hicolor/*/apps/rhythmbox* |
219 |
%{_datadir}/icons/hicolor/*/places/music-library.* |
220 |
%{_datadir}/rhythmbox/ |
221 |
%dir %_datadir/omf/rhythmbox/ |
222 |
%_datadir/omf/rhythmbox/rhythmbox-C.omf |
223 |
%_datadir/gtk-doc/html/%name |
224 |
%_datadir/dbus-1/services/org.gnome.Rhythmbox.service |
225 |
%_libexecdir/rhythmbox-metadata |
226 |
%dir %_libdir/%name/ |
227 |
%dir %_libdir/%name/plugins |
228 |
%_libdir/%name/plugins/artdisplay |
229 |
%_libdir/%name/plugins/audiocd |
230 |
%_libdir/%name/plugins/audioscrobbler |
231 |
#%_libdir/%name/plugins/cd-recorder |
232 |
%_libdir/%name/plugins/context |
233 |
%_libdir/%name/plugins/daap |
234 |
%_libdir/%name/plugins/dbus-media-server |
235 |
%_libdir/%name/plugins/fmradio |
236 |
%_libdir/%name/plugins/generic-player |
237 |
%_libdir/%name/plugins/im-status |
238 |
%_libdir/%name/plugins/ipod |
239 |
%_libdir/%name/plugins/iradio |
240 |
%_libdir/%name/plugins/jamendo |
241 |
%_libdir/%name/plugins/lyrics |
242 |
%_libdir/%name/plugins/magnatune |
243 |
%_libdir/%name/plugins/mmkeys |
244 |
%_libdir/%name/plugins/mpris |
245 |
%_libdir/%name/plugins/mtpdevice |
246 |
%_libdir/%name/plugins/power-manager |
247 |
%_libdir/%name/plugins/python-console |
248 |
%_libdir/%name/plugins/rb |
249 |
%_libdir/%name/plugins/rblirc |
250 |
%_libdir/%name/plugins/rbzeitgeist |
251 |
%_libdir/%name/plugins/replaygain |
252 |
%_libdir/%name/plugins/sample-vala |
253 |
%_libdir/%name/plugins/sendto |
254 |
%_libdir/%name/plugins/status-icon |
255 |
%_libdir/%name/plugins/visualizer |
256 |
|
257 |
%files upnp |
258 |
%defattr(-, root, root) |
259 |
%_libdir/%name/plugins/upnp_coherence |
260 |
|
261 |
%files -n %libname |
262 |
%defattr(-, root, root) |
263 |
%_libdir/librhythmbox-core.so.%{major}* |
264 |
|
265 |
%files mozilla |
266 |
%defattr(-, root, root) |
267 |
%_libdir/mozilla/plugins/librhythmbox-itms-detection-plugin.so |
268 |
|
269 |
%files devel |
270 |
%defattr(-, root, root) |
271 |
%_includedir/%name |
272 |
%_libdir/pkgconfig/%name.pc |