From 400df5b270f1e765ba129285686f0d4a1b9262b8fb8083116fa93fb9813c8608 Mon Sep 17 00:00:00 2001
From: Denisart Benjamin
Date: Fri, 11 Oct 2013 23:58:18 +0000
Subject: [PATCH] Accepting request 203018 from
home:posophe:branches:devel:languages:python
Update and update-alternatives implementation
OBS-URL: https://build.opensuse.org/request/show/203018
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-rsa?expand=0&rev=7
---
python-rsa.changes | 9 +++++
python-rsa.spec | 70 ++++++++++++++++++++++++++++++---
rsa-3.1.1.tar.gz | 3 --
rsa-3.1.2.tar.gz | 3 ++
rsa-use-system-setuptools.patch | 13 ------
5 files changed, 77 insertions(+), 21 deletions(-)
delete mode 100644 rsa-3.1.1.tar.gz
create mode 100644 rsa-3.1.2.tar.gz
delete mode 100644 rsa-use-system-setuptools.patch
diff --git a/python-rsa.changes b/python-rsa.changes
index 9c11401..af3d4d1 100644
--- a/python-rsa.changes
+++ b/python-rsa.changes
@@ -1,3 +1,12 @@
+-------------------------------------------------------------------
+Fri Oct 11 23:06:55 UTC 2013 - p.drouand@gmail.com
+
+- Update to version 3.1.2
+ + No changelog available
+- Replace python-distribute with python-setuptools BuildRequires
+- Remove rsa-use-system-setuptools.patch; merged upstream
+- Implement update-alternatives
+
-------------------------------------------------------------------
Mon Aug 12 15:26:44 UTC 2013 - speilicke@suse.com
diff --git a/python-rsa.spec b/python-rsa.spec
index 5101693..e7dfcd3 100644
--- a/python-rsa.spec
+++ b/python-rsa.spec
@@ -17,19 +17,20 @@
Name: python-rsa
-Version: 3.1.1
+Version: 3.1.2
Release: 0
Url: http://stuvel.eu/rsa
Summary: Pure-Python RSA Implementation
License: Apache-2.0
Group: Development/Languages/Python
Source: http://pypi.python.org/packages/source/r/rsa/rsa-%{version}.tar.gz
-Patch0: rsa-use-system-setuptools.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: python-devel
-BuildRequires: python-distribute
+BuildRequires: python-setuptools
BuildRequires: python-pyasn1
Requires: python-pyasn1
+Requires(post): update-alternatives
+Requires(postun): update-alternatives
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
%else
@@ -43,21 +44,80 @@ PKCS#1 version 1.5.
%prep
%setup -q -n rsa-%{version}
-%patch0 -p1
+sed -i "s/pyrsa-priv2pub/pyrsa-priv2pub-%{py_ver}/" setup.py
+sed -i "s/pyrsa-keygen/pyrsa-keygen-%{py_ver}/" setup.py
+sed -i "s/pyrsa-encrypt =/pyrsa-encrypt-%{py_ver} =/" setup.py
+sed -i "s/pyrsa-decrypt =/pyrsa-decrypt-%{py_ver} =/" setup.py
+sed -i "s/pyrsa-sign/pyrsa-sign-%{py_ver}/" setup.py
+sed -i "s/pyrsa-verify/pyrsa-verify-%{py_ver}/" setup.py
+sed -i "s/pyrsa-encrypt-bigfile =/pyrsa-encrypt-bigfile-%{py_ver} =/" setup.py
+sed -i "s/pyrsa-decrypt-bigfile =/pyrsa-decrypt-bigfile-%{py_ver} =/" setup.py
%build
python setup.py build
%install
python setup.py install --prefix=%{_prefix} --root=%{buildroot}
+ln -s %{_bindir}/pyrsa-priv2pub-%{py_ver} %{buildroot}%{_bindir}/pyrsa-priv2pub
+ln -s %{_bindir}/pyrsa-keygen-%{py_ver} %{buildroot}%{_bindir}/pyrsa-keygen
+ln -s %{_bindir}/pyrsa-encrypt-%{py_ver} %{buildroot}%{_bindir}/pyrsa-encrypt
+ln -s %{_bindir}/pyrsa-decrypt-%{py_ver} %{buildroot}%{_bindir}/pyrsa-decrypt
+ln -s %{_bindir}/pyrsa-sign-%{py_ver} %{buildroot}%{_bindir}/pyrsa-sign
+ln -s %{_bindir}/pyrsa-verify-%{py_ver} %{buildroot}%{_bindir}/pyrsa-verify
+ln -s %{_bindir}/pyrsa-encrypt-bigfile-%{py_ver} %{buildroot}%{_bindir}/pyrsa-encrypt-bigfile
+ln -s %{_bindir}/pyrsa-decrypt-bigfile-%{py_ver} %{buildroot}%{_bindir}/pyrsa-decrypt-bigfile
%check
python setup.py test
+%pre
+# Since binaries became ghosted to be used with update-alternatives, we have to get rid
+# of the old binary resulting from the non-update-alternativies-ified package:
+[[ ! -L %{_bindir}/pyrsa-priv2pub ]] && rm -f %{_bindir}/pyrsa-priv2pub
+[[ ! -L %{_bindir}/pyrsa-keygen ]] && rm -f %{_bindir}/pyrsa-keygen
+[[ ! -L %{_bindir}/pyrsa-encrypt ]] && rm -f %{_bindir}/pyrsa-encrypt
+[[ ! -L %{_bindir}/pyrsa-decrypt ]] && rm -f %{_bindir}/pyrsa-decrypt
+[[ ! -L %{_bindir}/pyrsa-sign ]] && rm -f %{_bindir}/pyrsa-sign
+[[ ! -L %{_bindir}/pyrsa-verify ]] && rm -f %{_bindir}/pyrsa-verify
+[[ ! -L %{_bindir}/pyrsa-encrypt-bigfile ]] && rm -f %{_bindir}/pyrsa-encrypt-bigfile
+[[ ! -L %{_bindir}/pyrsa-decrypt-bigfile ]] && rm -f %{_bindir}/pyrsa-decrypt-bigfile
+exit 0
+
+%post
+update-alternatives \
+ --install %{_bindir}/pyrsa-priv2pub pyrsa-priv2pub %{_bindir}/pyrsa-priv2pub-%{py_ver} 30 \
+ --slave %{_bindir}/pyrsa-keygen pyrsa-keygen %{_bindir}/pyrsa-keygen-%{py_ver} \
+ --slave %{_bindir}/pyrsa-encrypt pyrsa-encrypt %{_bindir}/pyrsa-encrypt-%{py_ver} \
+ --slave %{_bindir}/pyrsa-decrypt pyrsa-decrypt %{_bindir}/pyrsa-decrypt-%{py_ver} \
+ --slave %{_bindir}/pyrsa-sign pyrsa-sign %{_bindir}/pyrsa-sign-%{py_ver} \
+ --slave %{_bindir}/pyrsa-verify pyrsa-verify %{_bindir}/pyrsa-verify-%{py_ver} \
+ --slave %{_bindir}/pyrsa-encrypt-bigfile pyrsa-encrypt-bigfile %{_bindir}/pyrsa-encrypt-bigfile-%{py_ver} \
+ --slave %{_bindir}/pyrsa-decrypt-bigfile pyrsa-decrypt-bigfile %{_bindir}/pyrsa-decrypt-bigfile-%{py_ver} \
+
+%preun
+if [ $1 -eq 0 ] ; then
+ update-alternatives --remove pyrsa-priv2pub %{_bindir}/pyrsa-priv2pub-%{py_ver}
+fi
+
%files
%defattr(-,root,root,-)
%doc LICENSE
-%{_bindir}/pyrsa-*
+%ghost %{_bindir}/pyrsa-priv2pub
+%{_bindir}/pyrsa-priv2pub-%{py_ver}
+%ghost %{_bindir}/pyrsa-keygen
+%{_bindir}/pyrsa-keygen-%{py_ver}
+%ghost %{_bindir}/pyrsa-encrypt
+%{_bindir}/pyrsa-encrypt-%{py_ver}
+%ghost %{_bindir}/pyrsa-decrypt
+%{_bindir}/pyrsa-decrypt-%{py_ver}
+%ghost %{_bindir}/pyrsa-sign
+%{_bindir}/pyrsa-sign-%{py_ver}
+%ghost %{_bindir}/pyrsa-verify
+%{_bindir}/pyrsa-verify-%{py_ver}
+%ghost %{_bindir}/pyrsa-encrypt-bigfile
+%{_bindir}/pyrsa-encrypt-bigfile-%{py_ver}
+%ghost %{_bindir}/pyrsa-decrypt-bigfile
+%{_bindir}/pyrsa-decrypt-bigfile-%{py_ver}
%{python_sitelib}/*
%changelog
diff --git a/rsa-3.1.1.tar.gz b/rsa-3.1.1.tar.gz
deleted file mode 100644
index 0631a31..0000000
--- a/rsa-3.1.1.tar.gz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:ed83fe80602077bcbf91d14e41558c751d76527c7b88d44394e1e2900fddb7ba
-size 37584
diff --git a/rsa-3.1.2.tar.gz b/rsa-3.1.2.tar.gz
new file mode 100644
index 0000000..32519bf
--- /dev/null
+++ b/rsa-3.1.2.tar.gz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:66eb8752a1de9b92d7679ea0e1556cf2e4a155161d0024e97e06999041e35f58
+size 35237
diff --git a/rsa-use-system-setuptools.patch b/rsa-use-system-setuptools.patch
deleted file mode 100644
index cd3f396..0000000
--- a/rsa-use-system-setuptools.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ruN a/setup.py b/setup.py
---- a/setup.py 2012-06-18 16:14:17.000000000 +0200
-+++ b/setup.py 2013-08-12 17:25:36.196839624 +0200
-@@ -1,9 +1,5 @@
- #!/usr/bin/env python
-
--# Ensure that a reasonably recent version of 'distribute' is installed.
--from distribute_setup import use_setuptools
--use_setuptools('0.6.10')
--
- from setuptools import setup
-
- import rsa