[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
31/36: gnu: Add ruby-chunky-png.
From: |
guix-commits |
Subject: |
31/36: gnu: Add ruby-chunky-png. |
Date: |
Fri, 17 Jul 2020 23:24:47 -0400 (EDT) |
apteryx pushed a commit to branch master
in repository guix.
commit db9f951b837a95558e98564fdeed1cc2fd37d39b
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Tue Jul 14 22:26:17 2020 -0400
gnu: Add ruby-chunky-png.
* gnu/packages/ruby.scm (ruby-chunky-png): New variable.
---
gnu/packages/ruby.scm | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 68 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index e38f9af..530e5a1 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -1577,6 +1577,74 @@ to save time in the following ways:
(home-page "https://github.com/testdouble/standard")
(license license:expat)))
+(define-public ruby-chunky-png
+ ;; There hasn't been a release since 2018/11/21 and there are test failures
+ ;; in that release, so use the latest commit.
+ (let ((revision "1")
+ (commit "143b9cd1412e49edd4f8b661c7cd9b22941f43c0"))
+ (package
+ (name "ruby-chunky-png")
+ (version (git-version "1.3.11" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/wvanbergen/chunky_png.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0wbcgfzymbpmmxsb04arc49a2icki6f2fc6d6sqgg8369mc67g9z"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:test-target "spec"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'disable-bundler
+ (lambda _
+ (substitute* (find-files "." "\\.rb$")
+ (("require.*bundler/setup.*") ""))
+ #t))
+ (replace 'replace-git-ls-files
+ (lambda _
+ ;; TODO: Remove after the fix of using 'cut' to better mimic the
+ ;; git ls-files output is merged in ruby-build-system.
+ (substitute* "chunky_png.gemspec"
+ (("`git ls-files`")
+ "`find . -type f -not -regex '.*\\.gem$' |sort |cut -c3-`"))
+ #t)))))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-standard" ,ruby-standard)
+ ("ruby-yard" ,ruby-yard)))
+ (synopsis "Ruby library to handle PNG images")
+ (description "ChunkyPNG is a pure Ruby library that can read and write
+Portable Network Graphics (PNG) images without depending on an external image
+library. It tries to be memory efficient and reasonably fast. It has
+features such as:
+@itemize
+@item
+Decoding support for any image that the PNG standard allows. This includes all
+standard color modes, all bit depths, all transparency, and interlacing and
+filtering options.
+@item
+Encoding support for images of all color modes (true color, grayscale, and
+indexed) and transparency for all these color modes. The best color mode is
+chosen automatically, based on the amount of used colors.
+@item Read/write access to the image's pixels.
+@item Read/write access to all image metadata that is stored in chunks.
+@item
+Memory efficiency: @code{fixnum} are used, i.e. 4 or 8 bytes of memory per
+pixel, depending on the hardware).
+@item
+Performance: ChunkyPNG is reasonably fast for Ruby standards, by only using
+integer math and a highly optimized saving routine.
+@item Interoperability with RMagick.
+@end itemize")
+ (home-page "https://github.com/wvanbergen/chunky_png/wiki")
+ (license license:expat))))
+
(define-public ruby-ast
(package
(name "ruby-ast")
- 25/36: gnu: Add ruby-regexp-parser., (continued)
- 25/36: gnu: Add ruby-regexp-parser., guix-commits, 2020/07/17
- 27/36: gnu: ruby-rubocop: Update to 0.88.0., guix-commits, 2020/07/17
- 28/36: gnu: Add ruby-rubocop-performance., guix-commits, 2020/07/17
- 29/36: gnu: Add ruby-gimme., guix-commits, 2020/07/17
- 30/36: gnu: Add ruby-standard., guix-commits, 2020/07/17
- 34/36: gnu: ruby-rouge: Update to 3.21.0., guix-commits, 2020/07/17
- 12/36: gnu: Add ruby-polyglot., guix-commits, 2020/07/17
- 19/36: gnu: ruby-ast: Update to 2.4.1., guix-commits, 2020/07/17
- 21/36: gnu: Add ruby-rexml., guix-commits, 2020/07/17
- 26/36: gnu: Add ruby-test-queue., guix-commits, 2020/07/17
- 31/36: gnu: Add ruby-chunky-png.,
guix-commits <=
- 32/36: gnu: Add ruby-text-hyphen., guix-commits, 2020/07/17
- 33/36: gnu: Add ruby-open-uri-cached., guix-commits, 2020/07/17
- 35/36: gnu: Add ruby-asciidoctor-pdf., guix-commits, 2020/07/17
- 36/36: gnu: ruby-yard: Make the package reproducible., guix-commits, 2020/07/17