# Rebuild switch:
# --with nonfree Enables nonfree plugins (xine engine, MP4 support, iPod...)
#
%{?_with_nonfree: %define use_nonfree 1}
Name: amarok
Summary: Media player for KDE
Version: 1.4
Release: 0.6.beta1%{?dist}
Group: Applications/Multimedia
License: GPL
Url: http://amarok.kde.org
Source0: http://dl.sf.net/amarok/amarok-1.4-beta1.tar.bz2
Patch0: amarok-1.4beta1-gst10.patch
#Patch0: amarok-1.3.4-helix-libs.patch
#Patch1: amarok-1.3.6-libtunepimp040.patch
Patch2: amarok-1.3-engines-cfg.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: kdemultimedia-devel >= 6:3.2
BuildRequires: taglib-devel >= 1.3, esound-devel
BuildRequires: desktop-file-utils, gettext
BuildRequires: libGL
BuildRequires: libmusicbrainz-devel, xmms-devel >= 1:1.2
BuildRequires: libvisual-devel >= 0.2.0, SDL-devel, gtk+-devel
BuildRequires: libtool-ltdl-devel
BuildRequires: mysql-devel, postgresql-devel
BuildRequires: libtunepimp-devel >= 0.4.0
BuildRequires: kdebase-devel
BuildRequires: alsa-lib-devel
BuildRequires: akode-devel
BuildRequires: libifp-devel, libusb-devel
%if "%fedora" >= "5"
BuildRequires: gstreamer-plugins-base-devel, gstreamer-plugins-good-devel, gstreamer-devel
%else
BuildRequires: gstreamer-plugins-devel >= 0.8.4
%endif
%ifnarch ppc64 x86_64 s390 s390x ia64
BuildRequires: HelixPlayer
%endif
%if 0%{?use_nonfree}
BuildRequires: xine-lib-devel >= 0:1.0.0
BuildRequires: libmad-devel
BuildRequires: faad2-devel
%endif
Requires: kdemultimedia >= 6:3.2
Requires(post): desktop-file-utils
Requires(postun): desktop-file-utils
Obsoletes: amarok-arts < 1.3, amarok-akode < 1.3
Provides: amarok-devel = %{version}-%{release}
%description
Amarok is a KDE multimedia player with:
- fresh playlist concept, very fast to use, with drag and drop
- plays all formats supported by the various engines
- audio effects, like reverb and compressor
- compatible with the .m3u and .pls formats for playlists
- nice GUI, integrates into the KDE look, but with a unique touch
Amarok can use various engines to decode sound : gstreamer, arts,
helix and xine (disabled by default for patent reasons)
To use the helix engine, you'll have to install either HelixPlayer
or RealPlayer
%package visualisation
Summary: Visualisation plugins for Amarok
Group: Applications/Multimedia
Requires: %{name} = %{version}
%description visualisation
Amarok can use visualisation plugins from different origins.
Right now, only xmms is supported, which means that you can
use any of xmms' visualisation plugins with Amarok.
%if 0%{?use_nonfree}
%package nonfree
Summary: Non-free plugins for Amarok
Group: Applications/Multimedia
Requires: %{name} = %{version}
Obsoletes: %{name}-xine < %{version}
Provides: %{name}-xine = %{version}
%description nonfree
This package adds the patented/non-free plugins for Amarok:
- xine engine
- mp4 tagging support (not yet done)
- iPod support (not yet done)
%endif
%prep
%setup -q -n %{name}-%{version}-beta1
# Discover the helix libs
#%patch0 -p1 -b .helix-libs
# Use libtunepimp 0.4.0 (api changed)
#%patch1 -p1 -b .libtunepimp040
# Gstreamer default sink should be autoaudiosink
%patch2 -p1 -b .engines-cfg
# Don't use cache to detect gst 0.10 or it will fail because gst 0.8 is not present
%patch0 -p1 -b .gst10
%build
unset QTDIR && . %{_sysconfdir}/profile.d/qt.sh
# work around an improper ${kdelibsuff}
export QTLIB=${QTDIR}/lib QTINC=${QTDIR}/include
%configure \
--disable-debug \
--disable-rpath \
--with-gstreamer10 \
--enable-mysql \
--enable-postgresql \
--with-ifp \
%ifnarch ppc64 x86_64 s390 s390x ia64
--with-helix=%{_libdir}/helix \
%endif
%if 0%{?use_nonfree}
--with-xine \
# --with-mp4v2 \ # Compile fails
# --with-libgpod \ # Not packaged yet
%else
--without-xine \
--without-mp4v2 \
# --without-libgpod \
%endif
# --enable-final \
# --with-nmm \
# --with-mas
# fails with smp flags
#make %{?_smp_mflags}
make
%install
rm -fr $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
# desktop files
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
mkdir -p $RPM_BUILD_ROOT%{_datadir}/apps/konqueror/servicemenus
# The desktop file contains both the desktop entry and the service menu, we have to split.
# Tail from the blank line:
perl -ne '/^$/...do{print;0}' $RPM_BUILD_ROOT%{_datadir}/applications/kde/%{name}.desktop \
> $RPM_BUILD_ROOT%{_datadir}/apps/konqueror/servicemenus/%name.desktop
# Head until the blank line:
perl -pi -e '/^$/ && exit' $RPM_BUILD_ROOT%{_datadir}/applications/kde/%{name}.desktop
desktop-file-install --vendor fedora \
--dir $RPM_BUILD_ROOT%{_datadir}/applications/kde \
--delete-original \
--add-category Application \
--add-category X-Fedora \
$RPM_BUILD_ROOT%{_datadir}/applications/kde/%{name}.desktop
rm -f $RPM_BUILD_ROOT%{_datadir}/applications/kde/amarokapp.desktop
# Amarok crashes without the *.la files !
#find $RPM_BUILD_ROOT -type f -name "*.la" -exec rm -f {} ';'
# Remove the *.la file in /usr/lib though, those are OK to delete
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
%find_lang %{name}
# HTML
for lang_dir in $RPM_BUILD_ROOT%{_docdir}/HTML/* ; do
lang=$(basename $lang_dir)
[ "$lang" == "en" ] && d=en/%{name} || d=$lang
echo "%lang($lang) %doc %{_docdir}/HTML/$d" >> %{name}.lang
done
%post
# update icon themes if necessary
touch --no-create %{_datadir}/icons/hicolor || :
if [ -x %{_bindir}/gtk-update-icon-cache ]; then
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
fi
update-desktop-database &> /dev/null ||:
ldconfig
%postun
# update icon themes if necessary
touch --no-create %{_datadir}/icons/hicolor || :
if [ -x %{_bindir}/gtk-update-icon-cache ]; then
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
fi
update-desktop-database &> /dev/null ||:
ldconfig
%clean
rm -fr $RPM_BUILD_ROOT
%files -f %{name}.lang
%defattr(-,root,root)
%doc COPYING AUTHORS ChangeLog README
%{_bindir}/amarok
%{_bindir}/amarokapp
%{_bindir}/amarokcollectionscanner
%{_datadir}/apps/%{name}
%{_datadir}/icons/hicolor/*/*
%{_datadir}/applications/kde/*.desktop
%{_datadir}/services/amarok_void-engine_plugin.desktop
%{_datadir}/services/amarok_ifp-mediadevice.desktop
%{_datadir}/services/amarok_vfat-mediadevice.desktop
%{_datadir}/servicetypes/*.desktop
%{_datadir}/apps/konqueror/servicemenus/*.desktop
%{_libdir}/kde3/libamarok_void-engine_plugin.*
%{_libdir}/kde3/libamarok_ifp-mediadevice.*
%{_libdir}/kde3/libamarok_vfat-mediadevice.*
%{_libdir}/kde3/konqsidebar_universalamarok.*
%{_libdir}/libamarok.*
%{_datadir}/apps/konqsidebartng/*/amarok.desktop
%{_datadir}/apps/profiles/amarok.profile.xml
%{_libdir}/mcop/Amarok
%{_libdir}/mcop/amarok*
%{_datadir}/config/amarokrc
%{_datadir}/config.kcfg/*.kcfg
# Gstreamer engine
%if "%fedora" >= "5"
%{_datadir}/services/amarok_gst10engine_plugin.desktop
%{_libdir}/kde3/libamarok_gst10engine_plugin.*
%else
%{_datadir}/services/amarok_gstengine_plugin.desktop
%{_libdir}/kde3/libamarok_gstengine_plugin.*
%endif
# Akode engine
%{_datadir}/services/amarok_aKode-engine.desktop
%{_libdir}/kde3/libamarok_aKode-engine.*
# Arts engine
%{_libdir}/libamarokarts*
%{_libdir}/kde3/libamarok_artsengine_plugin.*
%{_datadir}/services/amarok_artsengine_plugin.desktop
# Helix engine
%ifnarch ppc64 s390 s390x ia64
%{_libdir}/kde3/libamarok_helixengine_plugin.*
%{_datadir}/services/amarok_helixengine_plugin.desktop
%endif
%files visualisation
%defattr(-,root,root)
%{_bindir}/amarok_libvisual
%{_bindir}/amarok_xmmswrapper2
%if 0%{?use_nonfree}
%files nonfree
%defattr(-,root,root)
%{_libdir}/kde3/libamarok_xine-engine.*
%{_datadir}/services/amarok_xine-engine.desktop
%endif
%changelog
* Wed Feb 22 2006 Aurelien Bompard <gauret[AT]free.fr> 1.4-0.6.beta1
- remove requirement on HelixPlayer for x86_64, amarok include the headers
* Wed Feb 22 2006 Aurelien Bompard <gauret[AT]free.fr> 1.4-0.5.beta1
- build Helix engine on x86_64
* Wed Feb 22 2006 Aurelien Bompard <gauret[AT]free.fr> 1.4-0.4.beta1
- fix gstramer 0.10 detection again
* Mon Feb 20 2006 Aurelien Bompard <gauret[AT]free.fr> 1.4-0.3.beta1
- fix gstreamer 0.10 detection
* Fri Feb 17 2006 Aurelien Bompard <gauret[AT]free.fr> 1.4-0.1.beta1
- fix gstreamer dependency
* Wed Feb 15 2006 Aurelien Bompard <gauret[AT]free.fr> 1.4-0.1.beta1
- version 1.4-beta1
* Sun Feb 12 2006 Aurelien Bompard <gauret[AT]free.fr> 1.3.8-2
- fix BR for gstreamer < 0.10
* Sat Jan 21 2006 Aurelien Bompard <gauret[AT]free.fr> 1.3.8-1
- version 1.3.8
* Wed Dec 07 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3.7-1
- version 1.3.7
* Sun Nov 20 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3.6-2
- build with libtunepimp
- add patch to use libtunepimp 0.4.0 (api changed)
* Tue Nov 08 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3.6-1
- version 1.3.6
- BR libGL instead of xorg-x11-Mesa-libGL to prepare for X11R7
* Tue Oct 25 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3.5-1
- version 1.3.5
* Mon Oct 24 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3.4-1
- version 1.3.4
- add mysql and postgresql support
- update desktop database
- add %%doc files
* Thu Oct 13 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3.3-1
- version 1.3.3
- drop endian patch
* Wed Sep 21 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3.2-1
- version 1.3.2
- remove patch 4 (applied upstream)
* Sat Sep 10 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3.1-2
- add patch from upstream to fix alsasink in gstreamer
- default to autoaudiosink for gstreamer
* Mon Sep 05 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3.1-1
- version 1.3.1
* Tue Aug 23 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3-6
- add version to obsoletes
* Tue Aug 23 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3-5
- add missing Obsoletes.
* Mon Aug 22 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3-4
- fix endian declaration on ppc
* Mon Aug 22 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3-3
- dont build the Helix engine on arches where HelixPlayer is not built
* Mon Aug 22 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3-2
- disable the akode engine (disabled upstream, see Changelog)
- merge in the Helix engine, since it does not have special Requires.
HelixPlayer or RealPlayer need to be installed manually (either one)
- updated description
* Mon Aug 22 2005 Aurelien Bompard <gauret[AT]free.fr> 1.3-1
- update to version 1.3
- add Michel Salim's improvements:
- call gtk-update-icon-cache to (de-)register icons
- new output plugin subpackage: helix
- patched gst and helix plugins' default settings
* Fri Jul 01 2005 Aurelien Bompard <gauret[AT]free.fr> 1.2.4-6
- remove -arts subpackage, it is useless
* Thu Jun 2 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2.4-6.fc5
- remove temporary work-around from 1.2.4-2.fc4
- add patch to fix several missing forward declarations which let
compilation with gcc >= 4.0.0-9 fail
- re-enable SMP make flags
* Thu Jun 2 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2.4-5.fc4
- disable SMP make flags, since previous release failed miserably on
i386 while the one before it succeeded
* Thu Jun 2 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2.4-4.fc4
- set QTLIB and QTINC, so configure script does not search for Qt in
QTDIR/lib64 on 64-bit multilib platforms
* Thu Jun 2 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2.4-3.fc4
- try to fix build problems (#158654): always set QTDIR, always
buildrequire libtool-ltdl-devel, disable %%fedora conditional BR
* Thu Jun 2 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2.4-2.fc4
- temporarily add patch to work around Fedora Core bug 159090
* Mon May 23 2005 Aurelien Bompard <gauret[AT]free.fr> 1.2.4-1
- version 1.2.4
- use dist tag
- conditional builds for fc3 and fc4
* Sun May 22 2005 Jeremy Katz <katzj@redhat.com> - 1.2.3-2.fc4
- rebuild on all arches
* Tue Mar 29 2005 Aurelien Bompard <gauret[AT]free.fr> 1.2.3-1.fc4
- version 1.2.3
- add libtool to BuildRequirements
- change release tag for FC4
- add a subpackage for aKode engine
* Mon Mar 14 2005 Aurelien Bompard <gauret[AT]free.fr> 1.2.2-1
- version 1.2.2
* Sat Mar 05 2005 Aurelien Bompard <gauret[AT]free.fr> 1.2.1-1
- version 1.2.1 (bugfixes)
* Mon Feb 14 2005 Aurelien Bompard <gauret[AT]free.fr> 1.2-2
- show in the GNOME menus too
* Sun Feb 13 2005 Aurelien Bompard <gauret[AT]free.fr> 1.2-1
- version 1.2 final
- drop --disable-rpath, won't build with it.
- drop epoch
* Thu Feb 10 2005 Aurelien Bompard <gauret[AT]free.fr> 0:1.2-0.2.beta4
- version 1.2 beta 4
* Sat Nov 27 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.2-0.fdr.0.1.beta1
- version 1.2beta 1
- minor cleanups
- don't ship the desktop files, split the provided one instead
* Sun Oct 24 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.1.1-0.fdr.2
- clean-up buildrequires
- fix --with xine switch
- make a -visualisation subpackage for visualisation plugins
- make a -arts subpackage to lower dependencies
* Wed Oct 20 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.1.1-0.fdr.1
- version 1.1.1
* Mon Sep 27 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.1.0-0.fdr.2
- improve buildrequires
* Sun Sep 26 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.1.0-0.fdr.1
- version 1.1 final
* Tue Sep 14 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.1.0-0.fdr.0.1.beta2
- version 1.1 beta2
* Thu Aug 05 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.0.2-0.fdr.1
- version 1.0.2
- added new xine engine
* Tue Jul 13 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.0.1-0.fdr.3
- remove BR: libselinux-devel: RH fixed the bug
* Wed Jun 30 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.0.1-0.fdr.2
- add Requires: xorg-x11-devel because of a qt packaging bug
* Tue Jun 29 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.0.1-0.fdr.1
- version 1.0.1 (bugfixes)
* Mon Jun 21 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.0-0.fdr.3
- remove BR: xine-lib-devel
- add BR: xorg-x11-Mesa-libGL and libselinux-devel
* Thu Jun 17 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.0-0.fdr.2
- add translations
* Thu Jun 17 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.0-0.fdr.1
- version 1.0 final
* Tue Jun 01 2004 Aurelien Bompard <gauret[AT]free.fr> 0:1.0-0.fdr.0.1.beta4
- update to beta4
* Sun May 09 2004 Aurelien Bompard <gauret[AT]free.fr> 1.0-0.fdr.0.1.beta3
- version 1.0-beta3
* Fri Apr 23 2004 Aurelien Bompard <gauret[AT]free.fr> 1.0-0.fdr.0.1.beta2
- version 1.0-beta2
- use desktop-file-install
- remove .la files
- remove --enable-final (won't build with it)
* Thu Apr 15 2004 Aurelien Bompard <gauret[AT]free.fr> 1.0-0.fdr.0.1.beta1
- version 1.0-beta1
- reduce BuildRequires : arts-devel already requires arts, libvorbis-devel
and audiofile-devel
* Mon Mar 08 2004 Aurelien Bompard <gauret[AT]free.fr> 0:0.9-0.fdr.1
- version 0.9
* Wed Feb 11 2004 Aurelien Bompard <gauret[AT]free.fr> 0.8.3-0.fdr.1
- initial package