# BRANCHES:
# - HEAD - stable version
# - DEVEL - development version
-# - WEEKLY - weekly development version
-#
-# NOTE: to avoid creating unreadable/unmaintainable spec:
-# - don't put static version here, create STATIC branch for that for example
-# - don't create useless bconds that for example limit SourceX: to current arch only
-#
-
-%bcond_with qt4 #take the qt4 version
-
-%define ver 9.61
-%define shver %(echo %{ver} | tr -d .)
-%define buildid 2456
+# - WEEKLY - weekly development version (sometimes it's on DEVEL)
+%bcond_without distributable # distributable or not
+%define subver 6325
+%define rel 1
Summary: World fastest web browser
Summary(pl.UTF-8): Najszybsza przeglądarka WWW na świecie
Name: opera
-Version: %{ver}
-Release: 1
+Version: 10.52
+Release: 0.%{subver}.%{rel}
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: fab34279f40b305a90e6c248f8cf83da
-Source11: ftp://ftp.opera.com/pub/opera/linux/%{shver}/final/en/x86_64/%{name}-%{version}.gcc4-shared-qt3.x86_64.tar.bz2
-# Source11-md5: ab7d0fa42a1579d8dcf0f865f43e5504
-Source12: ftp://ftp.opera.com/pub/opera/linux/%{shver}/final/en/ppc/shared/%{name}-%{version}.gcc4-shared-qt3.ppc.tar.bz2
-# Source12-md5: d1cad1fc8d1405e7b381a46830f6682a
-Source13: ftp://ftp.opera.com/pub/opera/linux/%{shver}/final/en/i386/%{name}-%{version}.gcc4-qt4.i386.tar.bz2
-# Source13-md5: ef895e80f26915fdedc0c5eaee486009
-Source0: %{name}.desktop
+Source0: http://snapshot.opera.com/unix/snapshot-%{subver}/%{name}-%{version}-%{subver}.i386.linux.tar.bz2
+# Source0-md5: a1336047fefdf649fc072fb85119202e
+%{!?with_distributable:NoSource: 0}
+Source1: http://snapshot.opera.com/unix/snapshot-%{subver}/%{name}-%{version}-%{subver}.x86_64.linux.tar.bz2
+# Source1-md5: e6c84e019359e0b34ba614b9e8e90aee
+%{!?with_distributable:NoSource: 1}
Patch0: %{name}-wrapper.patch
+Patch1: %{name}-desktop.patch
+Patch2: %{name}-pluginpath.patch
URL: http://www.opera.com/
BuildRequires: rpmbuild(macros) >= 1.356
BuildRequires: sed >= 4.0
+Requires(post,postun): desktop-file-utils
+Requires(post,postun): gtk+2
+Requires(post,postun): hicolor-icon-theme
+Requires(post,postun): shared-mime-info
Requires: browser-plugins >= 2.0
Requires: freetype >= 2
+Suggests: gstreamer-theora
+Suggests: gstreamer-vorbis
Provides: wwwbrowser
Obsoletes: opera-i18n
-ExclusiveArch: %{ix86} %{x8664} ppc
+ExclusiveArch: %{ix86} %{x8664}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _plugindir %{_libdir}/opera/plugins
-%define _operadocdir %{_docdir}/%{name}-%{ver}
-# alternative arch for plugin32
-%define alt_arch i386
+%define _enable_debug_packages 0
+
+%define _plugindir %{_libdir}/opera/plugins
+%define _operadocdir %{_docdir}/%{name}-%{version}
%description
Opera is world fastest web browser. It supports most of nowaday
-extensions of HTML. And it is quite stable. This version is
-linked with shared version of Qt.
+extensions of HTML. And it is quite stable.
%description -l pl.UTF-8
Opera jest najszybszą przeglądarką WWW na świecie. Obsługuje większość
-dzisiejszych rozszerzeń HTML-a. Dodatkowo jest w miarę stabilna. Ta
-wersja jest skonsolidowana dynamicznie z Qt.
+dzisiejszych rozszerzeń HTML-a. Dodatkowo jest w miarę stabilna.
%package plugin32
Summary: Opera 32-bit plugins support
Summary(pl.UTF-8): Obsługa 32-bitowych wtyczek Opery
Group: X11/Applications/Networking
Requires: %{name} = %{epoch}:%{version}-%{release}
-Requires: browser-plugins >= 2.0
%description plugin32
Opera 32-bit plugins support.
%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 -b0 -n %{name}-%{version}-%{subver}.i386.linux
%endif
%ifarch %{x8664}
-%setup -q -T -b 11 -n %{name}-%{version}-%{buildid}.gcc4-shared-qt3.x86_64
-%endif
-%ifarch ppc
-%setup -q -T -b 12 -n %{name}-%{version}-%{buildid}.gcc4-shared-qt3.ppc
+%setup -q -T -b1 -n %{name}-%{version}-%{subver}.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
+%patch1 -p1
-%install
-rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_sysconfdir}}
+# 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
-%browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/plugins -b <<'EOF'
-# opera does not use for .xpt files
-*.xpt
+mv lib/opera/plugins/README README.plugins
+mv share/opera/defaults/license.txt .
+mv share/doc/opera/* .
-# use mplayerplug-in-opera instead
-mplayerplug-in*
+# nobody wants scalable huge icons
+rm -rf share/icons/hicolor/scalable
-# opera uses libjava.so to run java
-libjavaplugin_oji.so
-EOF
+# opera packaging tools we don't need runtime
+mv share/opera/package .
-%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'
+%install
+rm -rf $RPM_BUILD_ROOT
+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
*.xpt
# use mplayerplug-in-opera instead
mplayerplug-in*
-
-# opera uses libjava.so to run java
-libjavaplugin_oji.so
EOF
-%endif
-sh install.sh \
- DESTDIR=$RPM_BUILD_ROOT \
- --prefix=%{_prefix} \
- --exec_prefix=%{_libdir}/%{name}/bin \
- --plugindir=%{_libdir}/%{name}/plugins \
- --docdir=%{_operadocdir}
+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}
-# 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}
+sed -i -e 's#/usr/lib/opera#%{_libdir}/opera#g' $RPM_BUILD_ROOT%{_bindir}/opera
%clean
rm -rf $RPM_BUILD_ROOT
%post
+%update_mime_database
+%update_icon_cache hicolor
+%update_desktop_database_post
%update_browser_plugins
%postun
-if [ "$1" = 0 ]; then
- %update_browser_plugins
-fi
-
-%post plugin32
-%update_browser_plugins
-
-%postun plugin32
+%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}/opera*rc*
+#%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
+%{_browserpluginsconfdir}/browsers.d/%{name}.*
+%config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist
-%attr(755,root,root) %{_bindir}/*
+%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*
+#%attr(755,root,root) %{_libdir}/opera/works
%dir %{_plugindir}
%dir %{_datadir}/opera
%{_datadir}/opera/*.*
-%{_datadir}/opera/ini
-%{_datadir}/opera/java
+%{_datadir}/opera/defaults
+%{_datadir}/opera/extra
%{_datadir}/opera/skin
+#%{_datadir}/opera/scripts
%{_datadir}/opera/styles
+%{_datadir}/opera/ui
+%{_datadir}/opera/unite
%dir %{_datadir}/opera/locale
%{_datadir}/opera/locale/en
-%{_datadir}/opera/locale/english.lng
%lang(be) %{_datadir}/opera/locale/be
%lang(bg) %{_datadir}/opera/locale/bg
%lang(cs) %{_datadir}/opera/locale/cs
%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(pl) %{_datadir}/opera/locale/pl
%lang(pt) %{_datadir}/opera/locale/pt
%lang(pt_BR) %{_datadir}/opera/locale/pt-BR
+%lang(ro) %{_datadir}/opera/locale/ro
%lang(ru) %{_datadir}/opera/locale/ru
+%lang(sk) %{_datadir}/opera/locale/sk
+%lang(sr) %{_datadir}/opera/locale/sr
%lang(sv) %{_datadir}/opera/locale/sv
%lang(ta) %{_datadir}/opera/locale/ta
%lang(te) %{_datadir}/opera/locale/te
%lang(tr) %{_datadir}/opera/locale/tr
%lang(uk) %{_datadir}/opera/locale/uk
+%lang(vi) %{_datadir}/opera/locale/vi
%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}/mime/packages/opera-widget.xml
%{_desktopdir}/*.desktop
%{_mandir}/man1/opera.1*
-%{_pixmapsdir}/opera.xpm
+%{_mandir}/man1/opera-widget-manager.1*
+#%{_pixmapsdir}/opera.xpm
+%{_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