# - don't create useless bconds that for example limit SourceX: to current arch only
#
-%bcond_without qt4 #take the qt4 version
-
-%define ver 10.11
+%define ver 11.01
%define shver %(echo %{ver} | tr -d .)
-%define buildid 4791
-
-%ifarch ppc
-%undefine with_qt4
-%endif
+%define buildid 1190
Summary: World fastest web browser
Summary(hu.UTF-8): A világ leggyorsabb webböngészője
Summary(pl.UTF-8): Najszybsza przeglądarka WWW na świecie
Name: opera
Version: %{ver}
-Release: 1
+Release: 2
Epoch: 2
License: Distributable
Group: X11/Applications/Networking
-Source10: ftp://ftp.opera.com/pub/opera/linux/%{shver}/final/en/i386/shared/%{name}-%{version}.gcc4-shared-qt3.i386.tar.bz2
-# Source10-md5: 3c6f8dfcd295fb16238437f23b7ffe3c
-Source11: ftp://ftp.opera.com/pub/opera/linux/%{shver}/final/en/x86_64/%{name}-%{version}.gcc4-shared-qt3.x86_64.tar.bz2
-# Source11-md5: 9d4012dd00d9b4d76ca6d46a4620bbc2
-Source12: ftp://ftp.opera.com/pub/opera/linux/%{shver}/final/en/ppc/shared/%{name}-%{version}.gcc4-shared-qt3.ppc.tar.bz2
-# Source12-md5: 0e35bac674be59dee4276bf7182b66b7
-Source13: ftp://ftp.opera.com/pub/opera/linux/%{shver}/final/en/i386/%{name}-%{version}.gcc4-qt4.i386.tar.bz2
-# Source13-md5: 825f39f6653fca37dc04b4d0b92797ec
-Source14: ftp://ftp.opera.com/pub/opera/linux/%{shver}/final/en/x86_64/%{name}-%{version}.gcc4-qt4.x86_64.tar.bz2
-# Source14-md5: 1b9ae201cb1df43d3ca291a51d7c7e6c
+Source10: ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{name}-%{version}-%{buildid}.i386.linux.tar.xz
+# Source10-md5: 9614f1c8b1e7e71aeb398122db30bfed
+Source11: ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{name}-%{version}-%{buildid}.x86_64.linux.tar.xz
+# Source11-md5: 802e1725acddc713dffb3441815156b9
Source0: %{name}.desktop
Patch0: %{name}-wrapper.patch
-Patch1: %{name}-agent-qt4.patch
-Patch2: %{name}-agent.patch
+Patch1: %{name}-desktop.patch
+Patch2: %{name}-pluginpath.patch
URL: http://www.opera.com/
BuildRequires: rpm >= 4.4.9-56
BuildRequires: rpmbuild(macros) >= 1.356
BuildRequires: sed >= 4.0
+BuildRequires: xz
+Requires(post,postun): gtk-update-icon-cache
+Requires(post,postun): hicolor-icon-theme
Requires: browser-plugins >= 2.0
+Requires: desktop-file-utils
Requires: freetype >= 2
Provides: wwwbrowser
Obsoletes: opera-i18n
ExclusiveArch: %{ix86} %{x8664} ppc
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%define _enable_debug_packages 0
+
%define _plugindir %{_libdir}/opera/plugins
%define _operadocdir %{_docdir}/%{name}-%{ver}
# alternative arch for plugin32
%prep
%ifarch %{ix86}
-%if %{with qt4}
-%setup -q -T -b 13 -n %{name}-%{version}-%{buildid}.gcc4-qt4.i386
-%define _noautoreq 'libpng12.so.0(.*)'
-%else
-%setup -q -T -b 10 -n %{name}-%{version}-%{buildid}.gcc4-shared-qt3.i386
-%endif
+%setup -q -T -b 10 -n %{name}-%{version}-%{buildid}.i386.linux
%endif
+
%ifarch %{x8664}
-%if %{with qt4}
-%setup -q -T -b 14 -n %{name}-%{version}-%{buildid}.gcc4-qt4.x86_64
-%define _noautoreq 'libpng12.so.0(.*)'
-%else
-%setup -q -T -b 11 -n %{name}-%{version}-%{buildid}.gcc4-shared-qt3.x86_64
-%endif
-%endif
-%ifarch ppc
-%setup -q -T -b 12 -n %{name}-%{version}-%{buildid}.gcc4-shared-qt3.ppc
+%setup -q -T -b 11 -n %{name}-%{version}-%{buildid}.x86_64.linux
%endif
+
+sed -i -e '
+ s,@@{PREFIX},%{_prefix},g
+ s,@@{SUFFIX},,
+ s,@@{_SUFFIX},,
+' share/{applications/*.desktop,mime/packages/*.xml}
+
+sed -i -e 's,kfmclient exec,xdg-open,' share/opera/defaults/filehandler.ini
+
%patch0 -p1
-%if %{with qt4}
-%patch1 -p0
-%else
-%patch2 -p0
-%endif
+%patch1 -p1
+
+# remove lib32/lib64 paths so patch2 can apply (i386 build contained lib64 as well, oh well)
+%{__sed} -i -e '/lib32\|lib64/d;$d' share/opera/defaults/pluginpath.ini
+%patch2 -p1
+
+mv lib/opera/plugins/README README.plugins
+mv share/opera/defaults/license.txt .
+mv share/doc/opera/* .
+
+# nobody wants scalable huge icons
+rm -rf share/icons/hicolor/scalable
+
+# opera packaging tools we don't need runtime
+mv share/opera/package .
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_sysconfdir}}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_datadir},%{_pixmapsdir},%{_desktopdir},%{_sysconfdir}}
%browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/plugins -b <<'EOF'
# opera does not use for .xpt files
# use mplayerplug-in-opera instead
mplayerplug-in*
-
-# opera uses libjava.so to run java
-libjavaplugin_oji.so
-IcedTeaPlugin.so
EOF
-%ifarch %{x8664}
-install -d $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/plugins
-%browser_plugins_add_browser %{name} -a %{alt_arch} -p %{_prefix}/lib/%{name}/plugins -b <<'EOF'
-# opera does not use for .xpt files
-*.xpt
+install -p opera* $RPM_BUILD_ROOT%{_bindir}
+cp -a lib/opera $RPM_BUILD_ROOT%{_libdir}
+cp -a share/* $RPM_BUILD_ROOT%{_datadir}
+#cp -a etc/*.ini $RPM_BUILD_ROOT%{_sysconfdir}
-# use mplayerplug-in-opera instead
-mplayerplug-in*
+sed -i -e 's#/usr/lib/opera#%{_libdir}/opera#g' $RPM_BUILD_ROOT%{_bindir}/opera
-# opera uses libjava.so to run java
-libjavaplugin_oji.so
+cat << 'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/operaprefs_default.ini
+[ISP]
+Id="DISTRO"
EOF
-%endif
-
-sh install.sh \
- DESTDIR=$RPM_BUILD_ROOT \
- --prefix=%{_prefix} \
- --exec_prefix=%{_libdir}/%{name}/bin \
- --plugindir=%{_libdir}/%{name}/plugins \
- --docdir=%{_operadocdir}
-
-# install in kde etc.
-install %{SOURCE0} $RPM_BUILD_ROOT%{_desktopdir}
-
-install etc/* $RPM_BUILD_ROOT%{_sysconfdir}
-install usr/share/pixmaps/*.xpm $RPM_BUILD_ROOT%{_pixmapsdir}
%if "%{pld_release}" == "ti"
sed -i -e 's#DISTRO#PLD/Titanium#g' $RPM_BUILD_ROOT/etc/operaprefs_default.ini
%endif
%endif
-
%clean
rm -rf $RPM_BUILD_ROOT
%post
+%update_mime_database
+%update_icon_cache hicolor
+%update_desktop_database_post
%update_browser_plugins
%postun
+%update_mime_database
+%update_icon_cache hicolor
+%update_desktop_database_postun
if [ "$1" = 0 ]; then
%update_browser_plugins
fi
%files
%defattr(644,root,root,755)
%doc LICENSE
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/operaprefs*.ini
+#%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opera*ini
# browser plugins v2
-%{_browserpluginsconfdir}/browsers.d/%{name}.%{_target_base_arch}
-%config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.%{_target_base_arch}.blacklist
-
-%attr(755,root,root) %{_bindir}/*
+%{_browserpluginsconfdir}/browsers.d/%{name}.*
+%config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/operaprefs*.ini
+%attr(755,root,root) %{_bindir}/opera
+%attr(755,root,root) %{_bindir}/opera-widget-manager
%dir %{_libdir}/opera
-%dir %{_libdir}/opera/bin
-%attr(755,root,root) %{_libdir}/opera/bin/*
%ifarch %{x8664}
-%exclude %{_libdir}/opera/bin/*-ia32-*
+%exclude %{_libdir}/opera/*-ia32-*
%endif
+%attr(755,root,root) %{_libdir}/opera/*.so
+%attr(755,root,root) %{_libdir}/opera/opera*
%dir %{_plugindir}
+%dir %{_libdir}/opera/gstreamer
+%dir %{_libdir}/opera/gstreamer/plugins
+%attr(755,root,root) %{_libdir}/opera/gstreamer/plugins/libgstoperamatroska.so
+%attr(755,root,root) %{_libdir}/opera/gstreamer/plugins/libgstoperavp8.so
%dir %{_datadir}/opera
%{_datadir}/opera/*.*
%{_datadir}/opera/defaults
%{_datadir}/opera/extra
-%{_datadir}/opera/java
-%{_datadir}/opera/scripts
%{_datadir}/opera/skin
%{_datadir}/opera/styles
%{_datadir}/opera/ui
+%{_datadir}/opera/unite
%dir %{_datadir}/opera/locale
%{_datadir}/opera/locale/en
%lang(be) %{_datadir}/opera/locale/be
%lang(de) %{_datadir}/opera/locale/de
%lang(el) %{_datadir}/opera/locale/el
%lang(en_GB) %{_datadir}/opera/locale/en-GB
-%lang(es) %{_datadir}/opera/locale/es-ES
+%lang(es_ES) %{_datadir}/opera/locale/es-ES
%lang(es_LA) %{_datadir}/opera/locale/es-LA
%lang(et) %{_datadir}/opera/locale/et
%lang(fi) %{_datadir}/opera/locale/fi
%lang(zh_CN) %{_datadir}/opera/locale/zh-cn
%lang(zh_HK) %{_datadir}/opera/locale/zh-hk
%lang(zh_TW) %{_datadir}/opera/locale/zh-tw
- %{_datadir}/opera/unite
+%{_datadir}/mime/packages/opera-extension.xml
+%{_datadir}/mime/packages/opera-widget.xml
+%{_datadir}/mime/packages/opera-unite-application.xml
%{_desktopdir}/*.desktop
%{_mandir}/man1/opera.1*
-%{_pixmapsdir}/opera.xpm
+%{_mandir}/man1/opera-widget-manager.1*
+%{_iconsdir}/hicolor/*/*/*.png
%ifarch %{x8664}
%files plugin32
%defattr(644,root,root,755)
-# browser plugins v2
-%{_browserpluginsconfdir}/browsers.d/%{name}.%{alt_arch}
-%config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.%{alt_arch}.blacklist
-%dir %{_prefix}/lib/%{name}
-%dir %{_prefix}/lib/%{name}/plugins
-%attr(755,root,root) %{_libdir}/%{name}/bin/*-ia32-*
+%attr(755,root,root) %{_libdir}/opera/*-ia32-*
%endif