gnu: Add ruby-chunky-png.
* gnu/packages/ruby.scm (ruby-chunky-png): New variable.
This commit is contained in:
		
							parent
							
								
									97295c2aa4
								
							
						
					
					
						commit
						db9f951b83
					
				
					 1 changed files with 68 additions and 0 deletions
				
			
		|  | @ -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") | ||||
|  |  | |||
		Reference in a new issue