;;; 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.
;;;
#:use-module (gnu packages fontutils)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xml)
- #:use-module ((guix licenses) #:renamer (symbol-prefix-proc 'license:))
+ #:use-module (gnu packages ghostscript) ;lcms
+ #:use-module (gnu packages xorg)
+ #: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 gnu)
+ #:use-module (guix build-system cmake)
+ #:use-module (srfi srfi-1))
(define-public libpng
(package
(synopsis "Library for handling PNG files")
(description
"Libpng is the official PNG (Portable Network Graphics) reference
-library. It supports almost all PNG features and is extensible.")
+library. It supports almost all PNG features and is extensible.")
(license license:zlib)
(home-page "http://www.libpng.org/pub/png/libpng.html")))
(define-public libjpeg
(package
(name "libjpeg")
- (version "9")
+ (version "9a")
(source (origin
(method url-fetch)
(uri (string-append "http://www.ijg.org/files/jpegsrc.v"
version ".tar.gz"))
(sha256 (base32
- "0dg5wxcx3cw0hal9gvivj97vid9z0s5sb1yvg55hpxmafn9rxqn4"))))
+ "19q5zr4n60sjcvfbyv06n4pcl1mai3ipvnd2akflayciinj3wx9s"))))
(build-system gnu-build-system)
- (synopsis "Libjpeg, a library for handling JPEG files")
+ (synopsis "Library for handling JPEG files")
(description
"Libjpeg implements JPEG image encoding, decoding, and transcoding.
JPEG is a standardized compression method for full-color and gray-scale
(list (string-append "--with-jpeg-include-dir="
(assoc-ref %build-inputs "libjpeg-8")
"/include"))))
- (synopsis "Libtiff, a library for handling TIFF files")
+ (synopsis "Library for handling TIFF files")
(description
"Libtiff provides support for the Tag Image File Format (TIFF), a format
used for storing image data.
;; 'COPYING' is the GPLv2, but file headers say LGPLv2.0+.
(license license:lgpl2.0+)))
+
+(define-public jbig2dec
+ (package
+ (name "jbig2dec")
+ (version "0.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri ;; The link on the homepage is dead.
+ (string-append "http://distfiles.gentoo.org/distfiles/" name "-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "1ffhgmf2fqzk0h4k736pp06z7q5y4x41fg844bd6a9vgncq86bby"))
+ (patches (list (search-patch "jbig2dec-ignore-testtest.patch")))))
+
+ (build-system gnu-build-system)
+ (synopsis "Decoder of the JBIG2 image compression format")
+ (description
+ "JBIG2 is designed for lossy or lossless encoding of 'bilevel'
+(1-bit monochrome) images at moderately high resolution, and in
+particular scanned paper documents. In this domain it is very
+efficient, offering compression ratios on the order of 100:1.
+
+This is a decoder only implementation, and currently is in the alpha
+stage, meaning it doesn't completely work yet. However, it is
+maintaining parity with available encoders, so it is useful for real
+work.")
+ (home-page "http://jbig2dec.sourceforge.net/")
+ (license license:gpl2+)))
+
+(define-public openjpeg
+ (package
+ (name "openjpeg")
+ (version "2.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "http://openjpeg.googlecode.com/files/" name "-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "1n05yrmscpgksrh2kfh12h18l0lw9j03mgmvwcg3hm8m0lwgak9k"))))
+
+ (build-system cmake-build-system)
+ (arguments
+ ;; Trying to run `$ make check' results in a no rule fault.
+ '(#:tests? #f))
+ (inputs
+ `(("lcms" ,lcms)
+ ("libpng" ,libpng)
+ ("libtiff" ,libtiff)
+ ("zlib" ,zlib)))
+ (synopsis "JPEG 2000 codec")
+ (description
+ "The OpenJPEG library is a JPEG 2000 codec written in C. It has
+been developed in order to promote the use of JPEG 2000, the new
+still-image compression standard from the Joint Photographic Experts
+Group (JPEG).
+
+In addition to the basic codec, various other features are under
+development, among them the JP2 and MJ2 (Motion JPEG 2000) file formats,
+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 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")
+ (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.")
+ (license license:imlib2)))
+
+(define-public giblib
+ (package
+ (name "giblib")
+ (version "1.2.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://linuxbrit.co.uk/downloads/giblib-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1b4bmbmj52glq0s898lppkpzxlprq9aav49r06j2wx4dv3212rhp"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libx11" ,libx11)
+ ("imlib2" ,imlib2)))
+ (home-page "http://linuxbrit.co.uk/software/") ; no real home-page
+ (synopsis "Wrapper library for imlib2")
+ (description
+ "Giblib is a simple library which wraps imlib2's context API, avoiding
+all the context_get/set calls, adds fontstyles to the truetype renderer and
+supplies a generic doubly-linked list and some string functions.")
+ ;; This license removes a clause about X Consortium from the original
+ ;; X11 license.
+ (license (license:x11-style "file://COPYING"
+ "See 'COPYING' in the distribution."))))