From 65fc5bf07dff1eb90b6feb161fb4e37360c6e54d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 22 Oct 2017 18:42:40 +0200 Subject: gnu: faust-2: Update to 2.1.0. * gnu/packages/audio.scm (faust-2): Update to 2.1.0. [source]: Fetch sources via git. [arguments]: Add phase "fix-permissions". --- gnu/packages/audio.scm | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index aaac1c357e..35b60511bc 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -1065,20 +1065,35 @@ (define-public faust (define-public faust-2 (package (inherit faust) - (version "2.0.a51") + (version "2.1.0") (source (origin - (method url-fetch) - (uri (string-append - "mirror://sourceforge/faudiostream/faust-" version ".tgz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/grame-cncm/faust.git") + (commit (string-append "v" + (string-map (lambda (c) + (if (char=? c #\.) #\- c)) + version))))) (sha256 (base32 - "1yryjqfqmxs7lxy95hjgmrncvl9kig3rcsmg0v49ghzz7vs7haxf")))) + "06km0ygwxxwgw1lqldccqidxhmjfz8ck0wnbd95qk5sg8sbpc068")))) (build-system gnu-build-system) (arguments (substitute-keyword-arguments (package-arguments faust) ((#:make-flags flags) `(list (string-append "prefix=" (assoc-ref %outputs "out")) - "world")))) + "world")) + ((#:phases phases) + `(modify-phases ,phases + ;; Files appear under $out/share/faust that are read-only. The + ;; install phase tries to overwrite them and fails, so we change + ;; the permissions first. + (add-before 'install 'fix-permissions + (lambda* (#:key outputs #:allow-other-keys) + (for-each (lambda (file) + (chmod file #o644)) + (find-files "architecture/max-msp" ".*")) + #t)))))) (native-inputs `(("llvm" ,llvm-with-rtti) ("which" ,which) -- cgit v1.2.3 From 60e29339d8389e678bb9ca4bd3420ee9ee88bdf2 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 21 Oct 2017 23:00:01 +0200 Subject: gnu: glibc: Fix CVE-2017-15670, CVE-2017-15671. * gnu/packages/patches/glibc-CVE-2017-15670-15671.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/base.scm (glibc/linux)[replacement]: New field. (glibc/fixed): New variable. (glibc-2.24, glibc-2.23, glibc-2.22)[source](patches): Add 'glibc-CVE-2017-15670-15671.patch'. --- gnu/local.mk | 1 + gnu/packages/base.scm | 13 +++++++++++ .../patches/glibc-CVE-2017-15670-15671.patch | 27 ++++++++++++++++++++++ 3 files changed, 41 insertions(+) create mode 100644 gnu/packages/patches/glibc-CVE-2017-15670-15671.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index a4e3426f55..6b70300fff 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -665,6 +665,7 @@ dist_patch_DATA = \ %D%/packages/patches/glibc-CVE-2017-1000366-pt1.patch \ %D%/packages/patches/glibc-CVE-2017-1000366-pt2.patch \ %D%/packages/patches/glibc-CVE-2017-1000366-pt3.patch \ + %D%/packages/patches/glibc-CVE-2017-15670-15671.patch \ %D%/packages/patches/glibc-bootstrap-system.patch \ %D%/packages/patches/glibc-ldd-x86_64.patch \ %D%/packages/patches/glibc-locales.patch \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index bc745351af..9cb628d8d7 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -528,6 +528,7 @@ (define-public glibc/linux (package (name "glibc") (version "2.25") + (replacement glibc/fixed) (source (origin (method url-fetch) (uri (string-append "mirror://gnu/glibc/glibc-" @@ -786,6 +787,15 @@ (define* (glibc-for-target #:optional (define-syntax glibc (identifier-syntax (glibc-for-target))) +(define glibc/fixed + (package + (inherit glibc) + (source (origin + (inherit (package-source glibc)) + (patches (append + (origin-patches (package-source glibc)) + (search-patches "glibc-CVE-2017-15670-15671.patch"))))))) + ;; Below are old libc versions, which we use mostly to build locale data in ;; the old format (which the new libc cannot cope with.) @@ -805,6 +815,7 @@ (define-public glibc-2.24 "glibc-o-largefile.patch" "glibc-vectorized-strcspn-guards.patch" "glibc-CVE-2015-5180.patch" + "glibc-CVE-2017-15670-15671.patch" "glibc-CVE-2017-1000366-pt1.patch" "glibc-CVE-2017-1000366-pt2.patch" "glibc-CVE-2017-1000366-pt3.patch")))))) @@ -828,6 +839,7 @@ (define-public glibc-2.23 "glibc-CVE-2016-3075.patch" "glibc-CVE-2016-3706.patch" "glibc-CVE-2016-4429.patch" + "glibc-CVE-2017-15670-15671.patch" "glibc-CVE-2017-1000366-pt1.patch" "glibc-CVE-2017-1000366-pt2.patch" "glibc-CVE-2017-1000366-pt3.patch")))))) @@ -850,6 +862,7 @@ (define-public glibc-2.22 "glibc-CVE-2016-3075.patch" "glibc-CVE-2016-3706.patch" "glibc-CVE-2016-4429.patch" + "glibc-CVE-2017-15670-15671.patch" "glibc-CVE-2017-1000366-pt1.patch" "glibc-CVE-2017-1000366-pt2.patch" "glibc-CVE-2017-1000366-pt3.patch")))) diff --git a/gnu/packages/patches/glibc-CVE-2017-15670-15671.patch b/gnu/packages/patches/glibc-CVE-2017-15670-15671.patch new file mode 100644 index 0000000000..76d688c517 --- /dev/null +++ b/gnu/packages/patches/glibc-CVE-2017-15670-15671.patch @@ -0,0 +1,27 @@ +Fix CVE-2017-15670: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15670 +https://sourceware.org/bugzilla/show_bug.cgi?id=22320 +https://bugzilla.redhat.com/show_bug.cgi?id=1504804 + +And CVE-2017-15671: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15671 +https://sourceware.org/bugzilla/show_bug.cgi?id=22325 +https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2017-15671 + +Copied from upstream: + + +diff --git a/posix/glob.c b/posix/glob.c +--- a/posix/glob.c ++++ b/posix/glob.c +@@ -843,7 +843,7 @@ + *p = '\0'; + } + else +- *((char *) mempcpy (newp, dirname + 1, end_name - dirname)) ++ *((char *) mempcpy (newp, dirname + 1, end_name - dirname - 1)) + = '\0'; + user_name = newp; + } -- cgit v1.2.3 From ef7dd2e2593faa249e940f11f3d859accc87dad1 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 22 Oct 2017 23:32:17 +0200 Subject: gnu: python-chardet: Fix PyPi download location. This is a followup to a54cb3ce1f114ee1bc26371d9bc4abb0e04001ef. * gnu/packages/python.scm (python-chardet)[source](uri): Use PYPI-URI. --- gnu/packages/python.scm | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 108a54f8d0..86bc4875bf 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -8623,10 +8623,7 @@ (define-public python-chardet (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/c/chardet/chardet-" - version - ".tar.gz")) + (uri (pypi-uri "chardet" version)) (sha256 (base32 "1bpalpia6r5x1kknbk11p1fzph56fmmnp405ds8icksd3knr5aw4")))) -- cgit v1.2.3 From 78d8b8f36ac8ffd859424b13d7e714eb2d38282a Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:21 +0000 Subject: gnu: Add ghc-errors. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-errors): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 6864b7df6d..4d8fa2125f 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2017 Danny Milosavljevic ;;; Copyright © 2017 Peter Mikkelsen ;;; Copyright © 2017 Alex Vong +;;; Copyright © 2017 rsiddharth ;;; ;;; This file is part of GNU Guix. ;;; @@ -9005,4 +9006,30 @@ (define-public ghc-http-conduit which allow you to avoid direct usage of conduits.") (license license:bsd-3))) +(define-public ghc-errors + (package + (name "ghc-errors") + (version "2.2.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "errors-" version "/" + "errors-" version ".tar.gz")) + (sha256 + (base32 + "13sflhglcm5skwrxb48fw96skdcx7ydiy4zg22200733pxhjncpn")))) + (build-system haskell-build-system) + (inputs + `(("ghc-exceptions" ,ghc-exceptions) + ("ghc-text" ,ghc-text) + ("ghc-transformers-compat" ,ghc-transformers-compat) + ("ghc-unexceptionalio" ,ghc-unexceptionalio) + ("ghc-safe" ,ghc-safe))) + (home-page "https://github.com/gabriel439/haskell-errors-library") + (synopsis "Error handling library for Haskell") + (description "This library encourages an error-handling style that +directly uses the type system, rather than out-of-band exceptions.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From c1274a0b7930bc799710f681a8a0d19d3d7e2ac1 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:22 +0000 Subject: gnu: Add ghc-vector-th-unbox. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-vector-th-unbox): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 4d8fa2125f..be6b0893f5 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9032,4 +9032,28 @@ (define-public ghc-errors directly uses the type system, rather than out-of-band exceptions.") (license license:bsd-3))) +(define-public ghc-vector-th-unbox + (package + (name "ghc-vector-th-unbox") + (version "0.2.1.6") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "vector-th-unbox-" version "/" + "vector-th-unbox-" version ".tar.gz")) + (sha256 + (base32 + "0d82x55f5vvr1jvaia382m23rs690lg55pvavv8f4ph0y6kd91xy")))) + (build-system haskell-build-system) + (inputs + `(("ghc-vector" ,ghc-vector) + ("ghc-data-default" ,ghc-data-default))) + (home-page "https://github.com/liyang/vector-th-unbox") + (synopsis "Deriver for Data.Vector.Unboxed using Template Haskell") + (description "This Haskell library provides a Template Haskell +deriver for unboxed vectors, given a pair of coercion functions to +and from some existing type with an Unbox instance.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From bdd7e3950fba9ab2e49c0bc8be015556563bc4ba Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:23 +0000 Subject: gnu: Add ghc-erf. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-erf): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index be6b0893f5..3226325025 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9056,4 +9056,25 @@ (define-public ghc-vector-th-unbox and from some existing type with an Unbox instance.") (license license:bsd-3))) +(define-public ghc-erf + (package + (name "ghc-erf") + (version "2.0.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "erf-" version "/" + "erf-" version ".tar.gz")) + (sha256 + (base32 + "0dxk2r32ajmmc05vaxcp0yw6vgv4lkbmh8jcshncn98xgsfbgw14")))) + (build-system haskell-build-system) + (home-page "https://hackage.haskell.org/package/erf") + (synopsis "The error function, erf, and related functions for Haskell") + (description "This Haskell library provides a type class for the +error function, erf, and related functions. Instances for Float and +Double.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From a51ba897743d28e8599cccf88c1aa86fa07f3dde Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:24 +0000 Subject: gnu: Add ghc-math-functions. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-math-functions): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 3226325025..0cc0d13fec 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9077,4 +9077,35 @@ (define-public ghc-erf Double.") (license license:bsd-3))) +(define-public ghc-math-functions + (package + (name "ghc-math-functions") + (version "0.2.1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "math-functions-" version "/" + "math-functions-" version ".tar.gz")) + (sha256 + (base32 + "1sv5vabsx332v1lpb6v3jv4zrzvpx1n7yprzd8wlcda5vsc5a6zp")))) + (build-system haskell-build-system) + (inputs + `(("ghc-vector" ,ghc-vector) + ("ghc-vector-th-unbox" ,ghc-vector-th-unbox))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-erf" ,ghc-erf) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://github.com/bos/math-functions") + (synopsis "Special functions and Chebyshev polynomials for Haskell") + (description "This Haskell library provides implementations of +special mathematical functions and Chebyshev polynomials. These +functions are often useful in statistical and numerical computing.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 1a2a247bcece6b2787893b0cd3d93b75be5766af Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:25 +0000 Subject: gnu: Add ghc-mwc-random. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-mwc-random): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 0cc0d13fec..2959b25bf3 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9108,4 +9108,43 @@ (define-public ghc-math-functions functions are often useful in statistical and numerical computing.") (license license:bsd-3))) +(define-public ghc-mwc-random + (package + (name "ghc-mwc-random") + (version "0.13.6.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "mwc-random-" version "/" + "mwc-random-" version ".tar.gz")) + (sha256 + (base32 + "05j7yh0hh9nxic3dijmzv44kc6gzclvamdph7sq7w19wq57k6pq6")))) + (build-system haskell-build-system) + (inputs + `(("ghc-primitive" ,ghc-primitive) + ("ghc-vector" ,ghc-vector) + ("ghc-math-functions" ,ghc-math-functions))) + (arguments + `(#:tests? #f)) ; FIXME: Test-Suite `spec` fails. + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://github.com/bos/mwc-random") + (synopsis "Random number generation library for Haskell") + (description "This Haskell package contains code for generating +high quality random numbers that follow either a uniform or normal +distribution. The generated numbers are suitable for use in +statistical applications. + +The uniform PRNG uses Marsaglia's MWC256 (also known as MWC8222) +multiply-with-carry generator, which has a period of 2^{8222} and +fares well in tests of randomness. It is also extremely fast, +between 2 and 3 times faster than the Mersenne Twister.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 30aede1b6f80de11611e2fc45c052d967a474be5 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:26 +0000 Subject: gnu: Add ghc-vector-algorithms. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-vector-algorithms): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 2959b25bf3..c5877859c2 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9147,4 +9147,29 @@ (define-public ghc-mwc-random between 2 and 3 times faster than the Mersenne Twister.") (license license:bsd-3))) +(define-public ghc-vector-algorithms + (package + (name "ghc-vector-algorithms") + (version "0.7.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "vector-algorithms-" version "/" + "vector-algorithms-" version ".tar.gz")) + (sha256 + (base32 + "0w4hf598lpxfg58rnimcqxrbnpqq2jmpjx82qa5md3q6r90hlipd")))) + (build-system haskell-build-system) + (inputs + `(("ghc-vector" ,ghc-vector) + ("ghc-mtl" ,ghc-mtl) + ("ghc-mwc-random" ,ghc-mwc-random))) + (native-inputs + `(("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://github.com/bos/math-functions") + (synopsis "Algorithms for vector arrays in Haskell") + (description "This Haskell library algorithms for vector arrays.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 897d4f2820dc7c067f44eb89e03ee7198c7add50 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:27 +0000 Subject: gnu: Add ghc-language-haskell-extract. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-language-haskell-extract): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index c5877859c2..d3ac021531 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9172,4 +9172,32 @@ (define-public ghc-vector-algorithms (description "This Haskell library algorithms for vector arrays.") (license license:bsd-3))) +(define-public ghc-language-haskell-extract + (package + (name "ghc-language-haskell-extract") + (version "0.2.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "language-haskell-extract-" version "/" + "language-haskell-extract-" version ".tar.gz")) + (sha256 + (base32 + "1nxcs7g8a1sp91bzpy4cj6s31k5pvc3gvig04cbrggv5cvjidnhl")))) + (build-system haskell-build-system) + (inputs + `(("ghc-regex-posix" ,ghc-regex-posix))) + (home-page "https://github.com/finnsson/template-helper") + (synopsis "Haskell module to automatically extract functions from +the local code") + (description "This package contains helper functions on top of +Template Haskell. + +For example, @code{functionExtractor} extracts all functions after a +regexp-pattern, which can be useful if you wish to extract all functions +beginning with @code{test} (for a test framework) or all functions beginning +with @code{wc} (for a web service).") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From e0195ea87576bd578d4847fc94d0d2605295e6dc Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:28 +0000 Subject: gnu: Add ghc-test-framework-th. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-test-framework-th): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index d3ac021531..2efd785529 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9200,4 +9200,38 @@ (define-public ghc-language-haskell-extract with @code{wc} (for a web service).") (license license:bsd-3))) +(define-public ghc-test-framework-th + (package + (name "ghc-test-framework-th") + (version "0.2.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "test-framework-th-" version "/" + "test-framework-th-" version ".tar.gz")) + (sha256 + (base32 + "12lw7yj02jb9s0i7rb98jjam43j2h0gzmnbj9zi933fx7sg0sy4b")))) + (build-system haskell-build-system) + (inputs + `(("ghc-test-framework" ,ghc-test-framework) + ("ghc-language-haskell-extract" ,ghc-language-haskell-extract) + ("ghc-haskell-src-exts" ,ghc-haskell-src-exts) + ("ghc-regex-posix" ,ghc-regex-posix))) + (home-page "https://github.com/finnsson/test-generator") + (synopsis "Auto generate the HUnit- and Quickcheck-bulk-code +using Template Haskell") + (description "This library contains two functions: +@code{defaultMainGenerator} and @code{testGroupGenerator}. + +@code{defaultMainGenerator} will extract all functions beginning with +@code{case_}, @code{prop_}, or @code{test_} in the module and put them in a +@code{testGroup}. + +@code{testGroupGenerator} is like @code{defaultMainGenerator} but without +@code{defaultMain}. It is useful if you need a function for the testgroup +\(e.g. if you want to be able to call the testgroup from another module).") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 97b26920a8be853e87f971737137bd671e492993 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:29 +0000 Subject: gnu: Add ghc-abstract-par. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-abstract-par): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 2efd785529..ffc6030099 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9234,4 +9234,27 @@ (define-public ghc-test-framework-th \(e.g. if you want to be able to call the testgroup from another module).") (license license:bsd-3))) +(define-public ghc-abstract-par + (package + (name "ghc-abstract-par") + (version "0.3.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "abstract-par-" version "/" + "abstract-par-" version ".tar.gz")) + (sha256 + (base32 + "0q6qsniw4wks2pw6wzncb1p1j3k6al5njnvm2v5n494hplwqg2i4")))) + (build-system haskell-build-system) + (home-page "https://github.com/simonmar/monad-par") + (synopsis "Abstract parallelization interface for Haskell") + (description "This Haskell package is an abstract interface +only. It provides a number of type clasess, but not an +implementation. The type classes separate different levels +of @code{Par} functionality. See the @code{Control.Monad.Par.Class} +module for more details.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 59551881b15702cdb3fc01506423ce8634cb83db Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:30 +0000 Subject: gnu: Add ghc-monad-par-extras. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-monad-par-extras): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index ffc6030099..987dffeb6f 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9257,4 +9257,28 @@ (define-public ghc-abstract-par module for more details.") (license license:bsd-3))) +(define-public ghc-monad-par-extras + (package + (name "ghc-monad-par-extras") + (version "0.3.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "monad-par-extras-" version "/" + "monad-par-extras-" version ".tar.gz")) + (sha256 + (base32 + "0bl4bd6jzdc5zm20q1g67ppkfh6j6yn8fwj6msjayj621cck67p2")))) + (build-system haskell-build-system) + (inputs `(("ghc-abstract-par" ,ghc-abstract-par) + ("ghc-cereal" ,ghc-cereal) + ("ghc-random" ,ghc-random) + ("ghc-mtl" ,ghc-mtl))) + (home-page "https://github.com/simonmar/monad-par") + (synopsis "Combinators and extra features for Par monads for Haskell") + (description "This Haskell package provides additional data structures, +and other added capabilities layered on top of the @code{Par} monad.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From f978e2ac2043d35d69b35b36b776aca8b2cae0ac Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:31 +0000 Subject: gnu: Add ghc-abstract-deque. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-abstract-deque): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 987dffeb6f..0a463fa9a3 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9281,4 +9281,41 @@ (define-public ghc-monad-par-extras and other added capabilities layered on top of the @code{Par} monad.") (license license:bsd-3))) +(define-public ghc-abstract-deque + (package + (name "ghc-abstract-deque") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "abstract-deque-" version "/" + "abstract-deque-" version ".tar.gz")) + (sha256 + (base32 + "18jwswjxwzc9bjiy4ds6hw2a74ki797jmfcifxd2ga4kh7ri1ah9")))) + (build-system haskell-build-system) + (inputs `(("ghc-random" ,ghc-random))) + (home-page "https://github.com/rrnewton/haskell-lockfree/wiki") + (synopsis "Abstract, parameterized interface to mutable Deques for Haskell") + (description "This Haskell package provides an abstract interface to +highly-parameterizable queues/deques. + +Background: There exists a feature space for queues that extends between: + +@itemize +@item Simple, single-ended, non-concurrent, bounded queues + +@item Double-ended, threadsafe, growable queues with important points +inbetween (such as the queues used for work-stealing). +@end itemize + +This package includes an interface for Deques that allows the programmer +to use a single API for all of the above, while using the type-system to +select an efficient implementation given the requirements (using type families). + +This package also includes a simple reference implementation based on +@code{IORef} and @code{Data.Sequence}.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 608bf276d745fdb10c6f5a8dc90acdcd08699d53 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:32 +0000 Subject: gnu: Add ghc-monad-par. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-monad-par): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 0a463fa9a3..199617edbc 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9318,4 +9318,40 @@ (define-public ghc-abstract-deque @code{IORef} and @code{Data.Sequence}.") (license license:bsd-3))) +(define-public ghc-monad-par + (package + (name "ghc-monad-par") + (version "0.3.4.8") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "monad-par-" version "/" + "monad-par-" version ".tar.gz")) + (sha256 + (base32 + "0ldrzqy24fsszvn2a2nr77m2ih7xm0h9bgkjyv1l274aj18xyk7q")))) + (build-system haskell-build-system) + (inputs `(("ghc-abstract-par" ,ghc-abstract-par) + ("ghc-abstract-deque" ,ghc-abstract-deque) + ("ghc-monad-par-extras" ,ghc-monad-par-extras) + ("ghc-mwc-random" ,ghc-mwc-random) + ("ghc-parallel" ,ghc-parallel) + ("ghc-mtl" ,ghc-mtl))) + (native-inputs `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-hunit" ,ghc-hunit) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework-quickcheck2" + ,ghc-test-framework-quickcheck2) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-th" ,ghc-test-framework-th))) + (home-page "https://github.com/simonmar/monad-par") + (synopsis "Haskell library for parallel programming based on a monad") + (description "The @code{Par} monad offers an API for parallel +programming. The library works for parallelising both pure and @code{IO} +computations, although only the pure version is deterministic. The default +implementation provides a work-stealing scheduler and supports forking tasks +that are much lighter weight than IO-threads.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 8184b0f98cc60703aebbacb82b0698efd392dffc Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:33 +0000 Subject: gnu: ghc-base-orphans: Update to 0.6. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-base-orphans): Update to 0.6. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 199617edbc..490d61453a 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -4283,7 +4283,7 @@ (define-public ghc-optparse-applicative (define-public ghc-base-orphans (package (name "ghc-base-orphans") - (version "0.4.4") + (version "0.6") (source (origin (method url-fetch) @@ -4293,7 +4293,7 @@ (define-public ghc-base-orphans ".tar.gz")) (sha256 (base32 - "0hhgpwjvx7jhvlhsygmmf0q5hv2ymijzz4bjilicw99bmv13qcpl")))) + "03mdww5j0gwai7aqlx3m71ldmjcr99jzpkcclzjfclk6a6kjla67")))) (build-system haskell-build-system) (native-inputs `(("ghc-quickcheck" ,ghc-quickcheck) -- cgit v1.2.3 From 0c7172848edebd0b62a4304e1d0abc362ec02fd5 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:34 +0000 Subject: gnu: Add ghc-statistics. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-statistics): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 59 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 490d61453a..b3cbe616be 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9354,4 +9354,63 @@ (define-public ghc-monad-par that are much lighter weight than IO-threads.") (license license:bsd-3))) +(define-public ghc-statistics + (package + (name "ghc-statistics") + (version "0.14.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "statistics-" version "/" + "statistics-" version ".tar.gz")) + (sha256 + (base32 + "0y27gafkib0x0fn39qfn2rkgsfrm09ng35sbb5dwr7rclhnxz59l")))) + (build-system haskell-build-system) + (inputs + `(("ghc-aeson" ,ghc-aeson) + ("ghc-base-orphans" ,ghc-base-orphans) + ("ghc-erf" ,ghc-erf) + ("ghc-math-functions" ,ghc-math-functions) + ("ghc-monad-par" ,ghc-monad-par) + ("ghc-mwc-random" ,ghc-mwc-random) + ("ghc-primitive" ,ghc-primitive) + ("ghc-vector" ,ghc-vector) + ("ghc-vector-algorithms" ,ghc-vector-algorithms) + ("ghc-vector-th-unbox" ,ghc-vector-th-unbox) + ("ghc-vector-binary-instances" ,ghc-vector-binary-instances))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-ieee754", ghc-ieee754) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (arguments + `(#:tests? #f)) ; FIXME: Test-Suite `spec` fails. + (home-page "https://github.com/bos/mwc-random") + (synopsis "Haskell library of statistical types, data, and functions") + (description "This library provides a number of common functions +and types useful in statistics. We focus on high performance, numerical +robustness, and use of good algorithms. Where possible, we provide references +to the statistical literature. + +The library's facilities can be divided into four broad categories: + +@itemize +@item Working with widely used discrete and continuous probability +distributions. (There are dozens of exotic distributions in use; we focus +on the most common.) + +@item Computing with sample data: quantile estimation, kernel density +estimation, histograms, bootstrap methods, significance testing, +and regression and autocorrelation analysis. + +@item Random variate generation under several different distributions. + +@item Common statistical tests for significant differences between samples. +@end itemize") + (license license:bsd-2))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 371ad40c84a4764cfb08d53a555534025aca325e Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:35 +0000 Subject: gnu: Add ghc-chunked-data. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-chunked-data): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index b3cbe616be..5573689ad0 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9413,4 +9413,27 @@ (define-public ghc-statistics @end itemize") (license license:bsd-2))) +(define-public ghc-chunked-data + (package + (name "ghc-chunked-data") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "chunked-data-" version "/" + "chunked-data-" version ".tar.gz")) + (sha256 + (base32 + "0bszq6fijnr4pmadzz89smj7kfmzx0ca3wd9ga8gv0in9jk9vgp1")))) + (build-system haskell-build-system) + (inputs `(("ghc-vector" ,ghc-vector) + ("ghc-semigroups" ,ghc-semigroups))) + (home-page "https://github.com/snoyberg/mono-traversable") + (synopsis "Typeclasses for dealing with various chunked data +representations for Haskell") + (description "This Haskell package was originally present in +classy-prelude.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From ac4cb8fd7a94f7ba1892bbca197b5940d4dbe524 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:36 +0000 Subject: gnu: Add ghc-base-prelude. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-base-prelude): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 5573689ad0..7eb6946627 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9436,4 +9436,37 @@ (define-public ghc-chunked-data classy-prelude.") (license license:expat))) +(define-public ghc-base-prelude + (package + (name "ghc-base-prelude") + (version "1.2.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "base-prelude-" version "/" + "base-prelude-" version ".tar.gz")) + (sha256 + (base32 + "17hivs7lmsglagdlzxd9q9zsddmgqin2788mpq911zwnb57lj6l1")))) + (build-system haskell-build-system) + (home-page "https://github.com/nikita-volkov/base-prelude") + (synopsis "The most complete prelude formed solely from the Haskell's base +package") + (description "This Haskell package aims to reexport all the non-conflicting +and most general definitions from the \"base\" package. + +This includes APIs for applicatives, arrows, monoids, foldables, traversables, +exceptions, generics, ST, MVars and STM. + +This package will never have any dependencies other than \"base\". + +Versioning policy: + +The versioning policy of this package deviates from PVP in the sense +that its exports in part are transitively determined by the version of \"base\". +Therefore it's recommended for the users of @code{ghc-base-prelude} to specify +the bounds of \"base\" as well.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From e329bacb850130d49a1973cdcc6086e7b4257809 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:37 +0000 Subject: gnu: Add ghc-tuple-th. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-tuple-th): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 7eb6946627..31edf24485 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9469,4 +9469,26 @@ (define-public ghc-base-prelude the bounds of \"base\" as well.") (license license:expat))) +(define-public ghc-tuple-th + (package + (name "ghc-tuple-th") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "tuple-th-" version "/" + "tuple-th-" version ".tar.gz")) + (sha256 + (base32 + "1mrl4vvxmby7sf1paf7hklzidnr6wq55822i73smqyz0xpf3gsjn")))) + (build-system haskell-build-system) + (home-page "https://github.com/DanielSchuessler/tuple-th") + (synopsis "Generate utility functions for tuples of statically known size +for Haskell") + (description "This Haskell package contains Template Haskell functions for +generating functions similar to those in @code{Data.List} for tuples of +statically known size.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 4562c8c894b16dcea4875c4dea19565de9a4c34c Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:38 +0000 Subject: gnu: Add ghc-contravariant-extras. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-contravariant-extras): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 31edf24485..23c2d31326 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9491,4 +9491,27 @@ (define-public ghc-tuple-th statically known size.") (license license:bsd-3))) +(define-public ghc-contravariant-extras + (package + (name "ghc-contravariant-extras") + (version "0.3.3.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "contravariant-extras-" version "/" + "contravariant-extras-" version ".tar.gz")) + (sha256 + (base32 + "1mbrgjybdx8fjdck4ldwi8955w4qnmm0ql56zix7dyn0s7s9spgk")))) + (build-system haskell-build-system) + (inputs `(("ghc-tuple-th" ,ghc-tuple-th) + ("ghc-contravariant" ,ghc-contravariant) + ("ghc-base-prelude",ghc-base-prelude))) + (home-page "https://github.com/nikita-volkov/contravariant-extras") + (synopsis "Extras for the @code{ghc-contravariant} Haskell package") + (description "This Haskell package provides extras for the +@code{ghc-contravariant} package.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 87129984cac8b47b5d1be8d1257998611e3e9244 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:39 +0000 Subject: gnu: Add ghc-monadrandom. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-monadrandom): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 23c2d31326..ac807bee2b 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9514,4 +9514,29 @@ (define-public ghc-contravariant-extras @code{ghc-contravariant} package.") (license license:expat))) +(define-public ghc-monadrandom + (package + (name "ghc-monadrandom") + (version "0.4.2.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "MonadRandom-" version "/" + "MonadRandom-" version ".tar.gz")) + (sha256 + (base32 + "1h1nhswrcmhy3mq6vd530p0df51fcnnf4csbwnljar7cf0mb2h6y")))) + (build-system haskell-build-system) + (inputs `(("ghc-transformers-compat" ,ghc-transformers-compat) + ("ghc-mtl" ,ghc-mtl) + ("ghc-primitive" ,ghc-primitive) + ("ghc-fail" ,ghc-fail) + ("ghc-random" ,ghc-random))) + (home-page "https://github.com/byorgey/MonadRandom") + (synopsis "Random-number generation monad for Haskell") + (description "This Haskell package provides support for computations +which consume random values.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 16d4125e9070f7d4f44a78996a99735f6705a00c Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:40 +0000 Subject: gnu: Add ghc-either. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-either): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index ac807bee2b..bb373e82cc 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9539,4 +9539,33 @@ (define-public ghc-monadrandom which consume random values.") (license license:bsd-3))) +(define-public ghc-either + (package + (name "ghc-either") + (version "4.4.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "either-" version "/" + "either-" version ".tar.gz")) + (sha256 + (base32 + "1lrlwqqnm6ibfcydlv5qvvssw7bm0c6yypy0rayjzv1znq7wp1xh")))) + (build-system haskell-build-system) + (inputs `(("ghc-bifunctors" ,ghc-bifunctors) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-free" ,ghc-free) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-manodrandom" ,ghc-monadrandom) + ("ghc-mtl" ,ghc-mtl) + ("ghc-mmorph" ,ghc-mmorph) + ("ghc-profunctors" ,ghc-profunctors) + ("ghc-semigroups" ,ghc-semigroups) + ("ghc-semigroupoids" ,ghc-semigroupoids) + ("ghc-transformers-base" ,ghc-transformers-base))) + (home-page "https://github.com/ekmett/either") + (synopsis "Provides an either monad transformer for Haskell") + (description "This Haskell package provides an either monad transformer.") + (license license:bsd-3))) ;;; haskell.scm ends here -- cgit v1.2.3 From 933e78045d24ebf76f8b0cb33d16c85efd7c1cac Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:41 +0000 Subject: gnu: Add ghc-entropy. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-entropy): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index bb373e82cc..3a64aa450e 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9568,4 +9568,25 @@ (define-public ghc-either (synopsis "Provides an either monad transformer for Haskell") (description "This Haskell package provides an either monad transformer.") (license license:bsd-3))) + +(define-public ghc-entropy + (package + (name "ghc-entropy") + (version "0.3.8") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "entropy-" version "/" + "entropy-" version ".tar.gz")) + (sha256 + (base32 + "1l3lfigqvdlmxkz1wl7zdkmc0i2r5p6z4xzhiw8xdsbsw7aljfkl")))) + (build-system haskell-build-system) + (home-page "https://github.com/TomMD/entropy") + (synopsis "Provides platform independent entropy source for Haskell") + (description "This Haskell package provides a platform independent method +to obtain cryptographically strong entropy.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From e2f6116e782aa705161095e0ae792d395dadaea3 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:42 +0000 Subject: gnu: Add ghc-crypto-api. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-crypto-api): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 3a64aa450e..ad86fc1ce8 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9589,4 +9589,35 @@ (define-public ghc-entropy to obtain cryptographically strong entropy.") (license license:bsd-3))) +(define-public ghc-crypto-api + (package + (name "ghc-crypto-api") + (version "0.13.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "crypto-api-" version "/" + "crypto-api-" version ".tar.gz")) + (sha256 + (base32 + "1vc27qcgbg7hf50rkqhlrs58zn1888ilh4b6wrrm07bnm48xacak")))) + (build-system haskell-build-system) + (inputs `(("ghc-cereal" ,ghc-cereal) + ("ghc-tagged" ,ghc-tagged) + ("ghc-entropy" ,ghc-entropy))) + (home-page "https://github.com/TomMD/crypto-api") + (synopsis "Provides generic interface for cryptographic operations +for Haskell") + (description "This Haskell package provides a generic interface for +cryptographic operations (hashes, ciphers, randomness). + +Maintainers of hash and cipher implementations are encouraged to add instances +for the classes defined in @code{Crypto.Classes}. @code{Crypto} users are +similarly encouraged to use the interfaces defined in the @code{Classes} module. + +Any concepts or functions of general use to more than one cryptographic +algorithm (ex: padding) is within scope of this package.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 83c79ea0f8d64c5df68495ca31f4217b12dce312 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:43 +0000 Subject: gnu: Add ghc-crypto-api-tests. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-crypto-api-tests): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index ad86fc1ce8..675632b581 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9620,4 +9620,32 @@ (define-public ghc-crypto-api algorithm (ex: padding) is within scope of this package.") (license license:bsd-3))) +(define-public ghc-crypto-api-tests + (package + (name "ghc-crypto-api-tests") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "crypto-api-tests-" version "/" + "crypto-api-tests-" version ".tar.gz")) + (sha256 + (base32 + "0w3j43jdrlj28jryp18hc6q84nkl2yf4vs1hhgrsk7gb9kfyqjpl")))) + (build-system haskell-build-system) + (inputs `(("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-crypto-api" ,ghc-crypto-api) + ("ghc-cereal" ,ghc-cereal) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://github.com/TomMD/crypto-api-tests") + (synopsis "Test framework and KATs for cryptographic operations for Haskell") + (description "This Haskell package provides a test framework for hash and +cipher operations using the crypto-api interface. Known answer tests (KATs) +for common cryptographic algorithms are included.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From f78ed5d56f91b74c71ebb329e6162a40744f1580 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:44 +0000 Subject: gnu: Add ghc-pretty-hex. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-pretty-hex): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 675632b581..6e69eb65c8 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9648,4 +9648,24 @@ (define-public ghc-crypto-api-tests for common cryptographic algorithms are included.") (license license:bsd-3))) +(define-public ghc-pretty-hex + (package + (name "ghc-pretty-hex") + (version "1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "pretty-hex-" version "/" + "pretty-hex-" version ".tar.gz")) + (sha256 + (base32 + "0ylwkvvjvmpprha9nx83xb8gkhyanhk5fffc0r7lb96n4ch5z6pz")))) + (build-system haskell-build-system) + (home-page "https://github.com/GaloisInc/hexdump") + (synopsis "Haskell library for hex dumps of ByteStrings") + (description "This Haskell library generates pretty hex dumps of +ByteStrings in the style of other common *nix hex dump tools.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 8155778f52896211e869ffb469be01107c0651c7 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:45 +0000 Subject: gnu: Add ghc-puremd5 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-puremd5): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 6e69eb65c8..a2dc8bf3b6 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9668,4 +9668,34 @@ (define-public ghc-pretty-hex ByteStrings in the style of other common *nix hex dump tools.") (license license:bsd-3))) +(define-public ghc-puremd5 + (package + (name "ghc-puremd5") + (version "2.1.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "pureMD5-" version "/" + "pureMD5-" version ".tar.gz")) + (sha256 + (base32 + "0zdilz41cla2ck7mcw1a9702gyg2abq94mqahr4vci9sbs53bwxy")))) + (build-system haskell-build-system) + (inputs `(("ghc-cereal" ,ghc-cereal) + ("ghc-crypto-api" ,ghc-crypto-api) + ("ghc-tagged" ,ghc-tagged))) + (native-inputs `(("ghc-crypto-api-tests" ,ghc-crypto-api-tests) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" + ,ghc-test-framework-quickcheck2) + ("ghc-pretty-hex" ,ghc-pretty-hex))) + (home-page "https://github.com/TomMD/pureMD5") + (synopsis "Haskell implementation of the MD5 hash algorithm") + (description "This package provides a Haskell-only implementation of +the MD5 digest (hash) algorithm. This now supports the @code{crypto-api} class +interface.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From caac21006d5b5214c66a5254167002048873e917 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:46 +0000 Subject: gnu: Add ghc-cryptohash-md5. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-cryptohash-md5): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a2dc8bf3b6..c064cec555 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9698,4 +9698,30 @@ (define-public ghc-puremd5 interface.") (license license:bsd-3))) +(define-public ghc-cryptohash-md5 + (package + (name "ghc-cryptohash-md5") + (version "0.11.100.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "cryptohash-md5-" version "/" + "cryptohash-md5-" version ".tar.gz")) + (sha256 + (base32 + "1y8q7s2bn4gdknw1wjikdnar2b5pgz3nv3220lxrlgpsf23x82vi")))) + (build-system haskell-build-system) + (arguments + `(#:tests? #f)) ; tests require old version of ghc-hunit (0.9) + (native-inputs `(("ghc-base16-bytestring" ,ghc-base16-bytestring) + ("ghc-puremd5" ,ghc-puremd5) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-hunit" ,ghc-hunit))) + (home-page "https://github.com/hvr/cryptohash-md5") + (synopsis "MD5 implementation for Haskell") + (description "This Haskell package provides implementation of MD5.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 0119f17f5deb8886300e656f720a6e536759a542 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:47 +0000 Subject: gnu: Add ghc-cryptohash-sha1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-cryptohash-sha1): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index c064cec555..839d9fc5d8 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9724,4 +9724,36 @@ (define-public ghc-cryptohash-md5 (description "This Haskell package provides implementation of MD5.") (license license:bsd-3))) +(define-public ghc-cryptohash-sha1 + (package + (name "ghc-cryptohash-sha1") + (version "0.11.100.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "cryptohash-sha1-" version "/" + "cryptohash-sha1-" version ".tar.gz")) + (sha256 + (base32 + "1aqdxdhxhl9jldh951djpwxx8z7gzaqspxl7iwpl84i5ahrsyy9w")))) + (build-system haskell-build-system) + (arguments + `(#:tests? #f)) ; tests require old version of ghc-hunit (0.9) + (native-inputs `(("ghc-base16-bytestring" ,ghc-base16-bytestring) + ("ghc-sha" ,ghc-sha) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-hunit" ,ghc-hunit))) + (home-page "https://github.com/hvr/cryptohash-sha1") + (synopsis "SHA-1 implementation for Haskell") + (description "This Haskell package provides an incremental and one-pass, +pure API to the @uref{https://en.wikipedia.org/wiki/SHA-1, SHA-1 hash algorithm}, +including @uref{https://en.wikipedia.org/wiki/HMAC, HMAC support}, with +performance close to the fastest implementations available in other languages. + +The implementation is made in C with a haskell FFI wrapper that hides +the C implementation.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 6eda2635863d087a4cdacaea76ea5cadb8a2327c Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:48 +0000 Subject: gnu: Add ghc-network-info. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-network-info): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 839d9fc5d8..e3801d20b3 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9756,4 +9756,26 @@ (define-public ghc-cryptohash-sha1 the C implementation.") (license license:bsd-3))) +(define-public ghc-network-info + (package + (name "ghc-network-info") + (version "0.2.0.8") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "network-info-" version "/" + "network-info-" version ".tar.gz")) + (sha256 + (base32 + "0xndvg776241fgjmynxfpy81f1csjmh8dg33yf0c8m71ychz3pzc")))) + (build-system haskell-build-system) + (home-page "https://github.com/jystic/network-info") + (synopsis "Access the local computer's basic network configuration") + (description "This Haskell library provides simple read-only access to the +local computer's networking configuration. It is currently capable of +getting a list of all the network interfaces and their respective +IPv4, IPv6 and MAC addresses.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From b999b0092ec3a338a79474b804698f735e175883 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:49 +0000 Subject: gnu: Add ghc-uuid-types. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-uuid-types): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index e3801d20b3..21c6321d27 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9778,4 +9778,34 @@ (define-public ghc-network-info IPv4, IPv6 and MAC addresses.") (license license:bsd-3))) +(define-public ghc-uuid-types + (package + (name "ghc-uuid-types") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "uuid-types-" version "/" + "uuid-types-" version ".tar.gz")) + (sha256 + (base32 + "1zdka5jnm1h6k36w3nr647yf3b5lqb336g3fkprhd6san9x52xlj")))) + (build-system haskell-build-system) + (inputs `(("ghc-hashable" ,ghc-hashable) + ("ghc-random" ,ghc-random) + ("ghc-text" ,ghc-text))) + (native-inputs `(("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck))) + (home-page "https://github.com/hvr/uuid") + (synopsis "Haskell type definitions for UUIDs") + (description "This Haskell library contains type definitions for +@dfn{Universally Unique Identifiers} or +@uref{http://en.wikipedia.org/wiki/UUID, UUIDs}, and basic conversion +functions.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 24535a3d008289d5b30988c7519b9182f04f9de2 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:50 +0000 Subject: gnu: Add ghc-uuid. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-uuid): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 21c6321d27..3a4bf1d727 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9808,4 +9808,36 @@ (define-public ghc-uuid-types functions.") (license license:bsd-3))) +(define-public ghc-uuid + (package + (name "ghc-uuid") + (version "1.3.13") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "uuid-" version "/" + "uuid-" version ".tar.gz")) + (sha256 + (base32 + "09xhk42yhxvqmka0iqrv3338asncz8cap3j0ic0ps896f2581b6z")))) + (build-system haskell-build-system) + (inputs `(("ghc-cryptohash-sha1" ,ghc-cryptohash-sha1) + ("ghc-cryptohash-md5" ,ghc-cryptohash-md5) + ("ghc-entropy" ,ghc-entropy) + ("ghc-network-info" ,ghc-network-info) + ("ghc-random" ,ghc-random) + ("ghc-text" ,ghc-text) + ("ghc-uuid-types" ,ghc-uuid-types))) + (native-inputs `(("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck))) + (home-page "https://github.com/hvr/uuid") + (synopsis "Haskell library to create, compare, parse, and print UUIDs") + (description "This Haskell library provides utilities creating, comparing, +parsing and printing @dfn{Universally Unique Identifiers} or UUIDs.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 33109c822ae9ff2805d40b458dced8265c643444 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:51 +0000 Subject: gnu: Add ghc-rebase. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-rebase): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 58 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 3a4bf1d727..d05f6e1441 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9840,4 +9840,62 @@ (define-public ghc-uuid parsing and printing @dfn{Universally Unique Identifiers} or UUIDs.") (license license:bsd-3))) +(define-public ghc-rebase + (package + (name "ghc-rebase") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "rebase-" version "/" + "rebase-" version ".tar.gz")) + (sha256 + (base32 + "1qkhnpcc4g2vd6jmbf3b6psqkan6hyawqzrwzqdd931hsb02l6ia")))) + (build-system haskell-build-system) + (inputs `(("ghc-stm" ,ghc-stm) + ("ghc-hashable" ,ghc-hashable) + ("ghc-vector" ,ghc-vector) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-text" ,ghc-text) + ("ghc-scientific" ,ghc-scientific) + ("ghc-uuid" ,ghc-uuid) + ("ghc-dlist" ,ghc-dlist) + ("ghc-void" ,ghc-void) + ("ghc-bifunctors" ,ghc-bifunctors) + ("ghc-profunctors" ,ghc-profunctors) + ("ghc-contravariant" ,ghc-contravariant) + ("ghc-contravariant-extras" ,ghc-contravariant-extras) + ("ghc-semigroups" ,ghc-semigroups) + ("ghc-mtl" ,ghc-mtl) + ("ghc-either" ,ghc-either) + ("ghc-fail" ,ghc-fail) + ("ghc-base-prelude" ,ghc-base-prelude))) + (home-page "https://github.com/nikita-volkov/rebase") + (synopsis "Progressive alternative to the base package +for Haskell") + (description "This Haskell package is intended for those who are +tired of keeping long lists of dependencies to the same essential libraries +in each package as well as the endless imports of the same APIs all over again. + +It also supports the modern tendencies in the language. + +To solve those problems this package does the following: + +@itemize +@item Reexport the original APIs under the @code{Rebase} namespace. + +@item Export all the possible non-conflicting symbols from the +@code{Rebase.Prelude} module. + +@item Give priority to the modern practices in the conflicting cases. +@end itemize + +The policy behind the package is only to reexport the non-ambiguous and +non-controversial APIs, which the community has obviously settled on. +The package is intended to rapidly evolve with the contribution from +the community, with the missing features being added with pull-requests.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 1896a2526d1db209afb0a8a55a63dc4c1162c539 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:52 +0000 Subject: gnu: Add ghc-vector-builder. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-vector-builder): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index d05f6e1441..977789d3da 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9898,4 +9898,38 @@ (define-public ghc-rebase the community, with the missing features being added with pull-requests.") (license license:expat))) +(define-public ghc-vector-builder + (package + (name "ghc-vector-builder") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "vector-builder-" version "/" + "vector-builder-" version ".tar.gz")) + (sha256 + (base32 + "1l6sfgd2s107zkp1qd1w6jdjcbznp31769qf99pxar087f697wvp")))) + (build-system haskell-build-system) + (inputs `(("ghc-vector" ,ghc-vector) + ("ghc-semigroups" ,ghc-semigroups) + ("ghc-base-prelude" ,ghc-base-prelude))) + (native-inputs `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck-instances" ,ghc-quickcheck-instances) + ("ghc-rebase" ,ghc-rebase))) + (home-page "https://github.com/nikita-volkov/vector-builder") + (synopsis "Vector builder for Haskell") + (description "This Haskell package provides an API for constructing vectors. +It provides the composable @code{Builder} abstraction, which has instances of the +@code{Monoid} and @code{Semigroup} classes. + +You would first use the @code{Builder} abstraction to specify the structure of +the vector; then you can execute the builder to actually produce the +vector. ") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From f6094850d0893ad27a513a0381028ce1f5fb93c7 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:53 +0000 Subject: gnu: Add ghc-foldl. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-foldl): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 977789d3da..e9660431ca 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9932,4 +9932,36 @@ (define-public ghc-vector-builder vector. ") (license license:expat))) +(define-public ghc-foldl + (package + (name "ghc-foldl") + (version "1.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "foldl-" version "/" + "foldl-" version ".tar.gz")) + (sha256 + (base32 + "1z3xjz4khs2kr3mqkbh7dz4kd6gkdk2r67wjkvrxnmp533aqh90n")))) + (build-system haskell-build-system) + (inputs `(("ghc-mwc-randam" ,ghc-mwc-random) + ("ghc-primitive" ,ghc-primitive) + ("ghc-text" ,ghc-text) + ("ghc-vector" ,ghc-vector) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-hashable" ,ghc-hashable) + ("ghc-contravariant" ,ghc-contravariant) + ("ghc-profunctors" ,ghc-profunctors) + ("ghc-comonad" ,ghc-comonad) + ("ghc-vector-builder" ,ghc-vector-builder))) + (home-page "https://github.com/Gabriel439/Haskell-Foldl-Library") + (synopsis "Composable, streaming, and efficient left folds for Haskell") + (description "This Haskell library provides strict left folds that stream +in constant memory, and you can combine folds using @code{Applicative} style +to derive new folds. Derived folds still traverse the container just once +and are often as efficient as hand-written folds.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From ed4cc0c5e91a00cc702f0ccfedefdb65225ffbce Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:54 +0000 Subject: gnu: Add ghc-mono-traversable. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-mono-traversable): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index e9660431ca..0d2bd36686 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -9964,4 +9964,39 @@ (define-public ghc-foldl and are often as efficient as hand-written folds.") (license license:bsd-3))) +(define-public ghc-mono-traversable + (package + (name "ghc-mono-traversable") + (version "1.0.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "mono-traversable-" version "/" + "mono-traversable-" version ".tar.gz")) + (sha256 + (base32 + "0smirpwika7d5a98h20jr9jqg41n7vqfy7k31crmn449qfig9ljf")))) + (build-system haskell-build-system) + (inputs `(("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-hashable" ,ghc-hashable) + ("ghc-text" ,ghc-text) + ("ghc-vector" ,ghc-vector) + ("ghc-vector-algorithms" ,ghc-vector-algorithms) + ("ghc-split" ,ghc-split))) + (native-inputs `(("ghc-hspec" ,ghc-hspec) + ("ghc-hunit",ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-semigroups" ,ghc-semigroups) + ("ghc-foldl" ,ghc-foldl))) + (home-page "https://github.com/snoyberg/mono-traversable") + (synopsis "Haskell classes for mapping, folding, and traversing monomorphic +containers") + (description "This Haskell package provides Monomorphic variants of the +Functor, Foldable, and Traversable typeclasses. If you understand Haskell's +basic typeclasses, you understand mono-traversable. In addition to what +you are used to, it adds on an IsSequence typeclass and has code for marking +data structures as non-empty.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 7bc18f412b0dbd8fdcbfe8558865f9db4acade74 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:55 +0000 Subject: gnu: ghc-conduit: Update to 1.2.12.1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-conduit): Update to 1.2.12.1. [native-inputs]: Add "ghc-split". Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 0d2bd36686..b2fef6f8f6 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5919,14 +5919,14 @@ (define-public ghc-aeson-qq (define-public ghc-conduit (package (name "ghc-conduit") - (version "1.2.5.1") + (version "1.2.12.1") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" "conduit/conduit-" version ".tar.gz")) (sha256 (base32 - "0aq6wswd5dkhdmy7sjhd99mldpq33dqpgbdcwpm94ahvckqxs7v5")))) + "0zl6gflh7y36y2vypjhqx13nhkk5y3h12c1zj7kjfclrmwnvnwh0")))) (build-system haskell-build-system) (inputs `(("ghc-exceptions" ,ghc-exceptions) @@ -5939,7 +5939,8 @@ (define-public ghc-conduit (native-inputs `(("ghc-quickcheck" ,ghc-quickcheck) ("ghc-hspec" ,ghc-hspec) - ("ghc-safe" ,ghc-safe))) + ("ghc-safe" ,ghc-safe) + ("ghc-split" ,ghc-split))) (home-page "https://github.com/snoyberg/conduit") (synopsis "Streaming data library ") (description -- cgit v1.2.3 From 463c39c33971230262016030f40f9d641eeb3380 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:56 +0000 Subject: gnu: ghc-conduit: Fix lint error. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-conduit)[description]: Fix lint error. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index b2fef6f8f6..7f5cc6415d 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5944,11 +5944,11 @@ (define-public ghc-conduit (home-page "https://github.com/snoyberg/conduit") (synopsis "Streaming data library ") (description - "conduit is a solution to the streaming data problem, allowing for -production, transformation, and consumption of streams of data in constant -memory. It is an alternative to lazy I/O which guarantees deterministic -resource handling, and fits in the same general solution space as -enumerator/iteratee and pipes." ) + "The conduit package is a solution to the streaming data problem, +allowing for production, transformation, and consumption of streams of data +in constant memory. It is an alternative to lazy I/O which guarantees +deterministic resource handling, and fits in the same general solution +space as enumerator/iteratee and pipes.") (license license:expat))) (define-public ghc-logging-facade -- cgit v1.2.3 From 95fb25bf5911cc324ba37098fe8bdbc94e7a3d74 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:57 +0000 Subject: gnu: Add ghc-conduit-combinators. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-condui-combinators): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 7f5cc6415d..a242d6be06 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10000,4 +10000,45 @@ (define-public ghc-mono-traversable data structures as non-empty.") (license license:expat))) +(define-public ghc-conduit-combinators + (package + (name "ghc-conduit-combinators") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "conduit-combinators-" version "/" + "conduit-combinators-" version ".tar.gz")) + (sha256 + (base32 + "0609miq03lq9visfb2dqqsxghmvgzm24pq39mqby1jnnah6yh8m0")))) + (build-system haskell-build-system) + (inputs `(("ghc-conduit" ,ghc-conduit) + ("ghc-conduit-extra" ,ghc-conduit-extra) + ("ghc-transformers-base" ,ghc-transformers-base) + ("ghc-primitive" ,ghc-primitive) + ("ghc-vector" ,ghc-vector) + ("ghc-text" ,ghc-text) + ("ghc-void" ,ghc-void) + ("ghc-mwc-random" ,ghc-mwc-random) + ("ghc-unix-compat" ,ghc-unix-compat) + ("ghc-base16-bytestring" ,ghc-base16-bytestring) + ("ghc-base64-bytestring" ,ghc-base64-bytestring) + ("ghc-resourcet" ,ghc-resourcet) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-chunked-data" ,ghc-chunked-data) + ("ghc-mono-traversable" ,ghc-mono-traversable))) + (native-inputs `(("ghc-hspec" ,ghc-hspec) + ("ghc-silently" ,ghc-silently) + ("ghc-mtl" ,ghc-mtl) + ("ghc-safe" ,ghc-safe) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://github.com/snoyberg/mono-traversable") + (synopsis "Commonly used conduit functions, for both chunked and +unchunked data") + (description "This Haskell package provides a replacement for Data.Conduit.List, +as well as a convenient Conduit module.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 3a784700cd554c169d81b3013abb2a451f1e64b1 Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Wed, 18 Oct 2017 03:07:58 +0000 Subject: gnu: Add ghc-aws. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-aws): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 58 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a242d6be06..87e60a8861 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10041,4 +10041,62 @@ (define-public ghc-conduit-combinators as well as a convenient Conduit module.") (license license:expat))) +(define-public ghc-aws + (package + (name "ghc-aws") + (version "0.17.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "aws-" version "/aws-" version ".tar.gz")) + (sha256 (base32 + "1q4qh58vj8447a4fl88n3nkpdc4yv293qsh02w6zvszd6ch61yh7")))) + (build-system haskell-build-system) + (arguments `(#:tests? #f)) ; Tests require AWS credentials. + (inputs + `(("ghc-aeson" ,ghc-aeson) + ("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-base16-bytestring" ,ghc-base16-bytestring) + ("ghc-base64-bytestring" ,ghc-base64-bytestring) + ("ghc-blaze-builder" ,ghc-blaze-builder) + ("ghc-byteable" ,ghc-byteable) + ("ghc-case-insensitive" ,ghc-case-insensitive) + ("ghc-cereal" ,ghc-cereal) + ("ghc-conduit" ,ghc-conduit) + ("ghc-conduit-extra" ,ghc-conduit-extra) + ("ghc-cryptohash" ,ghc-cryptohash) + ("ghc-data-default" ,ghc-data-default) + ("ghc-http-conduit" ,ghc-http-conduit) + ("ghc-http-types" ,ghc-http-types) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-mtl" ,ghc-mtl) + ("ghc-network" ,ghc-network) + ("ghc-old-locale" ,ghc-old-locale) + ("ghc-safe" ,ghc-safe) + ("ghc-scientific" ,ghc-scientific) + ("ghc-tagged" ,ghc-tagged) + ("ghc-text" ,ghc-text) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-vector" ,ghc-vector) + ("ghc-xml-conduit" ,ghc-xml-conduit))) + (native-inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-errors" ,ghc-errors) + ("ghc-http-client" ,ghc-http-client) + ("ghc-http-client-tls" ,ghc-http-client-tls) + ("ghc-quickcheck-instances" ,ghc-quickcheck-instances) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-conduit-combinators" ,ghc-conduit-combinators))) + (home-page "https://github.com/aristidb/aws") + (synopsis "Amazon Web Services for Haskell") + (description "This package attempts to provide support for using +Amazon Web Services like S3 (storage), SQS (queuing) and others to +Haskell programmers. The ultimate goal is to support all Amazon +Web Services.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From ed9b09e4f0795079f7c186c22f3a9501ae27291a Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 22 Oct 2017 15:16:56 -0700 Subject: gnu: impressive: Fix Python 2/3 dependency mismatch. * gnu/packages/pdf.scm (impressive)[inputs]: Depend on PYTHON2-PYGAME. --- gnu/packages/pdf.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 6dbba2c7ec..ceaccddfc7 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -7,7 +7,7 @@ ;;; Coypright © 2016 ng0 ;;; Coypright © 2016 Efraim Flashner ;;; Coypright © 2016, 2017 Marius Bakke -;;; Coypright © 2016 Ludovic Courtès +;;; Coypright © 2016, 2017 Ludovic Courtès ;;; Coypright © 2016 Julien Lepiller ;;; Copyright © 2016 Arun Isaac ;;; Copyright © 2017 Leo Famulari @@ -747,7 +747,7 @@ (define-public impressive (build-system python-build-system) ;; TODO: Add dependency on pdftk. - (inputs `(("python-pygame" ,python-pygame) + (inputs `(("python2-pygame" ,python2-pygame) ("python2-pillow" ,python2-pillow) ("sdl" ,sdl) ("xpdf" ,xpdf))) -- cgit v1.2.3 From fc938a277548b928d5271fa084751ba9985836b6 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 22 Oct 2017 16:05:26 -0700 Subject: gnu: lxqt-common: Remove. This package is marked as deprecated upstream. Fixes . * gnu/packages/lxqt.scm (lxqt-common): Remove. --- gnu/packages/lxqt.scm | 56 --------------------------------------------------- 1 file changed, 56 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm index a73a875594..a4108f55b2 100644 --- a/gnu/packages/lxqt.scm +++ b/gnu/packages/lxqt.scm @@ -90,62 +90,6 @@ (define-public liblxqt components of the LXQt desktop environment.") (license lgpl2.1+))) - -(define-public lxqt-common - (package - (name "lxqt-common") - (version "0.9.1") - (source - (origin - (method url-fetch) - (uri - (string-append "https://github.com/lxde/" name - "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1vd3zarvl44l3y6wn7kgxcd2f1bygsmk5bcfqwa3568cq3b57aw0")))) - (build-system cmake-build-system) - (arguments - `(#:tests? #f ; no check target - #:phases - (modify-phases %standard-phases - (add-before 'configure 'fix-installation-paths - (lambda _ - ;; The variable LXQT_ETC_XDG_DIR is set in - ;; liblxqt-0.9.0/share/cmake/lxqt/lxqt-config.cmake - ;; to the Qt5 installation directory, followed by "/etc/xdg". - ;; We need to have it point to the current installation - ;; directory instead. - (substitute* '("config/CMakeLists.txt" - "menu/CMakeLists.txt") - (("\\$\\{LXQT_ETC_XDG_DIR\\}") - "${CMAKE_INSTALL_PREFIX}/etc/xdg") - ;; In the same file, LXQT_SHARE_DIR is set to the installation - ;; directory of liblxqt, followed by "/share/lxqt". - (("\\$\\{LXQT_SHARE_DIR\\}") - "${CMAKE_INSTALL_PREFIX}/share/lxqt")) - ;; Replace absolute directories. - (substitute* "autostart/CMakeLists.txt" - (("/etc/xdg") - "${CMAKE_INSTALL_PREFIX}/etc/xdg")) - (substitute* "xsession/CMakeLists.txt" - (("/usr/share") - "${CMAKE_INSTALL_PREFIX}/share"))))))) - (inputs - `(("kwindowsystem" ,kwindowsystem) - ("liblxqt" ,liblxqt) - ("libqtxdg" ,libqtxdg) - ("qtbase" ,qtbase) - ("qttools" ,qttools) - ("qtx11extras" ,qtx11extras))) - (home-page "http://lxqt.org/") - (synopsis "Common files for LXQt") - (description "lxqt-common provides the desktop integration files -(themes, icons, configuration files etc.) for the LXQt -desktop environment.") - (license lgpl2.1+))) - (define-public lxqt-session (package (name "lxqt-session") -- cgit v1.2.3 From bb234ed82527aa16e2190277ae22b5bc2560aaf0 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 19 Oct 2017 16:14:10 -0400 Subject: gnu: icecat: Add more fixes from upstream mozilla-esr52. * gnu/packages/gnuzilla.scm (icecat)[source]: Add selected fixes from the upstream mozilla-esr52 repository. --- gnu/packages/gnuzilla.scm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index da74a8dd95..2d607360c2 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -441,7 +441,16 @@ (define-public icecat (mozilla-patch "icecat-bug-1368269.patch" "0cff5e66e0f4" "0jb0wqi7c0ih4441s1908j6gv18v4inh7k2w47h3c9nhz4rgyrw7") (mozilla-patch "icecat-CVE-2017-7793.patch" "6ff3c82962f0" "0bw82034kdmrpznigbavzzsiybzrw8giyf8v0z2cxf6mwl72bf9k") (mozilla-patch "icecat-bug-1400399.patch" "d6f78b1349b7" "0i3gwr2al3xl65yfa3nimvy8dp0jzpx21f6bjw18xwn7zkkh9j54") - (mozilla-patch "icecat-bug-1400721.patch" "285cde398833" "0a1i32zl30wfyw7zkqj595s94n6wdlg5c495m0910pd05pjg3qam"))) + (mozilla-patch "icecat-bug-1400721.patch" "285cde398833" "0a1i32zl30wfyw7zkqj595s94n6wdlg5c495m0910pd05pjg3qam") + (mozilla-patch "icecat-bug-1395138.patch" "98b3988592a6" "03wy173lj6mvmh5q92brf596h8676h0zasgqfnndpvsmsiaih120") + (mozilla-patch "icecat-bug-1369561.patch" "47590f0c274b" "0zsys6dcyhfb4a8k2dhsls7425jg6r1ijlrsn1lc5smwyf62zx5v") + (mozilla-patch "icecat-bug-1375146.patch" "55b435cbbb55" "1gcasaqrxa13a55v05bkxl3d1md829kpfhqiaws83wn08x28l0my") + (mozilla-patch "icecat-bug-1394530.patch" "8549cf2dab3e" "168gs32ncavaj9xn4gwhh9i01cbpnhgx9yn333apsrc1gwknpvsr") + (mozilla-patch "icecat-bug-1400554.patch" "349acf56ff49" "1vwn87rdryfjsn809pl50xmr82q98gz3vz9h6clkd905vbd9rwz7") + (mozilla-patch "icecat-bug-1400003.patch" "3af5bf8bdea0" "07az28dnpxr36j7i3llxkrlkrmg0bwk4f3sm75x1f0r1v5575p3p") + (mozilla-patch "icecat-bug-1407751.patch" "592df6088926" "1gy27idik4b6wcg4szww08cmpcljssja8wql6w1d807h7ni65lr7") + (mozilla-patch "icecat-bug-1261175.patch" "77a2d4610275" "13ysbwflnysj4rs45ibckd621s0vyg1s8dvannlvanvrz1g72zcz") + (mozilla-patch "icecat-bug-1394265.patch" "2b30335d0b95" "0hs5cwickvfw7r5dn7y148jgr2b21hl613qp83k56634d0y64qwp"))) (modules '((guix build utils))) (snippet '(begin -- cgit v1.2.3 From 8e4a976c68b0d805eb8e30615c40322de6d7a7f3 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 23 Oct 2017 00:52:28 -0400 Subject: gnu: linux-libre@4.4: Update to 4.4.94. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.94. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 66119ca513..8a95af98d4 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -384,8 +384,8 @@ (define-public linux-libre-4.9 #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.93" - "1llpqkm7vvwi5fm92y4n6qrc89ps7kdfl83s7m38a2yivm3kgzr6" + (make-linux-libre "4.4.94" + "0g63is8d2k1mf1kaljkll79n7gzh4qn0fmrm2r9sab2sq41hch1m" %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From 1b635caface4fa5eaefae12648be58fbb4a9ad92 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 23 Oct 2017 00:53:03 -0400 Subject: gnu: linux-libre@4.9: Update to 4.9.58. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.58. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 8a95af98d4..5bc73a8009 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -378,8 +378,8 @@ (define-public linux-libre #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.57" - "02ldxzbazdbhvgkwxl6xblkwj75s5cm33fpm77kv394w35jan3by" + (make-linux-libre "4.9.58" + "0f1yxdvzdr1zfkh86i9z0p7ywdlz0blxnd11wbnw763qyk3qydyk" %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From 2f05dd6b4cd84c6f431da94d47668ed0b34a6e1c Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 23 Oct 2017 00:53:38 -0400 Subject: gnu: linux-libre: Update to 4.13.9. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.13.9. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 5bc73a8009..49665e24d3 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -368,8 +368,8 @@ (define* (make-linux-libre version hash supported-systems (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.13.8") -(define %linux-libre-hash "0qi2n5lczqwq2v0q5zl08ac3x4lixpj1dmb0kza6hsllmx8hbybw") +(define %linux-libre-version "4.13.9") +(define %linux-libre-hash "1ymsdvm4djh7hg2wmn2v11w380i0ss9nkp4slfrgihdvn6yp5gbv") (define-public linux-libre (make-linux-libre %linux-libre-version -- cgit v1.2.3 From 6e644cfdb38b74a83bfc133807b5f503b54e8c73 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Wed, 27 Sep 2017 21:33:25 -0400 Subject: services: base: Add file->udev-rule function. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This function allows passing a file-like object to the udev service. * gnu/services/base.scm (file->udev-rule): New function. * doc/guix.texi (Base Services): Document it. Signed-off-by: Ludovic Courtès --- doc/guix.texi | 113 ++++++++++++++++++++++++++++++++++++++++++-------- gnu/services/base.scm | 17 ++++++++ 2 files changed, 112 insertions(+), 18 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index 7d7d556697..2ccba98092 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9790,35 +9790,112 @@ Return a service that runs the Guix build daemon according to @var{config}. @end deffn -@cindex udev-service -@cindex udev-rule -@deffn {Scheme Procedure} udev-service [#:udev @var{udev}] [#:rules @var{'()}] +@deffn {Scheme Procedure} udev-service [#:udev @var{eudev} #:rules @code{'()}] Run @var{udev}, which populates the @file{/dev} directory dynamically. -Additional udev rules can be provided as a list of files through the -@var{rules} variable. The procedure @var{udev-rule} simplifies the -creation of these rule files. +udev rules can be provided as a list of files through the @var{rules} +variable. The procedures @var{udev-rule} and @var{file->udev-rule} from +@code{(gnu services base)} simplify the creation of such rule files. + +@deffn {Scheme Procedure} udev-rule [@var{file-name} @var{contents}] +Return a udev-rule file named @var{file-name} containing the rules +defined by the @var{contents} literal. In the following example, a rule for a USB device is defined to be -stored in the file @file{90-usb-thing.rules}, and the default -@var{udev-service} is extended with it. The rule runs a script upon -detecting a USB device with a given product identifier. +stored in the file @file{90-usb-thing.rules}. The rule runs a script +upon detecting a USB device with a given product identifier. @example (define %example-udev-rule - (udev-rule "90-usb-thing.rules" - "ACTION==\"add\", SUBSYSTEM==\"usb\", ATTR@{product@}==\"Example\", RUN+=\"/path/to/script\"")) + (udev-rule + "90-usb-thing.rules" + (string-append "ACTION==\"add\", SUBSYSTEM==\"usb\", " + "ATTR@{product@}==\"Example\", " + "RUN+=\"/path/to/script\""))) +@end example +@end deffn + +Here we show how the default @var{udev-service} can be extended with it. + +@example +(operating-system + ;; @dots{} + (services + (modify-services %desktop-services + (udev-service-type config => + (udev-configuration (inherit config) + (rules (append (udev-configuration-rules config) + (list %example-udev-rule)))))))) +@end example + +@deffn {Scheme Procedure} file->udev-rule [@var{file-name} @var{file}] +Return a udev file named @var{file-name} containing the rules defined +within @var{file}, a file-like object. + +The following example showcases how we can use an existing rule file. + +@example +(use-modules (guix download) ;for url-fetch + (guix packages) ;for origin + ;; @dots{}) + +(define %android-udev-rules + (file->udev-rule + "51-android-udev.rules" + (let ((version "20170910")) + (origin + (method url-fetch) + (uri (string-append "https://raw.githubusercontent.com/M0Rf30/" + "android-udev-rules/" version "/51-android.rules")) + (sha256 + (base32 "0lmmagpyb6xsq6zcr2w1cyx9qmjqmajkvrdbhjx32gqf1d9is003")))))) +@end example +@end deffn + +Additionally, Guix package definitions can be included in @var{rules} in +order to extend the udev rules with the definitions found under their +@file{lib/udev/rules.d} sub-directory. In lieu of the previous +@var{file->udev-rule} example, we could have used the +@var{android-udev-rules} package which exists in Guix in the @code{(gnu +packages android)} module. + +The following example shows how to use the @var{android-udev-rules} +package so that the Android tool @command{adb} can detect devices +without root privileges. It also details how to create the +@code{adbusers} group, which is required for the proper functioning of +the rules defined within the @var{android-udev-rules} package. To +create such a group, we must define it both as part of the +@var{supplementary-groups} of our @var{user-account} declaration, as +well as in the @var{groups} field of the @var{operating-system} record. + +@example +(use-modules (gnu packages android) ;for android-udev-rules + (gnu system shadow) ;for user-group + ;; @dots{}) (operating-system ;; @dots{} - (services (modify-services %desktop-services - (udev-service-type config => - (udev-configuration (inherit config) - (rules (append (udev-configuration-rules config) - (list %example-udev-rule)))))))) + (users (cons (user-acount + ;; @dots{} + (supplementary-groups + '("adbusers" ;for adb + "wheel" "netdev" "audio" "video")) + ;; @dots{}))) + + (groups (cons (user-group (system? #t) (name "adbusers")) + %base-groups)) + + ;; @dots{} + + (services + (modify-services %desktop-services + (udev-service-type config => + (udev-configuration (inherit config) + (rules (cons* android-udev-rules + (udev-configuration-rules config)))))))) @end example @end deffn -@deffn {Scheme Procedure} urandom-seed-service @var{#f} +@deffn {Scheme Procedure} urandom-seed-service Save some entropy in @var{%random-seed-file} to seed @file{/dev/urandom} when rebooting. @end deffn @@ -9930,7 +10007,7 @@ to add @var{device} to the kernel's entropy pool. The service will fail if @cindex session limits @cindex ulimit @cindex priority -@deffn {Scheme Procedure} pam-limits-service [#:limits @var{limits}] +@deffn {Scheme Procedure} pam-limits-service [#:limits @code{'()}] Return a service that installs a configuration file for the @uref{http://linux-pam.org/Linux-PAM-html/sag-pam_limits.html, diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 541ca76f14..b605614ab6 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -71,6 +71,7 @@ (define-module (gnu services base) udev-service-type udev-service udev-rule + file->udev-rule login-configuration login-configuration? @@ -1630,6 +1631,22 @@ (define rules.d (lambda (port) (display #$contents port))))))) +(define (file->udev-rule file-name file) + "Return a directory with a udev rule file FILE-NAME which is a copy of FILE." + (computed-file file-name + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) + + (define rules.d + (string-append #$output "/lib/udev/rules.d")) + + (define file-copy-dest + (string-append rules.d "/" #$file-name)) + + (mkdir-p rules.d) + (copy-file #$file file-copy-dest))))) + (define kvm-udev-rule ;; Return a directory with a udev rule that changes the group of /dev/kvm to ;; "kvm" and makes it #o660. Apparently QEMU-KVM used to ship this rule, -- cgit v1.2.3 From dedb512f8f2282f7de3d5b56e7551e486e37840c Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 16 Oct 2017 09:57:44 +0200 Subject: gexp: Add 'file-union'. * gnu/services.scm (file-union): Move to... * guix/gexp.scm (file-union): ... here. New procedure. * doc/guix.texi (G-Expressions): Document it. --- doc/guix.texi | 17 +++++++++++++++++ gnu/services.scm | 20 -------------------- guix/gexp.scm | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 49 insertions(+), 20 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index 2ccba98092..ce8b977e1b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -4990,6 +4990,23 @@ as in: This is the declarative counterpart of @code{text-file*}. @end deffn +@deffn {Scheme Procedure} file-union @var{name} @var{files} +Return a @code{} that builds a directory containing all of @var{files}. +Each item in @var{files} must be a two-element list where the first element is the +file name to use in the new directory, and the second element is a gexp +denoting the target file. Here's an example: + +@example +(file-union "etc" + `(("hosts" ,(plain-file "hosts" + "127.0.0.1 localhost")) + ("bashrc" ,(plain-file "bashrc" + "alias ls='ls --color'")))) +@end example + +This yields an @code{etc} directory containing these two files. +@end deffn + @deffn {Scheme Procedure} file-append @var{obj} @var{suffix} @dots{} Return a file-like object that expands to the concatenation of @var{obj} and @var{suffix}, where @var{obj} is a lowerable object and each diff --git a/gnu/services.scm b/gnu/services.scm index 0bd3620852..bc866eafe3 100644 --- a/gnu/services.scm +++ b/gnu/services.scm @@ -97,7 +97,6 @@ (define-module (gnu services) %activation-service etc-service - file-union ;XXX: for lack of a better place directory-union)) ;;; Comment: @@ -388,25 +387,6 @@ (define cleanup-service-type (list (service-extension boot-service-type cleanup-gexp))))) -(define* (file-union name files) ;FIXME: Factorize. - "Return a that builds a directory containing all of FILES. -Each item in FILES must be a list where the first element is the file name to -use in the new directory, and the second element is a gexp denoting the target -file." - (computed-file name - #~(begin - (mkdir #$output) - (chdir #$output) - #$@(map (match-lambda - ((target source) - #~(begin - ;; Stat the source to abort early if it - ;; does not exist. - (stat #$source) - - (symlink #$source #$target)))) - files)))) - (define (directory-union name things) "Return a directory that is the union of THINGS." (match things diff --git a/guix/gexp.scm b/guix/gexp.scm index 2622c5cb62..9835599bb8 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -78,6 +78,7 @@ (define-module (guix gexp) gexp->script text-file* mixed-text-file + file-union imported-files imported-modules compiled-modules @@ -1171,6 +1172,37 @@ (define build (computed-file name build)) +(define (file-union name files) + "Return a that builds a directory containing all of FILES. +Each item in FILES must be a two-element list where the first element is the +file name to use in the new directory, and the second element is a gexp +denoting the target file. Here's an example: + + (file-union \"etc\" + `((\"hosts\" ,(plain-file \"hosts\" + \"127.0.0.1 localhost\")) + (\"bashrc\" ,(plain-file \"bashrc\" + \"alias ls='ls --color'\")))) + +This yields an 'etc' directory containing these two files." + (computed-file name + (gexp + (begin + (mkdir (ungexp output)) + (chdir (ungexp output)) + (ungexp-splicing + (map (match-lambda + ((target source) + (gexp + (begin + ;; Stat the source to abort early if it does + ;; not exist. + (stat (ungexp source)) + + (symlink (ungexp source) + (ungexp target)))))) + files)))))) + ;;; ;;; Syntactic sugar. -- cgit v1.2.3 From d298c815e638581d466222f3a883b280f019b368 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 16 Oct 2017 10:12:53 +0200 Subject: gexp: Add 'directory-union'. * gnu/services.scm (directory-union): Move to... * guix/gexp.scm (directory-union): ... here. New procedure. * doc/guix.texi (G-Expressions): Document it. --- doc/guix.texi | 11 +++++++++++ gnu/services.scm | 17 +---------------- guix/gexp.scm | 20 ++++++++++++++++++++ 3 files changed, 32 insertions(+), 16 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index ce8b977e1b..d7fabe9599 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5007,6 +5007,17 @@ denoting the target file. Here's an example: This yields an @code{etc} directory containing these two files. @end deffn +@deffn {Scheme Procedure} directory-union @var{name} @var{things} +Return a directory that is the union of @var{things}, where @var{things} is a list of +file-like objects denoting directories. For example: + +@example +(directory-union "guile+emacs" (list guile emacs)) +@end example + +yields a directory that is the union of the @code{guile} and @code{emacs} packages. +@end deffn + @deffn {Scheme Procedure} file-append @var{obj} @var{suffix} @dots{} Return a file-like object that expands to the concatenation of @var{obj} and @var{suffix}, where @var{obj} is a lowerable object and each diff --git a/gnu/services.scm b/gnu/services.scm index bc866eafe3..50be28a382 100644 --- a/gnu/services.scm +++ b/gnu/services.scm @@ -95,9 +95,7 @@ (define-module (gnu services) %boot-service %activation-service - etc-service - - directory-union)) + etc-service)) ;;; Comment: ;;; @@ -387,19 +385,6 @@ (define cleanup-service-type (list (service-extension boot-service-type cleanup-gexp))))) -(define (directory-union name things) - "Return a directory that is the union of THINGS." - (match things - ((one) - ;; Only one thing; return it. - one) - (_ - (computed-file name - (with-imported-modules '((guix build union)) - #~(begin - (use-modules (guix build union)) - (union-build #$output '#$things))))))) - (define* (activation-service->script service) "Return as a monadic value the activation script for SERVICE, a service of ACTIVATION-SCRIPT-TYPE." diff --git a/guix/gexp.scm b/guix/gexp.scm index 9835599bb8..b9525603ee 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -79,6 +79,7 @@ (define-module (guix gexp) text-file* mixed-text-file file-union + directory-union imported-files imported-modules compiled-modules @@ -1203,6 +1204,25 @@ (define (file-union name files) (ungexp target)))))) files)))))) +(define (directory-union name things) + "Return a directory that is the union of THINGS, where THINGS is a list of +file-like objects denoting directories. For example: + + (directory-union \"guile+emacs\" (list guile emacs)) + +yields a directory that is the union of the 'guile' and 'emacs' packages." + (match things + ((one) + ;; Only one thing; return it. + one) + (_ + (computed-file name + (with-imported-modules '((guix build union)) + (gexp (begin + (use-modules (guix build union)) + (union-build (ungexp output) + '(ungexp things))))))))) + ;;; ;;; Syntactic sugar. -- cgit v1.2.3 From de5308f526bd413ae2d05fcf6103d35d7b3d7203 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 18 Oct 2017 02:12:58 +0200 Subject: gnu: Add libnet. * gnu/packages/networking.scm (libnet): New variable. --- gnu/packages/networking.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 265455e5b2..a6c1042978 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -48,6 +48,7 @@ (define-module (gnu packages networking) #:use-module (gnu packages adns) #:use-module (gnu packages algebra) #:use-module (gnu packages audio) + #:use-module (gnu packages autotools) #:use-module (gnu packages bison) #:use-module (gnu packages check) #:use-module (gnu packages code) @@ -55,6 +56,7 @@ (define-module (gnu packages networking) #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages dejagnu) + #:use-module (gnu packages documentation) #:use-module (gnu packages flex) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) @@ -1494,3 +1496,42 @@ (define-public bmon ;; Update the license field when upstream responds. (license (list license:bsd-2 license:expat)))) + +(define-public libnet + (package + (name "libnet") + (version "1.1.6") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/sam-github/libnet/" + "archive/libnet-" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0l4gbzzvr199fzczzricjz7b825i7dlk6sgl5p5alnkcagmq0xys")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ (chdir "libnet") #t)) + (add-after 'chdir 'bootstrap + (lambda _ (zero? (system* "autoreconf" "-vif")))) + (add-before 'build 'build-doc + (lambda* (#:key make-flags #:allow-other-keys) + (zero? (apply system* "make" "-C" "doc" "doc" + make-flags))))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("doxygen" ,doxygen))) + (home-page "https://sourceforge.net/projects/libnet-dev/") + (synopsis "Framework for low-level network packet construction") + (description + "Libnet provides a fairly portable framework for network packet +construction and injection. It features portable packet creation interfaces +at the IP layer and link layer, as well as a host of supplementary +functionality. Using libnet, quick and simple packet assembly applications +can be whipped up with little effort.") + (license license:bsd-2))) -- cgit v1.2.3 From fe420383e16887d404dcd5e61033a74679d6ea06 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 18 Oct 2017 09:37:04 +0200 Subject: gnu: Add criu. * gnu/packages/virtualization.scm (criu): New variable. --- gnu/packages/virtualization.scm | 101 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 99 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 8fce545dbe..e99efce7a4 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès ;;; Copyright © 2015, 2016, 2017 Mark H Weaver ;;; Copyright © 2016, 2017 Efraim Flashner -;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2016, 2017 Ricardo Wurmus ;;; Copyright © 2017 Alex Vong ;;; Copyright © 2017 Andy Patterson ;;; @@ -32,6 +32,8 @@ (define-module (gnu packages virtualization) #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages disk) #:use-module (gnu packages dns) + #:use-module (gnu packages docbook) + #:use-module (gnu packages documentation) #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) @@ -40,9 +42,11 @@ (define-module (gnu packages virtualization) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) #:use-module (gnu packages ncurses) + #:use-module (gnu packages networking) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages polkit) + #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages selinux) #:use-module (gnu packages sdl) @@ -55,7 +59,7 @@ (define-module (gnu packages virtualization) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (guix download) - #:use-module ((guix licenses) #:select (gpl2 gpl2+ lgpl2.1+)) + #:use-module ((guix licenses) #:select (gpl2 gpl2+ lgpl2.1 lgpl2.1+)) #:use-module (guix packages) #:use-module (guix utils) #:use-module (srfi srfi-1)) @@ -573,3 +577,96 @@ (define-public virt-manager manages Xen and LXC (Linux containers). It presents a summary view of running domains, their live performance and resource utilization statistics.") (license gpl2+))) + +(define-public criu + (package + (name "criu") + (version "3.5") + (source (origin + (method url-fetch) + (uri (string-append "http://download.openvz.org/criu/criu-" + version ".tar.bz2")) + (sha256 + (base32 + "1w0ybla7ac0ql0jzh0vxdf2w9amqp88jcg0na3b33r3hq8acry6x")))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + #:tests? #f ; tests require mounting as root + #:make-flags + (list (string-append "PREFIX=" (assoc-ref %outputs "out")) + (string-append "LIBDIR=" (assoc-ref %outputs "out") + "/lib")) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) + ;; The includes for libnl are located in a sub-directory. + (setenv "C_INCLUDE_PATH" + (string-append (assoc-ref inputs "libnl") + "/include/libnl3:" + (getenv "C_INCLUDE_PATH"))) + ;; Prevent xmlto from failing the install phase. + (substitute* "Documentation/Makefile" + (("XMLTO.*:=.*") + (string-append "XMLTO:=" + (assoc-ref inputs "xmlto") + "/bin/xmlto" + " --skip-validation " + " -x " + (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl) + "/manpages/docbook.xsl"))) + #t)) + (add-before 'build 'fix-symlink + (lambda* (#:key inputs #:allow-other-keys) + ;; The file 'images/google/protobuf/descriptor.proto' points to + ;; /usr/include/..., which obviously does not exist. + (let* ((file "google/protobuf/descriptor.proto") + (target (string-append "images/" file)) + (source (string-append (assoc-ref inputs "protobuf") + "/include/" file))) + (delete-file target) + (symlink source target) + #t))) + (add-after 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Make sure 'crit' runs with the correct PYTHONPATH. + (let* ((out (assoc-ref outputs "out")) + (path (string-append out + "/lib/python" + (string-take (string-take-right + (assoc-ref inputs "python") 5) 3) + "/site-packages:" + (getenv "PYTHONPATH")))) + (wrap-program (string-append out "/bin/crit") + `("PYTHONPATH" ":" prefix (,path)))) + #t))))) + (inputs + `(("protobuf" ,protobuf) + ("python" ,python-2) + ("python2-protobuf" ,python2-protobuf) + ("python2-ipaddr" ,python2-ipaddr) + ("iproute" ,iproute) + ("libaio" ,libaio) + ("libcap" ,libcap) + ("libnet" ,libnet) + ("libnl" ,libnl))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("protobuf-c" ,protobuf-c) + ("asciidoc" ,asciidoc) + ("xmlto" ,xmlto) + ("docbook-xml" ,docbook-xml) + ("docbook-xsl" ,docbook-xsl))) + (home-page "https://criu.org") + (synopsis "Checkpoint and restore in user space") + (description "Using this tool, you can freeze a running application (or +part of it) and checkpoint it to a hard drive as a collection of files. You +can then use the files to restore and run the application from the point it +was frozen at. The distinctive feature of the CRIU project is that it is +mainly implemented in user space.") + ;; The project is licensed under GPLv2; files in the lib/ directory are + ;; LGPLv2.1. + (license (list gpl2 lgpl2.1)))) -- cgit v1.2.3 From 3bf94bc8bcbc7cf259eaddc3c19c82fd34f20c10 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 23 Oct 2017 09:49:53 +0300 Subject: gnu: criu: Add missing perl input. * gnu/packages/virtualization.scm (criu)[native-inputs]: Add perl. --- gnu/packages/virtualization.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index e99efce7a4..c8ab607028 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -655,6 +655,7 @@ (define-public criu ("libnl" ,libnl))) (native-inputs `(("pkg-config" ,pkg-config) + ("perl" ,perl) ("protobuf-c" ,protobuf-c) ("asciidoc" ,asciidoc) ("xmlto" ,xmlto) -- cgit v1.2.3 From 1ee3079d780d2a9c5bd27980922f6fc7b239a21a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 23 Oct 2017 11:44:04 +0300 Subject: gnu: cowsay: Run tests after install. * gnu/packages/games.scm (cowsay)[arguments]: Delete 'check phase, add custom 'check phase after install. --- gnu/packages/games.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 6709f02923..61eed39ef0 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -267,7 +267,8 @@ (define-public cowsay (lambda* (#:key outputs #:allow-other-keys) (zero? (system* "sh" "install.sh" (assoc-ref outputs "out"))))) - (replace 'check + (delete 'check) + (add-after 'install 'check (lambda* (#:key outputs #:allow-other-keys) (zero? (system* (string-append (assoc-ref outputs "out") "/bin/cowsay") -- cgit v1.2.3 From ce4dfde0d88521a13143b86ba0e5a7fadc14357f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 20 Oct 2017 02:34:12 +0200 Subject: gnu: miso: Update to 0.5.4. * gnu/packages/bioinformatics.scm (miso): Update to 0.5.4. --- gnu/packages/bioinformatics.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index bb8a0f8d40..aaf8b613e0 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Marius Bakke ;;; Copyright © 2016 Raoul Bonnal +;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -3615,7 +3616,7 @@ (define-public minced (define-public miso (package (name "miso") - (version "0.5.3") + (version "0.5.4") (source (origin (method url-fetch) (uri (string-append @@ -3623,7 +3624,7 @@ (define-public miso version ".tar.gz")) (sha256 (base32 - "0x446867az8ir0z8c1vjqffkp0ma37wm4sylixnkhgawllzx8v5w")) + "1z3x0vd8ma7pdrnywj7i3kgwl89sdkwrrn62zl7r5calqaq2hyip")) (modules '((guix build utils))) (snippet '(substitute* "setup.py" -- cgit v1.2.3 From f737d9f2fb71a28749e63de7af234d50c73139df Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 22 Oct 2017 14:50:45 +0200 Subject: gnu: python-pytest-django: Use python-pytest@3. * gnu/packages/django.scm (python-pytest-django)[propagated-inputs]: Replace python-pytest with python-pytest-3.0. --- gnu/packages/django.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index c70c074938..f983b1aa10 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2016 Hartmut Goebel ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2017 ng0 +;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -150,7 +151,7 @@ (define-public python-pytest-django `(("python-django" ,python-django) ("python-setuptools-scm" ,python-setuptools-scm))) (propagated-inputs - `(("python-pytest" ,python-pytest))) + `(("python-pytest" ,python-pytest-3.0))) (home-page "http://pytest-django.readthedocs.org/") (synopsis "Django plugin for py.test") (description "Pytest-django is a plugin for py.test that provides a set of -- cgit v1.2.3 From 2b1b27990bb7600dcfcc7f5cfffe07c2118fa434 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 22 Oct 2017 15:21:49 +0200 Subject: gnu: python-graphene: Disable tests. * gnu/packages/python.scm (python-graphene)[native-inputs]: Remove. [arguments]: Disable #:tests. --- gnu/packages/python.scm | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 86bc4875bf..47d5f63b7f 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -13168,18 +13168,14 @@ (define-public python-graphene (base32 "09zhac7igh9ixdz0ay6csy35b40l1jwbf2wrbxmgxwfhy51iy06q")))) (build-system python-build-system) - (native-inputs - `(("python-django-filter" ,python-django-filter) - ("python-mock" ,python-mock) - ("python-psycopg2" ,python-psycopg2) - ("python-pytest-django" ,python-pytest-django) - ("python-sqlalchemy-utils" ,python-sqlalchemy-utils))) (propagated-inputs `(("python-graphql-core" ,python-graphql-core) ("python-graphql-relay" ,python-graphql-relay) ("python-iso8601" ,python-iso8601) ("python-promise" ,python-promise) ("python-six" ,python-six))) + (arguments + `(#:tests? #f)) ; no tests/ in the PyPI tarball (home-page "http://graphene-python.org/") (synopsis "GraphQL Framework for Python") (description -- cgit v1.2.3 From 6a4ad78dd6ec24590c3e26d410b1e995765f8767 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 22 Oct 2017 15:58:07 +0200 Subject: gnu: python-graphviz: Update to 0.8.1. * gnu/packages/graphviz.scm (python-graphviz): Update to 0.8.1. --- gnu/packages/graphviz.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm index 5f2fcb8602..c71fb74cfb 100644 --- a/gnu/packages/graphviz.scm +++ b/gnu/packages/graphviz.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2015 Efraim Flashner ;;; Copyright © 2016 Theodoros Foradis ;;; Copyright © 2017 Ricardo Wurmus +;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -112,13 +113,13 @@ (define-public graphviz (define-public python-graphviz (package (name "python-graphviz") - (version "0.8") + (version "0.8.1") (source (origin (method url-fetch) (uri (pypi-uri "graphviz" version ".zip")) (sha256 (base32 - "0i738qb32w93hraxzjwkvnxmrfwcalhjd14fdbah9f2mk46p5748")))) + "00rzqsmq25b0say05vix5xivchdvsv83jl2i8pkryqd0nz4bxzvb")))) (build-system python-build-system) (native-inputs `(("unzip" ,unzip))) -- cgit v1.2.3 From afd845368af0c78e22850aaa067d5dc6bebd5f97 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 22 Oct 2017 15:57:02 +0200 Subject: gnu: python-peewee: Update to 2.10.2. * gnu/packages/databases.scm (python-peewee): Update to 2.10.2. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 30b1661299..0dd5f53d42 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1582,14 +1582,14 @@ (define-public libpqxx (define-public python-peewee (package (name "python-peewee") - (version "2.8.3") + (version "2.10.2") (source (origin (method url-fetch) (uri (pypi-uri "peewee" version)) (sha256 (base32 - "1605bk11s7aap2q4qyba93rx7yfh8b11kk0cqi08z8klx2iar8yd")))) + "10f2mrd5hw6rjklrzaix2lsxlgc8vx3xak54arcy6yd791zhchi3")))) (build-system python-build-system) (arguments `(#:tests? #f)) ; Fails to import test data -- cgit v1.2.3 From 57af0d13b2ff44dd152febfe8b96cd7c859b2844 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 22 Oct 2017 15:57:30 +0200 Subject: gnu: python-lmdb: Update to 0.93. * gnu/packages/databases.scm (python-lmdb): Update to 0.93. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 0dd5f53d42..991bb3d692 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1728,13 +1728,13 @@ (define-public mdbtools (define-public python-lmdb (package (name "python-lmdb") - (version "0.92") + (version "0.93") (source (origin (method url-fetch) (uri (pypi-uri "lmdb" version)) (sha256 (base32 - "01nw6r08jkipx6v92kw49z34wmwikrpvc5j9xawdiyg1n2526wrx")) + "0xdpb298fyl68acadbwv5801wcwfpnhc7sm4bnrq1x4bd5dhhsql")) (modules '((guix build utils))) (snippet ;; Delete bundled lmdb source files. -- cgit v1.2.3 From cc14a90fd3ce34a371175de610f9befcb2dad52b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 23 Oct 2017 14:30:52 +0200 Subject: gnu: borg: Update to 1.1.1. * gnu/packages/backup.scm (borg): Update to 1.1.1. --- gnu/packages/backup.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 4c5c9c7ae4..9de120bf26 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -463,13 +463,13 @@ (define-public libchop (define-public borg (package (name "borg") - (version "1.1.0") + (version "1.1.1") (source (origin (method url-fetch) (uri (pypi-uri "borgbackup" version)) (sha256 (base32 - "0vwyg0b4kxb0rspqwhvgi5c78dzimgkydf03wif27a40qhh1235l")) + "0iik5lq349cl87imlwra2pp0j36wjhpn8r1d3778azvvqpyjq2d5")) (modules '((guix build utils))) (snippet '(for-each -- cgit v1.2.3 From 1a6497dee43e7469040a6eb9dab101f6fc764eca Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sat, 21 Oct 2017 21:03:03 +0200 Subject: gnu: Add python2-libmpsse. * gnu/packages/embedded.scm: Add imports. (python2-libmpsse): New variable. --- gnu/packages/embedded.scm | 65 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm index e89f5570b0..033d0032e7 100644 --- a/gnu/packages/embedded.scm +++ b/gnu/packages/embedded.scm @@ -42,6 +42,8 @@ (define-module (gnu packages embedded) #:use-module (gnu packages libusb) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) + #:use-module (gnu packages swig) #:use-module (gnu packages texinfo) #:use-module (srfi srfi-1)) @@ -867,3 +869,66 @@ (define-public gcc-vc4 (synopsis "GCC for VC4") (description "This package provides @code{gcc} for VideoCore IV, the Raspberry Pi chip.")))) + +(define-public python2-libmpsse + (package + (name "python2-libmpsse") + (version "1.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://storage.googleapis.com/" + "google-code-archive-downloads/v2/" + "code.google.com/libmpsse/" + "libmpsse-" version ".tar.gz")) + (sha256 + (base32 + "0jq7nhqq3na8675jnpfcar3pd3dp3adhhc4lw900swkla01a1wh8")))) + (build-system gnu-build-system) + (inputs + `(("libftdi" ,libftdi) + ("python" ,python-2))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("swig" ,swig) + ("which" ,base:which))) + (arguments + `(#:tests? #f ; No tests exist. + #:make-flags + (list (string-append "CFLAGS=-Wall -fPIC -fno-strict-aliasing -g -O2 " + "$(shell pkg-config --cflags libftdi1)")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-environment-up + (lambda* (#:key inputs outputs #:allow-other-keys) + (chdir "src") + (setenv "PYDEV" (string-append (assoc-ref inputs "python") + "/include/python2.7")) + #t)) + (add-after 'unpack 'patch-global-variable + (lambda _ + ;; fast_rw_buf was defined in a header file which was making + ;; the build not reproducible. + (substitute* "src/fast.c" + (("^int fast_build_block_buffer") " + +unsigned char fast_rw_buf[SPI_RW_SIZE + CMD_SIZE]; +int fast_build_block_buffer")) + (substitute* "src/mpsse.h" + (("unsigned char fast_rw_buf.*") " +")) + #t)) + (replace 'install + (lambda* (#:key outputs make-flags #:allow-other-keys #:rest args) + (let* ((out (assoc-ref outputs "out")) + (out-python (string-append out + "/lib/python2.7/site-packages")) + (install (assoc-ref %standard-phases 'install))) + (install #:make-flags (cons (string-append "PYLIB=" out-python) + make-flags)))))))) + (home-page "https://code.google.com/archive/p/libmpsse/") + (synopsis "Python library for MPSSE SPI I2C JTAG adapter by FTDI") + (description "This package provides a library in order to support the +MPSSE (Multi-Protocol Synchronous Serial Engine) adapter by FTDI that can do +SPI, I2C, JTAG.") + (license license:gpl2+))) -- cgit v1.2.3 From 90a127c7ed63c22485f0751f3c24a9072a05c8b8 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 10 Oct 2017 22:41:08 +0200 Subject: gnu: Add java-hdrhistogram. * gnu/packages/web.scm (java-hdrhistogram): New variable. --- gnu/packages/java.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 45cb16f1f6..901d16eabb 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6020,3 +6020,42 @@ (define-public java-fasterxml-jackson-dataformat-xml @code{JsonFactory}) as well as small number of higher level overrides needed to make data-binding work.") (license license:asl2.0))); found on wiki.fasterxml.com/JacksonLicensing + +(define-public java-hdrhistogram + (package + (name "java-hdrhistogram") + (version "2.1.9") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/HdrHistogram/HdrHistogram/" + "archive/HdrHistogram-" version ".tar.gz")) + (sha256 + (base32 + "1sicbmc3sr42nw93qbkb26q9rn33ag33k6k77phjc3j5h5gjffqv")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-hdrhistogram.jar" + #:source-dir "src/main/java" + #:phases + (modify-phases %standard-phases + (add-before 'configure 'set-version + (lambda _ + (let* ((version-java "src/main/java/org/HdrHistogram/Version.java") + (template (string-append version-java ".template"))) + (copy-file template version-java) + (substitute* version-java + (("\\$VERSION\\$") ,version) + (("\\$BUILD_TIME\\$") "0")) + #t)))))) + (native-inputs + `(("junit" ,java-junit) + ("hamcrest" ,java-hamcrest-core))) + (home-page "https://hdrhistogram.github.io/HdrHistogram") + (synopsis "High dynamic range histogram") + (description "Hdrhistogram allows to create histograms that support +recording and analyzing sampled data value counts across a configurable integer +value range with configurable value precision within the range. Value precision +is expressed as the number of significant digits in the value recording, and +provides control over value quantization behavior across the value range and +the subsequent value resolution at any given level.") + (license license:public-domain))) -- cgit v1.2.3 From 91072287a6b07a9fd6a43c717cc6fcecaa7e77c9 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 23 Oct 2017 21:54:44 +0200 Subject: gnu: Add java-tomcat. * gnu/packages/web.scm (java-tomcat): New variable. --- gnu/packages/web.scm | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index c7b44fafa1..bc0c606f86 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -52,6 +52,7 @@ (define-module (gnu packages web) #:use-module (guix build-system r) #:use-module (guix build-system trivial) #:use-module (guix build-system python) + #:use-module (guix build-system ant) #:use-module (gnu packages) #:use-module (gnu packages apr) #:use-module (gnu packages check) @@ -5384,3 +5385,54 @@ (define-public python-py-ubjson "Py-ubjson is a Python module providing an Universal Binary JSON encoder/decoder based on the draft-12 specification for UBJSON.") (license l:asl2.0))) + +(define-public java-tomcat + (package + (name "java-tomcat") + (version "8.5.23") + (source (origin + (method url-fetch) + (uri (string-append "mirror://apache/tomcat/tomcat-8/v" + version "/src/apache-tomcat-" version "-src.tar.gz")) + (sha256 + (base32 + "1m6b1dikib46kbgz9gf0p6svi00nsw62b9kgjzn6sda151skbbza")))) + (build-system ant-build-system) + (inputs + `(("java-eclipse-jdt-core" ,java-eclipse-jdt-core))) + (native-inputs + `(("java-junit" ,java-junit))) + (arguments + `(#:build-target "package" + #:tests? #f; requires downloading some files. + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'prevent-download + (lambda _ + ;; This directory must exist + (mkdir "downloads") + ;; We patch build.xml so it doesn't download any dependency, because + ;; we already have all of them. + (substitute* "build.xml" + (("download-compile,") "") + (("depends=\"validate\"") "depends=\"build-prepare\"") + ((",download-validate") "")) + #t)) + (add-after 'unpack 'generate-properties + (lambda _ + ;; This could have been passed to make-flags, but getcwd returns + ;; a different directory then. + (with-output-to-file "build.properties" + (lambda _ + (display + (string-append "base.path=" (getcwd) "/downloads\n")))) + #t)) + (replace 'install + (install-jars "output/build/lib"))))) + (home-page "https://tomcat.apache.org") + (synopsis "Java Servlet, JavaServer Pages, Java Expression Language and Java +WebSocket") + (description "Apache Tomcat is a free implementation of the Java +Servlet, JavaServer Pages, Java Expression Language and Java WebSocket +technologies.") + (license l:asl2.0))) -- cgit v1.2.3 From 339bef37cd2fce78333ac1c52060c0b03db62aae Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 15 Oct 2017 00:07:09 +0200 Subject: gnu: Add java-eclipse-jetty-test-helper. * gnu/packages/web.scm (java-eclipse-jetty-test-helper): New variable. --- gnu/packages/web.scm | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index bc0c606f86..b1d267dc49 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5436,3 +5436,54 @@ (define-public java-tomcat Servlet, JavaServer Pages, Java Expression Language and Java WebSocket technologies.") (license l:asl2.0))) + +(define-public java-eclipse-jetty-test-helper + (package + (name "java-eclipse-jetty-test-helper") + (version "4.2") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/eclipse/jetty.toolchain/" + "archive/jetty-test-helper-" version ".tar.gz")) + (sha256 + (base32 + "1jd6r9wc26fa11si4rn2gvy8ml8q4zw1nr6v04mjp8wvwpgvzwx5")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "eclipse-jetty-test-helper.jar" + #:source-dir "src/main/java" + #:test-dir "src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-test-helper"))) + (add-before 'build 'fix-paths + (lambda _ + ;; TODO: + ;; This file assumes that the build directory is named "target" + ;; but it is not the case with our ant-build-system. Once we have + ;; maven though, we will have to rebuild this package because this + ;; assumption is correct with maven-build-system. + (substitute* + "src/main/java/org/eclipse/jetty/toolchain/test/MavenTestingUtils.java" + (("\"target\"") "\"build\"") + (("\"tests\"") "\"test-classes\"")) + ;; Tests assume we are building with maven, so that the build + ;; directory is named "target", and not "build". + (with-directory-excursion "src/test/java/org/eclipse/jetty/toolchain/test" + (substitute* '("FSTest.java" "OSTest.java" "TestingDirTest.java" + "MavenTestingUtilsTest.java") + (("target/tests") "build/test-classes") + (("\"target") "\"build"))) + #t))))) + (inputs + `(("junit" ,java-junit) + ("hamcrest" ,java-hamcrest-all))) + (home-page "https://www.eclipse.org/jetty/") + (synopsis "Helper classes for jetty tests") + (description "This packages contains helper classes for testing the Jetty +Web Server.") + ;; This program is licensed under both epl and asl. + (license (list l:epl1.0 l:asl2.0)))) -- cgit v1.2.3 From 1f985e4497a8840ff41409c64e4152ea19ec6535 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 23 Oct 2017 20:57:23 +0200 Subject: gnu: Add java-eclipse-jetty-perf-helper. * gnu/packages/web.scm (java-eclipse-jetty-perf-helper): New variable. --- gnu/packages/web.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index b1d267dc49..ded86c7f41 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5487,3 +5487,21 @@ (define-public java-eclipse-jetty-test-helper Web Server.") ;; This program is licensed under both epl and asl. (license (list l:epl1.0 l:asl2.0)))) + +(define-public java-eclipse-jetty-perf-helper + (package + (inherit java-eclipse-jetty-test-helper) + (name "java-eclipse-jetty-perf-helper") + (arguments + `(#:jar-name "eclipse-jetty-perf-helper.jar" + #:source-dir "src/main/java" + #:tests? #f; no tests + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-perf-helper") + #t))))) + (inputs + `(("hdrhistogram" ,java-hdrhistogram))))) -- cgit v1.2.3 From 1657d62ae5f77a0a0755689e1995759044b82374 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 10 Oct 2017 23:10:42 +0200 Subject: gnu: Add java-eclipse-jetty-util. * gnu/packages/web.scm (java-eclipse-jetty-util): New variable. --- gnu/packages/web.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index ded86c7f41..cd84d9c150 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5505,3 +5505,48 @@ (define-public java-eclipse-jetty-perf-helper #t))))) (inputs `(("hdrhistogram" ,java-hdrhistogram))))) + +(define-public java-eclipse-jetty-util + (package + (name "java-eclipse-jetty-util") + (version "9.4.6") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/eclipse/jetty.project/" + "archive/jetty-" version ".v20170531.tar.gz")) + (sha256 + (base32 + "0x7kbdvkmgr6kbsmbwiiyv3bb0d6wk25frgvld9cf8540136z9p1")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "eclipse-jetty-util.jar" + #:source-dir "src/main/java" + #:test-exclude + (list "**/Abstract*.java" + ;; requires network + "**/InetAddressSetTest.java" + ;; Assumes we are using maven + "**/TypeUtilTest.java" + ;; Error on the style of log + "**/StdErrLogTest.java") + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-util") + #t))))) + (inputs + `(("slf4j" ,java-slf4j-api) + ("servlet" ,java-tomcat))) + (native-inputs + `(("junit" ,java-junit) + ("hamcrest" ,java-hamcrest-all) + ("perf-helper" ,java-eclipse-jetty-perf-helper) + ("test-helper" ,java-eclipse-jetty-test-helper))) + (home-page "https://www.eclipse.org/jetty/") + (synopsis "Utility classes for Jetty") + (description "The Jetty Web Server provides an HTTP server and Servlet +container capable of serving static and dynamic content either from a standalone +or embedded instantiation. This package provides utility classes.") + (license (list l:epl1.0 l:asl2.0)))) -- cgit v1.2.3 From 5010671d4d58ff9f7cf8d2d5451f8bff636ede0d Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 10 Oct 2017 23:12:14 +0200 Subject: gnu: Add java-eclipse-jetty-util-9.2. * gnu/packages/web.scm (java-eclipse-jetty-util-9.2): New variable. --- gnu/packages/web.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index cd84d9c150..dfe02a68f3 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5550,3 +5550,48 @@ (define-public java-eclipse-jetty-util container capable of serving static and dynamic content either from a standalone or embedded instantiation. This package provides utility classes.") (license (list l:epl1.0 l:asl2.0)))) + +;; This version is required by maven-wagon +(define-public java-eclipse-jetty-util-9.2 + (package + (inherit java-eclipse-jetty-util) + (version "9.2.22") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/eclipse/jetty.project/" + "archive/jetty-" version ".v20170606.tar.gz")) + (sha256 + (base32 + "1i51qlsd7h06d35kx5rqpzbfadbcszycx1iwr6vz7qc9gf9f29la")))) + (arguments + `(#:jar-name "eclipse-jetty-util.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:test-exclude + (list "**/Abstract*.java" + ;; requires network + "**/InetAddressSetTest.java" + ;; Assumes we are using maven + "**/TypeUtilTest.java" + ;; We don't have an implementation for slf4j + "**/LogTest.java" + ;; Error on the style of log + "**/StdErrLogTest.java") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-util") + #t)) + (add-before 'build 'fix-test-sources + (lambda _ + ;; We need to fix issues caused by changes in newer versions of + ;; jetty-test-helper + (let ((src "src/test/java/org/eclipse/jetty/util/resource")) + (substitute* (string-append src "/AbstractFSResourceTest.java") + (("testdir.getDir\\(\\)") "testdir.getPath().toFile()") + (("testdir.getFile\\(\"foo\"\\)") + "testdir.getPathFile(\"foo\").toFile()") + (("testdir.getFile\\(name\\)") + "testdir.getPathFile(name).toFile()"))) + #t))))))) -- cgit v1.2.3 From b510b7f58f27e6bc635e14816cd404fd507e7dc1 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:35:49 +0200 Subject: gnu: Add java-eclipse-jetty-io. * gnu/packages/web.scm (java-eclipse-jetty-io): New variable. --- gnu/packages/web.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index dfe02a68f3..912ff4e976 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5595,3 +5595,29 @@ (define-public java-eclipse-jetty-util-9.2 (("testdir.getFile\\(name\\)") "testdir.getPathFile(name).toFile()"))) #t))))))) + +(define-public java-eclipse-jetty-io + (package + (inherit java-eclipse-jetty-util) + (name "java-eclipse-jetty-io") + (arguments + `(#:jar-name "eclipse-jetty-io.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:test-exclude (list "**/Abstract*.java" + ;; Abstract class + "**/EndPointTest.java") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-io") + #t))))) + (inputs + `(("slf4j" ,java-slf4j-api) + ("servlet" ,java-tomcat) + ("util" ,java-eclipse-jetty-util))) + (synopsis "Jetty :: IO Utility") + (description "The Jetty Web Server provides an HTTP server and Servlet +container capable of serving static and dynamic content either from a standalone +or embedded instantiation. This package provides IO-related utility classes."))) -- cgit v1.2.3 From b90012fddf81dec30832d6f31e5b7048e9aa1bfe Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:36:23 +0200 Subject: gnu: Add java-eclipse-jetty-io-9.2. * gnu/packages/web.scm (java-eclipse-jetty-io-9.2): New variable. --- gnu/packages/web.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 912ff4e976..0aa9d9bcb7 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5621,3 +5621,18 @@ (define-public java-eclipse-jetty-io (description "The Jetty Web Server provides an HTTP server and Servlet container capable of serving static and dynamic content either from a standalone or embedded instantiation. This package provides IO-related utility classes."))) + +(define-public java-eclipse-jetty-io-9.2 + (package + (inherit java-eclipse-jetty-io) + (version (package-version java-eclipse-jetty-util-9.2)) + (source (package-source java-eclipse-jetty-util-9.2)) + (inputs + `(("util" ,java-eclipse-jetty-util-9.2) + ,@(package-inputs java-eclipse-jetty-util-9.2))) + (native-inputs + `(("mockito" ,java-mockito-1) + ("cglib" ,java-cglib) + ("objenesis" ,java-objenesis) + ("asm" ,java-asm) + ,@(package-native-inputs java-eclipse-jetty-util-9.2))))) -- cgit v1.2.3 From 4a1376d3fda67e25cbd259ef09d8026a28e697e0 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:37:33 +0200 Subject: gnu: Add java-eclipse-jetty-http. * gnu/packages/web.scm (java-eclipse-jetty-http): New variable. --- gnu/packages/web.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 0aa9d9bcb7..8059956801 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5636,3 +5636,32 @@ (define-public java-eclipse-jetty-io-9.2 ("objenesis" ,java-objenesis) ("asm" ,java-asm) ,@(package-native-inputs java-eclipse-jetty-util-9.2))))) + +(define-public java-eclipse-jetty-http + (package + (inherit java-eclipse-jetty-util) + (name "java-eclipse-jetty-http") + (arguments + `(#:jar-name "eclipse-jetty-http.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-http") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (mkdir-p "build/classes") + (copy-recursively "src/main/resources/" "build/classes/") + #t))))) + (inputs + `(("slf4j" ,java-slf4j-api) + ("servlet" ,java-tomcat) + ("io" ,java-eclipse-jetty-io) + ("util" ,java-eclipse-jetty-util))) + (synopsis "Jetty :: Http Utility") + (description "The Jetty Web Server provides an HTTP server and Servlet +container capable of serving static and dynamic content either from a standalone +or embedded instantiation. This package provides HTTP-related utility classes."))) -- cgit v1.2.3 From 821869fcf4e7bfd01b2b8c76a2f59b354a8bc9de Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:38:21 +0200 Subject: gnu: Add java-eclipse-jetty-http-9.2. * gnu/packages/web.scm (java-eclipse-jetty-http-9.2): New variable. --- gnu/packages/web.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 8059956801..16e6911185 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5665,3 +5665,13 @@ (define-public java-eclipse-jetty-http (description "The Jetty Web Server provides an HTTP server and Servlet container capable of serving static and dynamic content either from a standalone or embedded instantiation. This package provides HTTP-related utility classes."))) + +(define-public java-eclipse-jetty-http-9.2 + (package + (inherit java-eclipse-jetty-http) + (version (package-version java-eclipse-jetty-util-9.2)) + (source (package-source java-eclipse-jetty-util-9.2)) + (inputs + `(("util" ,java-eclipse-jetty-util-9.2) + ("io" ,java-eclipse-jetty-io-9.2) + ,@(package-inputs java-eclipse-jetty-util-9.2))))) -- cgit v1.2.3 From 4b172061e5b2e27d4641ae7f6d46eac841eeb5d0 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:40:30 +0200 Subject: gnu: Add java-eclipse-jetty-jmx. * gnu/packages/web.scm (java-eclipse-jetty-jmx): New variable. --- gnu/packages/web.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 16e6911185..ee3c457927 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5675,3 +5675,27 @@ (define-public java-eclipse-jetty-http-9.2 `(("util" ,java-eclipse-jetty-util-9.2) ("io" ,java-eclipse-jetty-io-9.2) ,@(package-inputs java-eclipse-jetty-util-9.2))))) + +(define-public java-eclipse-jetty-jmx + (package + (inherit java-eclipse-jetty-util) + (name "java-eclipse-jetty-jmx") + (arguments + `(#:jar-name "eclipse-jetty-jmx.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:tests? #f; FIXME: requires com.openpojo.validation + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-jmx") + #t))))) + (inputs + `(("slf4j" ,java-slf4j-api) + ("servlet" ,java-tomcat) + ("util" ,java-eclipse-jetty-util))) + (synopsis "Jetty :: JMX Management") + (description "The Jetty Web Server provides an HTTP server and Servlet +container capable of serving static and dynamic content either from a standalone +or embedded instantiation. This package provides the JMX management."))) -- cgit v1.2.3 From 812c712f7a14289fd99c28dfbfb8ed7d6fab53f4 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:41:01 +0200 Subject: gnu: Add java-eclipse-jetty-jmx-9.2. * gnu/packages/web.scm (java-eclipse-jetty-jmx-9.2): New variable. --- gnu/packages/web.scm | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index ee3c457927..37db8ccdd7 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5699,3 +5699,12 @@ (define-public java-eclipse-jetty-jmx (description "The Jetty Web Server provides an HTTP server and Servlet container capable of serving static and dynamic content either from a standalone or embedded instantiation. This package provides the JMX management."))) + +(define-public java-eclipse-jetty-jmx-9.2 + (package + (inherit java-eclipse-jetty-jmx) + (version (package-version java-eclipse-jetty-util-9.2)) + (source (package-source java-eclipse-jetty-util-9.2)) + (inputs + `(("util" ,java-eclipse-jetty-util-9.2) + ,@(package-inputs java-eclipse-jetty-util-9.2))))) -- cgit v1.2.3 From 5d38f7e4e89fe57256c372d0ff38a55362627788 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:45:46 +0200 Subject: gnu: Add java-eclipse-jetty-server. * gnu/packages/web.scm (java-eclipse-jetty-server): New variable. --- gnu/packages/web.scm | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 37db8ccdd7..bab62eb4d3 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5708,3 +5708,73 @@ (define-public java-eclipse-jetty-jmx-9.2 (inputs `(("util" ,java-eclipse-jetty-util-9.2) ,@(package-inputs java-eclipse-jetty-util-9.2))))) + +(define java-eclipse-jetty-http-test-classes + (package + (inherit java-eclipse-jetty-util) + (name "java-eclipse-jetty-http-test-classes") + (arguments + `(#:jar-name "eclipse-jetty-http.jar" + #:source-dir "src/test" + #:tests? #f + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-http")))))) + (inputs + `(("slf4j" ,java-slf4j-api) + ("servlet" ,java-tomcat) + ("http" ,java-eclipse-jetty-http) + ("io" ,java-eclipse-jetty-io) + ("util" ,java-eclipse-jetty-util))))) + +(define-public java-eclipse-jetty-server + (package + (inherit java-eclipse-jetty-util) + (name "java-eclipse-jetty-server") + (arguments + `(#:jar-name "eclipse-jetty-server.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:tests? #f; requires a mockito version we don't have + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-server") + #t)) + (add-before 'build 'fix-source + (lambda _ + ;; Explicit casts to prevent build failures + (substitute* "src/main/java/org/eclipse/jetty/server/Request.java" + (("append\\(LazyList") + "append((CharSequence)LazyList")) + (substitute* + "src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java" + (((string-append + "Class<\\? extends EventListener> clazz = _classLoader==null" + "\\?Loader.loadClass\\(ContextHandler.class,className\\):" + "_classLoader.loadClass\\(className\\);")) + (string-append "Class clazz = " + "(Class) " + "(_classLoader==null?Loader.loadClass(" + "ContextHandler.class,className):" + "_classLoader.loadClass(className));"))) + #t))))) + (inputs + `(("slf4j" ,java-slf4j-api) + ("servlet" ,java-tomcat) + ("http" ,java-eclipse-jetty-http) + ("io" ,java-eclipse-jetty-io) + ("jmx" ,java-eclipse-jetty-jmx) + ("util" ,java-eclipse-jetty-util))) + (native-inputs + `(("test-classes" ,java-eclipse-jetty-http-test-classes) + ,@(package-native-inputs java-eclipse-jetty-util))) + (synopsis "Core jetty server artifact") + (description "The Jetty Web Server provides an HTTP server and Servlet +container capable of serving static and dynamic content either from a standalone +or embedded instantiation. This package provides the core jetty server +artifact."))) -- cgit v1.2.3 From e36e2bee4619e812d7a942cec94565aeeda9b37a Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:48:10 +0200 Subject: gnu: Add java-eclipse-jetty-server-9.2. * gnu/packages/web.scm (java-eclipse-jetty-server-9.2): New variable. --- gnu/packages/web.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index bab62eb4d3..9e0f31cc2b 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5730,6 +5730,15 @@ (define java-eclipse-jetty-http-test-classes ("io" ,java-eclipse-jetty-io) ("util" ,java-eclipse-jetty-util))))) +(define java-eclipse-jetty-http-test-classes-9.2 + (package + (inherit java-eclipse-jetty-http-test-classes) + (version (package-version java-eclipse-jetty-util-9.2)) + (source (package-source java-eclipse-jetty-util-9.2)) + (inputs + `(("http" ,java-eclipse-jetty-http-9.2) + ,@(package-inputs java-eclipse-jetty-http-9.2))))) + (define-public java-eclipse-jetty-server (package (inherit java-eclipse-jetty-util) @@ -5778,3 +5787,18 @@ (define-public java-eclipse-jetty-server container capable of serving static and dynamic content either from a standalone or embedded instantiation. This package provides the core jetty server artifact."))) + +(define-public java-eclipse-jetty-server-9.2 + (package + (inherit java-eclipse-jetty-server) + (version (package-version java-eclipse-jetty-util-9.2)) + (source (package-source java-eclipse-jetty-util-9.2)) + (inputs + `(("util" ,java-eclipse-jetty-util-9.2) + ("jmx" ,java-eclipse-jetty-jmx-9.2) + ("io" ,java-eclipse-jetty-io-9.2) + ("http" ,java-eclipse-jetty-http-9.2) + ,@(package-inputs java-eclipse-jetty-util-9.2))) + (native-inputs + `(("test-classes" ,java-eclipse-jetty-http-test-classes-9.2) + ,@(package-native-inputs java-eclipse-jetty-util-9.2))))) -- cgit v1.2.3 From 8528e20dff43ded152020a43dc2d1a5ff837e502 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:51:00 +0200 Subject: gnu: Add java-eclipse-jetty-security. * gnu/packages/web.scm (java-eclipse-jetty-security): New variable. --- gnu/packages/web.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 9e0f31cc2b..0e3a8017be 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5802,3 +5802,32 @@ (define-public java-eclipse-jetty-server-9.2 (native-inputs `(("test-classes" ,java-eclipse-jetty-http-test-classes-9.2) ,@(package-native-inputs java-eclipse-jetty-util-9.2))))) + +(define-public java-eclipse-jetty-security + (package + (inherit java-eclipse-jetty-util) + (name "java-eclipse-jetty-security") + (arguments + `(#:jar-name "eclipse-jetty-security.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-security") + #t))))) + (inputs + `(("slf4j" ,java-slf4j-api) + ("servlet" ,java-tomcat) + ("http" ,java-eclipse-jetty-http) + ("server" ,java-eclipse-jetty-server) + ("util" ,java-eclipse-jetty-util))) + (native-inputs + `(("io" ,java-eclipse-jetty-io) + ,@(package-native-inputs java-eclipse-jetty-util))) + (synopsis "Jetty security infrastructure") + (description "The Jetty Web Server provides an HTTP server and Servlet +container capable of serving static and dynamic content either from a standalone +or embedded instantiation. This package provides the core jetty security +infrastructure"))) -- cgit v1.2.3 From fa2a23a1460140f5ec71df8a83482a928c4d7875 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:51:54 +0200 Subject: gnu: Add java-eclipse-jetty-security-9.2. * gnu/packages/web.scm (java-eclipse-jetty-security-9.2): New variable. --- gnu/packages/web.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 0e3a8017be..2fbdf86d39 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5831,3 +5831,17 @@ (define-public java-eclipse-jetty-security container capable of serving static and dynamic content either from a standalone or embedded instantiation. This package provides the core jetty security infrastructure"))) + +(define-public java-eclipse-jetty-security-9.2 + (package + (inherit java-eclipse-jetty-security) + (version (package-version java-eclipse-jetty-util-9.2)) + (source (package-source java-eclipse-jetty-util-9.2)) + (inputs + `(("util" ,java-eclipse-jetty-util-9.2) + ("http" ,java-eclipse-jetty-http-9.2) + ("server" ,java-eclipse-jetty-server-9.2) + ,@(package-inputs java-eclipse-jetty-util-9.2))) + (native-inputs + `(("io" ,java-eclipse-jetty-io-9.2) + ,@(package-native-inputs java-eclipse-jetty-util-9.2))))) -- cgit v1.2.3 From fb680f88e903c95860ab1dc63c1aa764ddb553cc Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 22:55:57 +0200 Subject: gnu: Add java-eclipse-jetty-servlet. * gnu/packages/web.scm (java-eclipse-jetty-servlet): New variable. --- gnu/packages/web.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 2fbdf86d39..dad971fa9d 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5845,3 +5845,33 @@ (define-public java-eclipse-jetty-security-9.2 (native-inputs `(("io" ,java-eclipse-jetty-io-9.2) ,@(package-native-inputs java-eclipse-jetty-util-9.2))))) + +(define-public java-eclipse-jetty-servlet + (package + (inherit java-eclipse-jetty-util) + (name "java-eclipse-jetty-servlet") + (arguments + `(#:jar-name "eclipse-jetty-servlet.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-servlet") + #t))))) + (inputs + `(("slf4j" ,java-slf4j-api) + ("servlet" ,java-tomcat) + ("http" ,java-eclipse-jetty-http) + ("http-test" ,java-eclipse-jetty-http-test-classes) + ("io" ,java-eclipse-jetty-io) + ("jmx" ,java-eclipse-jetty-jmx) + ("security" ,java-eclipse-jetty-security) + ("server" ,java-eclipse-jetty-server) + ("util" ,java-eclipse-jetty-util))) + (synopsis "Jetty Servlet Container") + (description "The Jetty Web Server provides an HTTP server and Servlet +container capable of serving static and dynamic content either from a standalone +or embedded instantiation. This package provides the core jetty servlet +container."))) -- cgit v1.2.3 From 213bb981801f5c001d1066852e855dff253ab008 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 23:00:30 +0200 Subject: gnu: Add java-eclipse-jetty-servlet-9.2. * gnu/packages/web.scm (java-eclipse-jetty-servlet-9.2): New variable. --- gnu/packages/web.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index dad971fa9d..0e6b95e599 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5875,3 +5875,29 @@ (define-public java-eclipse-jetty-servlet container capable of serving static and dynamic content either from a standalone or embedded instantiation. This package provides the core jetty servlet container."))) + +(define-public java-eclipse-jetty-servlet-9.2 + (package + (inherit java-eclipse-jetty-servlet) + (version (package-version java-eclipse-jetty-util-9.2)) + (source (package-source java-eclipse-jetty-util-9.2)) + (arguments + `(#:jar-name "eclipse-jetty-servlet.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:tests? #f; doesn't work + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-servlet") + #t))))) + (inputs + `(("util" ,java-eclipse-jetty-util-9.2) + ("jmx" ,java-eclipse-jetty-jmx-9.2) + ("io" ,java-eclipse-jetty-io-9.2) + ("http" ,java-eclipse-jetty-http-9.2) + ("security" ,java-eclipse-jetty-security-9.2) + ("http-test" ,java-eclipse-jetty-http-test-classes-9.2) + ("server" ,java-eclipse-jetty-server-9.2) + ,@(package-inputs java-eclipse-jetty-util-9.2))))) -- cgit v1.2.3 From 5d104a27565eea05302c2e3cd8ee2f4f5a8e1260 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 23:06:11 +0200 Subject: gnu: Add java-aopalliance. * gnu/packages/java.scm (java-aopalliance): New variable. --- gnu/packages/java.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 901d16eabb..07a50c4674 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6059,3 +6059,33 @@ (define-public java-hdrhistogram provides control over value quantization behavior across the value range and the subsequent value resolution at any given level.") (license license:public-domain))) + +(define-public java-aopalliance + (package + (name "java-aopalliance") + (version "1.0") + (source (origin + (method git-fetch) + ;; Note: this git repository is not official, but contains the + ;; source code that is in the CVS repository. Downloading the + ;; tarball from sourceforge is undeterministic, and the cvs download + ;; fails. + (uri (git-reference + (url "https://github.com/hoverruan/aopalliance") + (commit "0d7757ae204e5876f69431421fe9bc2a4f01e8a0"))) + (file-name (string-append name "-" version)) + (sha256 + (base32 + "0rsg2b0v3hxlq2yk1i3m2gw3xwq689j3cwx9wbxvqfpdcjbca0qr")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-aopalliance.jar" + #:jdk ,icedtea-8 + #:tests? #f; no tests + #:source-dir "aopalliance/src/main")) + (home-page "http://aopalliance.sourceforge.net") + (synopsis "Aspect-Oriented Programming") + (description "The AOP Alliance project is a joint project between several +software engineering people who are interested in Aspect-Oriented Programming +(AOP) and Java.") + (license license:public-domain))) -- cgit v1.2.3 From 454536e0cef32781109a4d9d72cc4c131d527b97 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 23:09:44 +0200 Subject: gnu: Add java-javax-inject. * gnu/packages/java.scm (java-javax-inject): New variable. --- gnu/packages/java.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 07a50c4674..4ef6c98c30 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6089,3 +6089,34 @@ (define-public java-aopalliance software engineering people who are interested in Aspect-Oriented Programming (AOP) and Java.") (license license:public-domain))) + +(define-public java-javax-inject + (package + (name "java-javax-inject") + (version "tck-1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/javax-inject/javax-inject/" + "archive/javax.inject-" version ".tar.gz")) + (sha256 + (base32 + "1ydrlvh2r7vr1g7lhjwy3w2dggpj9h6pix1lakkkgdywb365n6g0")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-javax-inject.jar" + #:jdk ,icedtea-8 + #:tests? #f)); no tests + (home-page "http://github.com/javax-inject/javax-inject") + (synopsis "JSR-330: Dependency Injection for Java") + (description "This package specifies a means for obtaining objects in such +a way as to maximize reusability, testability and maintainability compared to +traditional approaches such as constructors, factories, and service locators +(e.g., JNDI). This process, known as dependency injection, is beneficial to +most nontrivial applications. + +Many types depend on other types. For example, a @var{Stopwatch} might depend +on a @var{TimeSource}. The types on which a type depends are known as its +dependencies. The process of finding an instance of a dependency to use at run +time is known as resolving the dependency. If no such instance can be found, +the dependency is said to be unsatisfied, and the application is broken.") + (license license:asl2.0))) -- cgit v1.2.3 From 5766984b06a425914dcce9d04e98220ae10ef817 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 23:11:38 +0200 Subject: gnu: Add java-guice. * gnu/packages/java.scm (java-guice): New variable. --- gnu/packages/java.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 4ef6c98c30..ad7710f036 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -54,6 +54,7 @@ (define-module (gnu packages java) #:use-module (gnu packages image) #:use-module (gnu packages libffi) #:use-module (gnu packages linux) ;alsa + #:use-module (gnu packages web) #:use-module (gnu packages wget) #:use-module (gnu packages pkg-config) #:use-module (gnu packages perl) @@ -6120,3 +6121,33 @@ (define-public java-javax-inject time is known as resolving the dependency. If no such instance can be found, the dependency is said to be unsatisfied, and the application is broken.") (license license:asl2.0))) + +(define-public java-guice + (package + (name "java-guice") + (version "4.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/google/guice/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0dwmqjzlavb144ywqqglj3h68hqszkff8ai0a42hyb5il0qh4rbp")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-guice.jar" + #:jdk ,icedtea-8 + #:tests? #f; FIXME: tests are not in a java sub directory + #:source-dir "core/src")) + (inputs + `(("guava" ,java-guava) + ("java-cglib" ,java-cglib) + ("java-aopalliance" ,java-aopalliance) + ("java-javax-inject" ,java-javax-inject) + ("java-asm" ,java-asm))) + (home-page "https://github.com/google/guice") + (synopsis "Lightweight dependency injection framework") + (description "Guice is a lightweight dependency injection framework fo +Java 6 and above.") + (license license:asl2.0))) -- cgit v1.2.3 From ec4e8ad724084a8ba3b62f77821367ff89eeff6d Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 23:12:34 +0200 Subject: gnu: Add java-guice-servlet. * gnu/packages/java.scm (java-guice-servlet): New variable. --- gnu/packages/java.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index ad7710f036..38fc68681a 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6151,3 +6151,17 @@ (define-public java-guice (description "Guice is a lightweight dependency injection framework fo Java 6 and above.") (license license:asl2.0))) + +(define-public java-guice-servlet + (package + (inherit java-guice) + (name "java-guice-servlet") + (arguments + `(#:jar-name "guice-servlet.jar" + #:source-dir "extensions/servlet/src/" + #:jdk ,icedtea-8 + #:tests? #f)); FIXME: not in a java subdir + (inputs + `(("guice" ,java-guice) + ("servlet" ,java-tomcat) + ,@(package-inputs java-guice))))) -- cgit v1.2.3 From b12fe1e5170b7a49d8c9c5cd39afe9e267b4614a Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 23:27:43 +0200 Subject: gnu: Add java-assertj. * gnu/packages/java.scm (java-assertj): New variable. --- gnu/packages/java.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 38fc68681a..d6e425e24b 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6165,3 +6165,34 @@ (define-public java-guice-servlet `(("guice" ,java-guice) ("servlet" ,java-tomcat) ,@(package-inputs java-guice))))) + +(define-public java-assertj + (package + (name "java-assertj") + (version "3.8.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/joel-costigliola/" + "assertj-core/archive/" + "assertj-core-" version ".tar.gz")) + (sha256 + (base32 + "1kf124fxskf548rklkg86294w2x6ajqrff94rrhyqns31danqkfz")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-assertj.jar" + #:jdk ,icedtea-8 + #:source-dir "src/main/java" + #:tests? #f)); depends on tng-junit which depends on assertj + (inputs + `(("cglib" ,java-cglib) + ("junit" ,java-junit) + ("hamcrest" ,java-hamcrest-core))) + (native-inputs + `(("mockito" ,java-mockito-1))) + (home-page "https://joel-costigliola.github.io/assertj/index.html") + (synopsis "Fluent assertions for java") + (description "AssertJ core is a Java library that provides a fluent +interface for writing assertions. Its main goal is to improve test code +readability and make maintenance of tests easier.") + (license license:asl2.0))) -- cgit v1.2.3 From 6768e0a7a5f7171bf21db61e02c9de4d5776c682 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 14 Oct 2017 23:28:43 +0200 Subject: gnu: Add java-jboss-javassist. * gnu/packages/java.scm (java-jboss-javassist): New variable. --- gnu/packages/java.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index d6e425e24b..ff5f1c9ae6 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6196,3 +6196,38 @@ (define-public java-assertj interface for writing assertions. Its main goal is to improve test code readability and make maintenance of tests easier.") (license license:asl2.0))) + +(define-public java-jboss-javassist + (package + (name "java-jboss-javassist") + (version "3.21.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/jboss-javassist/javassist/" + "archive/rel_" + (string-map (lambda (x) (if (eq? x #\.) #\_ x)) version) + "_ga.tar.gz")) + (sha256 + (base32 + "10lpcr3sbf7y6fq6fc2h2ik7rqrivwcy4747bg0kxhwszil3cfmf")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-jboss-javassist.jar" + #:jdk ,icedtea-8 + #:source-dir "src/main" + #:tests? #f; FIXME: requires junit-awtui and junit-swingui from junit3 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'remove-binary + (lambda _ + (delete-file "javassist.jar") + #t))))) + (native-inputs + `(("junit" ,java-junit))) + (home-page "https://github.com/jboss-javassist/javassist") + (synopsis "Java bytecode engineering toolkit") + (description "Javassist (JAVA programming ASSISTant) makes Java bytecode +manipulation simple. It is a class library for editing bytecodes in Java; it +enables Java programs to define a new class at runtime and to modify a class +file when the JVM loads it.") + (license (list license:gpl2 license:cddl1.0)))); either gpl2 only or cddl. -- cgit v1.2.3 From 3b6958021df2d26a56b3ae78cff9f08cd79f06fc Mon Sep 17 00:00:00 2001 From: Petter Date: Mon, 23 Oct 2017 08:23:21 +0200 Subject: gnu: Add perl-xml-xpathengine. * gnu/packages/xml.scm (perl-xml-xpathengine): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/xml.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index d889e602ed..add9311a82 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2017 Adriano Peluso ;;; Copyright © 2017 Gregor Giesen ;;; Copyright © 2017 Alex Vong +;;; Copyright © 2017 Petter ;;; ;;; This file is part of GNU Guix. ;;; @@ -1266,3 +1267,28 @@ (define-public java-simple-xml reduced errors. It offers full object serialization and deserialization, maintaining each reference encountered.") (license license:asl2.0))) + +(define-public perl-xml-xpathengine + (package + (name "perl-xml-xpathengine") + (version "0.14") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MI/MIROD/" + "XML-XPathEngine-" version ".tar.gz")) + (sha256 + (base32 + "0r72na14bmsxfd16s9nlza155amqww0k8wsa9x2a3sqbpp5ppznj")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/XML-XPathEngine/") + (synopsis "Re-usable XPath engine for DOM-like trees") + (description + "This module provides an XPath engine, that can be re-used by other +modules/classes that implement trees. + +In order to use the XPath engine, nodes in the user module need to mimick DOM +nodes. The degree of similitude between the user tree and a DOM dictates how +much of the XPath features can be used. A module implementing all of the DOM +should be able to use this module very easily (you might need to add the +@code{cmp} method on nodes in order to get ordered result sets).") + (license license:perl-license))) -- cgit v1.2.3 From 9e1c358139d0029e8a0c6f4be9ce979976bfa07c Mon Sep 17 00:00:00 2001 From: Petter Date: Mon, 23 Oct 2017 08:25:19 +0200 Subject: gnu: Add perl-tree-xpathengine. * gnu/packages/xml.scm (perl-tree-xpathengine): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/xml.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index add9311a82..f8aea6f90d 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1292,3 +1292,24 @@ (define-public perl-xml-xpathengine should be able to use this module very easily (you might need to add the @code{cmp} method on nodes in order to get ordered result sets).") (license license:perl-license))) + +(define-public perl-tree-xpathengine + (package + (name "perl-tree-xpathengine") + (version "0.05") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MI/MIROD/" + "Tree-XPathEngine-" version ".tar.gz")) + (sha256 + (base32 + "1vbbw8wxm79r3xbra8narw1dqvm34510q67wbmg2zmj6zd1k06r9")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Tree-XPathEngine/") + (synopsis "Re-usable XPath engine") + (description + "This module provides an XPath engine, that can be re-used by other +module/classes that implement trees. It is designed to be compatible with +@code{Class::XPath}, ie it passes its tests if you replace @code{Class::XPath} +by @code{Tree::XPathEngine}.") + (license license:perl-license))) -- cgit v1.2.3 From b7c591951468723f7a83d581f567136e497d081f Mon Sep 17 00:00:00 2001 From: Petter Date: Mon, 23 Oct 2017 08:49:30 +0200 Subject: gnu: Add perl-xml-filter-buffertext. * gnu/packages/xml.scm (perl-xml-filter-buffertext): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/xml.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index f8aea6f90d..749ea81c58 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1313,3 +1313,27 @@ (define-public perl-tree-xpathengine @code{Class::XPath}, ie it passes its tests if you replace @code{Class::XPath} by @code{Tree::XPathEngine}.") (license license:perl-license))) + +(define-public perl-xml-filter-buffertext + (package + (name "perl-xml-filter-buffertext") + (version "1.01") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/R/RB/RBERJON/" + "XML-Filter-BufferText-" version ".tar.gz")) + (sha256 + (base32 + "0p5785c1dsk6kdp505vapb5h54k8krrz8699hpgm9igf7dni5llg")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-xml-sax-base" ,perl-xml-sax-base))) + (home-page "http://search.cpan.org/dist/XML-Filter-BufferText/") + (synopsis "Filter to put all characters() in one event") + (description "This is a very simple filter. One common cause of +grief (and programmer error) is that XML parsers aren't required to provide +character events in one chunk. They can, but are not forced to, and most +don't. This filter does the trivial but oft-repeated task of putting all +characters into a single event.") + (license license:perl-license))) -- cgit v1.2.3 From 33b592eed3b6652a8cb55b9dfcc33b22ab6609cc Mon Sep 17 00:00:00 2001 From: Petter Date: Mon, 23 Oct 2017 08:50:03 +0200 Subject: gnu: Add perl-xml-sax-writer. * gnu/packages/xml.scm (perl-xml-sax-writer): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/xml.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 749ea81c58..6463399a69 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1337,3 +1337,28 @@ (define-public perl-xml-filter-buffertext don't. This filter does the trivial but oft-repeated task of putting all characters into a single event.") (license license:perl-license))) + +(define-public perl-xml-sax-writer + (package + (name "perl-xml-sax-writer") + (version "0.57") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/P/PE/PERIGRIN/" + "XML-SAX-Writer-" version ".tar.gz")) + (sha256 + (base32 + "1w1cd1ybxdvhmnxdlkywi3x5ka3g4md42kyynksjc09vyizd0q9x")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-libxml" ,perl-libxml) + ("perl-xml-filter-buffertext" ,perl-xml-filter-buffertext) + ("perl-xml-namespacesupport", perl-xml-namespacesupport) + ("perl-xml-sax-base" ,perl-xml-sax-base))) + (home-page "http://search.cpan.org/dist/XML-SAX-Writer/") + (synopsis "SAX2 XML Writer") + (description + "This is an XML writer that understands SAX2. It is based on +@code{XML::Handler::YAWriter}.") + (license license:perl-license))) -- cgit v1.2.3 From 9e88b210f660ae73c1eb39bb16538c5aff0a2bfc Mon Sep 17 00:00:00 2001 From: Petter Date: Mon, 23 Oct 2017 08:51:31 +0200 Subject: gnu: Add perl-xml-handler-yawriter. * gnu/packages/xml.scm (perl-xml-handler-yawriter): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/xml.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 6463399a69..0c1a9abef5 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1362,3 +1362,24 @@ (define-public perl-xml-sax-writer "This is an XML writer that understands SAX2. It is based on @code{XML::Handler::YAWriter}.") (license license:perl-license))) + +(define-public perl-xml-handler-yawriter + (package + (name "perl-xml-handler-yawriter") + (version "0.23") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/K/KR/KRAEHE/" + "XML-Handler-YAWriter-" version ".tar.gz")) + (sha256 + (base32 + "11d45a1sz862va9rry3p2m77pwvq3kpsvgwhc5ramh9mbszbnk77")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-libxml" ,perl-libxml))) + (home-page "http://search.cpan.org/dist/XML-Handler-YAWriter/") + (synopsis "Yet another Perl SAX XML Writer") + (description "YAWriter implements Yet Another @code{XML::Handler::Writer}. +It provides a flexible escaping technique and pretty printing.") + (license license:perl-license))) -- cgit v1.2.3 From efc8f7d03d8c5857467fa14e85d5cdc267af58a7 Mon Sep 17 00:00:00 2001 From: Petter Date: Mon, 23 Oct 2017 09:05:42 +0200 Subject: gnu: Add perl-lwp-online. * gnu/packages/web.scm (perl-lwp-online): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/web.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 0e6b95e599..686659ad78 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -20,6 +20,7 @@ ;;; Copyright © 2017 Thomas Danckaert ;;; Copyright © 2017 Marius Bakke ;;; Copyright © 2017 Kei Kebreau +;;; Copyright © 2017 Petter ;;; ;;; This file is part of GNU Guix. ;;; @@ -2891,6 +2892,35 @@ (define-public perl-libwww help you implement simple HTTP servers.") (home-page "http://search.cpan.org/dist/libwww-perl/"))) +(define-public perl-lwp-online + (package + (name "perl-lwp-online") + (version "1.08") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/A/AD/ADAMK/LWP-Online-" + version ".tar.gz")) + (sha256 + (base32 + "176f6vbk1018i0y7xj9d406ndbjgwzan2j9nihxnsahzg2vr2vz2")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-libwww" ,perl-libwww) + ("perl-uri" ,perl-uri))) + (native-inputs + `(("perl-module-install" ,perl-module-install))) + (home-page "http://search.cpan.org/dist/LWP-Online/") + (synopsis "Checks whether your process has access to the web") + (description "This module attempts to answer, as accurately as it can, one +of the nastiest technical questions there is: am I on the internet? + +A host of networking and security issues make this problem very difficult. +There are firewalls, proxies (both well behaved and badly behaved). We might +not have DNS. We might not have a network card at all!") + (license l:perl-license))) + (define-public perl-lwp-mediatypes (package (name "perl-lwp-mediatypes") -- cgit v1.2.3 From 0a9bdd95835b1f8a39de44f1c230504234b0fb82 Mon Sep 17 00:00:00 2001 From: Petter Date: Mon, 23 Oct 2017 10:05:57 +0200 Subject: gnu: Add tidyp. * gnu/packages/web.scm (tidyp): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/web.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 686659ad78..2791eb05cc 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5931,3 +5931,29 @@ (define-public java-eclipse-jetty-servlet-9.2 ("http-test" ,java-eclipse-jetty-http-test-classes-9.2) ("server" ,java-eclipse-jetty-server-9.2) ,@(package-inputs java-eclipse-jetty-util-9.2))))) + +(define-public tidyp + (package + (name "tidyp") + (version "1.04") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/downloads/petdance/tidyp/tidyp-" + version ".tar.gz")) + (sha256 + (base32 + "0f5ky0ih4vap9c6j312jn73vn8m2bj69pl2yd3a5nmv35k9zmc10")))) + (build-system gnu-build-system) + ;; ./test-thing.sh tries to run ./testall.sh, which is not included. + (arguments `(#:tests? #f)) + (home-page "http://www.tidyp.com/") + (synopsis "Validate HTML") + (description "Tidyp is a program that can validate your HTML, as well as +modify it to be more clean and standard. tidyp does not validate HTML 5. + +libtidyp is the library on which the program is based. It can be used by any +other program that can interface to it. The Perl module @code{HTML::Tidy} is +based on this library, allowing Perl programmers to easily validate HTML.") + ;; See htmldoc/license.html + (license l:bsd-3))) -- cgit v1.2.3 From 7a04dddd268c1395d5bfc45ab55071b6faf6de79 Mon Sep 17 00:00:00 2001 From: Petter Date: Mon, 23 Oct 2017 23:16:21 +0200 Subject: gnu: Add perl-html-tidy. * gnu/packages/web.scm (perl-html-tidy): New variable. Co-authored-by: Ricardo Wurmus --- gnu/packages/web.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 2791eb05cc..9fc47969ae 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5957,3 +5957,41 @@ (define-public tidyp based on this library, allowing Perl programmers to easily validate HTML.") ;; See htmldoc/license.html (license l:bsd-3))) + +(define-public perl-html-tidy + (package + (name "perl-html-tidy") + (version "1.60") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/P/PE/PETDANCE/HTML-Tidy-" + version ".tar.gz")) + (sha256 + (base32 + "1iyp2fd6j75cn1xvcwl2lxr8qpjxssy2360cyqn6g3kzd1fzdyxw")))) + (build-system perl-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tidyp-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "Makefile.PL" + (("^my \\$inc = \"" line) + (string-append line + "-I" (assoc-ref inputs "tidyp") "/include/tidyp ")) + (("-L/usr/lib") + (string-append + "-L" (assoc-ref inputs "tidyp") "/lib"))) + #t))))) + (inputs + `(("perl-libwww" ,perl-libwww) + ("tidyp" ,tidyp))) + (native-inputs + `(("perl-test-exception" ,perl-test-exception))) + (home-page "http://search.cpan.org/dist/HTML-Tidy/") + (synopsis "(X)HTML validation in a Perl object") + (description "@code{HTML::Tidy} is an HTML checker in a handy dandy +object. It's meant as a replacement for @code{HTML::Lint}, which is written +in Perl but is not nearly as capable as @code{HTML::Tidy}.") + (license l:artistic2.0))) -- cgit v1.2.3 From 2809a355b6473d947db24a0d80b4d2e8c454d9d7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 22 Oct 2017 03:02:40 +0200 Subject: gnu: Add papagayo. * gnu/packages/animation.scm (papagayo): New variable. --- gnu/packages/animation.scm | 71 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm index faa0d17230..952d3bab0d 100644 --- a/gnu/packages/animation.scm +++ b/gnu/packages/animation.scm @@ -19,6 +19,7 @@ (define-module (gnu packages animation) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system gnu) @@ -34,6 +35,8 @@ (define-module (gnu packages animation) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages qt) #:use-module (gnu packages video)) (define-public etl @@ -185,3 +188,71 @@ (define-public synfigstudio need for tweening, preventing the need to hand-draw each frame. This package contains the graphical user interface for synfig.") (license license:gpl3+))) + +(define-public papagayo + (let ((commit "e143684b30e59fe4a554f965cb655d23cbe93ee7") + (revision "1")) + (package + (name "papagayo") + (version (string-append "2.0b1-" revision "." (string-take commit 9))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/LostMoho/Papagayo.git") + (commit commit))) + (sha256 + (base32 + "1p9gffjhbph34jhrvgpg93yha75bf88vkvlnk06x1r9601ph5321")) + (modules '((guix build utils))) + ;; Delete bundled libsndfile sources. + (snippet + '(begin + (delete-file-recursively "libsndfile_1.0.19") + (delete-file-recursively "libsndfile_1.0.25") + #t)))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((libsndfile (assoc-ref inputs "libsndfile"))) + ;; Do not use bundled libsndfile sources + (substitute* "Papagayo.pro" + (("else \\{") + (string-append "\nINCLUDEPATH += " libsndfile + "/include" + "\nLIBS +=" libsndfile + "/lib/libsndfile.so\n" + "win32 {")))) + (zero? (system* "qmake" + (string-append "DESTDIR=" + (assoc-ref outputs "out") + "/bin"))))) + ;; Ensure that all required Qt plugins are found at runtime. + (add-after 'install 'wrap-executable + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (qt '("qt" "qtmultimedia"))) + (wrap-program (string-append out "/bin/Papagayo") + `("QT_PLUGIN_PATH" ":" prefix + ,(map (lambda (label) + (string-append (assoc-ref inputs label) + "/lib/qt5/plugins/")) + qt))) + #t)))))) + (inputs + `(("qt" ,qtbase) + ("qtmultimedia" ,qtmultimedia) + ("libsndfile" ,libsndfile))) + (native-inputs + `(("qttools" ,qttools))) + (home-page "http://www.lostmarble.com/papagayo/") + (synopsis "Lip-syncing for animations") + (description + "Papagayo is a lip-syncing program designed to help you line up +phonemes with the actual recorded sound of actors speaking. Papagayo makes it +easy to lip sync animated characters by making the process very simple – just +type in the words being spoken, then drag the words on top of the sound’s +waveform until they line up with the proper sounds.") + (license license:gpl3+)))) -- cgit v1.2.3 From 306556528e4f1143cd12969f9805067cfdd8f5da Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 22 Oct 2017 11:26:20 +0200 Subject: gnu: Add sorcer. * gnu/packages/music.scm (sorcer): New variable. --- gnu/packages/music.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index ea1904596e..6aca39cedd 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -3296,3 +3296,41 @@ (define-public rosegarden notation and includes basic support for digital audio.") (home-page "http://www.rosegardenmusic.com/") (license license:gpl2))) + +(define-public sorcer + (package + (name "sorcer") + (version "1.1.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/openAVproductions/" + "openAV-Sorcer/archive/release-" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "07iyqj28wm0xc4arrq893bm12xjpz65db7ynrlmf6w8krg8wjmd0")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; no tests included + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'build-faust-sources + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "faust" + (delete-file "main.cpp") + (zero? (system* "faust" "-i" + "-a" "lv2synth.cpp" + "-o" "main.cpp" "main.dsp")))))))) + (inputs + `(("boost" ,boost) + ("lv2" ,lv2) + ("ntk" ,ntk))) + (native-inputs + `(("faust" ,faust) + ("pkg-config" ,pkg-config))) + (home-page "http://openavproductions.com/sorcer/") + (synopsis "Wavetable LV2 plugin synth") + (description "Sorcer is a wavetable LV2 plugin synthesizer, targeted at +the electronic or dubstep genre.") + (license license:gpl3+))) -- cgit v1.2.3 From 62d48234e20c732ebefc1b4deb425f590b4241ca Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 24 Oct 2017 07:54:43 +0200 Subject: gnu: git: Update to 2.14.3. * gnu/packages/version-control.scm (git): Update to 2.14.3. --- gnu/packages/version-control.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 8038024b38..8480f74fec 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -124,14 +124,14 @@ (define-public git (name "git") ;; XXX When updating Git, check if the special 'git:src' input to cgit needs ;; to be updated as well. - (version "2.14.2") + (version "2.14.3") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "18f70gfzwqd210806hmf94blcd7yv5h9ka6xqkpd2jhijqwp5sah")))) + "078m0za5gyzcah5iaxdwx663yvdp8byvjc8rpzjzcrr4sl6rcc2k")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -145,7 +145,7 @@ (define-public git (sha256 (base32 - "1z05a7hxxndyby3dbj3gaw91sjwmky5d1yph96jmj0fhx78m1lvd")))))) + "00dh878pwl94p6syh6zgwn7f0zv2bl5xny3pnr390lzxpa9ks3jv")))))) (inputs `(("curl" ,curl) ("expat" ,expat) -- cgit v1.2.3 From fc9a93cbf9d512e29cd23db93c3abe516ecf5f98 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 22 Oct 2017 18:17:58 +0200 Subject: gnu: claws-mail: Re-enable vcalendar. * gnu/packages/mail.scm (claws-mail): Use module (gnu packages calendar). [inputs]: Add libical. --- gnu/packages/mail.scm | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index acbb68b51b..e9a7283cf2 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -48,6 +48,7 @@ (define-module (gnu packages mail) #:use-module (gnu packages backup) #:use-module (gnu packages bash) #:use-module (gnu packages bison) + #:use-module (gnu packages calendar) #:use-module (gnu packages crypto) #:use-module (gnu packages curl) #:use-module (gnu packages cyrus-sasl) @@ -939,6 +940,7 @@ (define-public claws-mail ("libarchive" ,libarchive) ("libcanberra" ,libcanberra) ("libetpan" ,libetpan) + ("libical" ,libical) ("libnotify" ,libnotify) ("libsm" ,libsm) ("libxml2" ,libxml2) -- cgit v1.2.3 From 91f2daa58dd460482da05e5b4d87a2f170012cbe Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 24 Oct 2017 08:02:11 +0200 Subject: gnu: curl: Update replacement to 7.56.1 [fixes CVE-2017-1000257]. * gnu/packages/curl.scm (curl-7.56.0): Rename to ... (curl-7.56.1): ... this. Update to 7.56.1. (curl)[replacement]: Adjust accordingly. --- gnu/packages/curl.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index 30e03e6c69..2e4a48d1ef 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -43,7 +43,7 @@ (define-public curl (package (name "curl") (version "7.55.1") - (replacement curl-7.56.0) + (replacement curl-7.56.1) (source (origin (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" @@ -123,10 +123,10 @@ (define-public curl "See COPYING in the distribution.")) (home-page "https://curl.haxx.se/"))) -(define-public curl-7.56.0 +(define-public curl-7.56.1 (package (inherit curl) - (version "7.56.0") + (version "7.56.1") (source (origin (method url-fetch) @@ -134,4 +134,4 @@ (define-public curl-7.56.0 version ".tar.xz")) (sha256 (base32 - "0wni3zkw7jyrwgwkqnrkf2x2b7c78wsp7p4z6a246hz9l367nhrj")))))) + "1l9r386qz7l7h4n5lysrf1wq93lyc72a7shgg9b8s5d0ycn2ivcf")))))) -- cgit v1.2.3 From 85f225fbf726a04353bc95309bbc0854b569d879 Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 10:39:25 +0200 Subject: gnu: Add perl-xml-twig. * gnu/packages/xml.scm (perl-xml-twig): New variable. Co-authored-by: Ricardo Wurmus --- gnu/packages/xml.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 0c1a9abef5..163743c07d 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1383,3 +1383,44 @@ (define-public perl-xml-handler-yawriter (description "YAWriter implements Yet Another @code{XML::Handler::Writer}. It provides a flexible escaping technique and pretty printing.") (license license:perl-license))) + +(define-public perl-xml-twig + (package + (name "perl-xml-twig") + (version "3.52") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MI/MIROD/" + "XML-Twig-" version ".tar.gz")) + (sha256 + (base32 + "1bc0hrz4jp6199hi29sdxmb9gyy45whla9hd19yqfasgq8k5ixzy")))) + (build-system perl-build-system) + (inputs + `(("expat" ,expat))) + (propagated-inputs + `(("perl-html-tidy" ,perl-html-tidy) + ("perl-html-tree" ,perl-html-tree) + ("perl-io-captureoutput" ,perl-io-captureoutput) + ("perl-io-string" ,perl-io-string) + ("perl-io-stringy" ,perl-io-stringy) + ("perl-libxml" ,perl-libxml) + ("perl-xml-filter-buffertext" ,perl-xml-filter-buffertext) + ("perl-xml-handler-yawriter" ,perl-xml-handler-yawriter) + ("perl-xml-parser" ,perl-xml-parser) + ("perl-xml-sax-writer" ,perl-xml-sax-writer) + ("perl-xml-simple" ,perl-xml-simple) + ("perl-xml-xpathengine" ,perl-xml-xpathengine) + ("perl-test-pod", perl-test-pod) + ("perl-tree-xpathengine" ,perl-tree-xpathengine))) + (home-page "http://search.cpan.org/dist/XML-Twig/") + (synopsis "Perl module for processing huge XML documents in tree mode") + (description "@code{XML::Twig} is an XML transformation module. Its +strong points: can be used to process huge documents while still being in tree +mode; not bound by DOM or SAX, so it is very perlish and offers a very +comprehensive set of methods; simple to use; DWIMs as much as possible. + +What it doesn't offer: full SAX support (it can export SAX, but only reads +XML), full XPath support (unless you use @code{XML::Twig::XPath}), nor DOM +support.") + (license license:perl-license))) -- cgit v1.2.3 From db4411b42b902c79351aa704ce3949c48f1be29b Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 23 Oct 2017 23:48:40 -0400 Subject: gnu: python-docutils: Update to 0.14. * gnu/packages/python.scm (python-docutils, python2-docutils): Update to 0.14. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 47d5f63b7f..4b080a8341 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3191,14 +3191,14 @@ (define-public python2-joblib (define-public python-docutils (package (name "python-docutils") - (version "0.13.1") + (version "0.14") (source (origin (method url-fetch) (uri (pypi-uri "docutils" version)) (sha256 (base32 - "1gkma47i609jfs7dssxn4y9vsz06qi0l5q41nws0zgkpnrghz33i")))) + "0x22fs3pdmr42kvz6c654756wja305qv6cx1zbhwlagvxgr4xrji")))) (build-system python-build-system) (arguments '(#:tests? #f)) ; no setup.py test command -- cgit v1.2.3 From 6ee4fd2ae18523088bf8d703ea78a5729202828e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 24 Oct 2017 00:33:38 -0400 Subject: gnu: borg: Split up the monolithic man page. * gnu/packages/backup.scm (borg)[arguments]: Rewrite 'install-docs' phase to install one man page per Borg sub-command. --- gnu/packages/backup.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 9de120bf26..55d5ede040 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -519,7 +519,7 @@ (define-public borg "and not test_fuse " "and not test_fuse_allow_damaged_files")))))) (add-after 'install 'install-doc - (lambda* (#:key outputs #:allow-other-keys) + (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (man (string-append out "/share/man/man1")) (misc (string-append out "/share/borg/misc"))) @@ -527,11 +527,11 @@ (define-public borg '("docs/misc/create_chunker-params.txt" "docs/misc/internals-picture.txt" "docs/misc/prune-example.txt")) + (add-installed-pythonpath inputs outputs) (and - (zero? (system* "python3" "setup.py" "build_ext" "--inplace")) - (zero? (system* "make" "-C" "docs" "man")) + (zero? (system* "python3" "setup.py" "build_man")) (begin - (install-file "docs/_build/man/borg.1" man) + (copy-recursively "docs/man" man) #t)))))))) (native-inputs `(("python-cython" ,python-cython) -- cgit v1.2.3 From 5aeb661134913c0a32b6b535a7c7675a6da758f0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 24 Oct 2017 14:17:50 +0200 Subject: gnu: Add perl-gnupg-interface. * gnu/packages/gnupg.scm (perl-gnupg-interface): New variable. Co-authored-by: Petter --- gnu/packages/gnupg.scm | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index ffad57ef5e..d332158e27 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -5,13 +5,14 @@ ;;; Copyright © 2014, 2015, 2016 Mark H Weaver ;;; Copyright © 2015 Paul van der Walt ;;; Copyright © 2015, 2016, 2017 Efraim Flashner -;;; Copyright © 2015, 2016 Ricardo Wurmus +;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus ;;; Copyright © 2016 Christopher Allan Webber ;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016 Christopher Baines ;;; Copyright © 2016 Mike Gerwitz ;;; Copyright © 2016 Troy Sankey ;;; Copyright © 2017 Leo Famulari +;;; Copyright © 2017 Petter ;;; ;;; This file is part of GNU Guix. ;;; @@ -850,3 +851,40 @@ (define-public gpa @uref{https://gnupg.org, GnuPG}. It can be used to encrypt, decrypt, and sign files, to verify signatures, and to manage the private and public keys.") (license license:gpl3+))) + +(define-public perl-gnupg-interface + (package + (name "perl-gnupg-interface") + (version "0.52") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/A/AL/ALEXMV/" + "GnuPG-Interface-" version ".tar.gz")) + (sha256 + (base32 + "0dgx8yhdsmhkazcrz14n4flrk1afv7azgl003hl4arxvi1d9yyi4")))) + (build-system perl-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; FIXME: This test fails for unknown reasons + (add-after 'unpack 'delete-broken-test + (lambda _ + (delete-file "t/encrypt_symmetrically.t") + #t))))) + (inputs + `(("gnupg" ,gnupg-1))) + (propagated-inputs + `(("perl-moo" ,perl-moo) + ("perl-moox-handlesvia" ,perl-moox-handlesvia) + ("perl-moox-late" ,perl-moox-late))) + (native-inputs + `(("which" ,which) + ("perl-module-install" ,perl-module-install))) + (home-page "http://search.cpan.org/dist/GnuPG-Interface/") + (synopsis "Perl interface to GnuPG") + (description "@code{GnuPG::Interface} and its associated modules are +designed to provide an object-oriented method for interacting with GnuPG, +being able to perform functions such as but not limited to encrypting, +signing, decryption, verification, and key-listing parsing.") + (license license:perl-license))) -- cgit v1.2.3 From b44ecca69146a3d4025cb51229ca86db201392be Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 18:22:12 +0200 Subject: gnu: Add perl-archive-extract. * gnu/packages/compression.scm (perl-archive-extract): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/compression.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index f3142d1ddf..a2bf3a1861 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis ;;; Copyright © 2017 Theodoros Foradis ;;; Copyright © 2017 Stefan Reichör +;;; Copyright © 2017 Petter ;;; ;;; This file is part of GNU Guix. ;;; @@ -1603,3 +1604,24 @@ (define-public atool to handle the archives, not all commands may be supported for a certain type of archives.") (license license:gpl2+))) + +(define-public perl-archive-extract + (package + (name "perl-archive-extract") + (version "0.80") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/B/BI/BINGOS/Archive-Extract-" + version ".tar.gz")) + (sha256 + (base32 + "1x15j1q6w6z8hqyqgap0lz4qbq2174wfhksy1fdd653ccbaw5jr5")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Archive-Extract/") + (synopsis "Generic archive extracting mechanism") + (description "It allows you to extract any archive file of the type .tar, +.tar.gz, .gz, .Z, tar.bz2, .tbz, .bz2, .zip, .xz,, .txz, .tar.xz or .lzma +without having to worry how it does so, or use different interfaces for each +type by using either Perl modules, or command-line tools on your system.") + (license license:perl-license))) -- cgit v1.2.3 From b6cd89084dc51c48f19d779075306bb143659cfd Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 18:22:50 +0200 Subject: gnu: Add perl-proc-invokeeditor. * gnu/packages/perl.scm (perl-proc-invokeeditor): New variable. Co-authored-by: Ricardo Wurmus --- gnu/packages/perl.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 47c35dcf56..3c92b17563 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6059,6 +6059,32 @@ (define-public perl-probe-perl "Probe-Perl-" version)) (license (package-license perl)))) +(define-public perl-proc-invokeeditor + (package + (name "perl-proc-invokeeditor") + (version "1.13") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MS/MSTEVENS/Proc-InvokeEditor-" + version ".tar.gz")) + (sha256 + (base32 + "0xc1416kvhq904ribpwh2lbxryh41dzl2glzpgr32b68s4fbwbaa")))) + (build-system perl-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-EDITOR + (lambda _ (setenv "EDITOR" "echo") #t))))) + (propagated-inputs + `(("perl-carp-assert" ,perl-carp-assert))) + (home-page "http://search.cpan.org/dist/Proc-InvokeEditor/") + (synopsis "Interface to external editor from Perl") + (description "This module provides the ability to supply some text to an +external text editor, have it edited by the user, and retrieve the results.") + (license (package-license perl)))) + (define-public perl-readonly (package (name "perl-readonly") -- cgit v1.2.3 From 8ae0558aad343a033edd0222cb373ea772cb3b3f Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 18:23:26 +0200 Subject: gnu: Add perl-sort-naturally. * gnu/packages/perl.scm (perl-sort-naturally): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/perl.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 3c92b17563..357deb37c6 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6320,6 +6320,27 @@ (define-public perl-sort-key arrays by one or multiple calculated keys.") (license (package-license perl)))) +(define-public perl-sort-naturally + (package + (name "perl-sort-naturally") + (version "1.03") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/B/BI/BINGOS/Sort-Naturally-" + version ".tar.gz")) + (sha256 + (base32 + "0ip7q5g8d3lr7ri3ffcbrpk1hzzsiwgsn14k10k7hnjphxf1raza")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Sort-Naturally/") + (synopsis "Sort lexically, but sort numeral parts numerically") + (description "This module exports two functions, @code{nsort} and +@code{ncmp}; they are used in implementing a \"natural sorting\" algorithm. +Under natural sorting, numeric substrings are compared numerically, and other +word-characters are compared lexically.") + (license (package-license perl)))) + (define-public perl-specio (package (name "perl-specio") -- cgit v1.2.3 From a1798ee3c736457ddf18ee614f9a084378e84db3 Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 18:37:33 +0200 Subject: gnu: Add perl-devel-hide. * gnu/packages/perl.scm (perl-devel-hide): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/perl.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 357deb37c6..a9ccdf7fd9 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2378,6 +2378,29 @@ (define-public perl-devel-globaldestruction equivalent of \"$@{^GLOBAL_PHASE@} eq 'DESTRUCT'\" for older perls.") (license (package-license perl)))) +(define-public perl-devel-hide + (package + (name "perl-devel-hide") + (version "0.0009") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/F/FE/FERREIRA/Devel-Hide-" + version ".tar.gz")) + (sha256 + (base32 + "1phnzbw58v6551nhv6sg86m72nx9w5j4msh1hg4jvkakkq5w9pki")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-test-pod" ,perl-test-pod) + ("perl-test-pod-coverage" ,perl-test-pod-coverage))) + (home-page "http://search.cpan.org/dist/Devel-Hide/") + (synopsis "Forces the unavailability of specified Perl modules (for testing)") + (description "Given a list of Perl modules/filenames, this module makes +@code{require} and @code{use} statements fail (no matter whether the specified +files/modules are installed or not).") + (license (package-license perl)))) + (define-public perl-devel-lexalias (package (name "perl-devel-lexalias") -- cgit v1.2.3 From fcbc997e03751e39d19005371d66a7ffe117dad5 Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 18:24:17 +0200 Subject: gnu: Add perl-term-size-perl. * gnu/packages/perl.scm (perl-term-size-perl): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/perl.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index a9ccdf7fd9..fdd69b9516 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6958,6 +6958,25 @@ (define-public perl-term-readkey screen size, and retrieval/modification of the control characters.") (license (package-license perl)))) +(define-public perl-term-size-perl + (package + (name "perl-term-size-perl") + (version "0.029") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/F/FE/FERREIRA/" + "Term-Size-Perl-" version ".tar.gz")) + (sha256 + (base32 + "1rvm91bhdlxfwx5zka023p7szf2s7gm16wl27qiivvj66svsl6lc")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Term-Size-Perl/") + (synopsis "Perl extension for retrieving terminal size (Perl version)") + (description "This is yet another implementation of @code{Term::Size}. +Now in pure Perl, with the exception of a C probe run at build time.") + (license (package-license perl)))) + (define-public perl-term-table (package (name "perl-term-table") -- cgit v1.2.3 From cb2f48e7f279014f13e76dc8db77d36111b78b9f Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 18:24:49 +0200 Subject: gnu: Add perl-term-size-any. * gnu/packages/perl.scm (perl-term-size-any): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/perl.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index fdd69b9516..6e527bf8c2 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6958,6 +6958,31 @@ (define-public perl-term-readkey screen size, and retrieval/modification of the control characters.") (license (package-license perl)))) +(define-public perl-term-size-any + (package + (name "perl-term-size-any") + (version "0.002") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/F/FE/FERREIRA/" + "Term-Size-Any-" version ".tar.gz")) + (sha256 + (base32 + "1lnynd8pwjp3g85bl4nav6yigg2lag3sx5da989j7a733bdmzyk4")))) + (build-system perl-build-system) + (native-inputs + `(("perl-devel-hide" ,perl-devel-hide))) + (propagated-inputs + `(("perl-term-size-perl" ,perl-term-size-perl))) + (home-page "http://search.cpan.org/dist/Term-Size-Any/") + (synopsis "Retrieve terminal size") + (description "This is a unified interface to retrieve terminal size. It +loads one module of a list of known alternatives, each implementing some way +to get the desired terminal information. This loaded module will actually do +the job on behalf of @code{Term::Size::Any}.") + (license (package-license perl)))) + (define-public perl-term-size-perl (package (name "perl-term-size-perl") -- cgit v1.2.3 From 237edb6d1f3c9034417983227fe7fdca4a5cee2c Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 18:25:19 +0200 Subject: gnu: Add perl-test-taint. * gnu/packages/perl.scm (perl-test-taint): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/perl.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 6e527bf8c2..47a1399270 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7896,6 +7896,32 @@ (define-public perl-test-simple "Test-Simple-" version)) (license (package-license perl)))) +(define-public perl-test-taint + (package + (name "perl-test-taint") + (version "1.06") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/P/PE/PETDANCE/Test-Taint-" + version ".tar.gz")) + (sha256 + (base32 + "01rip5d7gdr1c7lq6yczzkqfd0500nfa977ryigylj6jj75526vj")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Test-Taint/") + (synopsis "Checks for taintedness of variables") + (description "Tainted data is data that comes from an unsafe source, such +as the command line, or, in the case of web apps, any @code{GET} or +@code{POST} transactions. Read the @code{perlsec} man page for details on why +tainted data is bad, and how to untaint the data. + +When you're writing unit tests for code that deals with tainted data, you'll +want to have a way to provide tainted data for your routines to handle, and +easy ways to check and report on the taintedness of your data, in standard +@code{Test::More} style.") + (license (package-license perl)))) + (define-public perl-test-tester (package (name "perl-test-tester") -- cgit v1.2.3 From 35aaf4b1bd146f9f0277b9484e05470ec7424738 Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 18:25:49 +0200 Subject: gnu: Add perl-type-tiny-xs. * gnu/packages/perl.scm (perl-type-tiny-xs): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/perl.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 47a1399270..e1e15bd076 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -8715,6 +8715,27 @@ (define-public perl-type-tiny be used with Moose, Mouse and Moo (or none of the above).") (license (package-license perl)))) +(define-public perl-type-tiny-xs + (package + (name "perl-type-tiny-xs") + (version "0.012") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/T/TO/TOBYINK/Type-Tiny-XS-" + version ".tar.gz")) + (sha256 + (base32 + "05nbr898cvjjh1wsy55l84zasx65gijdxc6dnn558ihns8zx6gm9")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Type-Tiny-XS/") + (synopsis "Provides an XS boost for some of Type::Tiny's built-in type constraints") + (description "This module is optionally used by @code{Type::Tiny} to +provide faster, C-based implementations of some type constraints. This +package has only core dependencies, and does not depend on @code{Type::Tiny}, +so other data validation frameworks might also consider using it.") + (license perl-license))) + (define-public perl-types-serialiser (package (name "perl-types-serialiser") -- cgit v1.2.3 From 22473f6964096fe5d938b7955275c135252cb002 Mon Sep 17 00:00:00 2001 From: Petter Date: Tue, 24 Oct 2017 18:26:57 +0200 Subject: gnu: Add perl-types-path-tiny. * gnu/packages/perl.scm (perl-types-path-tiny): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/perl.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index e1e15bd076..c392c305a4 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -8736,6 +8736,32 @@ (define-public perl-type-tiny-xs so other data validation frameworks might also consider using it.") (license perl-license))) +(define-public perl-types-path-tiny + (package + (name "perl-types-path-tiny") + (version "0.005") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" + "Types-Path-Tiny-" version ".tar.gz")) + (sha256 + (base32 + "09nf167ssi4rgj8hhzylwp3zdx61njdpyfri43arcmk9aqn7f0pp")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-file-pushd" ,perl-file-pushd) + ("perl-path-tiny" ,perl-path-tiny) + ("perl-type-tiny" ,perl-type-tiny) + ("perl-exporter-tiny" ,perl-exporter-tiny))) + (home-page "http://search.cpan.org/dist/Types-Path-Tiny/") + (synopsis "Types and coercions for Moose and Moo") + (description "This module provides @code{Path::Tiny} types for Moose, Moo, +etc. It handles two important types of coercion: coercing objects with +overloaded stringification, and coercing to absolute paths. It also can check +to ensure that files or directories exist.") + (license artistic2.0))) + (define-public perl-types-serialiser (package (name "perl-types-serialiser") -- cgit v1.2.3 From 1899ef0b838075d82b957a632ce995f4e192849f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 24 Oct 2017 12:18:24 -0400 Subject: gnu: syncthing: Use install-source? to disable installing the source code. * gnu/packages/syncthing.scm (syncthing): Set #:install-source? #f instead of deleting the install-source phase. --- gnu/packages/syncthing.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index b4bc1e0a8a..0bfa6d9e07 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -41,6 +41,8 @@ (define-public syncthing (arguments `(#:import-path "github.com/syncthing/syncthing" #:unpack-path "github.com/syncthing" + ;; We don't need to install the source code for end-user applications. + #:install-source? #f #:phases (modify-phases %standard-phases (add-after 'unpack 'delete-bundled-source-code @@ -55,9 +57,6 @@ (define-public syncthing "src/github.com/syncthing/syncthing/vendor/github.com/cznic") #t)) - ;; We don't need to install the source code for end-user applications. - (delete 'install-source) - (add-before 'build 'increase-test-timeout (lambda _ (substitute* "src/github.com/syncthing/syncthing/build.go" -- cgit v1.2.3 From c330c27f7feea8172fa6881020a1425746bbb6a6 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 24 Oct 2017 11:56:37 -0400 Subject: gnu: syncthing: Split into two outputs. * gnu/packages/syncthing.scm (syncthing)[outputs]: New field. [arguments]: Change the 'install' and 'install-docs' phases to install to the two outputs. --- gnu/packages/syncthing.scm | 34 ++++++++++++++++++++++++++++------ 1 file changed, 28 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 0bfa6d9e07..b23339de12 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -38,6 +38,10 @@ (define-public syncthing (base32 "07mrvd3vq0p4f550dpq73xg1vpa2h7xxz7vq07sjw0whapknkw9f")))) (build-system go-build-system) + ;; The primary Syncthing executable goes to "out", while the auxiliary + ;; server programs and utility tools go to "utils". This reduces the size + ;; of "out" by ~80 MiB. + (outputs '("out" "utils")) (arguments `(#:import-path "github.com/syncthing/syncthing" #:unpack-path "github.com/syncthing" @@ -74,21 +78,39 @@ (define-public syncthing (zero? (system* "go" "run" "build.go" "test"))))) (replace 'install - (lambda _ - (copy-recursively "src/github.com/syncthing/syncthing/bin/" - (string-append (assoc-ref %outputs "out") "/bin")) - #t)) + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (utils (assoc-ref outputs "utils")) + (src "src/github.com/syncthing/syncthing/bin/")) + (install-file (string-append src "/syncthing") + (string-append out "/bin")) + (delete-file (string-append src "/syncthing")) + (copy-recursively "src/github.com/syncthing/syncthing/bin/" + (string-append utils "/bin")) + #t))) (add-after 'install 'install-docs (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (man (string-append out "/share/man/man")) + (utils (assoc-ref outputs "utils")) + (man "/share/man") + (man-section (string-append man "/man")) (src "src/github.com/syncthing/syncthing/man/")) + ;; Install all the man pages to "out". (for-each (lambda (file) (install-file file - (string-append man (string-take-right file 1)))) + (string-append out man-section + (string-take-right file 1)))) (find-files src "\\.[1-9]")) + ;; Copy all the man pages to "utils" + (copy-recursively (string-append out man) + (string-append utils man)) + ;; Delete extraneous man pages from "out" and "utils", + ;; respectively. + (delete-file (string-append out man "/man1/stdiscosrv.1")) + (delete-file (string-append out man "/man1/strelaysrv.1")) + (delete-file (string-append utils man "/man1/syncthing.1")) #t)))))) ;; When updating Syncthing, check 'vendor/manifest' in the source ;; distribution to ensure we are using the correct versions of these -- cgit v1.2.3 From 6dcc8239be807d7e96b3425310e0f565ed5218b8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 24 Oct 2017 12:25:45 -0400 Subject: gnu: icu4c: Fix CVE-2017-14952. * gnu/packages/patches/icu4c-CVE-2017-14952.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/icu4c.scm (icu4c)[replacement]: New field. (icu4c-fixed): New variable. --- gnu/local.mk | 1 + gnu/packages/icu4c.scm | 10 ++++++++++ gnu/packages/patches/icu4c-CVE-2017-14952.patch | 18 ++++++++++++++++++ 3 files changed, 29 insertions(+) create mode 100644 gnu/packages/patches/icu4c-CVE-2017-14952.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 6b70300fff..d02b250727 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -734,6 +734,7 @@ dist_patch_DATA = \ %D%/packages/patches/hydra-disable-darcs-test.patch \ %D%/packages/patches/icecat-avoid-bundled-libraries.patch \ %D%/packages/patches/icu4c-CVE-2017-7867-CVE-2017-7868.patch \ + %D%/packages/patches/icu4c-CVE-2017-14952.patch \ %D%/packages/patches/icu4c-reset-keyword-list-iterator.patch \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \ %D%/packages/patches/ilmbase-fix-tests.patch \ diff --git a/gnu/packages/icu4c.scm b/gnu/packages/icu4c.scm index 3461285850..55bc9f2035 100644 --- a/gnu/packages/icu4c.scm +++ b/gnu/packages/icu4c.scm @@ -32,6 +32,7 @@ (define-module (gnu packages icu4c) (define-public icu4c (package (name "icu4c") + (replacement icu4c-fixed) (version "58.2") (source (origin (method url-fetch) @@ -70,6 +71,15 @@ (define-public icu4c (license x11) (home-page "http://site.icu-project.org/"))) +(define icu4c-fixed + (package + (inherit icu4c) + (source (origin + (inherit (package-source icu4c)) + (patches (append + (origin-patches (package-source icu4c)) + (search-patches "icu4c-CVE-2017-14952.patch"))))))) + (define-public java-icu4j (package (name "java-icu4j") diff --git a/gnu/packages/patches/icu4c-CVE-2017-14952.patch b/gnu/packages/patches/icu4c-CVE-2017-14952.patch new file mode 100644 index 0000000000..564f69d01d --- /dev/null +++ b/gnu/packages/patches/icu4c-CVE-2017-14952.patch @@ -0,0 +1,18 @@ +Fix CVE-2017-14952: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-14952 + +Patch copied from upstream source repository: + +http://bugs.icu-project.org/trac/changeset/40324/trunk/icu4c/source/i18n/zonemeta.cpp#file0 + +Index: trunk/icu4c/source/i18n/zonemeta.cpp +=================================================================== +--- icu/source/i18n/zonemeta.cpp (revision 40283) ++++ icu/source/i18n/zonemeta.cpp (revision 40324) +@@ -691,5 +691,4 @@ + if (U_FAILURE(status)) { + delete mzMappings; +- deleteOlsonToMetaMappingEntry(entry); + uprv_free(entry); + break; -- cgit v1.2.3 From ae7e24c4210e68b1761dc26bcba20786675ca37d Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 24 Oct 2017 13:43:55 -0400 Subject: gnu: mupdf: Fix CVE-2017-{14685,14686,14687}. * gnu/packages/patches/mupdf-CVE-2017-14685.patch, gnu/packages/patches/mupdf-CVE-2017-14686.patch, gnu/packages/patches/mupdf-CVE-2017-14687.patch: New files. * gnu/local.mk (dist_patch_DATA): Add them. * gnu/packages/pdf.scm (mupdf)[source]: Use them. --- gnu/local.mk | 3 + gnu/packages/patches/mupdf-CVE-2017-14685.patch | 34 +++++++ gnu/packages/patches/mupdf-CVE-2017-14686.patch | 34 +++++++ gnu/packages/patches/mupdf-CVE-2017-14687.patch | 130 ++++++++++++++++++++++++ gnu/packages/pdf.scm | 3 + 5 files changed, 204 insertions(+) create mode 100644 gnu/packages/patches/mupdf-CVE-2017-14685.patch create mode 100644 gnu/packages/patches/mupdf-CVE-2017-14686.patch create mode 100644 gnu/packages/patches/mupdf-CVE-2017-14687.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index d02b250727..f2044c9857 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -880,6 +880,9 @@ dist_patch_DATA = \ %D%/packages/patches/mozjs38-version-detection.patch \ %D%/packages/patches/mumps-build-parallelism.patch \ %D%/packages/patches/mupdf-build-with-openjpeg-2.1.patch \ + %D%/packages/patches/mupdf-CVE-2017-14685.patch \ + %D%/packages/patches/mupdf-CVE-2017-14686.patch \ + %D%/packages/patches/mupdf-CVE-2017-14687.patch \ %D%/packages/patches/mupdf-CVE-2017-15587.patch \ %D%/packages/patches/mupen64plus-ui-console-notice.patch \ %D%/packages/patches/mutt-store-references.patch \ diff --git a/gnu/packages/patches/mupdf-CVE-2017-14685.patch b/gnu/packages/patches/mupdf-CVE-2017-14685.patch new file mode 100644 index 0000000000..3fcce5fedf --- /dev/null +++ b/gnu/packages/patches/mupdf-CVE-2017-14685.patch @@ -0,0 +1,34 @@ +Fix CVE-2017-14685: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-14685 + +Patch copied from upstream source repository: + +https://git.ghostscript.com/?p=mupdf.git;h=ab1a420613dec93c686acbee2c165274e922f82a + +From ab1a420613dec93c686acbee2c165274e922f82a Mon Sep 17 00:00:00 2001 +From: Tor Andersson +Date: Tue, 19 Sep 2017 15:23:04 +0200 +Subject: [PATCH] Fix 698539: Don't use xps font if it could not be loaded. + +xps_load_links_in_glyphs did not cope with font loading failures. +--- + source/xps/xps-link.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/source/xps/xps-link.c b/source/xps/xps-link.c +index c07e0d7..c26a8d9 100644 +--- a/source/xps/xps-link.c ++++ b/source/xps/xps-link.c +@@ -91,6 +91,8 @@ xps_load_links_in_glyphs(fz_context *ctx, xps_document *doc, const fz_matrix *ct + bidi_level = atoi(bidi_level_att); + + font = xps_lookup_font(ctx, doc, base_uri, font_uri_att, style_att); ++ if (!font) ++ return; + text = xps_parse_glyphs_imp(ctx, doc, &local_ctm, font, fz_atof(font_size_att), + fz_atof(origin_x_att), fz_atof(origin_y_att), + is_sideways, bidi_level, indices_att, unicode_att); +-- +2.9.1 + diff --git a/gnu/packages/patches/mupdf-CVE-2017-14686.patch b/gnu/packages/patches/mupdf-CVE-2017-14686.patch new file mode 100644 index 0000000000..e462a6ffeb --- /dev/null +++ b/gnu/packages/patches/mupdf-CVE-2017-14686.patch @@ -0,0 +1,34 @@ +Fix CVE-2017-14686: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-14686 + +Patch copied from upstream source repository: + +https://git.ghostscript.com/?p=mupdf.git;h=0f0fbc07d9be31f5e83ec5328d7311fdfd8328b1 + +From 0f0fbc07d9be31f5e83ec5328d7311fdfd8328b1 Mon Sep 17 00:00:00 2001 +From: Tor Andersson +Date: Tue, 19 Sep 2017 16:33:38 +0200 +Subject: [PATCH] Fix 698540: Check name, comment and meta size field signs. + +--- + source/fitz/unzip.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/source/fitz/unzip.c b/source/fitz/unzip.c +index f2d4f32..0bcce0f 100644 +--- a/source/fitz/unzip.c ++++ b/source/fitz/unzip.c +@@ -141,6 +141,9 @@ static void read_zip_dir_imp(fz_context *ctx, fz_zip_archive *zip, int start_off + (void) fz_read_int32_le(ctx, file); /* ext file atts */ + offset = fz_read_int32_le(ctx, file); + ++ if (namesize < 0 || metasize < 0 || commentsize < 0) ++ fz_throw(ctx, FZ_ERROR_GENERIC, "invalid size in zip entry"); ++ + name = fz_malloc(ctx, namesize + 1); + n = fz_read(ctx, file, (unsigned char*)name, namesize); + if (n < (size_t)namesize) +-- +2.9.1 + diff --git a/gnu/packages/patches/mupdf-CVE-2017-14687.patch b/gnu/packages/patches/mupdf-CVE-2017-14687.patch new file mode 100644 index 0000000000..cdc41df813 --- /dev/null +++ b/gnu/packages/patches/mupdf-CVE-2017-14687.patch @@ -0,0 +1,130 @@ +Fix CVE-2017-14687: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-14687 + +Patch copied from upstream source repository: + +https://git.ghostscript.com/?p=mupdf.git;h=2b16dbd8f73269cb15ca61ece75cf8d2d196ed28 + +From 2b16dbd8f73269cb15ca61ece75cf8d2d196ed28 Mon Sep 17 00:00:00 2001 +From: Tor Andersson +Date: Tue, 19 Sep 2017 17:17:12 +0200 +Subject: [PATCH] Fix 698558: Handle non-tags in tag name comparisons. + +Use fz_xml_is_tag instead of fz_xml_tag && !strcmp idiom. +--- + source/html/css-apply.c | 2 +- + source/svg/svg-run.c | 2 +- + source/xps/xps-common.c | 6 +++--- + source/xps/xps-glyphs.c | 2 +- + source/xps/xps-path.c | 4 ++-- + source/xps/xps-resource.c | 2 +- + 6 files changed, 9 insertions(+), 9 deletions(-) + +diff --git a/source/html/css-apply.c b/source/html/css-apply.c +index de55490..6a91df0 100644 +--- a/source/html/css-apply.c ++++ b/source/html/css-apply.c +@@ -328,7 +328,7 @@ match_selector(fz_css_selector *sel, fz_xml *node) + + if (sel->name) + { +- if (strcmp(sel->name, fz_xml_tag(node))) ++ if (!fz_xml_is_tag(node, sel->name)) + return 0; + } + +diff --git a/source/svg/svg-run.c b/source/svg/svg-run.c +index f974c67..5302c64 100644 +--- a/source/svg/svg-run.c ++++ b/source/svg/svg-run.c +@@ -1044,7 +1044,7 @@ svg_run_use(fz_context *ctx, fz_device *dev, svg_document *doc, fz_xml *root, co + fz_xml *linked = fz_tree_lookup(ctx, doc->idmap, xlink_href_att + 1); + if (linked) + { +- if (!strcmp(fz_xml_tag(linked), "symbol")) ++ if (fz_xml_is_tag(linked, "symbol")) + svg_run_use_symbol(ctx, dev, doc, root, linked, &local_state); + else + svg_run_element(ctx, dev, doc, linked, &local_state); +diff --git a/source/xps/xps-common.c b/source/xps/xps-common.c +index cc7fed9..f2f9b93 100644 +--- a/source/xps/xps-common.c ++++ b/source/xps/xps-common.c +@@ -47,7 +47,7 @@ xps_parse_brush(fz_context *ctx, xps_document *doc, const fz_matrix *ctm, const + else if (fz_xml_is_tag(node, "RadialGradientBrush")) + xps_parse_radial_gradient_brush(ctx, doc, ctm, area, base_uri, dict, node); + else +- fz_warn(ctx, "unknown brush tag: %s", fz_xml_tag(node)); ++ fz_warn(ctx, "unknown brush tag"); + } + + void +@@ -85,7 +85,7 @@ xps_begin_opacity(fz_context *ctx, xps_document *doc, const fz_matrix *ctm, cons + if (opacity_att) + opacity = fz_atof(opacity_att); + +- if (opacity_mask_tag && !strcmp(fz_xml_tag(opacity_mask_tag), "SolidColorBrush")) ++ if (fz_xml_is_tag(opacity_mask_tag, "SolidColorBrush")) + { + char *scb_opacity_att = fz_xml_att(opacity_mask_tag, "Opacity"); + char *scb_color_att = fz_xml_att(opacity_mask_tag, "Color"); +@@ -129,7 +129,7 @@ xps_end_opacity(fz_context *ctx, xps_document *doc, char *base_uri, xps_resource + + if (opacity_mask_tag) + { +- if (strcmp(fz_xml_tag(opacity_mask_tag), "SolidColorBrush")) ++ if (!fz_xml_is_tag(opacity_mask_tag, "SolidColorBrush")) + fz_pop_clip(ctx, dev); + } + } +diff --git a/source/xps/xps-glyphs.c b/source/xps/xps-glyphs.c +index 29dc5b3..5b26d78 100644 +--- a/source/xps/xps-glyphs.c ++++ b/source/xps/xps-glyphs.c +@@ -592,7 +592,7 @@ xps_parse_glyphs(fz_context *ctx, xps_document *doc, const fz_matrix *ctm, + + /* If it's a solid color brush fill/stroke do a simple fill */ + +- if (fill_tag && !strcmp(fz_xml_tag(fill_tag), "SolidColorBrush")) ++ if (fz_xml_is_tag(fill_tag, "SolidColorBrush")) + { + fill_opacity_att = fz_xml_att(fill_tag, "Opacity"); + fill_att = fz_xml_att(fill_tag, "Color"); +diff --git a/source/xps/xps-path.c b/source/xps/xps-path.c +index 6faeb0c..021d202 100644 +--- a/source/xps/xps-path.c ++++ b/source/xps/xps-path.c +@@ -879,14 +879,14 @@ xps_parse_path(fz_context *ctx, xps_document *doc, const fz_matrix *ctm, char *b + if (!data_att && !data_tag) + return; + +- if (fill_tag && !strcmp(fz_xml_tag(fill_tag), "SolidColorBrush")) ++ if (fz_xml_is_tag(fill_tag, "SolidColorBrush")) + { + fill_opacity_att = fz_xml_att(fill_tag, "Opacity"); + fill_att = fz_xml_att(fill_tag, "Color"); + fill_tag = NULL; + } + +- if (stroke_tag && !strcmp(fz_xml_tag(stroke_tag), "SolidColorBrush")) ++ if (fz_xml_is_tag(stroke_tag, "SolidColorBrush")) + { + stroke_opacity_att = fz_xml_att(stroke_tag, "Opacity"); + stroke_att = fz_xml_att(stroke_tag, "Color"); +diff --git a/source/xps/xps-resource.c b/source/xps/xps-resource.c +index c2292e6..8e81ab8 100644 +--- a/source/xps/xps-resource.c ++++ b/source/xps/xps-resource.c +@@ -84,7 +84,7 @@ xps_parse_remote_resource_dictionary(fz_context *ctx, xps_document *doc, char *b + if (!xml) + return NULL; + +- if (strcmp(fz_xml_tag(xml), "ResourceDictionary")) ++ if (!fz_xml_is_tag(xml, "ResourceDictionary")) + { + fz_drop_xml(ctx, xml); + fz_throw(ctx, FZ_ERROR_GENERIC, "expected ResourceDictionary element"); +-- +2.9.1 + diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index ceaccddfc7..f3df7c1045 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -576,6 +576,9 @@ (define-public mupdf (base32 "02phamcchgsmvjnb3ir7r5sssvx9fcrscn297z73b82n1jl79510")) (patches (search-patches "mupdf-build-with-openjpeg-2.1.patch" + "mupdf-CVE-2017-14685.patch" + "mupdf-CVE-2017-14686.patch" + "mupdf-CVE-2017-14687.patch" "mupdf-CVE-2017-15587.patch")) (modules '((guix build utils))) (snippet -- cgit v1.2.3 From 648c896ad3b198a1742c1ee8f66a1922aa98c1d8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 24 Oct 2017 21:26:00 +0300 Subject: gnu: screen: Update to 4.6.2. * gnu/packages/screen.scm (screen): Update to 4.6.2. --- gnu/packages/screen.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm index 0a92b73e34..5622d37877 100644 --- a/gnu/packages/screen.scm +++ b/gnu/packages/screen.scm @@ -38,13 +38,13 @@ (define-module (gnu packages screen) (define-public screen (package (name "screen") - (version "4.6.1") + (version "4.6.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/screen/screen-" version ".tar.gz")) (sha256 - (base32 "0r3wpfxnr5kw73b8ndja26jk03nfbks06iyfmgb5aqb2rdkazadb")))) + (base32 "0fps0fsipfbh7c2cnp7rjw9n79j0ysq21mk8hzifa33a1r924s8v")))) (build-system gnu-build-system) (native-inputs `(("makeinfo" ,texinfo))) -- cgit v1.2.3