[PATCH 0/2] Add pngquant and libimagequant required by it.

  • Done
  • quality assurance status badge
Details
2 participants
  • Hartmut Goebel
  • Ludovic Courtès
Owner
unassigned
Submitted by
Hartmut Goebel
Severity
normal
H
H
Hartmut Goebel wrote on 11 Jul 2019 22:29
(address . guix-patches@gnu.org)
20190711202945.6320-1-h.goebel@crazy-compilers.com
Add pngquant and libimagequant required by it.

Hartmut Goebel (2):
gnu: Add libimagequant.
gnu: Add pngquant.

gnu/packages/image.scm | 68 +++++++++++++++++++++++++++++++++++++++++-
1 file changed, 67 insertions(+), 1 deletion(-)

--
2.21.0
H
H
Hartmut Goebel wrote on 11 Jul 2019 22:39
(address . 36607@debbugs.gnu.org)
20190711203911.8139-1-h.goebel@crazy-compilers.com
Add pngquant and libimagequant required by it.

Hartmut Goebel (2):
gnu: Add libimagequant.
gnu: Add pngquant.

gnu/packages/image.scm | 68 +++++++++++++++++++++++++++++++++++++++++-
1 file changed, 67 insertions(+), 1 deletion(-)

--
2.21.0
H
H
Hartmut Goebel wrote on 11 Jul 2019 22:39
[PATCH 1/2] gnu: Add libimagequant.
(address . 36607@debbugs.gnu.org)
20190711203911.8139-2-h.goebel@crazy-compilers.com
* gnu/packages/image.scm (libimagequant): New variable.
---
gnu/packages/image.scm | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)

Toggle diff (44 lines)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index fabc2fb2d1..5a5174354c 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -14,7 +14,7 @@
;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 ng0 <ng0@n0.is>
-;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
+;;; Copyright © 2017,2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
@@ -313,6 +313,28 @@ files. It can compress them as much as 40% losslessly.")
Currently all documentation resides in @file{pnglite.h}.")
(license license:zlib))))
+(define-public libimagequant
+ (package
+ (name "libimagequant")
+ (version "2.12.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ImageOptim/libimagequant.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0qsfq1kv1m5jzn9v9iz0bac66k4clcis1c9877qabnwzwmwma5v0"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f)) ; no check target
+ (home-page "https://pngquant.org/lib/")
+ (synopsis "Image palette quantization library")
+ (description "Small, portable C library for high-quality conversion of RGBA
+images to 8-bit indexed-color (palette) images.")
+ (license license:gpl3)))
+
(define-public libjpeg
(package
(name "libjpeg")
--
2.21.0
H
H
Hartmut Goebel wrote on 11 Jul 2019 22:39
[PATCH 2/2] gnu: Add pngquant.
(address . 36607@debbugs.gnu.org)
20190711203911.8139-3-h.goebel@crazy-compilers.com
* gnu/packages/image.scm (pngquant): New variable.
---
gnu/packages/image.scm | 44 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 5a5174354c..bfbf7ea823 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -335,6 +335,50 @@ Currently all documentation resides in @file{pnglite.h}.")
images to 8-bit indexed-color (palette) images.")
(license license:gpl3)))
+(define-public pngquant
+ (package
+ (name "pngquant")
+ (version "2.12.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/kornelski/pngquant.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1yiwbcihn4311fpfd568gg8zmmhqwg80jmhbhkb5msiipgd9xv33"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:test-target "test"
+ #:configure-flags
+ '("--with-openmp" "--with-lcms2")))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libpng" ,libpng)
+ ("zlib" , zlib)
+ ("lcms" ,lcms)
+ ("libimagequant" ,libimagequant)))
+ (home-page "https://pngquant.org/")
+ (synopsis "Utility and library for lossy compressing PNG images")
+ (description "pngquant is a PNG compressor that significantly reduces file
+sizes by converting images to a more efficient 8-bit PNG format with alpha
+channel (often 60-80% smaller than 24/32-bit PNG files). Compressed images
+are fully standards-compliant and are supported by all web browsers and
+operating systems.
+
+Features:
+@enumerate
+@item High-quality palette generation using a combination of vector
+ quantization algorithms.
+@item Unique adaptive dithering algorithm that adds less noise to images
+ than the standard Floyd-Steinberg.
+@item Easy to integrate with shell scripts, GUIs and server-side software.
+@item Fast mode for real-time processing/large numbers of images.
+@end enumerate")
+ (license license:gpl3)))
+
(define-public libjpeg
(package
(name "libjpeg")
--
2.21.0
L
L
Ludovic Courtès wrote on 13 Jul 2019 14:52
Re: [bug#36607] [PATCH 1/2] gnu: Add libimagequant.
(name . Hartmut Goebel)(address . h.goebel@crazy-compilers.com)(address . 36607@debbugs.gnu.org)
87zhli85b9.fsf@gnu.org
Hi Hartmut,

Hartmut Goebel <h.goebel@crazy-compilers.com> skribis:

Toggle quote (4 lines)
> * gnu/packages/image.scm (libimagequant): New variable.
> +(define-public libimagequant
> + (package
> + (name "libimagequant")
^
Nitpick: fields should be one column further to the right. (Maybe just
run ./etc/indent-code.el.)

Toggle quote (5 lines)
> + (synopsis "Image palette quantization library")
> + (description "Small, portable C library for high-quality conversion of RGBA
> +images to 8-bit indexed-color (palette) images.")

Please write a full sentence (or two :-)).

Toggle quote (2 lines)
> + (license license:gpl3)))

It should be ‘gpl3+’ per ‘COPYRIGHT’.

OK to push with these changes, thanks!

Ludo’.
L
L
Ludovic Courtès wrote on 13 Jul 2019 14:53
Re: [bug#36607] [PATCH 2/2] gnu: Add pngquant.
(name . Hartmut Goebel)(address . h.goebel@crazy-compilers.com)(address . 36607@debbugs.gnu.org)
87v9w68596.fsf@gnu.org
Hartmut Goebel <h.goebel@crazy-compilers.com> skribis:

Toggle quote (4 lines)
> * gnu/packages/image.scm (pngquant): New variable.
> +(define-public pngquant
> + (package
> + (name "pngquant")
^
Missing space. :-)

Toggle quote (2 lines)
> + (license license:gpl3)))

This one’s also ‘gpl3+’.

OK with these changes, thank you!

Ludo’.
H
H
Hartmut Goebel wrote on 13 Jul 2019 20:06
Re: [bug#36607] [PATCH 1/2] gnu: Add libimagequant.
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 36607-close@debbugs.gnu.org)
7ac8b766-efef-15eb-ebbe-b5f9967543df@crazy-compilers.com
Thansk for the review. Fixed and pushe as
6b61dea3365e8cbb6d5a918df5288489e27854e2

--
Regards
Hartmut Goebel

| Hartmut Goebel | h.goebel@crazy-compilers.com |
| www.crazy-compilers.com | compilers which you thought are impossible |
?