From c2892020c5a00b0a9348e93e08771c1d178ca288 Mon Sep 17 00:00:00 2001 From: Moritz Barsnick Date: Sun, 10 Aug 2014 23:52:41 +0200 Subject: [PATCH 1/8] update Opera to 25.0.1583.1 --- SPEC/opera-developer.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/SPEC/opera-developer.spec b/SPEC/opera-developer.spec index 7c044a2..86357d4 100644 --- a/SPEC/opera-developer.spec +++ b/SPEC/opera-developer.spec @@ -3,7 +3,7 @@ Summary: Opera Developer Name: opera-developer -Version: 24.0.1543.0 +Version: 25.0.1583.1 Release: 1%{dist} License: Proprietary Group: Applications/Internet @@ -74,6 +74,9 @@ done %{_datadir} %changelog +* Mon Aug 11 2014 Moritz Barsnick 25.0.1583.1-1 +- update to 25.0.1583.1 + * Mon Jun 30 2014 Nobuyuki Ito - 24.0.1543.0 - version up - change libssl/libcrypto install dir From e691fd1e4a4c579c5bd04ca197c44d38e9f33533 Mon Sep 17 00:00:00 2001 From: Moritz Barsnick Date: Sun, 10 Aug 2014 23:54:48 +0200 Subject: [PATCH 2/8] update used openssl package version --- SPEC/opera-developer.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/SPEC/opera-developer.spec b/SPEC/opera-developer.spec index 86357d4..ddfef41 100644 --- a/SPEC/opera-developer.spec +++ b/SPEC/opera-developer.spec @@ -1,5 +1,5 @@ %define deb_opera %{name}_%{version}_amd64.deb -%define deb_openssl libssl1.0.0_1.0.1f-1ubuntu2.4_amd64.deb +%define deb_openssl libssl1.0.0_1.0.1f-1ubuntu2.5_amd64.deb Summary: Opera Developer Name: opera-developer @@ -76,6 +76,7 @@ done %changelog * Mon Aug 11 2014 Moritz Barsnick 25.0.1583.1-1 - update to 25.0.1583.1 +- use latest openssl package from Ubuntu * Mon Jun 30 2014 Nobuyuki Ito - 24.0.1543.0 - version up From e975b68caf520592ea274b97498aea122f7b80d4 Mon Sep 17 00:00:00 2001 From: Moritz Barsnick Date: Sun, 10 Aug 2014 23:57:51 +0200 Subject: [PATCH 3/8] modify deb unpacking --- SPEC/opera-developer.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/SPEC/opera-developer.spec b/SPEC/opera-developer.spec index ddfef41..03c5391 100644 --- a/SPEC/opera-developer.spec +++ b/SPEC/opera-developer.spec @@ -26,14 +26,17 @@ Opera Developer %setup -T -n %{name} -c %build -ar p $RPM_SOURCE_DIR/%{deb_openssl} data.tar.xz | xz -d -9 | tar x -C $RPM_BUILD_DIR +# nothing to do %install [ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != / ] && rm -rf $RPM_BUILD_ROOT mkdir $RPM_BUILD_ROOT +# provide openssl-1.0.0 +ar p %{SOURCE1} data.tar.xz | xz -d | tar x -C $RPM_BUILD_DIR + # extract data from the deb package -ar p $RPM_SOURCE_DIR/%{deb_opera} data.tar.xz | xz -d -9 | tar x -C $RPM_BUILD_ROOT +ar p %{SOURCE0} data.tar.xz | xz -d | tar x -C $RPM_BUILD_ROOT # rename libdir mv $RPM_BUILD_ROOT/usr/lib/x86_64-linux-gnu/%{name} $RPM_BUILD_ROOT/usr/lib/ @@ -77,6 +80,9 @@ done * Mon Aug 11 2014 Moritz Barsnick 25.0.1583.1-1 - update to 25.0.1583.1 - use latest openssl package from Ubuntu +- use %%{SOURCE} macros +- unpack openssl in %%install phase +- drop xz compression flag for decompression * Mon Jun 30 2014 Nobuyuki Ito - 24.0.1543.0 - version up From 3368eee91929520fe5969f9bcb5c01a9732ae9e0 Mon Sep 17 00:00:00 2001 From: Moritz Barsnick Date: Mon, 11 Aug 2014 00:00:02 +0200 Subject: [PATCH 4/8] fix symlink --- SPEC/opera-developer.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/SPEC/opera-developer.spec b/SPEC/opera-developer.spec index 03c5391..2ccc837 100644 --- a/SPEC/opera-developer.spec +++ b/SPEC/opera-developer.spec @@ -45,7 +45,7 @@ mv $RPM_BUILD_ROOT/usr/lib $RPM_BUILD_ROOT%{_libdir} # create new symlink rm -f $RPM_BUILD_ROOT%{_bindir}/%{name} -ln -sr $RPM_BUILD_ROOT%{_libdir}/%{name}/opera $RPM_BUILD_ROOT%{_bindir}/%{name} +ln -sr $RPM_BUILD_ROOT%{_libdir}/%{name}/%{name} $RPM_BUILD_ROOT%{_bindir}/%{name} # delete some directories that is not needed on Fedora rm -rf $RPM_BUILD_ROOT%{_datadir}/{lintian,menu} @@ -79,6 +79,7 @@ done %changelog * Mon Aug 11 2014 Moritz Barsnick 25.0.1583.1-1 - update to 25.0.1583.1 +- fix symlink to binary - use latest openssl package from Ubuntu - use %%{SOURCE} macros - unpack openssl in %%install phase From bb29bd8245583a9806bc280034f1f36a5fa9f46b Mon Sep 17 00:00:00 2001 From: Moritz Barsnick Date: Mon, 11 Aug 2014 00:01:51 +0200 Subject: [PATCH 5/8] adapt tags --- SPEC/opera-developer.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SPEC/opera-developer.spec b/SPEC/opera-developer.spec index 2ccc837..619b2cd 100644 --- a/SPEC/opera-developer.spec +++ b/SPEC/opera-developer.spec @@ -12,11 +12,9 @@ Source0: http://get.geo.opera.com/pub/opera-developer/%{version}/linux/%{deb_ope # download ubuntu package from http://packages.ubuntu.com/trusty-updates/libssl1.0.0 Source1: http://mirrors.kernel.org/ubuntu/pool/main/o/openssl/%{deb_openssl} Vendor: Opera Software ASA -Packager: Nobuyuki Ito BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: x86_64 Requires: systemd-libs -BuildRequires: binutils xz tar %description Opera Developer @@ -84,6 +82,8 @@ done - use %%{SOURCE} macros - unpack openssl in %%install phase - drop xz compression flag for decompression +- drop Packager tag (should be provided by building tool chain) and BRs (they're all + pre-provided on Fedora) * Mon Jun 30 2014 Nobuyuki Ito - 24.0.1543.0 - version up From dfe7b13a86ff53e29708d4358d4336eaafbd4b72 Mon Sep 17 00:00:00 2001 From: Moritz Barsnick Date: Mon, 11 Aug 2014 00:08:43 +0200 Subject: [PATCH 6/8] fix Requires and Provides --- SPEC/opera-developer.spec | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/SPEC/opera-developer.spec b/SPEC/opera-developer.spec index 619b2cd..e9a0b52 100644 --- a/SPEC/opera-developer.spec +++ b/SPEC/opera-developer.spec @@ -1,6 +1,12 @@ %define deb_opera %{name}_%{version}_amd64.deb %define deb_openssl libssl1.0.0_1.0.1f-1ubuntu2.5_amd64.deb +# these Requires are provided internally because of our bundling or symlinking +%global _excl lib(ssl|crypto|udev)\\.so +%global __requires_exclude %{_excl} +# they're provided internally, but not for other packages please +%global __provides_exclude_from ^.*/%{_excl}.*$ + Summary: Opera Developer Name: opera-developer Version: 25.0.1583.1 @@ -62,7 +68,7 @@ done [ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != / ] && rm -rf $RPM_BUILD_ROOT %post -# create symlink for libudev +# create symlink for libudev.so.0 [ -e %{_libdir}/libudev.so.1 ] && ln -fs %{_libdir}/libudev.so.1 %{_libdir}/%{name}/lib/libudev.so.0 %postun @@ -82,8 +88,10 @@ done - use %%{SOURCE} macros - unpack openssl in %%install phase - drop xz compression flag for decompression -- drop Packager tag (should be provided by building tool chain) and BRs (they're all - pre-provided on Fedora) +- drop Packager tag (should be provided by rpmbuild tool chain) and BRs + (they're all pre-provided on Fedora) +- fix Requires and Provides, in order to not require --no-deps and to not + provide bogus stuff * Mon Jun 30 2014 Nobuyuki Ito - 24.0.1543.0 - version up From bf585f5379e4fd7e61243641448cf8fb2450fa68 Mon Sep 17 00:00:00 2001 From: Moritz Barsnick Date: Mon, 11 Aug 2014 00:12:31 +0200 Subject: [PATCH 7/8] adapt instructions --- README.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 40d33a4..38ea329 100644 --- a/README.md +++ b/README.md @@ -12,14 +12,17 @@ Check http://packages.ubuntu.com/trusty-updates/libssl1.0.0 wget http://example.com/somewhere +Alternatively, use spectool from Fedora's rpmdevtools package: +spectool -g -A opera-developer.spec + # build rpm package rpmbuild -bb opera-developer.spec # install rpm -rpm -ivh --nodeps opera-developer-*.x86_64.rpm +sudo yum localinstall opera-developer-*.x86_64.rpm # start to use opera developer -Just click icon or +Just click icon or run $ /usr/bin/opera-developer From 5375afc6b2f0866027c8867d598fc7c0fcdfd262 Mon Sep 17 00:00:00 2001 From: Moritz Barsnick Date: Mon, 11 Aug 2014 00:23:58 +0200 Subject: [PATCH 8/8] assume Fedora provides libudev.so.1 --- SPEC/opera-developer.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/SPEC/opera-developer.spec b/SPEC/opera-developer.spec index e9a0b52..d08b023 100644 --- a/SPEC/opera-developer.spec +++ b/SPEC/opera-developer.spec @@ -20,6 +20,7 @@ Source1: http://mirrors.kernel.org/ubuntu/pool/main/o/openssl/%{deb_openssl} Vendor: Opera Software ASA BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: x86_64 +Requires: %{_libdir}/libudev.so.1 Requires: systemd-libs %description @@ -69,7 +70,7 @@ done %post # create symlink for libudev.so.0 -[ -e %{_libdir}/libudev.so.1 ] && ln -fs %{_libdir}/libudev.so.1 %{_libdir}/%{name}/lib/libudev.so.0 +ln -fs %{_libdir}/libudev.so.1 %{_libdir}/%{name}/lib/libudev.so.0 %postun [ -L %{_libdir}/%{name}/lib/libudev.so.0 ] && rm -f %{_libdir}/%{name}/lib/libudev.so.0