unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] Add rpy2.
@ 2015-07-07 11:57 Ricardo Wurmus
  2015-07-08 12:57 ` Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: Ricardo Wurmus @ 2015-07-07 11:57 UTC (permalink / raw)
  To: Guix-devel

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: 0001-gnu-Add-python-rpy2.patch --]
[-- Type: text/x-patch, Size: 2489 bytes --]

From 070b4f5553ae30c05b97a67692b54503c73ca42f Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Tue, 7 Jul 2015 13:56:49 +0200
Subject: [PATCH] gnu: Add python-rpy2.

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

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index b3d211e..b003e5e 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -47,9 +47,11 @@
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages statistics)
   #:use-module (gnu packages texlive)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages tls)
@@ -2667,6 +2669,42 @@ those files.  It can also efficiently manipulate ranges of integers using set
 operators such as union, intersection, and difference.")
     (license asl2.0)))
 
+(define-public python-rpy2
+  (package
+    (name "python-rpy2")
+    (version "2.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://pypi.python.org/packages/source/r/rpy2"
+                           "/rpy2-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1dp4l8hpv0jpf4crz4wis6in3lvwk86cr5zvpw410y4a07rrbqjk"))))
+    (build-system python-build-system)
+    (inputs
+     `(("python-six" ,python-six)
+       ("readline" ,readline)
+       ("icu4c" ,icu4c)
+       ("pcre" ,pcre)))
+    (native-inputs
+     `(("python-setuptools" ,python-setuptools)
+       ("r" ,r)))
+    (home-page "http://rpy.sourceforge.net/")
+    (synopsis "Python interface to the R language")
+    (description "rpy2 is a redesign and rewrite of rpy.  It is providing a
+low-level interface to R from Python, a proposed high-level interface,
+including wrappers to graphical libraries, as well as R-like structures and
+functions.")
+    (license gpl2+)))
+
+(define-public python2-rpy2
+  (let ((rpy2 (package-with-python2 python-rpy2)))
+    (package (inherit rpy2)
+      (native-inputs
+       `(("python-singledispatch" ,python-singledispatch)
+         ,@(package-native-inputs rpy2))))))
+
 (define-public python-scipy
   (package
     (name "python-scipy")
-- 
2.1.0

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] Add rpy2.
  2015-07-07 11:57 [PATCH] Add rpy2 Ricardo Wurmus
@ 2015-07-08 12:57 ` Ludovic Courtès
  2015-07-20  9:51   ` Ricardo Wurmus
  2015-07-20 12:36   ` Claes Wallin (韋嘉誠)
  0 siblings, 2 replies; 6+ messages in thread
From: Ludovic Courtès @ 2015-07-08 12:57 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: Guix-devel

Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> skribis:

> From 070b4f5553ae30c05b97a67692b54503c73ca42f Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
> Date: Tue, 7 Jul 2015 13:56:49 +0200
> Subject: [PATCH] gnu: Add python-rpy2.
>
> * gnu/packages/python.scm (python-rpy2, python2-rpy2): New variables.

[...]

> +    (inputs
> +     `(("python-six" ,python-six)
> +       ("readline" ,readline)
> +       ("icu4c" ,icu4c)
> +       ("pcre" ,pcre)))
> +    (native-inputs
> +     `(("python-setuptools" ,python-setuptools)
> +       ("r" ,r)))

I think R is used for its libraries, so it should be in ‘inputs’ in
theory.

> +    (license gpl2+)))

R being GPLv3+, this should be the same.

OK with these changes!

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] Add rpy2.
  2015-07-08 12:57 ` Ludovic Courtès
@ 2015-07-20  9:51   ` Ricardo Wurmus
  2015-07-20 12:36   ` Claes Wallin (韋嘉誠)
  1 sibling, 0 replies; 6+ messages in thread
From: Ricardo Wurmus @ 2015-07-20  9:51 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel


Ludovic Courtès <ludo@gnu.org> writes:

> Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> skribis:
>
>> From 070b4f5553ae30c05b97a67692b54503c73ca42f Mon Sep 17 00:00:00 2001
>> From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
>> Date: Tue, 7 Jul 2015 13:56:49 +0200
>> Subject: [PATCH] gnu: Add python-rpy2.
>>
>> * gnu/packages/python.scm (python-rpy2, python2-rpy2): New variables.
>
> [...]
>
>> +    (inputs
>> +     `(("python-six" ,python-six)
>> +       ("readline" ,readline)
>> +       ("icu4c" ,icu4c)
>> +       ("pcre" ,pcre)))
>> +    (native-inputs
>> +     `(("python-setuptools" ,python-setuptools)
>> +       ("r" ,r)))
>
> I think R is used for its libraries, so it should be in ‘inputs’ in
> theory.
>
>> +    (license gpl2+)))
>
> R being GPLv3+, this should be the same.
>
> OK with these changes!

Thanks for the review.  I pushed it with the suggested changes.

~~ Ricardo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] Add rpy2.
  2015-07-08 12:57 ` Ludovic Courtès
  2015-07-20  9:51   ` Ricardo Wurmus
@ 2015-07-20 12:36   ` Claes Wallin (韋嘉誠)
  2015-07-20 15:56     ` Ludovic Courtès
  1 sibling, 1 reply; 6+ messages in thread
From: Claes Wallin (韋嘉誠) @ 2015-07-20 12:36 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 560 bytes --]

On Jul 8, 2015 2:57 PM, "Ludovic Courtès" <ludo@gnu.org> wrote:
> Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> skribis:

> > Subject: [PATCH] gnu: Add python-rpy2.
> >
> > * gnu/packages/python.scm (python-rpy2, python2-rpy2): New variables.

> > +    (license gpl2+)))
>
> R being GPLv3+, this should be the same.

I understand the reasoning that a package is more user-oriented than
developer-oriented and should reflect the license of the whole, but there's
an argument for reflecting the original license as well. Has this been
discussed?

[-- Attachment #2: Type: text/html, Size: 792 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] Add rpy2.
  2015-07-20 12:36   ` Claes Wallin (韋嘉誠)
@ 2015-07-20 15:56     ` Ludovic Courtès
  2015-07-20 16:53       ` Claes Wallin (韋嘉誠)
  0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2015-07-20 15:56 UTC (permalink / raw)
  To: Claes Wallin (韋嘉誠); +Cc: guix-devel

"Claes Wallin (韋嘉誠)" <gnu@clacke.user.lysator.liu.se> skribis:

> On Jul 8, 2015 2:57 PM, "Ludovic Courtès" <ludo@gnu.org> wrote:
>> Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> skribis:
>
>> > Subject: [PATCH] gnu: Add python-rpy2.
>> >
>> > * gnu/packages/python.scm (python-rpy2, python2-rpy2): New variables.
>
>> > +    (license gpl2+)))
>>
>> R being GPLv3+, this should be the same.
>
> I understand the reasoning that a package is more user-oriented than
> developer-oriented and should reflect the license of the whole, but there's
> an argument for reflecting the original license as well. Has this been
> discussed?

This has been mentioned in past reviews.  Basically the intent is for
‘license’ to reflect the license of the whole, but we often end up
leaving a comment in cases where there’s some ambiguity.

I think it’s hard to do better without maintaining ‘copyright’ files
à la Debian.

Ludo’.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] Add rpy2.
  2015-07-20 15:56     ` Ludovic Courtès
@ 2015-07-20 16:53       ` Claes Wallin (韋嘉誠)
  0 siblings, 0 replies; 6+ messages in thread
From: Claes Wallin (韋嘉誠) @ 2015-07-20 16:53 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1599 bytes --]

On Jul 20, 2015 5:56 PM, "Ludovic Courtès" <ludo@gnu.org> wrote:
> "Claes Wallin (韋嘉誠)" <gnu@clacke.user.lysator.liu.se> skribis:

> >> > +    (license gpl2+)))
> >>
> >> R being GPLv3+, this should be the same.
> >
> > I understand the reasoning that a package is more user-oriented than
> > developer-oriented and should reflect the license of the whole, but
there's
> > an argument for reflecting the original license as well. Has this been
> > discussed?
>
> This has been mentioned in past reviews.  Basically the intent is for
> ‘license’ to reflect the license of the whole, but we often end up
> leaving a comment in cases where there’s some ambiguity.
>
> I think it’s hard to do better without maintaining ‘copyright’ files
> à la Debian.

I suddenly had an idea. There is a directional compatibility graph between
the most common licenses. That means calculating the license of a package
can often be trivial, at least a conservative guess.

You could just "guix license python-rpy2" and it would tell you that the
code itself is GPLv2+ (because package definition says so), but because of
dependencies the package as installed is effectively GPLv3+. Except when
you can't, so there should be an "it's complicated" state as well, possibly
resolvable through manual hints in package defs.

This could be a check in lint as well, to make sure e.g. no GPLv2 package
relies on a GPLv3 package without an explanation. Defining exactly in what
way a package depends on another (i.e. if it makes it a derivative) could
be a later excercise.

[-- Attachment #2: Type: text/html, Size: 1967 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-07-20 16:53 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-07-07 11:57 [PATCH] Add rpy2 Ricardo Wurmus
2015-07-08 12:57 ` Ludovic Courtès
2015-07-20  9:51   ` Ricardo Wurmus
2015-07-20 12:36   ` Claes Wallin (韋嘉誠)
2015-07-20 15:56     ` Ludovic Courtès
2015-07-20 16:53       ` Claes Wallin (韋嘉誠)

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).