X-Git-Url: http://git.pld-linux.org/?p=packages%2Fopera.git;a=blobdiff_plain;f=opera.spec;h=8d7f4279a346c5638d39eb74355e88909143cee9;hp=59cb3f28233267562001a7684eb6e6e2a9ec3935;hb=504a2c0;hpb=7d7762ad03b03bc52f861064724ddd53a9d7d7f4 diff --git a/opera.spec b/opera.spec index 59cb3f2..8d7f427 100644 --- a/opera.spec +++ b/opera.spec @@ -2,234 +2,157 @@ # - HEAD - stable version # - DEVEL - development version # - WEEKLY - weekly development version - -# TODO: -# - move translations into a separate, noarch package +# - NEXT - opera next +# +# 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_without shared # static or shared version -%bcond_without distributable # distributable or not -%bcond_without incall # include all tarballs into src.rpm (but splitted into shared/static) - -%define ver 9.26 -%define sver 9.26 -%define fix %{nil} -%define dirrel 20080218 -%define dirrel_alt 20080215 -%define reltype final -%define magicstr 698 - -%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 _rel 2 -Summary: World fastest web browser +Summary: Opera 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}%{fix} -Release: %{_rel} +Version: 31.0.1889.174 +Release: 0.6 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 -%{!?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 -%{!?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: e29856b248f503b5a724c7c548c42483 -%{!?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: a59476e33457a87790d10d36acd4e080 -%{!?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: fef93b73655a72fa8536cc2815117829 -%{!?with_distributable:NoSource: 22} -%endif - -Source4: %{name}.desktop -Patch0: %{name}-wrapper.patch +Source10: ftp://ftp.opera.com/pub/opera/desktop/%{version}/linux/%{name}-stable_%{version}_amd64.deb +# Source10-md5: 71d13017ca60bbf4619dc3faf58fd94e +Source0: %{name}.desktop +Source1: %{name}.sh +Patch1: %{name}-desktop.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: freetype >= 2 +Requires: desktop-file-utils Provides: wwwbrowser -ExclusiveArch: %{ix86} ppc sparc sparcv9 +Obsoletes: opera-i18n +ExclusiveArch: %{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 no_install_post_strip 1 %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. This version is linked +with shared version of Qt. + +%description -l hu.UTF-8 +Opera a világ leggyorsabb webböngészője. A manapság elterjedt +HTML-kiterjesztések túlnyomó többségét támogatja. És elég stabili is. +Ez a verzió a Qt megosztott verziójához linkelődik. %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. +wersja jest skonsolidowana dynamicznie z Qt. %prep -%ifarch %{ix86} -%setup -q -T -b %{?with_shared:2}0 -n %{name}-%{sver}-%{rel}-%{type}-qt.i386-en%{?magicstr:-%{magicstr}} +%setup -qcT +%ifarch %{x8664} +SOURCE=%{S:10} %endif -%ifarch sparc sparcv9 -%setup -q -T -b %{?with_shared:2}1 -n %{name}-%{sver}-%{rel}-%{type}-qt.sparc-en%{?magicstr:-%{magicstr}} -%endif -%ifarch ppc -%setup -q -T -b %{?with_shared:2}2 -n %{name}-%{sver}-%{rel}-%{type}-qt.ppc-en%{?magicstr:-%{magicstr}} -%endif -%patch0 -p1 + +ar x $SOURCE +tar xf control.tar.gz && rm control.tar.gz +tar xf data.tar.xz && rm data.tar.xz + +version=$(awk '/Version:/{print $2}' control) +test $version = %{version} + +mv usr/lib/*/%{name}/* . +mv usr/share/icons . +mv usr/share/pixmaps/%{name}.xpm . +mv usr/share/applications/%{name}.desktop . +mv usr/share/doc/opera-stable/* . + +%patch1 -p1 + +sed -e 's#/usr/lib/opera#%{_libdir}/opera#g' %{_sourcedir}/%{name}.sh > %{name}.sh %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_sysconfdir}} +install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_bindir},%{_libdir}/%{name}/plugins,%{_datadir}/%{name}} \ + $RPM_BUILD_ROOT{%{_pixmapsdir},%{_iconsdir},%{_desktopdir}} %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 -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} - -mv -f $RPM_BUILD_ROOT%{_datadir}/%{name}/config/* $RPM_BUILD_ROOT%{_sysconfdir} -install images/opera.xpm $RPM_BUILD_ROOT%{_pixmapsdir} +cp -a localization resources $RPM_BUILD_ROOT%{_datadir}/%{name} +cp -p *.pak *.bin *.dat $RPM_BUILD_ROOT%{_libdir}/%{name} +cp -a lib $RPM_BUILD_ROOT%{_libdir}/%{name} +ln -s %{_datadir}/%{name}/localization $RPM_BUILD_ROOT%{_libdir}/%{name}/localization +ln -s %{_datadir}/%{name}/resources $RPM_BUILD_ROOT%{_libdir}/%{name}/resources +install -p %{name} $RPM_BUILD_ROOT%{_libdir}/%{name} +install -p %{name}_sandbox $RPM_BUILD_ROOT%{_libdir}/%{name} +install -p %{name}_crashreporter $RPM_BUILD_ROOT%{_libdir}/%{name} +install -p %{name}_autoupdate $RPM_BUILD_ROOT%{_libdir}/%{name} +cp -p %{name}_autoupdate.* $RPM_BUILD_ROOT%{_libdir}/%{name} +install -p %{name}.sh $RPM_BUILD_ROOT%{_bindir}/%{name} +cp -p %{name}.desktop $RPM_BUILD_ROOT%{_desktopdir} +cp -a icons/* $RPM_BUILD_ROOT%{_iconsdir} %clean rm -rf $RPM_BUILD_ROOT %post +%update_icon_cache hicolor +%update_desktop_database %update_browser_plugins %postun if [ "$1" = 0 ]; then + %update_icon_cache hicolor + %update_desktop_database %update_browser_plugins fi %files %defattr(644,root,root,755) -%doc LICENSE -%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opera*rc* - -# browser plugins v2 +%doc copyright %{_browserpluginsconfdir}/browsers.d/%{name}.* %config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist -%attr(755,root,root) %{_bindir}/* -%dir %{_libdir}/opera -%dir %{_libdir}/opera/bin -%attr(755,root,root) %{_libdir}/opera/bin/* -%dir %{_plugindir} -%attr(755,root,root) %{_plugindir}/* -%dir %{_datadir}/opera -%{_datadir}/opera/*.* -%{_datadir}/opera/ini -%{_datadir}/opera/java -%{_datadir}/opera/images -%{_datadir}/opera/skin -%{_datadir}/opera/styles -%dir %{_datadir}/opera/locale -%{_datadir}/opera/locale/en -%{_datadir}/opera/locale/english.lng +%attr(755,root,root) %{_bindir}/%{name} %{_desktopdir}/*.desktop -%{_mandir}/man1/opera.1* -%{_pixmapsdir}/opera.xpm +%{_iconsdir}/hicolor/*/*/*.png + +%dir %{_datadir}/%{name} +%dir %{_datadir}/%{name}/resources +%{_datadir}/%{name}/resources/*.ico +%{_datadir}/%{name}/resources/*.json +%{_datadir}/%{name}/resources/dictionaries.xml +%{_datadir}/%{name}/resources/inspector +%{_datadir}/%{name}/localization + +%dir %{_libdir}/%{name} +%{_libdir}/%{name}/icudtl.dat +%{_libdir}/%{name}/natives_blob.bin +%{_libdir}/%{name}/snapshot_blob.bin +%{_libdir}/%{name}/*.pak +%{_libdir}/%{name}/localization +%{_libdir}/%{name}/resources +%dir %{_libdir}/%{name}/lib +%attr(755,root,root) %{_libdir}/%{name}/lib/libffmpeg.so.* +%attr(755,root,root) %{_libdir}/%{name}/lib/libmalloc_wrapper.so +%dir %{_libdir}/%{name}/plugins + +%attr(755,root,root) %{_libdir}/%{name}/%{name} +%attr(755,root,root) %{_libdir}/%{name}/%{name}_crashreporter + +%attr(755,root,root) %{_libdir}/%{name}/%{name}_autoupdate +%{_libdir}/%{name}/%{name}_autoupdate.licenses +%{_libdir}/%{name}/%{name}_autoupdate.version + +# These unique permissions are intentional and necessary for the sandboxing +%attr(4555,root,root) %{_libdir}/%{name}/%{name}_sandbox