[packages/mozilla-addon-gnome-keyring] - the old C extension is unmaintaned and dead, switched to new JS based implementation - noarch pack
baggins
baggins at pld-linux.org
Sun Nov 1 11:15:48 CET 2015
commit 7f552d17c8bbae979613fda779c790d82c410bd1
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sun Nov 1 11:14:33 2015 +0100
- the old C extension is unmaintaned and dead, switched to new JS based implementation
- noarch package
firefox-32.patch | 135 ---------------------------------------
firefox-33.patch | 10 ---
firefox-version.patch | 20 ++++++
mozilla-addon-gnome-keyring.spec | 88 ++++++++++---------------
4 files changed, 55 insertions(+), 198 deletions(-)
---
diff --git a/mozilla-addon-gnome-keyring.spec b/mozilla-addon-gnome-keyring.spec
index e115d45..82fbd14 100644
--- a/mozilla-addon-gnome-keyring.spec
+++ b/mozilla-addon-gnome-keyring.spec
@@ -1,36 +1,23 @@
-%define extension gnome-keyring
Summary: Extension that enables Gnome Keyring integration
-Name: mozilla-addon-%{extension}
-Version: 0.6.11
-Release: 10
+Name: mozilla-addon-gnome-keyring
+Version: 0.10
+Release: 1
License: MPL v1.1 or GPL v2+ or LGPL v2.1+
Group: X11/Applications/Networking
-Source0: https://github.com/infinity0/mozilla-gnome-keyring/archive/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: f6abf2e5bc5de7ad3472998bfd68a763
-Patch0: firefox-32.patch
-Patch1: firefox-33.patch
-URL: https://github.com/infinity0/mozilla-gnome-keyring/
-BuildRequires: libgnome-keyring-devel >= 3.4.0
-BuildRequires: libstdc++-devel
-BuildRequires: pkg-config
-BuildRequires: xulrunner-devel
-BuildRequires: zip
-Requires: libgnome-keyring >= 3.4.0
-ExclusiveArch: %{x8664} %{ix86}
+Source0: https://github.com/swick/mozilla-gnome-keyring/archive/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: e633c093acd2ab86d342fb83fefb95f0
+Patch0: firefox-version.patch
+URL: https://github.com/swick/mozilla-gnome-keyring/
+Requires: libsecret
+BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
# this comes from install.rdf
-%define extension_id \{6f9d85e0-794d-11dd-ad8b-0800200c9a66\}
-%define extensionsdir %{_libdir}/mozilla/extensions
+%define extension_ffox_id \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
+%define extension_tbird_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\}
+%define extension_id gnome-keyring-integration at sebastianwick.net
-# https://developer.mozilla.org/en/XPCOM_ABI#ABI_Naming
-%define platform unknown
-%ifarch %{ix86}
-%define platform Linux_x86-gcc3
-%endif
-%ifarch %{x8664}
-%define platform Linux_x86_64-gcc3
-%endif
+%define extensionsdir /usr/lib/mozilla/extensions
%description
This extension replaces the default password manager in both Firefox
@@ -43,46 +30,41 @@ password after Firefox or Thunderbird has been started.
%prep
%setup -qn mozilla-gnome-keyring-%{version}
%patch0 -p1
-%patch1 -p1
-
-%{__sed} -i -e '/^CXXFLAGS/ s/$/ $(OPTFLAGS)/' Makefile
%build
-# build ext for current arch only
-%{__make} build-xpi \
- PLATFORM=%{platform} \
- VERSION=%{version} \
- XUL_VER_MIN=17.0 \
- CXX="%{__cxx}" \
- LDFLAGS="%{rpmldflags} -pthread" \
- OPTFLAGS="%{rpmcxxflags} -fpermissive"
+%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-# Install Gecko extension
-install -d $RPM_BUILD_ROOT%{extensionsdir}/%{extension_id}
-cp -a xpi/* $RPM_BUILD_ROOT%{extensionsdir}/%{extension_id}
+
+install -d $RPM_BUILD_ROOT%{extensionsdir}/%{extension_ffox_id}/%{extension_id}
+install -d $RPM_BUILD_ROOT%{extensionsdir}/%{extension_tbird_id}
+
+ln -s %{extensionsdir}/%{extension_ffox_id}/%{extension_id} $RPM_BUILD_ROOT%{extensionsdir}/%{extension_tbird_id}/%{extension_id}
+
+unzip bin/*.xpi -d $RPM_BUILD_ROOT%{extensionsdir}/%{extension_ffox_id}/%{extension_id}
%clean
rm -rf $RPM_BUILD_ROOT
%triggerin -- icedove
-test -L %{_libdir}/icedove/extensions/%{extension_id} || \
- ln -sf %{extensionsdir}/%{extension_id} %{_libdir}/icedove/extensions/%{extension_id}
+test -L %{_libdir}/icedove/extensions/%{extension_tbird_id} || \
+ ln -sf %{extensionsdir}/%{extension_tbird_id} %{_libdir}/icedove/extensions/%{extension_tbird_id}
%triggerun -- icedove
-if [ "$1" = "0" ] || [ "$2" = "0" ] && [ -L %{_libdir}/icedove/extensions/%{extension_id} ]; then
- rm -f %{_libdir}/icedove/extensions/%{extension_id}
+if [ "$1" = "0" ] || [ "$2" = "0" ] && [ -L %{_libdir}/icedove/extensions/%{extension_tbird_id} ]; then
+ rm -f %{_libdir}/icedove/extensions/%{extension_tbird_id}
fi
%files
%defattr(644,root,root,755)
-%dir %{extensionsdir}/%{extension_id}
-%{extensionsdir}/%{extension_id}/chrome
-%{extensionsdir}/%{extension_id}/chrome.manifest
-%{extensionsdir}/%{extension_id}/defaults
-%{extensionsdir}/%{extension_id}/install.rdf
-%dir %{extensionsdir}/%{extension_id}/platform
-%dir %{extensionsdir}/%{extension_id}/platform/%{platform}
-%dir %{extensionsdir}/%{extension_id}/platform/%{platform}/components
-%attr(755,root,root) %{extensionsdir}/%{extension_id}/platform/%{platform}/components/libgnomekeyring.so
+%dir %{extensionsdir}/%{extension_ffox_id}
+%dir %{extensionsdir}/%{extension_ffox_id}/%{extension_id}
+%{extensionsdir}/%{extension_ffox_id}/%{extension_id}/chrome.manifest
+%{extensionsdir}/%{extension_ffox_id}/%{extension_id}/install.rdf
+%{extensionsdir}/%{extension_ffox_id}/%{extension_id}/chrome
+%{extensionsdir}/%{extension_ffox_id}/%{extension_id}/components
+%{extensionsdir}/%{extension_ffox_id}/%{extension_id}/content
+%{extensionsdir}/%{extension_ffox_id}/%{extension_id}/defaults
+%dir %{extensionsdir}/%{extension_tbird_id}
+%{extensionsdir}/%{extension_tbird_id}/%{extension_id}
diff --git a/firefox-32.patch b/firefox-32.patch
deleted file mode 100644
index 01299b8..0000000
--- a/firefox-32.patch
+++ /dev/null
@@ -1,135 +0,0 @@
-From e600ce95b830536bb48770a4448f91b9802ba999 Mon Sep 17 00:00:00 2001
-From: Andreas Allacher <andreas.allacher at cyberhouse.at>
-Date: Fri, 5 Sep 2014 16:53:36 +0200
-Subject: [PATCH] [TASK] xulrunner-sdk v32.0 support
-
----
- GnomeKeyring.cpp | 21 +++++++++++++++++++--
- Makefile | 2 +-
- config.sh | 26 +++++++++++++++++++++++++-
- 3 files changed, 45 insertions(+), 4 deletions(-)
-
-diff --git a/GnomeKeyring.cpp b/GnomeKeyring.cpp
-index fd179d6..b1e8b1b 100644
---- a/GnomeKeyring.cpp
-+++ b/GnomeKeyring.cpp
-@@ -578,8 +578,11 @@ NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsILoginManagerStorage)
- NS_INTERFACE_MAP_END
-
- // End code to deal with 4.0 / 3.6 compatibility
--
-+#if HAVE_NSILMS_INITALIZE_MUTABLEHANDLE
-+NS_IMETHODIMP GnomeKeyring::Initialize(JS::MutableHandleValue _retval)
-+#else
- NS_IMETHODIMP GnomeKeyring::Init()
-+#endif
- {
- nsresult ret;
- nsCOMPtr<nsIServiceManager> servMan;
-@@ -624,6 +627,14 @@ NS_IMETHODIMP GnomeKeyring::Init()
- return ret;
- }
-
-+#if HAVE_NSILMS_TERMINATE_MUTABLEHANDLE
-+NS_IMETHODIMP GnomeKeyring::Terminate(JS::MutableHandleValue _retval)
-+{
-+ return NS_ERROR_NOT_IMPLEMENTED;
-+}
-+#endif
-+
-+#if (HAVE_NSILMS_INITWITHFILE_2 || HAVE_NSILMS_INITWITHFILE_1)
- #if HAVE_NSILMS_INITWITHFILE_2
- NS_IMETHODIMP GnomeKeyring::InitWithFile(nsIFile *aInputFile,
- nsIFile *aOutputFile)
-@@ -631,9 +642,13 @@ NS_IMETHODIMP GnomeKeyring::InitWithFile(nsIFile *aInputFile,
- NS_IMETHODIMP GnomeKeyring::InitWithFile(nsIFile *aInputFile)
- #endif
- {
-- // TODO
-+#if HAVE_NSILMS_INITALIZE_MUTABLEHANDLE
-+ return NS_ERROR_NOT_IMPLEMENTED;
-+#else
- return Init();
-+#endif
- }
-+#endif
-
- NS_IMETHODIMP GnomeKeyring::AddLogin(nsILoginInfo *aLogin)
- {
-@@ -766,11 +781,13 @@ NS_IMETHODIMP GnomeKeyring::GetAllLogins(PRUint32 *aCount,
- return foundListToArray(foundToLoginInfo, foundList, aCount, aLogins);
- }
-
-+#if HAVE_NSILMS_GETALLENCRYPTEDLOGINS
- NS_IMETHODIMP GnomeKeyring::GetAllEncryptedLogins(unsigned int*,
- nsILoginInfo***)
- {
- return NS_ERROR_NOT_IMPLEMENTED;
- }
-+#endif
-
- NS_IMETHODIMP GnomeKeyring::SearchLogins(PRUint32 *count,
- nsIPropertyBag *matchData,
-diff --git a/Makefile b/Makefile
-index 38e4edd..dcc8984 100644
---- a/Makefile
-+++ b/Makefile
-@@ -62,7 +62,7 @@ else
- endif
-
- SHELL_EXPORT := $(foreach v,CXX XUL_CFLAGS XUL_LDFLAGS XPCOM_ABI_FLAGS GNOME_CFLAGS GNOME_LDFLAGS CXXFLAGS LDFLAGS,$(v)="$($(v))")
--CXX_MACRO_EXPORT := $(foreach v,HAVE_NSILMS_CHAR16_T HAVE_NSILMS_GETISLOGGEDIN HAVE_NSILMS_INITWITHFILE_2 HAVE_MOZ_BUG_956507 HAVE_MOZGLUE,-D$(v)="$($(v))")
-+CXX_MACRO_EXPORT := $(foreach v,HAVE_NSILMS_CHAR16_T HAVE_NSILMS_GETISLOGGEDIN HAVE_NSILMS_INITWITHFILE_1 HAVE_NSILMS_INITWITHFILE_2 HAVE_NSILMS_INITALIZE_MUTABLEHANDLE HAVE_NSILMS_TERMINATE_MUTABLEHANDLE HAVE_NSILMS_GETALLENCRYPTEDLOGINS HAVE_MOZ_BUG_956507 HAVE_MOZGLUE,-D$(v)="$($(v))")
-
- config.vars: config.sh GnomeKeyring.h xpcom_abi.cpp Makefile
- $(SHELL_EXPORT) sh $^ > $@
-diff --git a/config.sh b/config.sh
-index c36d7e6..d2c8136 100755
---- a/config.sh
-+++ b/config.sh
-@@ -25,12 +25,36 @@ NS_IMETHODIMP GnomeKeyring::GetIsLoggedIn(bool *aIsLoggedIn) { return NS_OK; }
- EOF
- )
-
-+HAVE_NSILMS_INITWITHFILE_1=$({ cat <<EOF; } | $CXX $XUL_CFLAGS $GNOME_CFLAGS $CXXFLAGS -x c++ -w -c -o /dev/null - 2>/dev/null && echo 1 || echo 0
-+#include "$SRC_GNOME_KEYRING_H"
-+NS_IMETHODIMP GnomeKeyring::InitWithFile(nsIFile *aInputFile) { return NS_OK; }
-+EOF
-+)
-+
- HAVE_NSILMS_INITWITHFILE_2=$({ cat <<EOF; } | $CXX $XUL_CFLAGS $GNOME_CFLAGS $CXXFLAGS -x c++ -w -c -o /dev/null - 2>/dev/null && echo 1 || echo 0
- #include "$SRC_GNOME_KEYRING_H"
- NS_IMETHODIMP GnomeKeyring::InitWithFile(nsIFile *aInputFile, nsIFile *aOutputFile) { return NS_OK; }
- EOF
- )
-
-+HAVE_NSILMS_INITALIZE_MUTABLEHANDLE=$({ cat <<EOF; } | $CXX $XUL_CFLAGS $GNOME_CFLAGS $CXXFLAGS -x c++ -w -c -o /dev/null - 2>/dev/null && echo 1 || echo 0
-+#include "$SRC_GNOME_KEYRING_H"
-+NS_IMETHODIMP GnomeKeyring::Initialize(JS::MutableHandleValue _retval) { return NS_OK; }
-+EOF
-+)
-+
-+HAVE_NSILMS_TERMINATE_MUTABLEHANDLE=$({ cat <<EOF; } | $CXX $XUL_CFLAGS $GNOME_CFLAGS $CXXFLAGS -x c++ -w -c -o /dev/null - 2>/dev/null && echo 1 || echo 0
-+#include "$SRC_GNOME_KEYRING_H"
-+NS_IMETHODIMP GnomeKeyring::Terminate(JS::MutableHandleValue _retval) { return NS_OK; }
-+EOF
-+)
-+
-+HAVE_NSILMS_GETALLENCRYPTEDLOGINS=$({ cat <<EOF; } | $CXX $XUL_CFLAGS $GNOME_CFLAGS $CXXFLAGS -x c++ -w -c -o /dev/null - 2>/dev/null && echo 1 || echo 0
-+#include "$SRC_GNOME_KEYRING_H"
-+NS_IMETHODIMP GnomeKeyring::GetAllEncryptedLogins(unsigned int*, nsILoginInfo***) { return NS_OK; }
-+EOF
-+)
-+
- HAVE_MOZ_BUG_956507=$({ cat <<EOF; } | $CXX $XUL_CFLAGS $GNOME_CFLAGS $CXXFLAGS -x c++ -w -c -o /dev/null - 2>/dev/null && echo 0 || echo 1
- #include <nspr/prtypes.h>
- #include "mozilla/Char16.h"
-@@ -48,7 +72,7 @@ $CXX $SRC_XPCOM_ABI_CPP -DHAVE_MOZ_BUG_956507="$HAVE_MOZ_BUG_956507" -o "$DST_XP
- PLATFORM="$("$DST_XPCOM_ABI")"
-
- for var in XUL_VERSION XUL_VER_MIN XUL_VER_MAX PLATFORM \
-- HAVE_NSILMS_CHAR16_T HAVE_NSILMS_GETISLOGGEDIN HAVE_NSILMS_INITWITHFILE_2 HAVE_MOZ_BUG_956507 HAVE_MOZGLUE; do
-+ HAVE_NSILMS_CHAR16_T HAVE_NSILMS_GETISLOGGEDIN HAVE_NSILMS_INITWITHFILE_1 HAVE_NSILMS_INITWITHFILE_2 HAVE_NSILMS_INITALIZE_MUTABLEHANDLE HAVE_NSILMS_TERMINATE_MUTABLEHANDLE HAVE_NSILMS_GETALLENCRYPTEDLOGINS HAVE_MOZ_BUG_956507 HAVE_MOZGLUE; do
- eval val=\$$var
- echo export $var=$val
- done;
diff --git a/firefox-33.patch b/firefox-33.patch
deleted file mode 100644
index b5b7256..0000000
--- a/firefox-33.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- mozilla-gnome-keyring-0.6.11/GnomeKeyring.h~ 2014-10-18 22:19:04.000000000 +0200
-+++ mozilla-gnome-keyring-0.6.11/GnomeKeyring.h 2014-10-18 22:23:16.478743383 +0200
-@@ -84,6 +84,7 @@
- GnomeKeyringResult
- findHostItemsAll(GList** found);
-
-+ ~GnomeKeyring() {}
- public:
- NS_DECL_ISUPPORTS
- NS_DECL_NSILOGINMANAGERSTORAGE
diff --git a/firefox-version.patch b/firefox-version.patch
new file mode 100644
index 0000000..6f2e79a
--- /dev/null
+++ b/firefox-version.patch
@@ -0,0 +1,20 @@
+--- mozilla-gnome-keyring-0.10/install.rdf~ 2015-07-01 19:11:55.000000000 +0200
++++ mozilla-gnome-keyring-0.10/install.rdf 2015-10-31 10:27:34.839480083 +0100
+@@ -20,7 +20,7 @@
+ <Description>
+ <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
+ <em:minVersion>4.0</em:minVersion>
+- <em:maxVersion>39.*</em:maxVersion>
++ <em:maxVersion>50.*</em:maxVersion>
+ </Description>
+ </em:targetApplication>
+
+@@ -29,7 +29,7 @@
+ <Description>
+ <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id>
+ <em:minVersion>5.0</em:minVersion>
+- <em:maxVersion>39.*</em:maxVersion>
++ <em:maxVersion>50.*</em:maxVersion>
+ </Description>
+ </em:targetApplication>
+ </Description>
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/mozilla-addon-gnome-keyring.git/commitdiff/7f552d17c8bbae979613fda779c790d82c410bd1
More information about the pld-cvs-commit
mailing list