Re: [PATCH] python2-ansible, python-ccm and dependencies

2015-07-31 Thread Alex Kost
Alex Kost (2015-07-29 12:51 +0300) wrote:

> Eric Dvorsak (2015-07-26 15:05 +0300) wrote:
>
>> Ok I have made all the changes you recommended. Thank you for your
>> help.
>
> Thanks for making the packages.  I'm going to push these patches in a
> day or two, so if someone has comments, this is the last chance.

Pushed.

-- 
Alex



Re: [PATCH] python2-ansible, python-ccm and dependencies

2015-07-29 Thread Alex Kost
Eric Dvorsak (2015-07-26 15:05 +0300) wrote:

> Ok I have made all the changes you recommended. Thank you for your
> help.

Thanks for making the packages.  I'm going to push these patches in a
day or two, so if someone has comments, this is the last chance.

I also checked that "python-paramiko" is under lgpl2.1+.  And that
"python-py-bcrypt" is multi-licensed (isc bsd-3 bsd-4).  I'll fix it
before pushing the patches.

-- 
Alex



Re: [PATCH] python2-ansible, python-ccm and dependencies

2015-07-26 Thread Eric Dvorsak
Ok I have made all the changes you recommended. Thank you for your help.

2015-07-26 11:56 GMT+02:00 Alex Kost :

> Eric Dvorsak (2015-07-25 22:58 +0300) wrote:
>
> > Thank you Ricardo and Alex for taking the time to review and comment my
> > patch. I edited it to take your advices into account. I hope I did not
> miss
> > anything this time
>
> Please add the following line to "python.scm":
>
> ;;; Copyright © 2015 Eric Dvorsak 
>
> I think you can do it in the first patch.
>
> [...]
> > +(synopsis "Cassandra Cluster Manager")
> > +(description "A script/library to create, launch and remove an
> Apache Cassandra cluster on localhost.")
>
> Please, do not use long lines (more than 72-78 chars).  If you use
> Emacs, you may just "M-q" inside descriptions.
>
> [...]
> > +(define-public python2-ansible
> > +  (package
> > +(name "python2-ansible")
> > +(version "1.9.2")
> > +(source
> > + (origin
> > +   (method url-fetch)
> > +   (uri (string-append
> > + "
> https://pypi.python.org/packages/source/a/ansible/ansible-";
> > + version
> > + ".tar.gz"))
> > +   (sha256
> > +(base32
> > + "007fzgsqaahb0y4gjdxxmir9kcni7wph2z14jhqgpz88idrz8pn2"
> > +(build-system python-build-system)
> > +(native-inputs
> > + `(("python2-setuptools" ,python2-setuptools)
> > +   ("python2-pycrypto" ,python2-pycrypto)
> > +   ("python2-httplib2" ,python2-httplib2)
> > +   ("python2-passlib" ,python2-passlib)
> > +   ("python2-nose" ,python2-nose)
> > +   ("python2-mock" ,python2-mock)
> > +   ("python2-jinja2" ,python2-jinja2)
> > +   ("python2-pyyaml" ,python2-pyyaml)
> > +   ("python2-paramiko" ,python2-paramiko)))
> > +(inputs
> > + `(("python2-pycrypto" ,python2-pycrypto)
> > +   ("python2-jinja2" ,python2-jinja2)
> > +   ("python2-pyyaml" ,python2-pyyaml)
> > +   ("python2-paramiko" ,python2-paramiko)))
> > +(arguments
> > + `(#:python ,python-2)) ; incompatible with Python 3
> > +(home-page "http://ansible.com/";)
> > +(synopsis "Radically simple IT automation")
> > +(description "Ansible is a radically simple IT automation system.
> It handles configuration-management, application deployment, cloud
> provisioning, ad-hoc task-execution, and multinode orchestration -
> including trivializing things like zero downtime rolling updates with load
> balancers.")
> > +(license gpl3)))
>
> I think it should be 'gpl3+'.  AFAICS
>  is a usual GPL
> license  which has "or any later
> version" in it, so we use 'gpl3+' for this.
>
> Otherwise, the patches look good to me, perhaps the others will notice
> more.  I can only confirm that the packages built successfully here.
>
> --
> Alex
>
From 7bc1543f231993e6e04c2a79e6840663f14c0def Mon Sep 17 00:00:00 2001
From: Eric Dvorsak 
Date: Sat, 25 Jul 2015 21:31:05 +0200
Subject: [PATCH 1/8] gnu: Add python2-pycrypto.

* gnu/packages/python.scm (python2-pycrypto): New variable.
---
 gnu/packages/python.scm | 4 
 1 file changed, 4 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 7709fbd..b70d937 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2015 Pierre-Antoine Rault 
 ;;; Copyright © 2015 Ricardo Wurmus 
 ;;; Copyright © 2015 Christopher Allan Webber 
+;;; Copyright © 2015 Eric Dvorsak 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -538,6 +539,9 @@ and RIPEMD160), and various encryption algorithms (AES, DES, RSA, ElGamal,
 etc.).  The package is structured to make adding new modules easy.")
 (license public-domain)))
 
+(define-public python2-pycrypto
+  (package-with-python2 python-pycrypto))
+
 (define-public python-keyring
   (package
 (name "python-keyring")
-- 
2.4.3

From d15941992f1a8b882902990641cee2b1e89c2b6d Mon Sep 17 00:00:00 2001
From: Eric Dvorsak 
Date: Sat, 25 Jul 2015 21:34:19 +0200
Subject: [PATCH 2/8] gnu: Add python-ccm.

* gnu/packages/python.scm (python-ccm, python2-ccm): New variables.
---
 gnu/packages/python.scm | 29 +
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index b70d937..d78e9df 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -298,6 +298,35 @@ pidof, tty, taskset, pmap.")
 (define-public python2-psutil
   (package-with-python2 python-psutil))
 
+(define-public python-ccm
+  (package
+(name "python-ccm")
+(version "2.0.4.1")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append
+ "https://pypi.python.org/packages/source/c/ccm/ccm-";
+ version
+ ".tar.gz"))
+   (sha256
+(base32
+ "199jw221albs2iv6xczczq88fxnh0aw8hzmys8qkbzkd99dssng9"
+(build-system python-build-system)
+(native-inputs
+ `(("

Re: [PATCH] python2-ansible, python-ccm and dependencies

2015-07-26 Thread Alex Kost
Eric Dvorsak (2015-07-25 22:58 +0300) wrote:

> Thank you Ricardo and Alex for taking the time to review and comment my
> patch. I edited it to take your advices into account. I hope I did not miss
> anything this time

Please add the following line to "python.scm":

;;; Copyright © 2015 Eric Dvorsak 

I think you can do it in the first patch.

[...]
> +(synopsis "Cassandra Cluster Manager")
> +(description "A script/library to create, launch and remove an Apache 
> Cassandra cluster on localhost.")

Please, do not use long lines (more than 72-78 chars).  If you use
Emacs, you may just "M-q" inside descriptions.

[...]
> +(define-public python2-ansible
> +  (package
> +(name "python2-ansible")
> +(version "1.9.2")
> +(source
> + (origin
> +   (method url-fetch)
> +   (uri (string-append
> + "https://pypi.python.org/packages/source/a/ansible/ansible-";
> + version
> + ".tar.gz"))
> +   (sha256
> +(base32
> + "007fzgsqaahb0y4gjdxxmir9kcni7wph2z14jhqgpz88idrz8pn2"
> +(build-system python-build-system)
> +(native-inputs
> + `(("python2-setuptools" ,python2-setuptools)
> +   ("python2-pycrypto" ,python2-pycrypto)
> +   ("python2-httplib2" ,python2-httplib2)
> +   ("python2-passlib" ,python2-passlib)
> +   ("python2-nose" ,python2-nose)
> +   ("python2-mock" ,python2-mock)
> +   ("python2-jinja2" ,python2-jinja2)
> +   ("python2-pyyaml" ,python2-pyyaml)
> +   ("python2-paramiko" ,python2-paramiko)))
> +(inputs
> + `(("python2-pycrypto" ,python2-pycrypto)
> +   ("python2-jinja2" ,python2-jinja2)
> +   ("python2-pyyaml" ,python2-pyyaml)
> +   ("python2-paramiko" ,python2-paramiko)))
> +(arguments
> + `(#:python ,python-2)) ; incompatible with Python 3
> +(home-page "http://ansible.com/";)
> +(synopsis "Radically simple IT automation")
> +(description "Ansible is a radically simple IT automation system.  It 
> handles configuration-management, application deployment, cloud provisioning, 
> ad-hoc task-execution, and multinode orchestration - including trivializing 
> things like zero downtime rolling updates with load balancers.")
> +(license gpl3)))

I think it should be 'gpl3+'.  AFAICS
 is a usual GPL
license  which has "or any later
version" in it, so we use 'gpl3+' for this.

Otherwise, the patches look good to me, perhaps the others will notice
more.  I can only confirm that the packages built successfully here.

-- 
Alex



Re: [PATCH] python2-ansible, python-ccm and dependencies

2015-07-25 Thread Eric Dvorsak
Thank you Ricardo and Alex for taking the time to review and comment my
patch. I edited it to take your advices into account. I hope I did not miss
anything this time

Eric

2015-07-25 12:07 GMT+02:00 Ricardo Wurmus :

>
> Hi Eric,
>
> > I added the following package definitions to python.scm :
> >
> > - python2-ansible
> > - python-passlib
> > - python-py-bcrypt
> > - python-paramiko
> > - python-httplib2
> > - python-ecdsa
> > - python-ccm
>
> we normally make separate commits for separate packages.  The only
> exception is for when we add python- as well as python2-;
> they usually go together in the same commit.
>
> Please also run ‘guix lint package-name’ for each of the new packages.
> It will tell you a couple of things that you could do to improve.
>
> One thing I noticed is that the description you provide for the packages
> is the same as the synopsis.  The description, however, should provide
> more information and it should be complete sentences (with
> punctuation).
>
> Things like ‘("python-setuptools" ,python-setuptools)’ are to be placed
> in the list of ‘native-inputs’.  ‘native-inputs’ are only used at build
> time.
>
> Finally, there is no space between your definition of ‘python2-ccm’ and
> the existing definition of ‘python-pytz’.
>
> The other patch looks good to me, but it appears that this is a patch by
> Mark Weaver.  Did you submit it by accident?
>
> ~~ Ricardo
>
>
From c1dde968fb8b0384fb147b4aa4172816478da974 Mon Sep 17 00:00:00 2001
From: Eric Dvorsak 
Date: Sat, 25 Jul 2015 21:31:05 +0200
Subject: [PATCH 1/8] gnu: Add python2-pycrypto.

* gnu/packages/python.scm (python2-pycrypto): New variable.
---
 gnu/packages/python.scm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 7709fbd..6235b48 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -538,6 +538,9 @@ and RIPEMD160), and various encryption algorithms (AES, DES, RSA, ElGamal,
 etc.).  The package is structured to make adding new modules easy.")
 (license public-domain)))
 
+(define-public python2-pycrypto
+  (package-with-python2 python-pycrypto))
+
 (define-public python-keyring
   (package
 (name "python-keyring")
-- 
2.4.3

From 80fad0306460b97e3a4de0581be1bed45d699698 Mon Sep 17 00:00:00 2001
From: Eric Dvorsak 
Date: Sat, 25 Jul 2015 21:34:19 +0200
Subject: [PATCH 2/8] gnu: Add python-ccm.

* gnu/packages/python.scm (python-ccm, python2-ccm): New variables.
---
 gnu/packages/python.scm | 28 
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 6235b48..15d62fc 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -297,6 +297,34 @@ pidof, tty, taskset, pmap.")
 (define-public python2-psutil
   (package-with-python2 python-psutil))
 
+(define-public python-ccm
+  (package
+(name "python-ccm")
+(version "2.0.4.1")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append
+ "https://pypi.python.org/packages/source/c/ccm/ccm-";
+ version
+ ".tar.gz"))
+   (sha256
+(base32
+ "199jw221albs2iv6xczczq88fxnh0aw8hzmys8qkbzkd99dssng9"
+(build-system python-build-system)
+(native-inputs
+ `(("python-setuptools" ,python-setuptools)))
+(inputs
+ `(("python-pyyaml" ,python-pyyaml)
+   ("python-six" ,python-six)))
+(home-page "https://github.com/pcmanus/ccm";)
+(synopsis "Cassandra Cluster Manager")
+(description "A script/library to create, launch and remove an Apache Cassandra cluster on localhost.")
+(license asl2.0)))
+
+(define-public python2-ccm
+  (package-with-python2 python-ccm))
+
 (define-public python-pytz
   (package
 (name "python-pytz")
-- 
2.4.3

From 295fc4b3ccae4d0222ed74e0d6d6031170c8b56e Mon Sep 17 00:00:00 2001
From: Eric Dvorsak 
Date: Sat, 25 Jul 2015 21:35:35 +0200
Subject: [PATCH 3/8] gnu: Add python-ecdsa.

* gnu/packages/python.scm (python-ecdsa, python2-ecdsa): New variables.
---
 gnu/packages/python.scm | 30 ++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 15d62fc..76eaafd 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -297,6 +297,36 @@ pidof, tty, taskset, pmap.")
 (define-public python2-psutil
   (package-with-python2 python-psutil))
 
+(define-public python-ecdsa
+  (package
+(name "python-ecdsa")
+(version "0.13")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append
+ "https://pypi.python.org/packages/source/e/ecdsa/ecdsa-";
+ version
+ ".tar.gz"))
+   (sha256
+(base32
+ "1yj31j0asmrx4an9xvsaj2icdmzy6pw0glfpqrrkrphwdpi1xkv4"
+(build-system python-build-system)
+(native-inputs
+ `(("python-setuptools" ,python-setuptools)))
+(inputs
+ `(("openssl" ,openssl)))
+(home

Re: [PATCH] python2-ansible, python-ccm and dependencies

2015-07-25 Thread Ricardo Wurmus

Hi Eric,

> I added the following package definitions to python.scm :
>
> - python2-ansible
> - python-passlib
> - python-py-bcrypt
> - python-paramiko
> - python-httplib2
> - python-ecdsa
> - python-ccm

we normally make separate commits for separate packages.  The only
exception is for when we add python- as well as python2-;
they usually go together in the same commit.

Please also run ‘guix lint package-name’ for each of the new packages.
It will tell you a couple of things that you could do to improve.

One thing I noticed is that the description you provide for the packages
is the same as the synopsis.  The description, however, should provide
more information and it should be complete sentences (with
punctuation).

Things like ‘("python-setuptools" ,python-setuptools)’ are to be placed
in the list of ‘native-inputs’.  ‘native-inputs’ are only used at build
time.

Finally, there is no space between your definition of ‘python2-ccm’ and
the existing definition of ‘python-pytz’.

The other patch looks good to me, but it appears that this is a patch by
Mark Weaver.  Did you submit it by accident?

~~ Ricardo




Re: [PATCH] python2-ansible, python-ccm and dependencies

2015-07-25 Thread Alex Kost
Eric Dvorsak (2015-07-24 19:21 +0300) wrote:

> I added the following package definitions to python.scm :
>
> - python2-ansible
> - python-passlib
> - python-py-bcrypt
> - python-paramiko
> - python-httplib2
> - python-ecdsa
> - python-ccm
>
> This is my first commit ever so if I did something wrong or missed a
> step in the process please let me know so I can improve for the next
> ones.
>
> Eric Dvorsak.

Hello and welcome!  We prefer a single patch per package and the commit
messages should look like this:

--8<---cut here---start->8---
gnu: Add python2-ansible.

* gnu/packages/python.scm (python2-ansible): New variable.
--8<---cut here---end--->8---

See also other python commits.

And some quick notes:

> +(home-page "http://ansible.com/";)
> +(synopsis "Radically simple IT automation")
> +(description "Radically simple IT automation")

Please, add periods in the end of descriptions.  And usually
descriptions should be more verbose than synopses.

> +(license gpl3)))

'gpl3+'.  'gpl3' shouldn't even work in this module.

> +(home-page "http://passlib.googlecode.com";)

This page says the project has moved.  Perhaps
?

> +(synopsis
> + "Comprehensive password hashing framework supporting over 30 schemes")
> +(description
> + "Comprehensive password hashing framework supporting over 30 schemes")
> +(license bsd-3))
> +  )

   (license bsd-3)))

Please do not put a single parenthesis on a separate line.

> +(define-public python-paramiko
> +  (package
> +(name "python-paramiko")
> +(version "1.15.2")
> +(source
> + (origin
> +   (method url-fetch)
> +   (uri (string-append
> + "https://pypi.python.org/packages/source/p/paramiko/paramiko-";
> + version
> + ".tar.gz"))
> +   (sha256
> +(base32
> + "0mbfzm9zlrz6mla9xakrm8wkll3x035f9rj3c5pbgjzfldqscmjg"
> +(build-system python-build-system)
> +(inputs
> + `(("python-ecdsa" ,python-ecdsa)
> +   ("python-pycrypto" ,python-pycrypto)
> +   ("python-setuptools" ,python-setuptools)))
> +(propagated-inputs
> + `(("python2-pycrypto" ,python2-pycrypto)))

Did you mean "python-pycrypto" (not "python2-pycrypto")?

-- 
Alex



[PATCH] python2-ansible, python-ccm and dependencies

2015-07-24 Thread Eric Dvorsak
I added the following package definitions to python.scm :

- python2-ansible
- python-passlib
- python-py-bcrypt
- python-paramiko
- python-httplib2
- python-ecdsa
- python-ccm

This is my first commit ever so if I did something wrong or missed a step
in the process please let me know so I can improve for the next ones.

Eric Dvorsak.
From e766bb8c21294c02d7db19f9789fa0c96c772fae Mon Sep 17 00:00:00 2001
From: Eric Dvorsak 
Date: Fri, 24 Jul 2015 18:09:48 +0200
Subject: [PATCH 2/2] Add python-ccm, python2-ansible and dependencies

---
 gnu/packages/python.scm | 213 
 1 file changed, 213 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 7709fbd..9ac997d 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -297,6 +297,219 @@ pidof, tty, taskset, pmap.")
 (define-public python2-psutil
   (package-with-python2 python-psutil))
 
+(define-public python2-ansible
+  (package
+(name "python2-ansible")
+(version "1.9.2")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append
+ "https://pypi.python.org/packages/source/a/ansible/ansible-";
+ version
+ ".tar.gz"))
+   (sha256
+(base32
+ "007fzgsqaahb0y4gjdxxmir9kcni7wph2z14jhqgpz88idrz8pn2"
+(build-system python-build-system)
+(native-inputs
+ `(("python2-httplib2" ,python2-httplib2)
+   ("python2-passlib" ,python2-passlib)
+   ("python2-nose" ,python2-nose)
+   ("python2-mock" ,python2-mock)
+   ("python2-jinja2" ,python2-jinja2)
+   ("python2-pyyaml" ,python2-pyyaml)
+   ("python2-paramiko" ,python2-paramiko)))
+(inputs
+ `(("python2-setuptools" ,python2-setuptools)
+   ("python2-jinja2" ,python2-jinja2)
+   ("python2-pyyaml" ,python2-pyyaml)
+   ("python2-paramiko" ,python2-paramiko)))
+(arguments
+ `(#:python ,python-2)) ; incompatible with Python 3
+(home-page "http://ansible.com/";)
+(synopsis "Radically simple IT automation")
+(description "Radically simple IT automation")
+(license gpl3)))
+
+(define-public python-passlib
+  (package
+(name "python-passlib")
+(version "1.6.2")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append
+ "https://pypi.python.org/packages/source/p/passlib/passlib-";
+ version
+ ".tar.gz"))
+   (sha256
+(base32
+ "0b9rd161b3mmiwd7nx1v599yh9sp07mlfwac65sjy9qn1l0gd1z9"
+(build-system python-build-system)
+(inputs
+ `(("python-nose" ,python-nose)
+   ("python-py-bcrypt" ,python-py-bcrypt)
+   ("python-setuptools" ,python-setuptools)))
+(arguments
+ `(#:phases
+   (alist-cons-before
+'check 'set-PYTHON_EGG_CACHE
+;; some tests require access to "$HOME/.cython"
+(lambda* _ (setenv "PYTHON_EGG_CACHE" "/tmp"))
+ %standard-phases)))
+(home-page "http://passlib.googlecode.com";)
+(synopsis
+ "Comprehensive password hashing framework supporting over 30 schemes")
+(description
+ "Comprehensive password hashing framework supporting over 30 schemes")
+(license bsd-3))
+  )
+
+(define-public python2-passlib
+  (package-with-python2 python-passlib))
+
+(define-public python-py-bcrypt
+  (package
+(name "python-py-bcrypt")
+(version "0.4")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append
+ "https://pypi.python.org/packages/source/p/py-bcrypt/py-bcrypt-";
+ version
+ ".tar.gz"))
+   (sha256
+(base32
+ "0y6smdggwi5s72v6p1nn53dg6w05hna3d264cq6kas0lap73p8az"
+(build-system python-build-system)
+(inputs
+ `(("python-setuptools" ,python-setuptools)))
+(home-page "https://code.google.com/p/py-bcrypt";)
+(synopsis
+ "Bcrypt password hashing and key derivation")
+(description
+ "Bcrypt password hashing and key derivation")
+(license bsd-3)))
+
+(define-public python2-py-bcrypt
+  (package-with-python2 python-py-bcrypt))
+
+
+(define-public python-paramiko
+  (package
+(name "python-paramiko")
+(version "1.15.2")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append
+ "https://pypi.python.org/packages/source/p/paramiko/paramiko-";
+ version
+ ".tar.gz"))
+   (sha256
+(base32
+ "0mbfzm9zlrz6mla9xakrm8wkll3x035f9rj3c5pbgjzfldqscmjg"
+(build-system python-build-system)
+(inputs
+ `(("python-ecdsa" ,python-ecdsa)
+   ("python-pycrypto" ,python-pycrypto)
+   ("python-setuptools" ,python-setuptools)))
+(propagated-inputs
+ `(("python2-pycrypto" ,python2-pycrypto)))
+(home-page
+ "https://github.com/paramiko/paramiko/";)
+(synopsis "SSH2 protocol library")
+(description "SSH2 protocol library")
+(license lgpl2.1)))
+
+(define-public python2-pa