From 7c3f22e9c3311dcb27e9b8bd31c6fa6eb0a549d8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 13 Jan 2018 09:16:07 -0800 Subject: gnu: libxml2: Fix CVE-2017-15412. * gnu/packages/patches/libxml2-CVE-2017-15412.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/xml.scm (libxml2/fixed)[source]: Use it. --- gnu/packages/xml.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 23b447502b..ce0d13a999 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -155,7 +155,8 @@ (define libxml2/fixed "libxml2-CVE-2017-7375.patch" "libxml2-CVE-2017-7376.patch" "libxml2-CVE-2017-9047+CVE-2017-9048.patch" - "libxml2-CVE-2017-9049+CVE-2017-9050.patch"))))))) + "libxml2-CVE-2017-9049+CVE-2017-9050.patch" + "libxml2-CVE-2017-15412.patch"))))))) (define-public python-libxml2 (package (inherit libxml2) -- cgit v1.2.3 From e428b2c026f47ff8f1f3f4db93f8925af7159fad Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 13 Jan 2018 09:55:42 -0800 Subject: gnu: python-libxml2: Inherit the replacement source of libxml2. Previously, python-libxml2 would inherit the ungrafted libxml2, missing several patches on the libxml2 source code. * gnu/packages/xml.scm (python-libxml2, python2-libxml2): Use package/inherit. --- gnu/packages/xml.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index ce0d13a999..01a4353440 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -159,7 +159,7 @@ (define libxml2/fixed "libxml2-CVE-2017-15412.patch"))))))) (define-public python-libxml2 - (package (inherit libxml2) + (package/inherit libxml2 (name "python-libxml2") (build-system python-build-system) (arguments -- cgit v1.2.3 From ed4263fc16981354e48eca28f454aa04bfc8660e Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 16 Jan 2018 22:02:56 +0100 Subject: gnu: xmlsec: Update to 1.2.25. * gnu/packages/xml.scm (xmlsec): Update to 1.2.25. --- gnu/packages/xml.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index c516f3986f..40aafcffb9 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016, 2018 Ludovic Courtès ;;; Copyright © 2013, 2015 Andreas Enge ;;; Copyright © 2015 Eric Bavier ;;; Copyright © 2015 Sou Bunnbu @@ -906,14 +906,14 @@ (define-public xmlto (define-public xmlsec (package (name "xmlsec") - (version "1.2.20") + (version "1.2.25") (source (origin (method url-fetch) (uri (string-append "https://www.aleksey.com/xmlsec/download/" name "1-" version ".tar.gz")) (sha256 (base32 - "01bkbv2y3x8d1sf4dcln1x3y2jyj391s3208d9a2ndhglly5j89j")))) + "1lpwj8dxwhha54sby0v5axjk79h56jnhjjiwiasbbk15vwzahz4n")))) (build-system gnu-build-system) (propagated-inputs ; according to xmlsec1.pc `(("libxml2" ,libxml2) -- cgit v1.2.3 From a040db6d70d021d482a12aa9a91ab4199a99d9af Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 19 Jan 2018 05:18:03 +0100 Subject: gnu: libebml: Update to 1.3.5. * gnu/packages/xml.scm (libebml): Update to 1.3.5. [source, home-page]: Update URI. --- gnu/packages/xml.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 01a4353440..ff26214276 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -12,7 +12,7 @@ ;;; Copyright © 2016 Ben Woodcroft ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016, 2017 ng0 -;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice +;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2016, 2017 Marius Bakke ;;; Copyright © 2017 Adriano Peluso ;;; Copyright © 2017 Gregor Giesen @@ -92,17 +92,17 @@ (define expat-2.2.4 ; Fix CVE-{2016-9063,2017-9233,2017-11742} & other issues. (define-public libebml (package (name "libebml") - (version "1.3.4") + (version "1.3.5") (source (origin (method url-fetch) (uri (string-append "https://dl.matroska.org/downloads/" - name "/" name "-" version ".tar.bz2")) + name "/" name "-" version ".tar.xz")) (sha256 (base32 - "11zka6z9ncywyjr1gfm5cnii33ln7y3w6s86kiacchip2g7kw3f5")))) + "005a0ipqnfbsq47zrc61zszi439jw32q5xd6dc1jyb3lc0zl266q")))) (build-system gnu-build-system) - (home-page "https://www.matroska.org") + (home-page "https://matroska-org.github.io/libebml/") (synopsis "C++ libary to parse EBML files") (description "libebml is a C++ library to read and write EBML (Extensible Binary Meta Language) files. EBML was designed to be a simplified binary -- cgit v1.2.3 From b7cbcee552c5bd4e8398fc70a3a45eaa002b2770 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 19 Jan 2018 06:07:14 +0100 Subject: gnu: minixml: Update to 2.11. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/xml.scm (minixml): Update to 2.11. [source]: Use URL-FETCH/TARBOMB method. [arguments]: Add ‘fix-permissions’ phase. --- gnu/packages/xml.scm | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index ff26214276..eccef0d898 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -973,18 +973,28 @@ (define-public xmlsec (define-public minixml (package (name "minixml") - (version "2.10") + (version "2.11") (source (origin - (method url-fetch) + (method url-fetch/tarbomb) (uri (string-append "https://github.com/michaelrsweet/mxml/" - "releases/download/release-" version + "releases/download/v" version "/mxml-" version ".tar.gz")) (sha256 (base32 - "14bqfq4lymhb31snz6wsvzhlavy0573v1nki1lbngiyxcj5zazr6")))) + "13xsw8vvkxd10vca42ccdyl9rs64lcvhbfz57aknpl3xcfn8mxma")))) (build-system gnu-build-system) (arguments - `(#:tests? #f)) ;no "check" target + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-permissions + ;; FIXME: url-fetch/tarbomb resets all permissions to 555/444. + (lambda _ + (for-each + (lambda (file) + (chmod file #o644)) + (find-files "doc" "\\.")) + #t))) + #:tests? #f)) ; tests are run during build (home-page "https://michaelrsweet.github.io/mxml") (synopsis "Small XML parsing library") (description -- cgit v1.2.3 From cb7781177bf2a50b0f5a1ead69ca68d35cf20cf8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 20 Jan 2018 20:56:50 +0100 Subject: gnu: video, xml: Fix typo. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/video.scm (libva)[synopsis]: Fix ‘libary’ typo. [description]: Use @dfn. * gnu/packages/xml.scm (libebml): Likewise. --- gnu/packages/video.scm | 4 ++-- gnu/packages/xml.scm | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 2db16b179a..fa3aa0e8f0 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -523,10 +523,10 @@ (define-public libmatroska (inputs `(("libebml" ,libebml))) (home-page "https://www.matroska.org") - (synopsis "C++ libary to parse Matroska files (.mkv and .mka)") + (synopsis "C++ library to parse Matroska files (.mkv and .mka)") (description "Matroska aims to become the standard of multimedia container formats. -It is based on EBML (Extensible Binary Meta Language), a binary derivative +It is based on @dfn{EBML} (Extensible Binary Meta Language), a binary derivative of XML. EBML enables the Matroska Development Team to gain significant advantages in terms of future format extensibility, without breaking file support in old parsers. diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index eccef0d898..78ead8827c 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -103,10 +103,10 @@ (define-public libebml "005a0ipqnfbsq47zrc61zszi439jw32q5xd6dc1jyb3lc0zl266q")))) (build-system gnu-build-system) (home-page "https://matroska-org.github.io/libebml/") - (synopsis "C++ libary to parse EBML files") - (description "libebml is a C++ library to read and write EBML (Extensible -Binary Meta Language) files. EBML was designed to be a simplified binary -extension of XML for the purpose of storing and manipulating data in a + (synopsis "C++ library to parse EBML files") + (description "libebml is a C++ library to read and write @dfn{EBML} +(Extensible Binary Meta Language) files. EBML was designed to be a simplified +binary extension of XML for the purpose of storing and manipulating data in a hierarchical form with variable field lengths.") (license license:lgpl2.1))) -- cgit v1.2.3 From a5c71d158d1e407d61c668861bb9bc8142e6752e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 26 Jan 2018 15:58:55 +0100 Subject: gnu: html-xml-utils: Update to 7.5. * gnu/packages/xml.scm (html-xml-utils): Update to 7.5. --- gnu/packages/xml.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 78ead8827c..b34e7d5721 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1131,7 +1131,7 @@ (define-public xmlstarlet (define-public html-xml-utils (package (name "html-xml-utils") - (version "7.4") + (version "7.5") (source (origin (method url-fetch) @@ -1140,7 +1140,7 @@ (define-public html-xml-utils version ".tar.gz")) (sha256 (base32 - "04pgrahsfawnzd9pilvirs05pfdgsd7qwvw4dvkb42rgybhw6h95")))) + "0cbmqa9c4bc4ikk7vmgd65ixh2pl9mr336c4his3m8l7rgsjnh8n")))) (build-system gnu-build-system) (home-page "https://www.w3.org/Tools/HTML-XML-utils/") (synopsis "Command line utilities to manipulate HTML and XML files") -- cgit v1.2.3 From a5b570b457cabeb0f75603a33e8cde28e7bc7c19 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 26 Jan 2018 16:36:01 +0100 Subject: gnu: xmlsec: Correct home page. If this package ever shared the libexpat home page, it no longer does. * gnu/packages/xml.scm (xmlsec)[home-page]: Update. --- gnu/packages/xml.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index b34e7d5721..03623593a3 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -960,7 +960,7 @@ (define-public xmlsec ("libltdl" ,libltdl))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://www.libexpat.org/") + (home-page "https://www.aleksey.com/xmlsec/") (synopsis "XML Security Library") (description "The XML Security Library is a C library based on Libxml2. It -- cgit v1.2.3 From c5730ffe190ddcab7a40ac989e16cdef1ce6506e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 26 Jan 2018 16:47:18 +0100 Subject: gnu: xmlsec: Update to 1.2.25. * gnu/packages/xml.scm (xmlsec): Update to 1.2.25. --- gnu/packages/xml.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 03623593a3..a0937582f0 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -942,14 +942,14 @@ (define-public xmlto (define-public xmlsec (package (name "xmlsec") - (version "1.2.20") + (version "1.2.25") (source (origin (method url-fetch) (uri (string-append "https://www.aleksey.com/xmlsec/download/" name "1-" version ".tar.gz")) (sha256 (base32 - "01bkbv2y3x8d1sf4dcln1x3y2jyj391s3208d9a2ndhglly5j89j")))) + "1lpwj8dxwhha54sby0v5axjk79h56jnhjjiwiasbbk15vwzahz4n")))) (build-system gnu-build-system) (propagated-inputs ; according to xmlsec1.pc `(("libxml2" ,libxml2) -- cgit v1.2.3 From 1a17ca2624dd6dbbdaaecd4754ed41327351437e Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 17:28:58 +0100 Subject: gnu: Add java-jaxp. * gnu/packages/xml.scm (java-jaxp): New variable. --- gnu/packages/xml.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index a0937582f0..0a16d7d812 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -40,6 +40,7 @@ (define-module (gnu packages xml) #:use-module (gnu packages autotools) #:use-module (gnu packages compression) #:use-module (gnu packages gnupg) + #:use-module (gnu packages java) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) #:use-module (gnu packages python) @@ -1505,3 +1506,39 @@ (define-public perl-xml-twig XML), full XPath support (unless you use @code{XML::Twig::XPath}), nor DOM support.") (license license:perl-license))) + +;; TODO: Debian builds several jars out of this: jaxp-1.4.jar, +;; xml-apis.jar and xml-apis-1.4.01.jar. +(define-public java-jaxp + (package + (name "java-jaxp") + (version "1.4.01") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://apache/xerces/xml-commons/source/" + "xml-commons-external-" version "-src.tar.gz")) + (sha256 + (base32 "0rhq32a7dl9yik7zx9h0naz2iz068qgcdiayak91wp4wr26xhjyk")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "jaxp.jar" + #:jdk ,icedtea-8 + #:source-dir ".." + #:tests? #f)); no tests + (home-page "http://xerces.apache.org/xml-commons/") + (synopsis "Java XML parser and transformer APIs (DOM, SAX, JAXP, TrAX)") + (description "Jaxp from the Apache XML Commons project is used by +the Xerces-J XML parser and Xalan-J XSLT processor and specifies these APIs: + +@itemize +@item Document Object Model (DOM) +@item Simple API for XML (SAX) +@item Java APIs for XML Processing (JAXP) +@item Transformation API for XML (TrAX) +@item Document Object Model (DOM) Load and Save +@item JSR 206 Java API for XML Processing +@end itemize") + (license (list license:asl2.0 + license:w3c ;; Files under org.w3c + license:public-domain)))) ;; org.xml.sax -- cgit v1.2.3 From 9a86ee788d8941dcd017ac40d5f785c08225f89f Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 17:34:43 +0100 Subject: gnu: Add java-apache-xml-commons-resolver. * gnu/packages/xml.scm (java-apache-xml-commons-resolver): New variable. --- gnu/packages/xml.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 0a16d7d812..741ab2853c 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1542,3 +1542,42 @@ (define-public java-jaxp (license (list license:asl2.0 license:w3c ;; Files under org.w3c license:public-domain)))) ;; org.xml.sax + +(define-public java-apache-xml-commons-resolver + (package + (name "java-apache-xml-commons-resolver") + (version "1.2") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://apache/xerces/xml-commons/" + "xml-commons-resolver-" version ".tar.gz")) + (sha256 + (base32 "1zhy4anc3fg9f8y348bj88vmab15aavrg6nf419ifb25asyygnsm")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file (find-files "." ".*\\.(jar|zip)")) + #t)))) + (build-system ant-build-system) + (arguments + `(#:jar-name (string-append "xml-resolver.jar") + #:tests? #f)); no tests + (inputs + `(("java-junit" ,java-junit))) + (home-page "http://xerces.apache.org/xml-commons/") + (synopsis "Catalog-based entity and URI resolution") + (description "The resolver class implements the full semantics of OASIS Technical +Resolution 9401:1997 (Amendment 2 to TR 9401) catalogs and the 06 Aug +2001 Committee Specification of OASIS XML Catalogs. + +It also includes a framework of classes designed to read catalog files +in a number of formats: + +@itemize +@item The plain-text flavor described by TR9401. +@item The XCatalog XML format defined by John Cowan +@item The XML Catalog format defined by the OASIS Entity Resolution + Technical Committee. +@end itemize") + (license license:asl2.0))) -- cgit v1.2.3 From 7eae94d86adf3ed389d89ea2dea45cfa8c1ce6d6 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 17:48:54 +0100 Subject: gnu: Add java-jaxen-bootstrap. * gnu/packages/xml.scm (java-jaxen-bootstrap): New variable. --- gnu/packages/xml.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 741ab2853c..ed5ce58af3 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1581,3 +1581,40 @@ (define-public java-apache-xml-commons-resolver Technical Committee. @end itemize") (license license:asl2.0))) + +;; Jaxen requires java-dom4j and java-xom that in turn require jaxen. +;; This package is a bootstrap version without dependencies on dom4j and xom. +(define java-jaxen-bootstrap + (package + (name "java-jaxen-bootstrap") + (version "1.1.6") + (source (origin + (method url-fetch) + ;; No release on github + (uri (string-append "https://repo1.maven.org/maven2/jaxen/jaxen/" + version "/jaxen-" version "-sources.jar")) + (sha256 + (base32 + "18pa8mks3gfhazmkyil8wsp6j1g1x7rggqxfv4k2mnixkrj5x1kx")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "jaxen.jar" + #:source-dir "src" + #:tests? #f; no tests + #:phases + (modify-phases %standard-phases + (add-before 'build 'remove-dom4j + (lambda _ + (delete-file-recursively "src/org/jaxen/dom4j") + (delete-file-recursively "src/org/jaxen/xom") + #t))))) + (inputs + `(("java-jdom" ,java-jdom))) + (home-page "https://github.com/jaxen-xpath/jaxen") + (synopsis "XPath library") + (description "Jaxen is an XPath library written in Java. It is adaptable +to many different object models, including DOM, XOM, dom4j, and JDOM. It is +also possible to write adapters that treat non-XML trees such as compiled +Java byte code or Java beans as XML, thus enabling you to query these trees +with XPath too.") + (license license:bsd-3))) -- cgit v1.2.3 From 5552080de385d61b7ac8f059ad7469e8ffdc58ac Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 17:50:11 +0100 Subject: gnu: Add java-xom. * gnu/packages/xml.scm (java-xom): New variable. --- gnu/packages/xml.scm | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index ed5ce58af3..903151a53b 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1618,3 +1618,45 @@ (define java-jaxen-bootstrap Java byte code or Java beans as XML, thus enabling you to query these trees with XPath too.") (license license:bsd-3))) + +(define-public java-xom + (package + (name "java-xom") + (version "127") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/elharo/xom/archive/XOM_" + version ".tar.gz")) + (sha256 + (base32 + "04m69db1irqja12a9rfxrac8cbn9psqa1k136wh4ls4pxfsdr5wg")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file + (find-files "." "\\.jar$")) + #t)))) + (build-system ant-build-system) + (arguments + `(#:jar-name "xom.jar" + #:jdk ,icedtea-8 + #:tests? #f; no tests + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-tagsoup-dep + (lambda _ + ;; FIXME: Where is tagsoup source? + (delete-file "src/nu/xom/tools/XHTMLJavaDoc.java") + #t))))) + (inputs + `(("java-jdom" ,java-jdom) + ("java-junit" ,java-junit) + ("java-classpathx-servletapi" ,java-classpathx-servletapi) + ("java-jaxen-bootstrap" ,java-jaxen-bootstrap) + ("java-xerces" ,java-xerces))) + (home-page "https://xom.nu/") + (synopsis "XML Object Model") + (description "XOM is a new XML Object Model for processing XML with Java +that strives for correctness and simplicity.") + ;; 2.1 only + (license license:lgpl2.1))) -- cgit v1.2.3 From 96f31935ec25e9c942b7855c4a7078e7cfe32d6b Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 17:52:47 +0100 Subject: gnu: Add java-xsdlib. * gnu/packages/xml.scm (java-xsdlib): New variable. --- gnu/packages/xml.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 903151a53b..2e2b714cb5 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1660,3 +1660,28 @@ (define-public java-xom that strives for correctness and simplicity.") ;; 2.1 only (license license:lgpl2.1))) + +(define-public java-xsdlib + (package + (name "java-xsdlib") + (version "2013.2") + (source (origin + (method url-fetch) + (uri (string-append "http://central.maven.org/maven2/com/sun/msv/" + "datatype/xsd/xsdlib/" version "/xsdlib-" + version "-sources.jar")) + (sha256 + (base32 + "185i48p1xp09wbq03i9zgfl701qa262rq46yf4cajzmk3336kqim")))) + (build-system ant-build-system) + (arguments + `(#:tests? #f; no tests + #:jar-name "xsdlib.jar" + #:jdk ,icedtea-8)) + (inputs + `(("java-xerces" ,java-xerces))) + (home-page "http://central.maven.org/maven2/com/sun/msv/datatype/xsd/xsdlib/") + (synopsis "Sun Multi-Schema Validator") + (description "Xsdlib contains an implementation of sun.com.msv, an XML +validator.") + (license license:bsd-2))) -- cgit v1.2.3 From 82d7d4e1c81744f49f3b2168774437532755b32d Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 17:56:51 +0100 Subject: gnu: Add java-xpp3. gnu/packages/xml.scm (java-xpp3): New variable. --- gnu/packages/xml.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 2e2b714cb5..e65ea53f3e 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1685,3 +1685,37 @@ (define-public java-xsdlib (description "Xsdlib contains an implementation of sun.com.msv, an XML validator.") (license license:bsd-2))) + +(define-public java-xpp3 + (package + (name "java-xpp3") + (version "1.1.4") + (source (origin + (method url-fetch) + (uri (string-append "http://www.extreme.indiana.edu/dist/" + "java-repository/xpp3/distributions/xpp3-" + version "_src.tgz")) + (sha256 + (base32 + "1b99zrhyij5qwyhilyjdl1ykxvhk902vsvflh6gx4fir8hfvdl5p")) + (modules '((guix build utils))) + (snippet + '(begin ;; Delete bundled jar archives. + (for-each delete-file (find-files "." ".*\\.jar")) + #t)))) + (build-system ant-build-system) + (arguments + `(#:tests? #f; no tests + #:build-target "jar" + #:phases + (modify-phases %standard-phases + (replace 'install (install-jars "build"))))) + (home-page "http://www.extreme.indiana.edu/xgws/xsoap/xpp/") + (synopsis "Streaming pull XML parser") + (description "Xml Pull Parser (in short XPP) is a streaming pull XML +parser and should be used when there is a need to process quickly and +efficiently all input elements (for example in SOAP processors). This +package is a stable XmlPull parsing engine that is based on ideas from XPP +and in particular XPP2 but completely revised and rewritten to take the best +advantage of JIT JVMs.") + (license (license:non-copyleft "file://LICENSE.txt")))) -- cgit v1.2.3 From 9421f682244d5e8b1dcb17a042b38c0c83fc43d8 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 18:02:31 +0100 Subject: gnu: Add java-xmlpull2. * gnu/packages/xml.scm (java-xmlpull2): New variable. --- gnu/packages/xml.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index e65ea53f3e..af2097a70d 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1719,3 +1719,34 @@ (define-public java-xpp3 and in particular XPP2 but completely revised and rewritten to take the best advantage of JIT JVMs.") (license (license:non-copyleft "file://LICENSE.txt")))) + +(define-public java-xmlpull2 + (package + (name "java-xmlpull2") + (version "2.1.10") + (source (origin + (method url-fetch) + (uri (string-append "http://www.extreme.indiana.edu/xgws/xsoap/" + "PullParser/PullParser" version ".tgz")) + (sha256 + (base32 + "1kw9nhyqb7bzhn2zjbwlpi5vp5rzj89amzi3hadw2acyh2dmd0md")) + (modules '((guix build utils))) + (snippet + '(begin ;; Delete bundled jar archives. + (for-each delete-file (find-files "." ".*\\.jar")) + #t)))) + (build-system ant-build-system) + (arguments + `(#:tests? #f; no tests + #:build-target "impl" + #:phases + (modify-phases %standard-phases + (replace 'install (install-jars "build/lib"))))) + (home-page "http://www.extreme.indiana.edu/xgws/xsoap/xpp/") + (synopsis "Streaming pull XML parser") + (description "Xml Pull Parser (in short XPP) is a streaming pull XML +parser and should be used when there is a need to process quickly and +efficiently all input elements (for example in SOAP processors). This +package is in maintenance mode.") + (license (license:non-copyleft "file:///LICENSE.txt")))) -- cgit v1.2.3 From 605c23df5bd81b95590ca0af06fa12f19711e297 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 18:10:49 +0100 Subject: gnu: Add java-dom4j. gnu/packages/xml.scm (java-dom4j): New variable. --- gnu/packages/xml.scm | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index af2097a70d..b95a38797c 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1750,3 +1750,75 @@ (define-public java-xmlpull2 efficiently all input elements (for example in SOAP processors). This package is in maintenance mode.") (license (license:non-copyleft "file:///LICENSE.txt")))) + +(define-public java-dom4j + (package + (name "java-dom4j") + (version "2.1.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/dom4j/dom4j/archive/" + "version-" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "101drpnw6agmcvsi1jrfi0kn97r7liazrh5jbrip9vx26axn2fx9")) + (modules '((guix build utils))) + (snippet + '(begin ;; Delete bundled jar archives. + (for-each delete-file (find-files "." ".*\\.jar")) + #t)))) + (build-system ant-build-system) + (arguments + `(#:jar-name "dom4j.jar" + #:jdk ,icedtea-8 + #:source-dir "src/main/java" + ;; FIXME: Requires xalan, but xalan depends on java-cup which has a + ;; dependency on itself through jflex. + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'build 'copy-jaxen-sources + ;; java-jaxen-bootstrap is not enough. These files have a circular + ;; dependency and there is no subset of dom4j that would allow + ;; breaking the circle. + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p "jaxen-sources") + (with-directory-excursion "jaxen-sources" + (system* "jar" "xf" (assoc-ref inputs "java-jaxen-sources"))) + (mkdir-p "src/main/java/org/jaxen/dom4j") + (copy-file "jaxen-sources/org/jaxen/dom4j/DocumentNavigator.java" + "src/main/java/org/jaxen/dom4j/DocumentNavigator.java") + (copy-file "jaxen-sources/org/jaxen/dom4j/Dom4jXPath.java" + "src/main/java/org/jaxen/dom4j/Dom4jXPath.java") + #t)) + (add-before 'build 'fix-old-xpp2 + (lambda _ + ;; This package normally depends on xpp2 2.0, but version 2.1.10 + ;; is the only version whose source code is published. + (substitute* "src/main/java/org/dom4j/xpp/ProxyXmlStartTag.java" + (("public void resetStartTag") + "public boolean removeAttributeByRawName(String name) {\n + return false;\n +}\n +public boolean removeAttributeByName(String name, String name2) {\n + return false;\n +}\n\npublic void resetStartTag") + (("Atttribute") "Attribute")) + #t))))) + (inputs + `(("java-jaxen-bootstrap" ,java-jaxen-bootstrap) + ("java-jaxen-sources" ,(package-source java-jaxen-bootstrap)) + ("java-xmlpull2" ,java-xmlpull2) + ("java-xpp3" ,java-xpp3) + ("java-xsdlib" ,java-xsdlib))) + (native-inputs + `(("java-testng" ,java-testng) + ("java-xerces" ,java-xerces))) + (home-page "https://dom4j.github.io/") + (synopsis "Flexible XML framework for Java") + (description "Dom4j is a flexible XML framework for Java. DOM4J works +with DOM, SAX, XPath, and XSLT. It can parse large XML documents with very +low memory footprint.") + ;; some BSD-like 5-clause license + (license (license:non-copyleft "file://LICENSE")))) -- cgit v1.2.3 From be0524f472f4e6d65b0da0fe15ba9e999c21876f Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 18:15:52 +0100 Subject: gnu: Add java-jaxen. * gnu/packages/xml.scm (java-jaxen): New variable. --- gnu/packages/xml.scm | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index b95a38797c..42e5ef421c 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1619,6 +1619,15 @@ (define java-jaxen-bootstrap with XPath too.") (license license:bsd-3))) +(define-public java-jaxen + (package + (inherit java-jaxen-bootstrap) + (name "java-jaxen") + (inputs + `(("java-jdom" ,java-jdom) + ("java-xom" ,java-xom) + ("java-dom4j" ,java-dom4j))))) + (define-public java-xom (package (name "java-xom") -- cgit v1.2.3 From 3058d8ec560ff37a2a4af678e6776546f5b083c2 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 18:28:17 +0100 Subject: gnu: Add java-kxml2. * gnu/packages/xml.scm (java-kxml2): New variable. --- gnu/packages/xml.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 42e5ef421c..ce7eb4bf9b 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1831,3 +1831,39 @@ (define-public java-dom4j low memory footprint.") ;; some BSD-like 5-clause license (license (license:non-copyleft "file://LICENSE")))) + +(define-public java-kxml2 + (package + (name "java-kxml2") + (version "2.4.2") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/stefanhaustein/kxml2/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "17kh04qf3vll1xx6sv06xlazw2hxa8qdmzyday9r6z2191jlj74w")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "kxml2.jar" + #:source-dir "src/main/java" + #:test-include (list "TestWb.java") + ;; Test failure: it was expected to get an XML entity but got the + ;; equivalent Unicode character instead. + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "src/main/resources" "build/classes")))))) + (inputs + `(("java-xpp3" ,java-xpp3))) + (native-inputs + `(("java-junit" ,java-junit))) + (home-page "http://kxml.org") + (synopsis "XML pull parser") + (description "kXML is a small XML pull parser, specially designed for +constrained environments such as Applets, Personal Java or devices compliant +with the Mobile Information Device Profile (MIDP).") + (license license:expat))) -- cgit v1.2.3 From 4c7759f027120c28d51f648d517b8cf20ed6951a Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 18:30:13 +0100 Subject: gnu: Add java-stax. * gnu/packages/xml.scm (java-stax): New variable. --- gnu/packages/xml.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index ce7eb4bf9b..76b06954b4 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1867,3 +1867,35 @@ (define-public java-kxml2 constrained environments such as Applets, Personal Java or devices compliant with the Mobile Information Device Profile (MIDP).") (license license:expat))) + +(define-public java-stax + (package + (name "java-stax") + (version "1.2.0") + (source (origin + (method url-fetch) + (uri (string-append "https://repo1.maven.org/maven2/stax/stax/" + version "/stax-" version "-sources.jar")) + (sha256 + (base32 + "04ba4qvbrps45j8bldbakxq31k7gjlsay9pppa9yn13fr00q586z")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "stax.jar" + #:tests? #f; no tests + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-utf8 + (lambda _ + ;; This file is ISO-8859-1 but java expects UTF-8. + ;; Remove special characters in comments. + (with-fluids ((%default-port-encoding "ISO-8859-1")) + (substitute* "src/com/wutka/dtd/Scanner.java" + (("//.*") "\n"))) + #t))))) + (home-page "https://repo1.maven.org/maven2/stax/stax/") + (synopsis "Streaming API for XML") + (description "This package provides the reference implementation of the +@dfn{Streaming API for XML} (StAX). It is used for streaming XML data to +and from a Java application. It provides a standard pull parser interface.") + (license license:asl2.0))) -- cgit v1.2.3 From b8798817a18c51d372b4207fcb8fd5f2d6723dc7 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 18:31:38 +0100 Subject: gnu: Add java-jettison. * gnu/packages/xml.scm (java-jettison): New variable. --- gnu/packages/xml.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 76b06954b4..76e44157b9 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1899,3 +1899,33 @@ (define-public java-stax @dfn{Streaming API for XML} (StAX). It is used for streaming XML data to and from a Java application. It provides a standard pull parser interface.") (license license:asl2.0))) + +(define-public java-jettison + (package + (name "java-jettison") + (version "1.3.7") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/codehaus/jettison/archive/" + "jettison-" version ".tar.gz")) + (sha256 + (base32 + "0rdhfyxywvga5wiwasc04iqnxyixn3rd8wj01c9ymhvwc3h6dpqg")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "jettison.jar" + #:source-dir "src/main/java" + #:test-exclude (list "**/Abstract*.java" + ;; Abstract classes + "**/DOMTest.java" + "**/BadgerFishDOMTest.java" + "**/MappedDOMTest.java"))) + (native-inputs + `(("java-junit" ,java-junit))) + (home-page "https://github.com/codehaus/jettison") + (synopsis "StAX implementation for JSON") + (description "Jettison is a Java library for converting XML to JSON and +vice-versa with the help of the @dfn{Streaming API for XML} (StAX). It +implements @code{XMLStreamWriter} and @code{XMLStreamReader} and supports +@code{Mapped} and @code{BadgerFish} conventions.") + (license license:asl2.0))) -- cgit v1.2.3 From a5ec8a5c6b2e78f3f5fdde7294cd68cdd17cbe5e Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 18:35:02 +0100 Subject: gnu: Add java-jdom2. * gnu/packages/xml.scm (java-jdom2): New variable. --- gnu/packages/xml.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 76e44157b9..758c6d308d 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1929,3 +1929,28 @@ (define-public java-jettison implements @code{XMLStreamWriter} and @code{XMLStreamReader} and supports @code{Mapped} and @code{BadgerFish} conventions.") (license license:asl2.0))) + +(define-public java-jdom2 + (package + (name "java-jdom") + (version "2.0.6") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/hunterhacker/jdom/archive/JDOM-" + version ".tar.gz")) + (sha256 + (base32 + "0p8n7inqq2a25wk9ljinl3ixlx1x2la9qaman8ngd75xxjb02yc1")))) + (build-system ant-build-system) + (arguments + `(#:build-target "package" + #:tests? #f; tests are run as part of the build process + #:phases + (modify-phases %standard-phases + (replace 'install + (install-jars "build"))))) + (home-page "http://jdom.org/") + (synopsis "Access, manipulate, and output XML data") + (description "Jdom is a Java-based solution for accessing, manipulating, and +outputting XML data from Java code.") + (license license:bsd-4))) -- cgit v1.2.3 From 5ee7b02f563e3f50fc69d1a0ae0e7f3f940a2dba Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 10 Feb 2018 18:40:05 +0100 Subject: gnu: Add java-xstream. * gnu/packages/xml.scm (java-xstream): New variable. --- gnu/packages/xml.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 758c6d308d..0b3a820387 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1954,3 +1954,43 @@ (define-public java-jdom2 (description "Jdom is a Java-based solution for accessing, manipulating, and outputting XML data from Java code.") (license license:bsd-4))) + +(define-public java-xstream + (package + (name "java-xstream") + (version "1.4.10") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/x-stream/xstream/archive/XSTREAM_" + (string-map (lambda (x) (if (eq? x #\.) #\_ x)) version) + ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "10zbkam05wirxipvgrjimdwsyqrwl4a0n7lhvxbsssqpv727469g")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "xstream.jar" + ;; FIXME: Tests are not in a java subdirectory as assumed by ant-build-system + #:tests? #f + #:jdk ,icedtea-8 + #:source-dir "xstream/src/java")) + (inputs + `(("java-jdom" ,java-jdom) + ("java-jdom2" ,java-jdom2) + ("java-cglib" ,java-cglib) + ("java-joda-time" ,java-joda-time) + ("java-jettison" ,java-jettison) + ("java-xom" ,java-xom) + ("java-xpp3" ,java-xpp3) + ("java-dom4j" ,java-dom4j) + ("java-stax2-api" ,java-stax2-api) + ("java-woodstox-core" ,java-woodstox-core) + ("java-kxml2" ,java-kxml2) + ("java-stax" ,java-stax))) + (home-page "https://x-stream.github.io") + (synopsis "XML serialization library") + (description "XStream is a simple library to serialize Java objects to XML +and back again.") + (license license:bsd-3))) -- cgit v1.2.3 From b4c9a3173dad692e3e72c55b16d17fd7163da516 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 11 Feb 2018 11:46:27 +0100 Subject: gnu: libreoffice: Update to 5.4.5.1 [CVE-2018-6871]. * gnu/packages/check.scm (cppunit-1.14): New public variable. * gnu/packages/libreoffice.scm (xmlsec-src-libreoffice): Remove variable. (libreoffice): Update to 5.4.5.1. [native-inputs]: Change CPPUNIT to CPPUNIT-1.14. Remove AUTOCONF and AUTOMAKE. [inputs]: Add GPGME, XMLSEC-NSS and LIBLTDL. Remove XMLSEC-SRC-LIBREOFFICE. Replace LIBJPEG with LIBJPEG-TURBO. [arguments]: Remove xmlsec code from PREPARE-SRC-PHASE. Make sure GPGME++ headers are found. Add workaround for . Add "--disable-pdfium" to #:configure-flags. * gnu/packages/xml.scm (xmlsec-nss): New public variable. --- gnu/packages/check.scm | 17 +++++++++++ gnu/packages/libreoffice.scm | 70 ++++++++++++++++++++------------------------ gnu/packages/xml.scm | 12 +++++++- 3 files changed, 59 insertions(+), 40 deletions(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 1276c0fda4..92f4935927 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -157,6 +157,23 @@ (define-public cppunit supervised tests.") (license license:lgpl2.1))) ; no copyright notices. LGPL2.1 is in the tarball +;; Some packages require this newer version of cppunit. However, it needs +;; C++11 support, which is not enabled by default in our current GCC, and +;; updating in-place would require adding CXXFLAGS to many dependent packages. +;; Thus, keep as a separate variable for now. +;; TODO: Remove this when our default GCC is updated to 6 or higher. +(define-public cppunit-1.14 + (package + (inherit cppunit) + (version "1.14.0") + (source (origin + (method url-fetch) + (uri (string-append "https://dev-www.libreoffice.org/src/" + "cppunit-" version ".tar.gz")) + (sha256 + (base32 + "1027cyfx5gsjkdkaf6c2wnjh68882grw8n672018cj3vs9lrhmix")))))) + (define-public catch-framework (package (name "catch") diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index 799b062439..47dd21b3b0 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; Copyright © 2017 Andy Wingo ;;; Copyright © 2017 Ludovic Courtès -;;; Copyright © 2017 Marius Bakke +;;; Copyright © 2017, 2018 Marius Bakke ;;; Copyright © 2017 Rutger Helling ;;; ;;; This file is part of GNU Guix. @@ -54,6 +54,7 @@ (define-module (gnu packages libreoffice) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gperf) + #:use-module (gnu packages gnupg) #:use-module (gnu packages gnuzilla) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) @@ -839,22 +840,10 @@ (define-public mythes (license (non-copyleft "file://COPYING" "See COPYING in the distribution.")))) -;; LibreOffice requires an xmlsec source tarball; it does not even check -;; for the presence of an externally compiled library. -(define xmlsec-src-libreoffice - (origin - (method url-fetch) - (uri - (string-append - "http://dev-www.libreoffice.org/src/" - "86b1daaa438f5a7bea9a52d7b9799ac0-xmlsec1-1.2.23.tar.gz")) - (sha256 (base32 - "17qfw5crkqn4v6xbkjxrjvcccfc00dy053892wrwv54qdk8n7m21")))) - (define-public libreoffice (package (name "libreoffice") - (version "5.3.7.2") + (version "5.4.5.1") (source (origin (method url-fetch) @@ -863,16 +852,11 @@ (define-public libreoffice "https://download.documentfoundation.org/libreoffice/src/" (version-prefix version 3) "/libreoffice-" version ".tar.xz")) (sha256 (base32 - "0z7fssp0jcj09wxad1wmhy69n71a2mwl933lxp9dz5sdvzncxmy3")))) + "167bh6jgyhfcvn3g7xghkg4nb99h91diypdlry5df21xs8bis5gb")))) (build-system gnu-build-system) (native-inputs - `(;; autoreconf is run by the LibreOffice build system, since after - ;; unpacking the external xmlsec tarball, it applies a series of - ;; patches to Makefile.am, configure.in, config.guess and config.sub. - ("autoconf" ,autoconf) - ("automake" ,automake) - ("bison" ,bison) - ("cppunit" ,cppunit) + `(("bison" ,bison) + ("cppunit" ,cppunit-1.14) ("flex" ,flex) ("pkg-config" ,pkg-config) ("python" ,python-wrapper) @@ -888,6 +872,7 @@ (define-public libreoffice ("glew" ,glew) ("glm" ,glm) ("gperf" ,gperf) + ("gpgme" ,gpgme) ("graphite2" ,graphite2) ("gst-plugins-base" ,gst-plugins-base) ("gtk+" ,gtk+) @@ -897,12 +882,14 @@ (define-public libreoffice ("libabw" ,libabw) ("libcdr" ,libcdr) ("libcmis" ,libcmis) - ("libjpeg" ,libjpeg) + ("libjpeg-turbo" ,libjpeg-turbo) ("libe-book" ,libe-book) ("libetonyek" ,libetonyek) ("libexttextcat" ,libexttextcat) ("libfreehand" ,libfreehand) ("liblangtag" ,liblangtag) + ;; XXX: Perhaps this should be propagated from xmlsec. + ("libltdl" ,libltdl) ("libmspub" ,libmspub) ("libmwaw" ,libmwaw) ("libodfgen" ,libodfgen) @@ -935,7 +922,7 @@ (define-public libreoffice ("unixodbc" ,unixodbc) ("unzip" ,unzip) ("vigra" ,vigra) - ("xmlsec-src" ,xmlsec-src-libreoffice) + ("xmlsec" ,xmlsec-nss) ("zip" ,zip))) (arguments `(#:tests? #f ; Building the tests already fails. @@ -944,26 +931,27 @@ (define-public libreoffice (modify-phases %standard-phases (add-before 'configure 'prepare-src (lambda* (#:key inputs #:allow-other-keys) - (let ((xmlsec (assoc-ref inputs "xmlsec-src"))) + (let ((gpgme (assoc-ref inputs "gpgme"))) (substitute* (list "sysui/CustomTarget_share.mk" "solenv/gbuild/gbuild.mk" "solenv/gbuild/platform/unxgcc.mk") (("/bin/sh") (which "sh"))) - (mkdir "external/tarballs") - (symlink - xmlsec - (string-append "external/tarballs/" - "86b1daaa438f5a7bea9a52d7b9799ac0-" - "xmlsec1-1.2.23.tar.gz")) - ;; The following is required for building xmlsec from the - ;; unpatched external tarball; since "configure" starts with - ;; "/bin/sh", it needs to be executed by a command invoking - ;; the shell. - (setenv "SHELL" (which "bash")) - (setenv "CONFIG_SHELL" (which "bash")) - (substitute* "external/libxmlsec/ExternalProject_xmlsec.mk" - (("./configure") "$(CONFIG_SHELL) ./configure" )) + + ;; GPGME++ headers are installed in a gpgme++ subdirectory, + ;; but files in "xmlsecurity/source/gpg/" expect to find them + ;; on the include path without a prefix. + (substitute* "xmlsecurity/Library_xsec_xmlsec.mk" + (("\\$\\$\\(INCLUDE\\)") + (string-append "$$(INCLUDE) -I" gpgme "/include/gpgme++"))) + + ;; XXX: When GTK2 is disabled, one header file is not included. + ;; This is likely fixed in later versions. See also + ;; . + (substitute* "vcl/unx/gtk3/gtk3gtkframe.cxx" + (("#include ") + "#include \n#include ")) + #t))) (add-after 'install 'bin-and-desktop-install ;; Create 'soffice' and 'libreoffice' symlinks to the executable @@ -1037,6 +1025,10 @@ (define (install-appdata app) "--disable-coinmp" "--disable-firebird-sdbc" ; embedded firebird "--disable-gltf" + ;; XXX: PDFium support requires fetching an external tarball and + ;; patching the build scripts to work with GCC5. Try enabling this + ;; when our default compiler is >=GCC 6. + "--disable-pdfium" "--disable-gtk" ; disable use of GTK+ 2 "--without-doxygen"))) (home-page "https://www.libreoffice.org/") diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 0b3a820387..e6d668178e 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -13,7 +13,7 @@ ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice -;;; Copyright © 2016, 2017 Marius Bakke +;;; Copyright © 2016, 2017, 2018 Marius Bakke ;;; Copyright © 2017 Adriano Peluso ;;; Copyright © 2017 Gregor Giesen ;;; Copyright © 2017 Alex Vong @@ -41,6 +41,7 @@ (define-module (gnu packages xml) #:use-module (gnu packages compression) #:use-module (gnu packages gnupg) #:use-module (gnu packages java) + #:use-module (gnu packages gnuzilla) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) #:use-module (gnu packages python) @@ -971,6 +972,15 @@ (define-public xmlsec (license (license:x11-style "file://COPYING" "See 'COPYING' in the distribution.")))) +(define-public xmlsec-nss + (package + (inherit xmlsec) + (name "xmlsec-nss") + (inputs + `(("nss" ,nss) + ("libltdl" ,libltdl))) + (synopsis "XML Security Library (using NSS instead of GnuTLS)"))) + (define-public minixml (package (name "minixml") -- cgit v1.2.3 From 5c1cf7f30a11667c50e1c6b82205bc8ad2c0d66f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Feb 2018 23:50:17 +0100 Subject: gnu: Add ghc-hxt-charproperties. * gnu/packages/xml.scm (ghc-hxt-charproperties): New variable. --- gnu/packages/xml.scm | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index e6d668178e..0639adcda9 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2013, 2015 Andreas Enge ;;; Copyright © 2015 Eric Bavier ;;; Copyright © 2015 Sou Bunnbu -;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus +;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus ;;; Copyright © 2015, 2016, 2017 Mark H Weaver ;;; Copyright © 2015, 2016 Efraim Flashner ;;; Copyright © 2015 Raimon Grau @@ -42,6 +42,8 @@ (define-module (gnu packages xml) #:use-module (gnu packages gnupg) #:use-module (gnu packages java) #:use-module (gnu packages gnuzilla) + #:use-module (gnu packages haskell) + #:use-module (gnu packages haskell-check) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) #:use-module (gnu packages python) @@ -55,6 +57,7 @@ (define-module (gnu packages xml) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) #:use-module (guix build-system python) + #:use-module (guix build-system haskell) #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config)) @@ -2004,3 +2007,26 @@ (define-public java-xstream (description "XStream is a simple library to serialize Java objects to XML and back again.") (license license:bsd-3))) + +(define-public ghc-hxt-charproperties + (package + (name "ghc-hxt-charproperties") + (version "9.2.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "hxt-charproperties/hxt-charproperties-" + version ".tar.gz")) + (sha256 + (base32 + "1mml8wglvagqq891rchgli6r8rnkwrqhgsxfl6kb5403pzb18rp4")))) + (build-system haskell-build-system) + (home-page "https://github.com/UweSchmidt/hxt") + (synopsis "Character properties and classes for XML and Unicode") + (description + "The modules provided by this package contain predicates for Unicode +blocks and char properties and character predicates defined by XML. The +supported Unicode version is 7.0.0") + (license license:expat))) + -- cgit v1.2.3 From e85de10877f21f82500ed79c5045de5c2e52a206 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Feb 2018 23:50:33 +0100 Subject: gnu: Add ghc-hxt-unicode. * gnu/packages/xml.scm (ghc-hxt-unicode): New variable. --- gnu/packages/xml.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 0639adcda9..c538021cb0 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -2030,3 +2030,31 @@ (define-public ghc-hxt-charproperties supported Unicode version is 7.0.0") (license license:expat))) +(define-public ghc-hxt-unicode + (package + (name "ghc-hxt-unicode") + (version "9.0.2.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/hxt-unicode/hxt-unicode-" + version + ".tar.gz")) + (sha256 + (base32 + "0rj48cy8z4fl3zpg5bpa458kqr83adav6jnqv4i71dclpprj6n3v")))) + (build-system haskell-build-system) + (inputs + `(("ghc-hxt-charproperties" ,ghc-hxt-charproperties))) + (home-page + "http://www.fh-wedel.de/~si/HXmlToolbox/index.html https://github.com/UweSchmidt/hxt") + (synopsis + "Unicode en-/decoding functions for utf8, iso-latin-* and other encodings") + (description + "This package provides Unicode encoding and decoding functions for +encodings used in the Haskell XML Toolbox. ISO Latin 1-16, utf8, utf16, ASCII +are supported. Decoding is done with lazy functions, errors may be detected or +ignored.") + (license license:expat))) + -- cgit v1.2.3 From 6f8deed6e3b945dd2c9622a24ff3b1ee3226a920 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Feb 2018 23:50:42 +0100 Subject: gnu: Add ghc-hxt-regex-xmlschema. * gnu/packages/xml.scm (ghc-hxt-regex-xmlschema): New variable. --- gnu/packages/xml.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index c538021cb0..480e65073b 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -2058,3 +2058,30 @@ (define-public ghc-hxt-unicode ignored.") (license license:expat))) +(define-public ghc-hxt-regex-xmlschema + (package + (name "ghc-hxt-regex-xmlschema") + (version "9.2.0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "hxt-regex-xmlschema/hxt-regex-xmlschema-" + version ".tar.gz")) + (sha256 + (base32 + "1c4jr0439f5yc05h7iz53fa47g6l2wrvqp6gvwf01mlqajk3nx7l")))) + (build-system haskell-build-system) + (inputs + `(("ghc-hxt-charproperties" ,ghc-hxt-charproperties) + ("ghc-parsec" ,ghc-parsec) + ("ghc-text" ,ghc-text) + ("ghc-hunit" ,ghc-hunit))) + (home-page "http://www.haskell.org/haskellwiki/Regular_expressions_for_XML_Schema") + (synopsis "Regular expression library for W3C XML Schema regular expressions") + (description + "This library supports full W3C XML Schema regular expressions inclusive +all Unicode character sets and blocks. It is implemented by the technique of +derivations of regular expressions.") + (license license:expat))) + -- cgit v1.2.3 From 315118995a02dd96e8435907551b74fa489e05ad Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Feb 2018 23:50:55 +0100 Subject: gnu: Add ghc-hxt.. * gnu/packages/xml.scm (ghc-hxt.): New variable. --- gnu/packages/xml.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 480e65073b..919043afd4 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -2085,3 +2085,31 @@ (define-public ghc-hxt-regex-xmlschema derivations of regular expressions.") (license license:expat))) +(define-public ghc-hxt + (package + (name "ghc-hxt") + (version "9.3.1.16") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/hxt/hxt-" + version + ".tar.gz")) + (sha256 + (base32 + "1qq3ykgn355rx242xjcbqqksgvwr6k2fdj5phw4iv28qqxff6m8d")))) + (build-system haskell-build-system) + (inputs + `(("ghc-parsec" ,ghc-parsec) + ("ghc-mtl" ,ghc-mtl) + ("ghc-hxt-charproperties" ,ghc-hxt-charproperties) + ("ghc-hxt-unicode" ,ghc-hxt-unicode) + ("ghc-hxt-regex-xmlschema" ,ghc-hxt-regex-xmlschema) + ("ghc-network-uri" ,ghc-network-uri))) + (home-page "https://github.com/UweSchmidt/hxt") + (synopsis "Collection of tools for processing XML with Haskell") + (description + "The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but +introduces a more general approach for processing XML with Haskell.") + (license license:expat))) -- cgit v1.2.3 From ca6197dd65771dbb2a88cfa48c4d6844bc51f069 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 17 Feb 2018 20:59:11 +0100 Subject: gnu: python-defusedxml: Update to 0.5.0. * gnu/packages/xml.scm (python-defusedxml): Update to 0.5.0. --- gnu/packages/xml.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 055bf8dee7..e9f7830f86 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1196,14 +1196,14 @@ (define-public xlsx2csv (define-public python-defusedxml (package (name "python-defusedxml") - (version "0.4.1") + (version "0.5.0") (source (origin (method url-fetch) (uri (pypi-uri "defusedxml" version)) (sha256 (base32 - "0y147zy3jqmk6ly7fbhqmzn1hf41xcb53f2vcc3m8x4ba5d1smfd")))) + "1x54n0h8hl92vvwyymx883fbqpqjwn2mc8fb383bcg3z9zwz5mr4")))) (build-system python-build-system) (home-page "https://bitbucket.org/tiran/defusedxml") (synopsis "XML bomb protection for Python stdlib modules") -- cgit v1.2.3 From 14eb54349aca9c46f3ddf5e9000e7202e7b1b2cd Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 18 Feb 2018 19:19:29 +0100 Subject: gnu: perl-xml-sax: Update to 1.00. * gnu/packages/xml.scm (perl-xml-sax): Update to 1.00. --- gnu/packages/xml.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/xml.scm') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index e9f7830f86..cc5e19af27 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -504,7 +504,7 @@ (define-public perl-xml-rss (define-public perl-xml-sax (package (name "perl-xml-sax") - (version "0.99") + (version "1.00") (source (origin (method url-fetch) @@ -512,7 +512,7 @@ (define-public perl-xml-sax "XML-SAX-" version ".tar.gz")) (sha256 (base32 - "115dypb50w1l94y3iwihv5nkixbsv1cxiqkd93y4rk5n6s74pc1j")))) + "1qra9k3wszjxvsgbragl55z3qba4nri0ipmjaxfib4l6xxj6bsj5")))) (build-system perl-build-system) (propagated-inputs `(("perl-xml-namespacesupport" ,perl-xml-namespacesupport) -- cgit v1.2.3