]> git.pld-linux.org Git - packages/opera.git/blobdiff - opera.spec
- up to 87.0.4390.25
[packages/opera.git] / opera.spec
index 5c4ce127b181f4e28d76a0b7142ad3877a57e686..84557564164bd5e91e4b539df4a1c502176c7085 100644 (file)
@@ -2,33 +2,27 @@
 # - HEAD - stable version
 # - DEVEL - development version
 # - WEEKLY - weekly development version
+# - 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
 #
 
-%define                ver     11.10
-%define                shver   %(echo %{ver} | tr -d .)
-%define                buildid 2092
-
-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}
+Version:       87.0.4390.25
 Release:       1
 Epoch:         2
 License:       Distributable
 Group:         X11/Applications/Networking
-Source10:      ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{name}-%{version}-%{buildid}.i386.linux.tar.xz
-# Source10-md5:        3d2e1470f907a6ccbf87906e0fe3b543
-Source11:      ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{name}-%{version}-%{buildid}.x86_64.linux.tar.xz
-# Source11-md5:        65354a02583a692afbef6f411d8aec8e
-Source0:       %{name}.desktop
-Patch0:                %{name}-wrapper.patch
+Source10:      https://ftp.opera.com/pub/opera/desktop/%{version}/linux/%{name}-stable_%{version}_amd64.deb
+# Source10-md5:        dbb8fa6f4f68e275bf5b07a6d8c33c56
+Source1:       %{name}.sh
+Source2:       find-lang.sh
 Patch1:                %{name}-desktop.patch
-Patch2:                %{name}-pluginpath.patch
 URL:           http://www.opera.com/
 BuildRequires: rpm >= 4.4.9-56
 BuildRequires: rpmbuild(macros) >= 1.356
@@ -36,28 +30,22 @@ BuildRequires:      sed >= 4.0
 BuildRequires: xz
 Requires(post,postun): gtk-update-icon-cache
 Requires(post,postun): hicolor-icon-theme
-Requires(post,postun): shared-mime-info
 Requires:      browser-plugins >= 2.0
 Requires:      desktop-file-utils
-Requires:      freetype >= 2
-Suggests:      gstreamer-theora
-Suggests:      gstreamer-vorbis
 Provides:      wwwbrowser
 Obsoletes:     opera-i18n
-ExclusiveArch: %{ix86} %{x8664}
+ExclusiveArch: %{x8664}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define                _enable_debug_packages  0
+%define                find_lang       sh find-lang.sh %{buildroot}
 
-%define                _plugindir      %{_libdir}/opera/plugins
-%define                _operadocdir    %{_docdir}/%{name}-%{ver}
-# alternative arch for plugin32
-%define                alt_arch        i386
+%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 linked
-with shared version of Qt.
+Opera is a fast, secure and user-friendly web browser. It includes web
+developer tools, news aggregation, and the ability to compress data
+via Opera Turbo on congested networks.
 
 %description -l hu.UTF-8
 Opera a világ leggyorsabb webböngészője. A manapság elterjedt
@@ -69,211 +57,128 @@ 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.
 
-%package plugin32
-Summary:       Opera 32-bit plugins support
-Summary(hu.UTF-8):     Opera 32-bites plugin támogatás
-Summary(pl.UTF-8):     Obsługa 32-bitowych wtyczek Opery
-Group:         X11/Applications/Networking
+%package l10n
+Summary:       %{name} language packages
+Group:         I18n
 Requires:      %{name} = %{epoch}:%{version}-%{release}
-Requires:      browser-plugins >= 2.0
-
-%description plugin32
-Opera 32-bit plugins support.
+BuildArch:     noarch
 
-%description plugin32 -l hu.UTF-8
-Opera 32-bites plugin támogatás.
+%description l10n
+This package contains language packages for 56 languages:
 
-%description plugin32 -l pl.UTF-8
-Obsługa 32-bitowych wtyczek Opery.
+af, az, be, bg, bn, ca, cs, da, de, el, en-GB, es-419, es, fi, fil,
+fr-CA, fr, fy, gd, he, hi, hr, hu, id, it, ja, kk, ko, lt, lv, me, mk,
+ms, nb, nl, nn, pa, pl, pt-BR, pt-PT, ro, ru, sk, sr, sv, sw, ta, te,
+th, tr, uk, uz, vi, zh-CN, zh-TW, zu.
 
 %prep
-%ifarch %{ix86}
-%setup -q -T -b 10 -n %{name}-%{version}-%{buildid}.i386.linux
-%endif
-
+%setup -qcT
 %ifarch %{x8664}
-%setup -q -T -b 11 -n %{name}-%{version}-%{buildid}.x86_64.linux
+SOURCE=%{S:10}
 %endif
 
-sed -i -e '
-       s,@@{PREFIX},%{_prefix},g
-       s,@@{SUFFIX},,
-       s,@@{_SUFFIX},,
-' share/{applications/*.desktop,mime/packages/*.xml}
+ar x $SOURCE
+tar xf control.tar.xz && rm control.tar.xz
+tar xf data.tar.xz && rm data.tar.xz
 
-sed -i -e 's,kfmclient exec,xdg-open,' share/opera/defaults/filehandler.ini
+version=$(awk '/Version:/{print $2}' control)
+test $version = %{version}
 
-%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
+mkdir -p lib doc
+%{__mv} usr/lib/*/%{name}/* lib/
+%{__mv} usr/share/icons .
+%{__mv} usr/share/pixmaps/%{name}.xpm .
+%{__mv} usr/share/applications/%{name}.desktop .
+%{__mv} usr/share/doc/opera-stable/* doc/
 
-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
+%patch1 -p1
 
-# opera packaging tools we don't need runtime
-mv share/opera/package .
+%{__sed} -e 's#/usr/lib/opera#%{_libdir}/opera#g' %{_sourcedir}/%{name}.sh > %{name}.sh
+%{__sed} -e 's,@localedir@,%{_datadir}/%{name}/localization,' %{_sourcedir}/find-lang.sh > find-lang.sh
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_datadir},%{_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*
 EOF
 
-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}
+cp -a lib/localization lib/resources $RPM_BUILD_ROOT%{_datadir}/%{name}
+cp -a lib/* $RPM_BUILD_ROOT%{_libdir}/%{name}
+%{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/{localization,resources}
+ln -s %{_datadir}/%{name}/localization $RPM_BUILD_ROOT%{_libdir}/%{name}/localization
+ln -s %{_datadir}/%{name}/resources $RPM_BUILD_ROOT%{_libdir}/%{name}/resources
 
-sed -i -e 's#/usr/lib/opera#%{_libdir}/opera#g' $RPM_BUILD_ROOT%{_bindir}/opera
+install -p %{name}.sh $RPM_BUILD_ROOT%{_bindir}/%{name}
+cp -p %{name}.desktop $RPM_BUILD_ROOT%{_desktopdir}
+cp -a icons/* $RPM_BUILD_ROOT%{_iconsdir}
 
-cat << 'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/operaprefs_default.ini
-[ISP]
-Id="DISTRO"
-EOF
-
-%if "%{pld_release}" == "ti"
-sed -i -e 's#DISTRO#PLD/Titanium#g' $RPM_BUILD_ROOT/etc/operaprefs_default.ini
-%else
-%if "%{pld_release}" == "ac"
-sed -i -e 's#DISTRO#PLD/2.0 (Ac)#g' $RPM_BUILD_ROOT/etc/operaprefs_default.ini
-%else
-sed -i -e 's#DISTRO#PLD/3.0 (Th)#g' $RPM_BUILD_ROOT/etc/operaprefs_default.ini
-%endif
-%endif
+# find locales
+%find_lang %{name}.lang
+# always package en-US
+%{__sed} -i -e '/en-US.pak/d' %{name}.lang
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post
-%update_mime_database
 %update_icon_cache hicolor
-%update_desktop_database_post
+%update_desktop_database
 %update_browser_plugins
 
 %postun
-%update_mime_database
-%update_icon_cache hicolor
-%update_desktop_database_postun
-if [ "$1" = 0 ]; then
-       %update_browser_plugins
-fi
-
-%post plugin32
-%update_browser_plugins
-
-%postun plugin32
 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*ini
-
-# browser plugins v2
+%doc doc/copyright
 %{_browserpluginsconfdir}/browsers.d/%{name}.*
 %config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist
 
-%attr(755,root,root) %{_bindir}/opera
-%attr(755,root,root) %{_bindir}/opera-widget-manager
-%dir %{_libdir}/opera
-%ifarch %{x8664}
-%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}/mime/packages/opera-extension.xml
-%{_datadir}/opera/*.*
-%{_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
-%lang(af) %{_datadir}/opera/locale/af
-%lang(az) %{_datadir}/opera/locale/az
-%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(gd) %{_datadir}/opera/locale/gd
-%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(me) %{_datadir}/opera/locale/me
-%lang(mk) %{_datadir}/opera/locale/mk
-%lang(ms) %{_datadir}/opera/locale/ms
-%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(th) %{_datadir}/opera/locale/th
-%lang(tl) %{_datadir}/opera/locale/tl
-%lang(tr) %{_datadir}/opera/locale/tr
-%lang(uk) %{_datadir}/opera/locale/uk
-%lang(uz) %{_datadir}/opera/locale/uz
-%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
-%{_datadir}/mime/packages/opera-unite-application.xml
+%attr(755,root,root) %{_bindir}/%{name}
 %{_desktopdir}/*.desktop
-%{_mandir}/man1/opera.1*
-%{_mandir}/man1/opera-widget-manager.1*
-#%{_pixmapsdir}/opera.xpm
 %{_iconsdir}/hicolor/*/*/*.png
 
-%ifarch %{x8664}
-%files plugin32
+%dir %{_datadir}/%{name}
+%{_datadir}/%{name}/resources
+%dir %{_datadir}/%{name}/localization
+%{_datadir}/%{name}/localization/en-US.pak
+
+%dir %{_libdir}/%{name}
+%{_libdir}/%{name}/icudtl.dat
+%{_libdir}/%{name}/snapshot_blob.bin
+%{_libdir}/%{name}/*.pak
+%{_libdir}/%{name}/localization
+%{_libdir}/%{name}/resources
+%attr(755,root,root) %{_libdir}/%{name}/chrome_crashpad_handler
+%attr(755,root,root) %{_libdir}/%{name}/libEGL.so
+%attr(755,root,root) %{_libdir}/%{name}/libffmpeg.so
+%attr(755,root,root) %{_libdir}/%{name}/libGLESv2.so
+%attr(755,root,root) %{_libdir}/%{name}/libvk_swiftshader.so
+%attr(755,root,root) %{_libdir}/%{name}/libvulkan.so.1
+%{_libdir}/%{name}/vk_swiftshader_icd.json
+%dir %{_libdir}/%{name}/swiftshader
+%attr(755,root,root) %{_libdir}/%{name}/swiftshader/libEGL.so
+%attr(755,root,root) %{_libdir}/%{name}/swiftshader/libGLESv2.so
+%{_libdir}/%{name}/v8_context_snapshot.bin
+%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
+
+%files l10n -f %{name}.lang
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/opera/*-ia32-*
-%endif
This page took 0.620304 seconds and 4 git commands to generate.