unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH 1/3] gnu: Add imlib2.
@ 2014-09-25  8:53 Alex Kost
  2014-09-25 12:44 ` Andreas Enge
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Alex Kost @ 2014-09-25  8:53 UTC (permalink / raw)
  To: guix-devel

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

Hello,

This is a patchset for scrot and dependencies (giblib and imlib2).
All 3 packages have some custom licenses, so I used "bsd-style", but I'm
not sure about it.  Along with the patch, I'm attaching "COPYING".  What
license it is?

Thanks.


[-- Attachment #2: 0001-gnu-Add-imlib2.patch --]
[-- Type: text/x-diff, Size: 4260 bytes --]

From fe4ff0e9c4c52a6574630a5d1505e866968b9f61 Mon Sep 17 00:00:00 2001
From: Alex Kost <alezost@gmail.com>
Date: Thu, 25 Sep 2014 12:27:25 +0400
Subject: [PATCH 1/3] gnu: Add imlib2.

* gnu/packages/imlib2.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
---
 gnu-system.am           |  1 +
 gnu/packages/imlib2.scm | 78 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 79 insertions(+)
 create mode 100644 gnu/packages/imlib2.scm

diff --git a/gnu-system.am b/gnu-system.am
index 7d6a6b9..820f935 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -131,6 +131,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/idutils.scm			\
   gnu/packages/image.scm			\
   gnu/packages/imagemagick.scm			\
+  gnu/packages/imlib2.scm			\
   gnu/packages/indent.scm			\
   gnu/packages/inkscape.scm			\
   gnu/packages/irssi.scm			\
diff --git a/gnu/packages/imlib2.scm b/gnu/packages/imlib2.scm
new file mode 100644
index 0000000..f087446
--- /dev/null
+++ b/gnu/packages/imlib2.scm
@@ -0,0 +1,78 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages imlib2)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (gnu packages xorg)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages giflib)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages pkg-config))
+
+(define-public imlib2
+  (package
+    (name "imlib2")
+    (version "1.4.6")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "mirror://sourceforge/enlightenment/imlib2-"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "0kjggg4gfn6chi8v1xddd5qwk1fbnl7rvd93qiclv5v11s615k0p"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(;; Will be fixed in the next release:
+       ;; <http://git.enlightenment.org/legacy/imlib2.git/commit/?id=5dde234b2d3caf067ea827858c53adc5d4c56c13>.
+       #:phases (alist-cons-before
+                 'configure 'patch-config
+                 (lambda _
+                   (substitute* "imlib2-config.in"
+                     (("@my_libs@") "")))
+                 %standard-phases)))
+    (native-inputs
+     `(("pkgconfig" ,pkg-config)))
+    (inputs
+     `(("libx11" ,libx11)
+       ("libxext" ,libxext)
+       ("freetype" ,freetype)
+       ("libjpeg" ,libjpeg)
+       ("libpng" ,libpng)
+       ("libtiff" ,libtiff)
+       ("giflib" ,giflib)
+       ("bzip2" ,bzip2)))
+    (home-page "http://sourceforge.net/projects/enlightenment/")
+    (synopsis
+     "Library for loading, saving, rendering and manipulating image files")
+    (description
+     "Imlib2 is a library that does image file loading and saving as well as
+rendering, manipulation, arbitrary polygon support, etc.
+
+It does ALL of these operations FAST.  Imlib2 also tries to be highly
+intelligent about doing them, so writing naive programs can be done easily,
+without sacrificing speed.
+
+This is a complete rewrite over the Imlib 1.x series.  The architecture is
+more modular, simple, and flexible.")
+    (license (license:bsd-style "file://COPYING"
+                                "See COPYING in the distribution."))))
-- 
2.1.0


[-- Attachment #3: COPYING --]
[-- Type: text/plain, Size: 1988 bytes --]


Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies of the Software and its Copyright notices. In addition publicly
documented acknowledgment must be given that this software has been used if no
source code of this software is made available publicly. Making the source
available publicly means including the source for this software with the
distribution, or a method to get this software via some reasonable mechanism
(electronic transfer via a network or media) as well as making an offer to
supply the source on request. This Copyright notice serves as an offer to
supply the source on on request as well. Instead of this, supplying
acknowledgments of use of this software in either Copyright notices, Manuals,
Publicity and Marketing documents or any documentation provided with any
product containing this software. This License does not apply to any software
that links to the libraries provided by this software (statically or
dynamically), but only to the software provided.

Please see the COPYING-PLAIN for a plain-english explanation of this notice
and its intent.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

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

* Re: [PATCH 1/3] gnu: Add imlib2.
  2014-09-25  8:53 [PATCH 1/3] gnu: Add imlib2 Alex Kost
@ 2014-09-25 12:44 ` Andreas Enge
  2014-09-25 12:54   ` Ludovic Courtès
  2014-09-25 12:49 ` Andreas Enge
  2014-09-25 12:56 ` Ludovic Courtès
  2 siblings, 1 reply; 9+ messages in thread
From: Andreas Enge @ 2014-09-25 12:44 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

On Thu, Sep 25, 2014 at 12:53:50PM +0400, Alex Kost wrote:
> All 3 packages have some custom licenses, so I used "bsd-style", but I'm
> not sure about it.  Along with the patch, I'm attaching "COPYING".  What
> license it is?

Whenever I read "deal in the software without restriction", I think of x.org,
which I packaged. So this looks like the x11 license:
   http://directory.fsf.org/wiki/License:X11

This license adds more sentences, from the second sentence of the second
paragraph on: "In addition publicly documented acknowledgment must be given
 that this software has been used...".

So I suppose you should use x11-style.

Andreas

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

* Re: [PATCH 1/3] gnu: Add imlib2.
  2014-09-25  8:53 [PATCH 1/3] gnu: Add imlib2 Alex Kost
  2014-09-25 12:44 ` Andreas Enge
@ 2014-09-25 12:49 ` Andreas Enge
  2014-09-25 12:56 ` Ludovic Courtès
  2 siblings, 0 replies; 9+ messages in thread
From: Andreas Enge @ 2014-09-25 12:49 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

On Thu, Sep 25, 2014 at 12:53:50PM +0400, Alex Kost wrote:
> +                    "mirror://sourceforge/enlightenment/imlib2-"
> +                    version ".tar.gz"))

In an effort to keep the number of source files down, would it make sense to
put the package into a file enlightenment.scm, which might in future receive
more recipes?

Andreas

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

* Re: [PATCH 1/3] gnu: Add imlib2.
  2014-09-25 12:44 ` Andreas Enge
@ 2014-09-25 12:54   ` Ludovic Courtès
  0 siblings, 0 replies; 9+ messages in thread
From: Ludovic Courtès @ 2014-09-25 12:54 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel, Alex Kost

Andreas Enge <andreas@enge.fr> skribis:

> On Thu, Sep 25, 2014 at 12:53:50PM +0400, Alex Kost wrote:
>> All 3 packages have some custom licenses, so I used "bsd-style", but I'm
>> not sure about it.  Along with the patch, I'm attaching "COPYING".  What
>> license it is?
>
> Whenever I read "deal in the software without restriction", I think of x.org,
> which I packaged. So this looks like the x11 license:
>    http://directory.fsf.org/wiki/License:X11
>
> This license adds more sentences, from the second sentence of the second
> paragraph on: "In addition publicly documented acknowledgment must be given
>  that this software has been used...".
>
> So I suppose you should use x11-style.

Agreed, with a comment explaining this.

Otherwise LGTM!

Ludo’.

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

* Re: [PATCH 1/3] gnu: Add imlib2.
  2014-09-25  8:53 [PATCH 1/3] gnu: Add imlib2 Alex Kost
  2014-09-25 12:44 ` Andreas Enge
  2014-09-25 12:49 ` Andreas Enge
@ 2014-09-25 12:56 ` Ludovic Courtès
  2014-09-25 17:36   ` Alex Kost
  2 siblings, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2014-09-25 12:56 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> +(define-public imlib2

[...]

> +    (home-page "http://sourceforge.net/projects/enlightenment/")
> +    (synopsis
> +     "Library for loading, saving, rendering and manipulating image files")

s/Library for//

Actually this should probably go to (gnu packages image), which is home
for all its friends.

Ludo’.

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

* Re: [PATCH 1/3] gnu: Add imlib2.
  2014-09-25 12:56 ` Ludovic Courtès
@ 2014-09-25 17:36   ` Alex Kost
  2014-09-25 19:01     ` Ludovic Courtès
  0 siblings, 1 reply; 9+ messages in thread
From: Alex Kost @ 2014-09-25 17:36 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

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

Many thanks to Andreas for detailed comments about licenses.

Ludovic Courtès (2014-09-25 16:56 +0400) wrote:

> Alex Kost <alezost@gmail.com> skribis:
>
>> +(define-public imlib2
>
> [...]
>
>> +    (home-page "http://sourceforge.net/projects/enlightenment/")
>> +    (synopsis
>> +     "Library for loading, saving, rendering and manipulating image files")
>
> s/Library for//

Done.  Is there any convention about that?  I'm asking because there are
several "types" of synopses:

- Several synopses begin with "Library for" (libuv, fontconfig,
  lightning, ...)

- Few ones begin with "Library to" (cloog, petsc, ...)

- Some packages have the following synopsis structure:

    <package-name>, a library ...

  Some of them begin with a capital letter (libjpeg, libgpg-error,
  freetype, ...), and some with a small one (fpill, libogg, libpaper, ...)

- Many synopses end with "library" (libsamplerate, clucene, libgcrypt, ...)

Also (as I'm writing about synopses): is there a convention to begin a
synopsis with a capital letter?  There are synopses beginning with a
small letter (not counting synopses beginning with a package name):
gnome-vfs, cdparanoia, signing-party, ...

Also there are 2 packages with synopses beginning with an article:
“pkg-config” and “id3lib”, but it's a lower-case article (perhaps "guix
lint" should be adjusted for this case).

> Actually this should probably go to (gnu packages image), which is home
> for all its friends.

OK, initially I wanted to put it there, but then I found that “giflib”
is in a separate file, so I thought that maybe "image.scm" contains some
special image libraries.

If “giflib” also should be put in "image.scm", please don't move it
there before I push these imlib2/giblib commits  :-)
Thanks.

The modified patch is attached.  Good enough?


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-imlib2.patch --]
[-- Type: text/x-diff, Size: 3015 bytes --]

From 11c8f170a0f3c8f5f4ed4730681224de46745d62 Mon Sep 17 00:00:00 2001
From: Alex Kost <alezost@gmail.com>
Date: Thu, 25 Sep 2014 12:27:25 +0400
Subject: [PATCH 1/3] gnu: Add imlib2.

* gnu/packages/image.scm (imlib2): New variable.
---
 gnu/packages/image.scm | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 981d3a8..a9c3a5d 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -23,6 +23,8 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages ghostscript)         ;lcms
+  #:use-module (gnu packages xorg)
+  #:use-module (gnu packages giflib)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
@@ -213,3 +215,53 @@ an indexing tool useful for the JPIP protocol, JPWL-tools for
 error-resilience, a Java-viewer for j2k-images, ...")
     (home-page "http://jbig2dec.sourceforge.net/")
     (license license:bsd-2)))
+
+(define-public imlib2
+  (package
+    (name "imlib2")
+    (version "1.4.6")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "mirror://sourceforge/enlightenment/imlib2-"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "0kjggg4gfn6chi8v1xddd5qwk1fbnl7rvd93qiclv5v11s615k0p"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(;; Will be fixed in the next release:
+       ;; <http://git.enlightenment.org/legacy/imlib2.git/commit/?id=5dde234b2d3caf067ea827858c53adc5d4c56c13>.
+       #:phases (alist-cons-before
+                 'configure 'patch-config
+                 (lambda _
+                   (substitute* "imlib2-config.in"
+                     (("@my_libs@") "")))
+                 %standard-phases)))
+    (native-inputs
+     `(("pkgconfig" ,pkg-config)))
+    (inputs
+     `(("libx11" ,libx11)
+       ("libxext" ,libxext)
+       ("freetype" ,freetype)
+       ("libjpeg" ,libjpeg)
+       ("libpng" ,libpng)
+       ("libtiff" ,libtiff)
+       ("giflib" ,giflib)
+       ("bzip2" ,bzip2)))
+    (home-page "http://sourceforge.net/projects/enlightenment/")
+    (synopsis
+     "Loading, saving, rendering and manipulating image files")
+    (description
+     "Imlib2 is a library that does image file loading and saving as well as
+rendering, manipulation, arbitrary polygon support, etc.
+
+It does ALL of these operations FAST.  Imlib2 also tries to be highly
+intelligent about doing them, so writing naive programs can be done easily,
+without sacrificing speed.
+
+This is a complete rewrite over the Imlib 1.x series.  The architecture is
+more modular, simple, and flexible.")
+    ;; This license adds several sentences to the original X11 license.
+    (license (license:x11-style "file://COPYING"
+                                "See 'COPYING' in the distribution."))))
-- 
2.1.0


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

* Re: [PATCH 1/3] gnu: Add imlib2.
  2014-09-25 17:36   ` Alex Kost
@ 2014-09-25 19:01     ` Ludovic Courtès
  2014-09-29 20:00       ` [PATCH] gnu: Move giflib to (gnu packages image) Alex Kost
  0 siblings, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2014-09-25 19:01 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> Many thanks to Andreas for detailed comments about licenses.
>
> Ludovic Courtès (2014-09-25 16:56 +0400) wrote:
>
>> Alex Kost <alezost@gmail.com> skribis:
>>
>>> +(define-public imlib2
>>
>> [...]
>>
>>> +    (home-page "http://sourceforge.net/projects/enlightenment/")
>>> +    (synopsis
>>> +     "Library for loading, saving, rendering and manipulating image files")
>>
>> s/Library for//
>
> Done.  Is there any convention about that?

Not really.  The one above didn’t fit on the line, so I thought it would
make sense to strip a couple of words.  :-)

We should add a linter making sure the synopsis doesn’t exceed a certain
length, 60 characters, say.

> I'm asking because there are several "types" of synopses:
>
> - Several synopses begin with "Library for" (libuv, fontconfig,
>   lightning, ...)
>
> - Few ones begin with "Library to" (cloog, petsc, ...)
>
> - Some packages have the following synopsis structure:
>
>     <package-name>, a library ...
>
>   Some of them begin with a capital letter (libjpeg, libgpg-error,
>   freetype, ...), and some with a small one (fpill, libogg, libpaper, ...)
>
> - Many synopses end with "library" (libsamplerate, clucene, libgcrypt, ...)

Synopses starting with the package name are definitely frowned upon (we
should add a linter for that.)  The others listed above may or may not
be OK, depending.

> Also (as I'm writing about synopses): is there a convention to begin a
> synopsis with a capital letter?

Yes.  Another linter needed!

> Also there are 2 packages with synopses beginning with an article:
> “pkg-config” and “id3lib”, but it's a lower-case article (perhaps "guix
> lint" should be adjusted for this case).

Yes.

>> Actually this should probably go to (gnu packages image), which is home
>> for all its friends.
>
> OK, initially I wanted to put it there, but then I found that “giflib”
> is in a separate file, so I thought that maybe "image.scm" contains some
> special image libraries.
>
> If “giflib” also should be put in "image.scm", please don't move it
> there before I push these imlib2/giblib commits  :-)

Fine.  :-)

> From 11c8f170a0f3c8f5f4ed4730681224de46745d62 Mon Sep 17 00:00:00 2001
> From: Alex Kost <alezost@gmail.com>
> Date: Thu, 25 Sep 2014 12:27:25 +0400
> Subject: [PATCH 1/3] gnu: Add imlib2.
>
> * gnu/packages/image.scm (imlib2): New variable.

Perfect!

Thanks for tolerating and even encouraging nitpicking.  ;-)

Ludo’.

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

* [PATCH] gnu: Move giflib to (gnu packages image).
  2014-09-25 19:01     ` Ludovic Courtès
@ 2014-09-29 20:00       ` Alex Kost
  2014-09-29 21:22         ` Ludovic Courtès
  0 siblings, 1 reply; 9+ messages in thread
From: Alex Kost @ 2014-09-29 20:00 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

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

Ludovic Courtès (2014-09-25 23:01 +0400) wrote:

> Alex Kost <alezost@gmail.com> skribis:

[...]

>>> Actually this should probably go to (gnu packages image), which is home
>>> for all its friends.
>>
>> OK, initially I wanted to put it there, but then I found that “giflib”
>> is in a separate file, so I thought that maybe "image.scm" contains some
>> special image libraries.
>>
>> If “giflib” also should be put in "image.scm", please don't move it
>> there before I push these imlib2/giblib commits  :-)
>
> Fine.  :-)

If I understood correctly, “giflib” should be in "image.scm", right?

I have also added myself to the copyright lines as I forgot to do it
when I pushed “imlib2” and “giblib” there.  OK?


[-- Attachment #2: 0001-gnu-Move-giflib-to-gnu-packages-image.patch --]
[-- Type: text/x-diff, Size: 8769 bytes --]

From 80dce06f9e3b96607ea6d949ee655ede1a96d50b Mon Sep 17 00:00:00 2001
From: Alex Kost <alezost@gmail.com>
Date: Mon, 29 Sep 2014 23:46:12 +0400
Subject: [PATCH] gnu: Move giflib to (gnu packages image).

* gnu/packages/giflib.scm: Remove.  Move the contents to (gnu packages image).
* gnu-system.am (GNU_SYSTEM_MODULES): Remove giflib file name.
* gnu/packages/emacs.scm: Remove giflib module name.
* gnu/packages/image.scm (giflib): New variable.
---
 gnu-system.am           |  1 -
 gnu/packages/emacs.scm  |  1 -
 gnu/packages/giflib.scm | 76 -------------------------------------------------
 gnu/packages/image.scm  | 55 +++++++++++++++++++++++++++++++++--
 4 files changed, 53 insertions(+), 80 deletions(-)
 delete mode 100644 gnu/packages/giflib.scm

diff --git a/gnu-system.am b/gnu-system.am
index 9cac7ec..64ce1d8 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -99,7 +99,6 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/geeqie.scm			\
   gnu/packages/gettext.scm			\
   gnu/packages/ghostscript.scm			\
-  gnu/packages/giflib.scm			\
   gnu/packages/gimp.scm				\
   gnu/packages/gkrellm.scm			\
   gnu/packages/gl.scm				\
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 6e42d0a..1b90bad 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -34,7 +34,6 @@
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages lesstif)
   #:use-module (gnu packages image)
-  #:use-module (gnu packages giflib)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages imagemagick)
diff --git a/gnu/packages/giflib.scm b/gnu/packages/giflib.scm
deleted file mode 100644
index 849586e..0000000
--- a/gnu/packages/giflib.scm
+++ /dev/null
@@ -1,76 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
-;;;
-;;; This file is part of GNU Guix.
-;;;
-;;; GNU Guix is free software; you can redistribute it and/or modify it
-;;; under the terms of the GNU General Public License as published by
-;;; the Free Software Foundation; either version 3 of the License, or (at
-;;; your option) any later version.
-;;;
-;;; GNU Guix is distributed in the hope that it will be useful, but
-;;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;;; GNU General Public License for more details.
-;;;
-;;; You should have received a copy of the GNU General Public License
-;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
-
-(define-module (gnu packages giflib)
-  #:use-module (guix licenses)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (srfi srfi-1)
-  #:use-module (gnu packages xorg)
-  #:use-module (gnu packages perl))
-
-(define-public giflib
-  (package
-    (name "giflib")
-    (version "4.2.3")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "mirror://sourceforge/giflib/giflib-"
-                                  (first (string-split version #\.))
-                                  ".x/giflib-" version ".tar.bz2"))
-              (sha256
-               (base32 "0rmp7ipzk42r841bggd7bfqk4p8qsssbp4wcck4qnz7p4rkxbj0a"))))
-    (build-system gnu-build-system)
-    (outputs '("bin"                    ; utility programs
-               "out"))                  ; library
-    (inputs `(("libx11" ,libx11)
-              ("libice" ,libice)
-              ("libsm" ,libsm)
-              ("perl" ,perl)))
-    (arguments
-     `(#:phases (alist-cons-after
-                 'unpack 'disable-html-doc-gen
-                 (lambda _
-                   (substitute* "doc/Makefile.in"
-                     (("^all: allhtml manpages") "")))
-                 (alist-cons-after
-                  'install 'install-manpages
-                  (lambda* (#:key outputs #:allow-other-keys)
-                    (let* ((bin (assoc-ref outputs "bin"))
-                           (man1dir (string-append bin "/share/man/man1")))
-                      (mkdir-p man1dir)
-                      (for-each (lambda (file)
-                                  (let ((base (basename file)))
-                                    (format #t "installing `~a' to `~a'~%"
-                                            base man1dir)
-                                    (copy-file file
-                                               (string-append
-                                                man1dir "/" base))))
-                                (find-files "doc" "\\.1"))))
-                  %standard-phases))))
-    (synopsis "Tools and library for working with GIF images")
-    (description
-     "giflib is a library for reading and writing GIF images.  It is API and
-ABI compatible with libungif which was in wide use while the LZW compression
-algorithm was patented.  Tools are also included to convert, manipulate,
-compose, and analyze GIF images.")
-    (home-page "http://giflib.sourceforge.net/")
-    (license x11)))
-
-;;; giflib.scm ends here
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 0e79942..1b15be3 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -1,5 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -24,12 +26,13 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages ghostscript)         ;lcms
   #:use-module (gnu packages xorg)
-  #:use-module (gnu packages giflib)
+  #:use-module (gnu packages perl)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
-  #:use-module (guix build-system cmake))
+  #:use-module (guix build-system cmake)
+  #:use-module (srfi srfi-1))
 
 (define-public libpng
   (package
@@ -216,6 +219,54 @@ error-resilience, a Java-viewer for j2k-images, ...")
     (home-page "http://jbig2dec.sourceforge.net/")
     (license license:bsd-2)))
 
+(define-public giflib
+  (package
+    (name "giflib")
+    (version "4.2.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/giflib/giflib-"
+                                  (first (string-split version #\.))
+                                  ".x/giflib-" version ".tar.bz2"))
+              (sha256
+               (base32 "0rmp7ipzk42r841bggd7bfqk4p8qsssbp4wcck4qnz7p4rkxbj0a"))))
+    (build-system gnu-build-system)
+    (outputs '("bin"                    ; utility programs
+               "out"))                  ; library
+    (inputs `(("libx11" ,libx11)
+              ("libice" ,libice)
+              ("libsm" ,libsm)
+              ("perl" ,perl)))
+    (arguments
+     `(#:phases (alist-cons-after
+                 'unpack 'disable-html-doc-gen
+                 (lambda _
+                   (substitute* "doc/Makefile.in"
+                     (("^all: allhtml manpages") "")))
+                 (alist-cons-after
+                  'install 'install-manpages
+                  (lambda* (#:key outputs #:allow-other-keys)
+                    (let* ((bin (assoc-ref outputs "bin"))
+                           (man1dir (string-append bin "/share/man/man1")))
+                      (mkdir-p man1dir)
+                      (for-each (lambda (file)
+                                  (let ((base (basename file)))
+                                    (format #t "installing `~a' to `~a'~%"
+                                            base man1dir)
+                                    (copy-file file
+                                               (string-append
+                                                man1dir "/" base))))
+                                (find-files "doc" "\\.1"))))
+                  %standard-phases))))
+    (synopsis "Tools and library for working with GIF images")
+    (description
+     "giflib is a library for reading and writing GIF images.  It is API and
+ABI compatible with libungif which was in wide use while the LZW compression
+algorithm was patented.  Tools are also included to convert, manipulate,
+compose, and analyze GIF images.")
+    (home-page "http://giflib.sourceforge.net/")
+    (license license:x11)))
+
 (define-public imlib2
   (package
     (name "imlib2")
-- 
2.1.0


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

* Re: [PATCH] gnu: Move giflib to (gnu packages image).
  2014-09-29 20:00       ` [PATCH] gnu: Move giflib to (gnu packages image) Alex Kost
@ 2014-09-29 21:22         ` Ludovic Courtès
  0 siblings, 0 replies; 9+ messages in thread
From: Ludovic Courtès @ 2014-09-29 21:22 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> If I understood correctly, “giflib” should be in "image.scm", right?

Yes.

> I have also added myself to the copyright lines as I forgot to do it
> when I pushed “imlib2” and “giblib” there.  OK?

OK.

> From 80dce06f9e3b96607ea6d949ee655ede1a96d50b Mon Sep 17 00:00:00 2001
> From: Alex Kost <alezost@gmail.com>
> Date: Mon, 29 Sep 2014 23:46:12 +0400
> Subject: [PATCH] gnu: Move giflib to (gnu packages image).
>
> * gnu/packages/giflib.scm: Remove.  Move the contents to (gnu packages image).
> * gnu-system.am (GNU_SYSTEM_MODULES): Remove giflib file name.
> * gnu/packages/emacs.scm: Remove giflib module name.
> * gnu/packages/image.scm (giflib): New variable.

Please push, thanks!

Ludo’.

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

end of thread, other threads:[~2014-09-29 21:23 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-09-25  8:53 [PATCH 1/3] gnu: Add imlib2 Alex Kost
2014-09-25 12:44 ` Andreas Enge
2014-09-25 12:54   ` Ludovic Courtès
2014-09-25 12:49 ` Andreas Enge
2014-09-25 12:56 ` Ludovic Courtès
2014-09-25 17:36   ` Alex Kost
2014-09-25 19:01     ` Ludovic Courtès
2014-09-29 20:00       ` [PATCH] gnu: Move giflib to (gnu packages image) Alex Kost
2014-09-29 21:22         ` Ludovic Courtès

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).