Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread David Craven
> That would be a massive refactoring - but can be done eventually.

I don't think it would be too hard, most work can be done through
applying a regex to the entire project and running the testsuite to
find the cases where it didn't work. I did this on the python.scm
file...

So then I'll leave the patch as it is?



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread Danny Milosavljevic
On Wed, 17 Aug 2016 10:53:23 +0200
David Craven  wrote:

> Ah, I was thinking more about lgpl2.1+ and the sorts... So is it a
> good idea to prefix all licenses in guix licenses itself (as Eric
> mentioned), and be done with it?

That would be a massive refactoring - but can be done eventually.

I would just #:prefix license: whenever one touches something that caused these 
problems. No need to modify everything in one go.



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread David Craven
> Expat causes a name collision.
>
> Also nmap, boost, cecill-c, freetype, imlib2, openldap2.0, openssl, ruby, 
> tcl/tk, vim, x11, zlib.
>
> Should there be new licenses it's a good guess it will be named like the 
> package it originated in.
>
> I would not advise removing the prefix. If anything, use it everywhere.

Ah, I was thinking more about lgpl2.1+ and the sorts... So is it a
good idea to prefix all licenses in guix licenses itself (as Eric
mentioned), and be done with it?



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread Danny Milosavljevic
On Wed, 17 Aug 2016 10:02:26 +0200
David Craven  wrote:

> I wonder who started the #:prefix/#:select thing in the first place. I
> don't think that anything from guix licenses is likely to cause a name
> collision. Maybe it's best to remove the #:prefix entirely?

Expat causes a name collision. 

Also nmap, boost, cecill-c, freetype, imlib2, openldap2.0, openssl, ruby, 
tcl/tk, vim, x11, zlib.

Should there be new licenses it's a good guess it will be named like the 
package it originated in.

I would not advise removing the prefix. If anything, use it everywhere.



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread David Craven
I wonder who started the #:prefix/#:select thing in the first place. I
don't think that anything from guix licenses is likely to cause a name
collision. Maybe it's best to remove the #:prefix entirely?



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-16 Thread Eric Bavier
On Tue, 16 Aug 2016 23:15:07 +0300
Alex Kost  wrote:

> David Craven (2016-08-16 21:39 +0300) wrote:
> 
> > * gnu/packages/gstreamer.scm (define-module): Import guix licenses with 
> > #:prefix
> >   license:.
> >   (orc): Likewise.
> >   (gstreamer): Likewise.
> >   (gst-plugins-base): Likewise.
> >   (gst-plugins-good): Likewise.
> >   (gst-plugins-bad): Likewise.
> >   (gst-plugins-ugly): Likewise.
> >   (gst-libav): Likewise.
> >   (python-gst): Likewise.  
>   ^^
> Please remove the leading spaces before "(...): Likewise."

In fact, I think this is a case where one could simple say something
like "Adjust license references".

> I like this patch.  However in general (a question for Guix people): is
> there a reason to use #:select for licenses?  Or would it be better to
> use #:prefix everywhere?  If the latter (my preference), I think it
> would be good to make this "#:select"→"#:prefix" change in a single
> patch instead of making separate patches for different modules.

I don't think it's something that needs to be mandated.  If we were to
use '#:prefix license:' everywhere, we might as well save the trouble
and just rename everything in (guix license) with the
prefix.  But I don't think this is necessary.  There are instances of
importing with '#:hide' even, which I think has its place.

`~Eric




Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-16 Thread David Craven
> I like this patch.  However in general (a question for Guix people): is
> there a reason to use #:select for licenses?  Or would it be better to
> use #:prefix everywhere?  If the latter (my preference), I think it
> would be good to make this "#:select"→"#:prefix" change in a single
> patch instead of making separate patches for different modules.

I think that #:select has it's purpose. It helps increase readability when
one or two things are selected for example in bootstrap.scm.

#:use-module ((guix store) #:select (add-to-store add-text-to-store))
#:use-module ((guix derivations) #:select (derivation))
#:use-module ((guix utils) #:select (gnu-triplet->nix-system))

However when it comes to licenses it's verbose and unnecessary. I'll
amend the commit tomorrow to cover all cases where #:select is used
for importing licenses.



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-16 Thread Alex Kost
David Craven (2016-08-16 21:39 +0300) wrote:

> * gnu/packages/gstreamer.scm (define-module): Import guix licenses with 
> #:prefix
>   license:.
>   (orc): Likewise.
>   (gstreamer): Likewise.
>   (gst-plugins-base): Likewise.
>   (gst-plugins-good): Likewise.
>   (gst-plugins-bad): Likewise.
>   (gst-plugins-ugly): Likewise.
>   (gst-libav): Likewise.
>   (python-gst): Likewise.
  ^^
Please remove the leading spaces before "(...): Likewise."

I like this patch.  However in general (a question for Guix people): is
there a reason to use #:select for licenses?  Or would it be better to
use #:prefix everywhere?  If the latter (my preference), I think it
would be good to make this "#:select"→"#:prefix" change in a single
patch instead of making separate patches for different modules.

-- 
Alex



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-16 Thread Danny Milosavljevic
LGTM.



[PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-16 Thread David Craven
* gnu/packages/gstreamer.scm (define-module): Import guix licenses with #:prefix
  license:.
  (orc): Likewise.
  (gstreamer): Likewise.
  (gst-plugins-base): Likewise.
  (gst-plugins-good): Likewise.
  (gst-plugins-bad): Likewise.
  (gst-plugins-ugly): Likewise.
  (gst-libav): Likewise.
  (python-gst): Likewise.
---
 gnu/packages/gstreamer.scm | 18 +-
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index a39a3b4..bd99880 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -21,7 +21,7 @@
 ;;; along with GNU Guix.  If not, see .
 
 (define-module (gnu packages gstreamer)
-  #:use-module ((guix licenses) #:select (lgpl2.0+ lgpl2.1+ bsd-2 bsd-3 gpl2+))
+  #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
@@ -92,7 +92,7 @@ associated tools for compiling and executing simple programs 
that operate on
 arrays of data.")
 ;; The source code implementing the Marsenne Twister algorithm is licensed
 ;; under the 3-clause BSD license, the rest is under 2-clause BSD license.
-(license (list bsd-2 bsd-3
+(license (list license:bsd-2 license:bsd-3
 
 (define-public gstreamer
   (package
@@ -140,7 +140,7 @@ transparently.  Developers can add new codecs and filters 
by writing a
 simple plugin with a clean, generic interface.
 
 This package provides the core library and elements.")
-(license lgpl2.0+)))
+(license license:lgpl2.0+)))
 
 (define-public gst-plugins-base
   (package
@@ -192,7 +192,7 @@ This package provides the core library and elements.")
  "Plugins for the GStreamer multimedia library")
 (description "This package provides an essential exemplary set of plug-ins
 for the GStreamer multimedia library.")
-(license lgpl2.0+)))
+(license license:lgpl2.0+)))
 
 
 (define-public gst-plugins-good
@@ -258,7 +258,7 @@ for the GStreamer multimedia library.")
 (description "GStreamer Good Plug-ins is a set of plug-ins for the
 GStreamer multimedia library.  This set contains those plug-ins which the
 developers consider to have good quality code and correct functionality.")
-(license lgpl2.0+)))
+(license license:lgpl2.0+)))
 
 (define-public gst-plugins-bad
   (package
@@ -331,7 +331,7 @@ developers consider to have good quality code and correct 
functionality.")
 (description
  "GStreamer Bad Plug-ins is a set of plug-ins whose quality aren't up to
 par compared to the rest.")
-(license lgpl2.0+)))
+(license license:lgpl2.0+)))
 
 (define-public gst-plugins-ugly
   (package
@@ -369,7 +369,7 @@ par compared to the rest.")
 (description "GStreamer Ugly Plug-ins.  This set contains those plug-ins
 which the developers consider to have good quality code but that might pose
 distribution problems in some jurisdictions, e.g. due to patent threats.")
-(license lgpl2.0+)))
+(license license:lgpl2.0+)))
 
 (define-public gst-libav
   (package
@@ -406,7 +406,7 @@ distribution problems in some jurisdictions, e.g. due to 
patent threats.")
 (description
  "This GStreamer plugin supports a large number of audio and video
 compression formats through the use of the libav library.")
-(license gpl2+)))
+(license license:gpl2+)))
 
 (define-public python-gst
   (package
@@ -446,7 +446,7 @@ compression formats through the use of the libav library.")
 (description
  "This package contains GObject Introspection overrides for Python that can
 be used by Python applications using GStreamer.")
-(license lgpl2.1+)
+(license license:lgpl2.1+)
 (properties `((python2-variant . ,(delay python2-gst))
 
 (define-public python2-gst
-- 
2.9.0