# BRANCHES:
# - HEAD - stable version
# - DEVEL - development version
-# - WEEKLY - weekly development version
-
-# TODO:
-# - move translations into a separate, noarch package
-#
-%bcond_without shared # static or shared version
+# - WEEKLY - weekly development version (sometimes it's on DEVEL)
%bcond_without distributable # distributable or not
-%bcond_without incall # include all tarballs into src.rpm (but splitted into shared/static)
-
-%define ver 9.27
-%define sver 9.27
-%define fix %{nil}
-%define dirrel 20080331
-%define dirrel_alt 20080331
-%define reltype final
-%define magicstr 709
-
-%define shver %(echo %{ver} | tr -d .)%{fix}
-%define x86_shared_rel %{dirrel}.6
-%define x86_static_rel %{dirrel}.1
-%define sparc_shared_rel %{dirrel_alt}.2
-%define sparc_static_rel %{dirrel_alt}.1
-%define ppc_shared_rel %{dirrel}.3
-%define ppc_static_rel %{dirrel}.1
-
-%if %{with shared}
- %define type shared
- # We should be able to build src.rpm also on not supported archs
- %define rel %{x86_shared_rel}
- %ifarch sparc sparcv9
- %define rel %{sparc_shared_rel}
- %endif
- %ifarch ppc
- %define rel %{ppc_shared_rel}
- %endif
-%else
- %define type static
- %define rel %{x86_static_rel}
- %ifarch sparc sparcv9
- %define rel %{sparc_static_rel}
- %endif
- %ifarch ppc
- %define rel %{ppc_static_rel}
- %endif
-%endif
-
-# define to 0 and then redefine to avoid
-# not defined macros
-%define need_ix86_shared 0
-%define need_sparc_shared 0
-%define need_ppc_shared 0
-%define need_ix86_static 0
-%define need_sparc_static 0
-%define need_ppc_static 0
-
-%if %{with incall}
- %if %{with shared}
- %define need_ix86_shared 1
- %define need_sparc_shared 1
- %define need_ppc_shared 1
- %else
- %define need_ix86_static 1
- %define need_sparc_static 1
- %define need_ppc_static 1
- %endif
-%else
- %ifarch sparc sparc64
- %if %{with shared}
- %define need_sparc_shared 1
- %else
- %define need_sparc_static 1
- %endif
- %endif
- %ifarch ppc
- %if %{with shared}
- %define need_ppc_shared 1
- %else
- %define need_ppc_static 1
- %endif
- %endif
-%endif
+%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}%{fix}
-Release: 2
+Version: 10.52
+Release: 0.%{subver}.%{rel}
Epoch: 2
License: Distributable
Group: X11/Applications/Networking
-
-%if %{need_ix86_static}
-Source0: ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/i386/static/%{name}-%{sver}-%{x86_static_rel}-static-qt.i386-en.tar.bz2
-# Source0-md5: 96b8010ddb0ff250817c7fb314de2d26
+Source0: http://snapshot.opera.com/unix/snapshot-%{subver}/%{name}-%{version}-%{subver}.i386.linux.tar.bz2
+# Source0-md5: a1336047fefdf649fc072fb85119202e
%{!?with_distributable:NoSource: 0}
-%endif
-
-%if %{need_sparc_static}
-Source1: ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/sparc/static/%{name}-%{sver}-%{sparc_static_rel}-static-qt.sparc-en.tar.bz2
-# Source1-md5: c8443b4b83b21a56fdd8dc3526eaf46f
+Source1: http://snapshot.opera.com/unix/snapshot-%{subver}/%{name}-%{version}-%{subver}.x86_64.linux.tar.bz2
+# Source1-md5: e6c84e019359e0b34ba614b9e8e90aee
%{!?with_distributable:NoSource: 1}
-%endif
-
-%if %{need_ppc_static}
-Source2: ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/ppc/static/%{name}-%{sver}-%{ppc_static_rel}-static-qt.ppc-en.tar.bz2
-# Source2-md5: be68f701224493bbd9a6d62df8eb9b19
-%{!?with_distributable:NoSource: 2}
-%endif
-
-%if %{need_ix86_shared}
-Source20: ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/i386/shared/%{name}-%{sver}-%{x86_shared_rel}-shared-qt.i386-en.tar.bz2
-# Source20-md5: cc9a97ae719645b2a2ff092521ab9b6d
-%{!?with_distributable:NoSource: 20}
-%endif
-
-%if %{need_sparc_shared}
-Source21: ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/sparc/shared/gcc-2.95/%{name}-%{sver}-%{sparc_shared_rel}-shared-qt.sparc-en.tar.bz2
-# Source21-md5: 33a3437d01c0f24fc3d40e3ccb08c23c
-%{!?with_distributable:NoSource: 21}
-%endif
-
-
-%if %{need_ppc_shared}
-Source22: ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/ppc/shared/gcc-2.95/%{name}-%{sver}-%{ppc_shared_rel}-shared-qt.ppc-en.tar.bz2
-# Source22-md5: 04ba581b52eb8d21c8889a717f2dbbae
-%{!?with_distributable:NoSource: 22}
-%endif
-
-Source4: %{name}.desktop
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
-ExclusiveArch: %{ix86} ppc sparc sparcv9
+Obsoletes: opera-i18n
+ExclusiveArch: %{ix86} %{x8664}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _plugindir %{_libdir}/opera/plugins
-%define _operadocdir %{_docdir}/%{name}-%{ver}
+%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 %{?with_shared:shared}%{!?with_shared:statically}
-linked with 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 %{?with_shared:dynamicznie}%{!?with_shared:statycznie} 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}
+
+%description plugin32
+Opera 32-bit plugins support.
+
+%description plugin32 -l pl.UTF-8
+Obsługa 32-bitowych wtyczek Opery.
%prep
%ifarch %{ix86}
-%setup -q -T -b %{?with_shared:2}0 -n %{name}-%{sver}-%{rel}-%{type}-qt.i386-en%{?magicstr:-%{magicstr}}
-%endif
-%ifarch sparc sparcv9
-%setup -q -T -b %{?with_shared:2}1 -n %{name}-%{sver}-%{rel}-%{type}-qt.sparc-en%{?magicstr:-%{magicstr}}
+%setup -q -T -b0 -n %{name}-%{version}-%{subver}.i386.linux
%endif
-%ifarch ppc
-%setup -q -T -b %{?with_shared:2}2 -n %{name}-%{sver}-%{rel}-%{type}-qt.ppc-en%{?magicstr:-%{magicstr}}
+%ifarch %{x8664}
+%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
+
+# 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
EOF
-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 %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}
+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}
-mv -f $RPM_BUILD_ROOT%{_datadir}/%{name}/config/* $RPM_BUILD_ROOT%{_sysconfdir}
-install images/opera.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
+%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}.*
%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/*-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}
-%attr(755,root,root) %{_plugindir}/*
%dir %{_datadir}/opera
%{_datadir}/opera/*.*
-%{_datadir}/opera/ini
-%{_datadir}/opera/java
-%{_datadir}/opera/images
+%{_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(da) %{_datadir}/opera/locale/da
+%lang(de) %{_datadir}/opera/locale/de
+%lang(el) %{_datadir}/opera/locale/el
+%lang(en_GB) %{_datadir}/opera/locale/en-GB
+%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(fr) %{_datadir}/opera/locale/fr
+%lang(fr_CA) %{_datadir}/opera/locale/fr-CA
+%lang(fy) %{_datadir}/opera/locale/fy
+%lang(hi) %{_datadir}/opera/locale/hi
+%lang(hr) %{_datadir}/opera/locale/hr
+%lang(hu) %{_datadir}/opera/locale/hu
+%lang(id) %{_datadir}/opera/locale/id
+%lang(it) %{_datadir}/opera/locale/it
+%lang(ja) %{_datadir}/opera/locale/ja
+%lang(ka) %{_datadir}/opera/locale/ka
+%lang(ko) %{_datadir}/opera/locale/ko
+%lang(lt) %{_datadir}/opera/locale/lt
+%lang(mk) %{_datadir}/opera/locale/mk
+%lang(nb) %{_datadir}/opera/locale/nb
+%lang(nl) %{_datadir}/opera/locale/nl
+%lang(nn) %{_datadir}/opera/locale/nn
+%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)
+%attr(755,root,root) %{_libdir}/opera/*-ia32-*
+%endif