From 38aca674c3bcd2ace1c6ec79c8b58343c8eea403 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 5 Oct 2018 15:22:55 +0200 Subject: [PATCH 01/56] gnu: libfilezilla: Update to 0.14.0. * gnu/packages/ftp.scm (libfilezilla): Update to 0.14.0. --- gnu/packages/ftp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index faf9f5dd10..6d89626fe0 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -170,7 +170,7 @@ (define-public weex (define-public libfilezilla (package (name "libfilezilla") - (version "0.13.2") + (version "0.14.0") (source (origin (method url-fetch) @@ -178,7 +178,7 @@ (define-public libfilezilla name "/" name "-" version ".tar.bz2")) (sha256 (base32 - "0z9cqscca4w94j9npgcknrrw8gfwn5ids903042fczlr977j0i19")))) + "15cfz98asypf9rfybv4c6kx8nk3wak7qlm1azldc0gd1nqm4xqvz")))) (build-system gnu-build-system) (native-inputs `(("cppunit" ,cppunit) From 3f904456923d6ba658ccf5f164511478f430afa5 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 5 Oct 2018 19:11:28 +0200 Subject: [PATCH 02/56] gnu: filezilla: Update to 3.37.4. * gnu/packages/ftp.scm (filezilla): Update to 3.37.4. --- gnu/packages/ftp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index 6d89626fe0..b9c6d209b8 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -207,14 +207,14 @@ (define-public libfilezilla (define-public filezilla (package (name "filezilla") - (version "3.37.1") + (version "3.37.4") (source (origin (method url-fetch) (uri (string-append "https://download.filezilla-project.org/client/" "FileZilla_" version "_src.tar.bz2")) (sha256 - (base32 "1bbxlm8gc0r5jing8xmkdbhj5a1qfbjn8varhny3mrk1am4m7s7l")))) + (base32 "169wy7ilsh518mcinkjmr6m0kzxbzchmc9mivf5c9b4zp1w4gg3i")))) (build-system gnu-build-system) (arguments ;; Don't let filezilla phone home to check for updates. From 8713c03e557114c576c796400300d0dbab4f06c8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 4 Oct 2018 22:16:36 +0200 Subject: [PATCH 03/56] gnu: audacity: Don't use unstable tarball. * gnu/packages/audio.scm (audacity)[source]: Use GIT-FETCH and GIT-FILE-NAME. --- gnu/packages/audio.scm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index c92b5056d1..434efab953 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -291,12 +291,14 @@ (define-public audacity (version "2.2.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/audacity/audacity/archive" - "/Audacity-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/audacity/audacity.git") + (commit (string-append "Audacity-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "18q7i77ynihx7xp45lz2lv0k0wrh6736pcrivlpwrxjgbvyqx7km")) + "10maxmjxbmjybj7n4m7a9bbm7g8xxw8f8vbsf7c9ih5j2gr15ihs")) (patches (search-patches "audacity-build-with-system-portaudio.patch")) (modules '((guix build utils))) (snippet From b008a12ae78b533c14dd7e88f29df091eca3c0d7 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 4 Oct 2018 21:59:55 +0200 Subject: [PATCH 04/56] gnu: fdroidserver: Update to 1.0.10. * gnu/packages/android.scm (fdroidserver): Update to 1.0.10. --- gnu/packages/android.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/android.scm b/gnu/packages/android.scm index 53d7d8d441..9f8d850ff5 100644 --- a/gnu/packages/android.scm +++ b/gnu/packages/android.scm @@ -863,14 +863,14 @@ (define-public python-androguard (define-public fdroidserver (package (name "fdroidserver") - (version "1.0.9") + (version "1.0.10") (source (origin (method url-fetch) (uri (pypi-uri "fdroidserver" version)) (sha256 (base32 - "0cwb1fmindw6v9jkiim9yn3496rk1pvnk94s1r0vz2hxgz16xp7n")))) + "0n6kkby65qzqdx1jn72grfffvr1w1j1rby5pwm9z8rymmsh8s0pm")))) (build-system python-build-system) (arguments `(#:phases From fc4738149f5cbaffc8e0b37bfb61e25fac0ecd67 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 4 Oct 2018 00:30:53 +0200 Subject: [PATCH 05/56] gnu: Add bastet. * gnu/packages/games.scm (bastet): New public variable. * gnu/packages/patches/bastet-change-source-of-unordered_set.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/games.scm | 64 +++++++++++++++++++ ...astet-change-source-of-unordered_set.patch | 40 ++++++++++++ 3 files changed, 105 insertions(+) create mode 100644 gnu/packages/patches/bastet-change-source-of-unordered_set.patch diff --git a/gnu/local.mk b/gnu/local.mk index 61e5913a01..8c6579b03f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -591,6 +591,7 @@ dist_patch_DATA = \ %D%/packages/patches/awesome-reproducible-png.patch \ %D%/packages/patches/azr3.patch \ %D%/packages/patches/bash-completion-directories.patch \ + %D%/packages/patches/bastet-change-source-of-unordered_set.patch \ %D%/packages/patches/bazaar-CVE-2017-14176.patch \ %D%/packages/patches/beignet-correct-file-names.patch \ %D%/packages/patches/binutils-aarch64-symbol-relocation.patch \ diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index ec92f508bc..7365a7f5d8 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -181,6 +181,70 @@ (define-public armagetronad settings to tweak as well.") (license license:gpl2+))) +(define-public bastet + (package + (name "bastet") + (version "0.43.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fph/bastet.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "09kamxapm9jw9przpsgjfg33n9k94bccv65w95dakj0br33a75wn")) + (patches + (search-patches "bastet-change-source-of-unordered_set.patch")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (list (string-append "CXXFLAGS=-I" + (assoc-ref %build-inputs "boost") "/include")) + #:phases + (modify-phases %standard-phases + (delete 'configure) ; no configure script + (replace 'check + ;; The 'Test' target builds the tests, but doesn't actually run them. + (lambda* (#:key make-flags #:allow-other-keys) + (apply invoke "make" "Test" make-flags) + (setenv "HOME" ".") + (invoke "./Test"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (share (string-append out "/share")) + (hicolor (string-append share "/icons/hicolor"))) + (install-file "bastet" + (string-append out "/bin")) + + (install-file "bastet.desktop" + (string-append share "/applications")) + (install-file "bastet.svg" + (string-append hicolor "/scalable/apps")) + + (install-file "bastet.appdata.xml" + (string-append share "/appdata")) + + (install-file "bastet.6" + (string-append out "/share/man/man6")) + #t)))))) + (native-inputs + `(("hicolor-icon-theme" ,hicolor-icon-theme))) + (inputs + `(("boost" ,boost) + ("ncurses" ,ncurses))) + (home-page "http://fph.altervista.org/prog/bastet.html") + (synopsis "Antagonistic Tetris-style falling brick game for text terminals") + (description + "Bastet (short for Bastard Tetris) is a simple ncurses-based falling brick +game. Unlike normal Tetris, Bastet does not choose the next brick at random. +Instead, it uses a special algorithm to choose the worst brick possible. + +Playing bastet can be a painful experience, especially if you usually make +canyons and wait for the long I-shaped block to clear four rows at a time.") + (license license:gpl3+))) + (define-public cataclysm-dda (let ((commit "ad3b0c3d521292d119f97a83390e7acfe9e9e7f7") (revision "1")) diff --git a/gnu/packages/patches/bastet-change-source-of-unordered_set.patch b/gnu/packages/patches/bastet-change-source-of-unordered_set.patch new file mode 100644 index 0000000000..ef3970a3e2 --- /dev/null +++ b/gnu/packages/patches/bastet-change-source-of-unordered_set.patch @@ -0,0 +1,40 @@ +From: Tobias Geerinckx-Rice +Date: Wed, 3 Oct 2018 23:30:42 +0200 +Subject: [PATCH] bastet: Change source of unordered_set. + +This allows building bastet 0.43.2 with boost >=1.66. +It was backported verbatim from the upstream master branch. + +From 0e03f8d4d6bc6949cf1c447e632ce0d1b98c4be1 Mon Sep 17 00:00:00 2001 +From: Federico Poloni +Date: Wed, 4 Oct 2017 19:35:01 +0200 +Subject: [PATCH] Changed source of unordered_set (should hopefully fix #6 + without reopening #1) + +--- + BastetBlockChooser.hpp | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +diff --git a/BastetBlockChooser.hpp b/BastetBlockChooser.hpp +index 992e556..7ee3b7c 100644 +--- a/BastetBlockChooser.hpp ++++ b/BastetBlockChooser.hpp +@@ -23,8 +23,7 @@ + + #include "Well.hpp" + +-#include +-#include ++#include + #include + + namespace Bastet{ +@@ -75,7 +74,7 @@ namespace Bastet{ + public: + Searcher(BlockType b, const Well *well, Vertex v, WellVisitor *visitor); + private: +- std::tr1::unordered_set _visited; ++ boost::unordered_set _visited; + //std::set _visited; ^^ the above is more efficient, we need to do many inserts + BlockType _block; + const Well *_well; From 73ca145a7eee5a4613469956d214880850e63a40 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sun, 16 Sep 2018 22:13:41 -0400 Subject: [PATCH 06/56] gnu: gnucash: Update to 3.3. * gnu/packages/patches/gnucash-disable-failing-tests.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/gnucash.scm (gnucash): Update to 3.3. [source]: Add patch. [arguments]: Add 'set-env-vars', 'glib-or-gtk-compile-schemas', and 'glib-or-gtk-wrap' phases. --- gnu/local.mk | 1 + gnu/packages/gnucash.scm | 49 ++++++++++++++----- .../gnucash-disable-failing-tests.patch | 39 +++++++++++++++ .../patches/gnucash-price-quotes-perl.patch | 5 +- 4 files changed, 81 insertions(+), 13 deletions(-) create mode 100644 gnu/packages/patches/gnucash-disable-failing-tests.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8c6579b03f..8f854e98b5 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -762,6 +762,7 @@ dist_patch_DATA = \ %D%/packages/patches/gnome-todo-libical-compat.patch \ %D%/packages/patches/gnome-tweak-tool-search-paths.patch \ %D%/packages/patches/gnucash-price-quotes-perl.patch \ + %D%/packages/patches/gnucash-disable-failing-tests.patch \ %D%/packages/patches/gnutls-skip-trust-store-test.patch \ %D%/packages/patches/gnutls-skip-pkgconfig-test.patch \ %D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \ diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm index fc8a9b6bfc..45720df9a4 100644 --- a/gnu/packages/gnucash.scm +++ b/gnu/packages/gnucash.scm @@ -28,6 +28,7 @@ (define-module (gnu packages gnucash) #:use-module (guix build-system cmake) #:use-module (gnu packages) #:use-module (gnu packages autotools) + #:use-module (gnu packages base) #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages cmake) @@ -50,7 +51,7 @@ (define-module (gnu packages gnucash) (define-public gnucash (package (name "gnucash") - (version "3.0") + (version "3.3") (source (origin (method url-fetch) @@ -58,11 +59,9 @@ (define-public gnucash version "/gnucash-" version ".tar.bz2")) (sha256 (base32 - "1ffvf1rryg5yin86fnf1zvy6hnpwzrjarbdfmjmrf2mqlmv48xac")) - - ;; TODO: rebase this patch -; (patches (search-patches "gnucash-price-quotes-perl.patch")) - )) + "0grr5qi5rn1xvr7qx5d7mcxa2mcgycy2b325ry73bb485a6yv5l3")) + (patches (search-patches "gnucash-price-quotes-perl.patch" + "gnucash-disable-failing-tests.patch")))) (build-system cmake-build-system) (inputs `(("guile" ,guile-2.2) @@ -76,7 +75,8 @@ (define-public gnucash ("webkitgtk" ,webkitgtk) ("aqbanking" ,aqbanking) ("perl-date-manip" ,perl-date-manip) - ("perl-finance-quote" ,perl-finance-quote))) + ("perl-finance-quote" ,perl-finance-quote) + ("tzdata" ,tzdata-for-tests))) (native-inputs `(("glib" ,glib "bin") ; glib-compile-schemas, etc. ("intltool" ,intltool) @@ -90,6 +90,13 @@ (define-public gnucash #:configure-flags (list "-DWITH_OFX=OFF" ; libofx is not available yet "-DWITH_SQL=OFF") ; without dbi.h + #:make-flags '("GUILE_AUTO_COMPILE=0") + #:modules ((guix build cmake-build-system) + ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) + (guix build utils)) + #:imported-modules (,@%gnu-build-system-modules + (guix build cmake-build-system) + (guix build glib-or-gtk-build-system)) #:phases (modify-phases %standard-phases (add-after 'unpack 'unpack-gmock @@ -99,14 +106,28 @@ (define-public gnucash "-C" "gmock" "--strip-components=1") (setenv "GMOCK_ROOT" (string-append (getcwd) "/gmock/googlemock")) #t)) + (add-after 'unpack 'set-env-vars + (lambda* (#:key inputs #:allow-other-keys) + (let ((tzdata (assoc-ref inputs "tzdata"))) + ;; At least one test is time-related and requires this + ;; environment variable. + (setenv "TZDIR" + (string-append tzdata + "/share/zoneinfo")) + (substitute* "CMakeLists.txt" + (("set\\(SHELL /bin/bash\\)") + (string-append "set(SHELL " (which "bash") ")"))) + #t))) ;; There are about 100 megabytes of documentation. (add-after 'install 'install-docs (lambda* (#:key inputs outputs #:allow-other-keys) (let ((docs (assoc-ref inputs "gnucash-docs")) (doc-output (assoc-ref outputs "doc"))) + (mkdir-p (string-append doc-output "/share")) (symlink (string-append docs "/share/gnome") - (string-append doc-output "/share/gnome"))))) + (string-append doc-output "/share/gnome")) + #t))) (add-after 'install-docs 'wrap-programs (lambda* (#:key inputs outputs #:allow-other-keys) @@ -134,7 +155,11 @@ (define-public gnucash '("gnucash" "gnc-fq-check" "gnc-fq-helper" - "gnc-fq-dump"))))))) + "gnc-fq-dump")))) + (add-after 'install 'glib-or-gtk-compile-schemas + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas)) + (add-after 'install 'glib-or-gtk-wrap + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))))) (home-page "https://www.gnucash.org/") (synopsis "Personal and small business financial accounting software") (description @@ -150,7 +175,9 @@ (define-public gnucash (define gnucash-docs (package (name "gnucash-docs") - (version (package-version gnucash)) + ;;(version (package-version gnucash)) + ;; The current version of gnucash-docs is not available at the moment. + (version "3.2") (source (origin (method url-fetch) @@ -158,7 +185,7 @@ (define gnucash-docs version "/gnucash-docs-" version ".tar.gz")) (sha256 (base32 - "0yq65s3z3dwdwdf2nq1d1w9ckdjdyjwkfpmvhzyib54b66q65xh5")))) + "1763m6d8gkhllwb9rnr9ifch39brmh7kr2m6icqfbc53a91m56j6")))) (build-system gnu-build-system) ;; These are native-inputs because they are only required for building the ;; documentation. diff --git a/gnu/packages/patches/gnucash-disable-failing-tests.patch b/gnu/packages/patches/gnucash-disable-failing-tests.patch new file mode 100644 index 0000000000..e0fdd86b5d --- /dev/null +++ b/gnu/packages/patches/gnucash-disable-failing-tests.patch @@ -0,0 +1,39 @@ +test-stress-options.scm does not exist, and test-qof passes when run in the +build directory after the gnucash build. + +diff -ur gnucash-3.3.old/gnucash/report/standard-reports/test/CMakeLists.txt gnucash-3.3/gnucash/report/standard-reports/test/CMakeLists.txt +--- gnucash-3.3.old/gnucash/report/standard-reports/test/CMakeLists.txt 2018-10-04 09:29:00.916641417 -0400 ++++ gnucash-3.3/gnucash/report/standard-reports/test/CMakeLists.txt 2018-10-04 09:30:52.962504860 -0400 +@@ -13,10 +13,6 @@ + test-income-gst.scm + ) + +-set(scm_test_with_textual_ports_SOURCES +- test-stress-options.scm +-) +- + set(GUILE_DEPENDS + scm-gnc-module + scm-app-utils +@@ -31,9 +27,6 @@ + + if (HAVE_SRFI64) + gnc_add_scheme_tests("${scm_test_with_srfi64_SOURCES}") +- if (HAVE_TEXT_PORTS) +- gnc_add_scheme_tests("${scm_test_with_textual_ports_SOURCES}") +- endif (HAVE_TEXT_PORTS) + endif (HAVE_SRFI64) + + gnc_add_scheme_tests("${scm_test_standard_reports_SOURCES}") +diff -ur gnucash-3.3.old/libgnucash/engine/test/CMakeLists.txt gnucash-3.3/libgnucash/engine/test/CMakeLists.txt +--- gnucash-3.3.old/libgnucash/engine/test/CMakeLists.txt 2018-10-04 09:29:00.876640751 -0400 ++++ gnucash-3.3/libgnucash/engine/test/CMakeLists.txt 2018-10-05 10:46:22.542962546 -0400 +@@ -54,8 +54,6 @@ + # This test does not run on Win32 + if (NOT WIN32) + set(SOURCES ${test_qof_SOURCES} ${CMAKE_SOURCE_DIR}/common/test-core/unittest-support.c) +- add_engine_test(test-qof "${SOURCES}") +- target_compile_definitions(test-qof PRIVATE TESTPROG=test_qof) + + set(SOURCES ${test_engine_SOURCES} ${CMAKE_SOURCE_DIR}/common/test-core/unittest-support.c) + add_engine_test(test-engine "${SOURCES}") diff --git a/gnu/packages/patches/gnucash-price-quotes-perl.patch b/gnu/packages/patches/gnucash-price-quotes-perl.patch index 982763f0ec..3101ddb007 100644 --- a/gnu/packages/patches/gnucash-price-quotes-perl.patch +++ b/gnu/packages/patches/gnucash-price-quotes-perl.patch @@ -1,8 +1,9 @@ After wrapping gnc-fq-check and gnc-fq-helper we can no longer execute them with perl, so execute them directly instead. ---- gnucash-2.6.6/src/scm/price-quotes.scm.orig 2014-04-27 17:42:28.000000000 -0500 -+++ gnucash-2.6.6/src/scm/price-quotes.scm 2015-07-09 16:12:11.196218472 -0500 +diff -ur gnucash-3.2.old/libgnucash/scm/price-quotes.scm gnucash-3.2/libgnucash/scm/price-quotes.scm +--- gnucash-3.2.old/libgnucash/scm/price-quotes.scm 2018-09-15 00:48:33.718389646 -0400 ++++ gnucash-3.2/libgnucash/scm/price-quotes.scm 2018-09-15 13:51:49.249862724 -0400 @@ -74,7 +74,7 @@ (define (start-program) (if (not (string-null? gnc:*finance-quote-check*)) From b0e829c632c8b0d0d9173c8b0fa457bbc2f92a0f Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Fri, 5 Oct 2018 13:55:21 -0400 Subject: [PATCH 07/56] gnu: gnucash-docs: Update to 3.3. The documentation on SourceForge is now located in the same directory as the source code. * gnu/packages/gnucash.scm (gnucash-docs): Update to 3.3. --- gnu/packages/gnucash.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm index 45720df9a4..4e68f20866 100644 --- a/gnu/packages/gnucash.scm +++ b/gnu/packages/gnucash.scm @@ -175,17 +175,15 @@ (define-public gnucash (define gnucash-docs (package (name "gnucash-docs") - ;;(version (package-version gnucash)) - ;; The current version of gnucash-docs is not available at the moment. - (version "3.2") + (version (package-version gnucash)) (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/gnucash/gnucash-docs/" + (uri (string-append "mirror://sourceforge/gnucash/gnucash%20%28stable%29/" version "/gnucash-docs-" version ".tar.gz")) (sha256 (base32 - "1763m6d8gkhllwb9rnr9ifch39brmh7kr2m6icqfbc53a91m56j6")))) + "10v4hw4lh888r8yv473pqrvzfjg8dwamk62sghs93rn88ndwm16c")))) (build-system gnu-build-system) ;; These are native-inputs because they are only required for building the ;; documentation. From 357450dca0933a36a59a23c0e2be5d646f123706 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 29 Sep 2018 11:14:51 +0100 Subject: [PATCH 08/56] gnu: bioruby: Update to 1.5.2. This works with Ruby 2.5. * gnu/packages/bioinformatics.scm (bioruby): Update to 1.5.2. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index d48f484e03..43220d22fe 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6863,14 +6863,14 @@ (define-public bio-blastxmlparser (define-public bioruby (package (name "bioruby") - (version "1.5.1") + (version "1.5.2") (source (origin (method url-fetch) (uri (rubygems-uri "bio" version)) (sha256 (base32 - "0hdl0789c9n4mprnx5pgd46bfwl8d000rqpamj5h6kkjgspijv49")))) + "1d56amdsjv1mag7m6gv2w0xij8hqx1v5xbdjsix8sp3yp36m7938")))) (build-system ruby-build-system) (propagated-inputs `(("ruby-libxml" ,ruby-libxml))) From 0b060e3486afdefdf5a5f474518b2a6bfae405d9 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 29 Sep 2018 11:15:36 +0100 Subject: [PATCH 09/56] gnu: ruby-shindo: Remove -rubygems flags. These have been removed in Ruby 2.5. * gnu/packages/ruby.scm (ruby-shindo)[arguments]: Change fix-tests phase to also remove the -rubygems flags. --- gnu/packages/ruby.scm | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 3673bf2346..b216f3f48b 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1211,12 +1211,15 @@ (define-public ruby-shindo #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-tests - (lambda _ - (substitute* "Rakefile" - (("system \"shindo") "system \"./bin/shindo") - ;; This test doesn't work, so we disable it. - (("fail \"The build_error test should fail") "#")) - #t))))) + (lambda _ + (substitute* "tests/tests_helper.rb" + (("-rubygems") "")) + (substitute* "Rakefile" + (("system \"shindo") "system \"./bin/shindo") + ;; This test doesn't work, so we disable it. + (("fail \"The build_error test should fail") "#") + ((" -rubygems") "")) + #t))))) (propagated-inputs `(("ruby-formatador" ,ruby-formatador))) (synopsis "Simple depth first Ruby testing") From 39ecb977d3e097ffe9c46390090bd197581ac072 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 29 Sep 2018 11:17:02 +0100 Subject: [PATCH 10/56] gnu: ruby-term-ansicolor: Fix test for Ruby 2.5. * gnu/packages/ruby.scm (ruby-term-ansicolor)[arguments]: Add new fix-test phase to fix a test that fails under Ruby 2.5. --- gnu/packages/ruby.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index b216f3f48b..c039df1559 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2914,6 +2914,11 @@ (define-public ruby-term-ansicolor (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-test + (lambda - + (substitute* "tests/hsl_triple_test.rb" + (("0\\\\\\.0%") + "0\\.?0?%")))) (replace 'build (lambda _ (invoke "gem" "build" "term-ansicolor.gemspec")))))) From 2c7cb711e938ff9e358ffb274ea2f96ae84fc1e9 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 29 Sep 2018 11:18:54 +0100 Subject: [PATCH 11/56] gnu: ruby-sass-spec: Fix spec expectation. This fixes building ruby-sass with Ruby 2.5. * gnu/packages/ruby.scm (ruby-sass-spec)[arguments]: Add patch-test phase to fix the expectation of one of the tests. Also change the comment regarding the tests not being run. --- gnu/packages/ruby.scm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index c039df1559..a0fe0c2e98 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -5456,8 +5456,16 @@ (define-public ruby-sass-spec ("ruby-diffy" ,ruby-diffy) ("ruby-terminfo" ,ruby-terminfo))) (arguments - ;; No Rakefile - `(#:tests? #f)) + `(;; This package contains tests for a sass implementation, and the to + ;; avoid any circular dependencies, the tests are not run here + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-test + (lambda _ + (delete-file "spec/values/colors/alpha_hex-3.5/error") + (substitute* "spec/values/colors/alpha_hex-3.5/expected_output.css" + (("string") "color"))))))) (home-page "https://github.com/sass/sass-spec") (synopsis "Test suite for Sass") (description "Sass Spec is a test suite for Sass. Test cases are all in From 4d372cb9a27b57664112b76e6a209b713abd1d10 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 29 Sep 2018 11:28:28 +0100 Subject: [PATCH 12/56] gnu: Add ruby-mathn. * gnu/packages/ruby.scm (ruby-mathn): New variable. --- gnu/packages/ruby.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index a0fe0c2e98..e54b1a0f69 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -5108,6 +5108,29 @@ (define-public ruby-mail (home-page "https://github.com/mikel/mail") (license license:expat))) +(define-public ruby-mathn + (package + (name "ruby-mathn") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "mathn" version)) + (sha256 + (base32 + "1wn812llln9jzgybz2d7536q39z3gi99i6fi0j1dapcpzvhgrr0p")))) + (build-system ruby-build-system) + (native-inputs + `(("bundler" ,bundler) + ("ruby-rake-compiler" ,ruby-rake-compiler))) + (synopsis "Extends math operations for increased precision") + (description + "This gem makes mathematical operations more precise in Ruby and +integrates other mathematical standard libraries. Prior to Ruby 2.5, +@code{mathn} was part of the Ruby standard library.") + (home-page "https://github.com/ruby/mathn") + (license license:bsd-2))) + (define-public ruby-code-statistics (package (name "ruby-code-statistics") From 11ff2adc74f3c168cadb6cc5bf7f4be08442b9ea Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 29 Sep 2018 11:29:30 +0100 Subject: [PATCH 13/56] gnu: ruby-sass: Update to 3.6.0. * gnu/packages/ruby.scm (ruby-sass)[version]: Update to 3.6.0. [source]: Update sha256. [native-inputs]: Add ruby-mathn, as this is needed when using Ruby 2.5. --- gnu/packages/ruby.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index e54b1a0f69..2080944cae 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -5498,18 +5498,19 @@ (define-public ruby-sass-spec (define-public ruby-sass (package (name "ruby-sass") - (version "3.5.7") + (version "3.6.0") (source (origin (method url-fetch) (uri (rubygems-uri "sass" version)) (sha256 (base32 - "1sy7xsbgpcy90j5ynbq967yplffp74pvph3r8ivn2sv2b44q6i61")))) + "18c6prbw9wl8bqhb2435pd9s0lzarl3g7xf8pmyla28zblvwxmyh")))) (build-system ruby-build-system) (propagated-inputs `(("ruby-sass-listen" ,ruby-sass-listen))) (native-inputs - `(("ruby-sass-spec" ,ruby-sass-spec))) + `(("ruby-sass-spec" ,ruby-sass-spec) + ("ruby-mathn" ,ruby-mathn))) (home-page "http://sass-lang.com/") (synopsis "CSS extension language") (description "Sass is a CSS extension language. It extends CSS with From 42384b517ed5352bb50fb9c0c5f49b168c198004 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 5 Oct 2018 23:05:19 +0200 Subject: [PATCH 14/56] progress: Fix total size in "@ download-succeeded" traces. Fixes a regression introduced in 1d0be47ab680db938ac8da1ee65e1de91e198f67 whereby the total size for directories (coming from substitutes) would be 4KiB. This led the progress bar to go back to the start, typically. * guix/progress.scm (progress-reporter/trace): Add 'total'. In 'start', initialize it. Adjust 'report' to update it. Adjust 'stop' to prefer SIZE as the actual size and then TOTAL. Do not use the size of FILE as the total since that could be 4KiB when FILE is a directory. --- guix/progress.scm | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/guix/progress.scm b/guix/progress.scm index f846944952..9da667a027 100644 --- a/guix/progress.scm +++ b/guix/progress.scm @@ -289,6 +289,8 @@ (define* (progress-reporter/trace file url size #:optional (log-port (current-output-port))) "Like 'progress-reporter/file', but instead of returning human-readable progress reports, write \"build trace\" lines to be processed elsewhere." + (define total 0) ;bytes transferred + (define (report-progress transferred) (define message (format #f "@ download-progress ~a ~a ~a ~a~%" @@ -299,13 +301,16 @@ (define message (progress-reporter (start (lambda () + (set! total 0) (display (format #f "@ download-started ~a ~a ~a~%" file url (or size "-")) log-port))) - (report (rate-limited report-progress %progress-interval)) + (report (let ((report (rate-limited report-progress %progress-interval))) + (lambda (transferred) + (set! total transferred) + (report transferred)))) (stop (lambda () - (let ((size (or (and=> (stat file #f) stat:size) - size))) + (let ((size (or size total))) (report-progress size) (display (format #f "@ download-succeeded ~a ~a ~a~%" file url size) From a45c64701b5599bb527fd8cf2070174f9e866d3d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:28:49 +0200 Subject: [PATCH 15/56] gnu: ghc-http-conduit: Remove ghc-http-client from native-inputs. * gnu/packages/haskell-web.scm (ghc-http-conduit)[native-inputs]: Remove ghc-http-client. --- gnu/packages/haskell-web.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm index eaa7e6a9ec..2e404e2fcf 100644 --- a/gnu/packages/haskell-web.scm +++ b/gnu/packages/haskell-web.scm @@ -369,7 +369,6 @@ (define-public ghc-http-conduit ("ghc-warp" ,ghc-warp) ("ghc-wai-conduit" ,ghc-wai-conduit) ("ghc-http-types" ,ghc-http-types) - ("ghc-http-client" ,ghc-http-client) ("ghc-cookie" ,ghc-cookie) ("ghc-conduit-extra" ,ghc-conduit-extra) ("ghc-streaming-commons" ,ghc-streaming-commons) From 279c97dba8ceecab9d1c7a5c8b5503d1c2e605a3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:28:50 +0200 Subject: [PATCH 16/56] gnu: ghc-regex: Fix build. * gnu/packages/haskell.scm (ghc-regex)[arguments]: Add build phase to relax version checks. --- gnu/packages/haskell.scm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a140985eba..c8e4523ebd 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -3003,6 +3003,17 @@ (define-public ghc-regex (base32 "1sjkpkgv4phy5b5v2lr89x4vx4dh44pj0sbvlsp6n86w9v6v4jwb")))) (build-system haskell-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'relax-dependencies + (lambda _ + (substitute* "regex.cabal" + (("base-compat.*>=.*0.6.*") + "base-compat >= 0.6\n") + (("template-haskell.*>=.*2.7.*") + "template-haskell >= 2.7\n")) + #t))))) (inputs `(("ghc-base-compat" ,ghc-base-compat) ("ghc-hashable" ,ghc-hashable) From 7df25c77c5d57d127e556b6527b69abce82ef814 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:28:51 +0200 Subject: [PATCH 17/56] gnu: Add ghc-cairo. * gnu/packages/haskell.scm (ghc-cairo): New variable. --- gnu/packages/haskell.scm | 77 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index c8e4523ebd..964b14749f 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -43,6 +43,7 @@ (define-module (gnu packages haskell) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) + #:use-module (gnu packages gtk) #:use-module (gnu packages haskell-check) #:use-module (gnu packages haskell-crypto) #:use-module (gnu packages haskell-web) @@ -10587,6 +10588,82 @@ (define-public ghc-rio @end itemize") (license license:expat))) +(define-public ghc-cairo + (package + (name "ghc-cairo") + (version "0.13.5.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/cairo/" + "cairo-" version ".tar.gz")) + (sha256 + (base32 + "1wxylv4d8120ri0vgar168ikqa9m6533ipdwi38qlmxmw20ws2j2")))) + (build-system haskell-build-system) + (arguments + `(#:modules ((guix build haskell-build-system) + (guix build utils) + (ice-9 match) + (srfi srfi-26)) + #:phases + (modify-phases %standard-phases + ;; FIXME: This is a copy of the standard configure phase with a tiny + ;; difference: this package needs the -package-db flag to be passed + ;; to "runhaskell" in addition to the "configure" action, because it + ;; depends on gtk2hs-buildtools, which provide setup hooks. Without + ;; this option the Setup.hs file cannot be evaluated. The + ;; haskell-build-system should be changed to pass "-package-db" to + ;; "runhaskell" in any case. + (replace 'configure + (lambda* (#:key outputs inputs tests? (configure-flags '()) + #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (input-dirs (match inputs + (((_ . dir) ...) + dir) + (_ '()))) + (ghc-path (getenv "GHC_PACKAGE_PATH")) + (params (append `(,(string-append "--prefix=" out)) + `(,(string-append "--libdir=" out "/lib")) + `(,(string-append "--bindir=" out "/bin")) + `(,(string-append + "--docdir=" out + "/share/doc/" ((@@ (guix build haskell-build-system) + package-name-version) out))) + '("--libsubdir=$compiler/$pkg-$version") + '("--package-db=../package.conf.d") + '("--global") + `(,@(map + (cut string-append "--extra-include-dirs=" <>) + (search-path-as-list '("include") input-dirs))) + `(,@(map + (cut string-append "--extra-lib-dirs=" <>) + (search-path-as-list '("lib") input-dirs))) + (if tests? + '("--enable-tests") + '()) + configure-flags))) + (unsetenv "GHC_PACKAGE_PATH") + (apply invoke "runhaskell" "-package-db=../package.conf.d" + "Setup.hs" "configure" params) + (setenv "GHC_PACKAGE_PATH" ghc-path) + #t)))))) + (inputs + `(("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-text" ,ghc-text) + ("cairo" ,cairo))) + (native-inputs + `(("ghc-gtk2hs-buildtools" ,ghc-gtk2hs-buildtools) + ("pkg-config" ,pkg-config))) + (home-page "http://projects.haskell.org/gtk2hs/") + (synopsis "Haskell bindings to the Cairo vector graphics library") + (description + "Cairo is a library to render high quality vector graphics. There exist +various backends that allows rendering to Gtk windows, PDF, PS, PNG and SVG +documents, amongst others.") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From 562cfae330e2b8382ab106478514d833187c7d15 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:28:52 +0200 Subject: [PATCH 18/56] gnu: Add ghc-chart-cairo. * gnu/packages/haskell.scm (ghc-chart-cairo): New variable. --- gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 964b14749f..c040965e92 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10664,6 +10664,33 @@ (define-public ghc-cairo documents, amongst others.") (license license:bsd-3))) +(define-public ghc-chart-cairo + (package + (name "ghc-chart-cairo") + (version "1.9") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/Chart-cairo/" + "Chart-cairo-" version ".tar.gz")) + (sha256 + (base32 + "0iany6lfyfb1cw0pxfs5aw5k0a6x41m6ql9ad9w59biwdckbsyqr")))) + (build-system haskell-build-system) + (inputs + `(("ghc-old-locale" ,ghc-old-locale) + ("ghc-cairo" ,ghc-cairo) + ("ghc-colour" ,ghc-colour) + ("ghc-data-default-class" ,ghc-data-default-class) + ("ghc-operational" ,ghc-operational) + ("ghc-lens" ,ghc-lens) + ("ghc-chart" ,ghc-chart))) + (home-page "https://github.com/timbod7/haskell-chart/wiki") + (synopsis "Cairo backend for Charts") + (description "This package provides a Cairo vector graphics rendering +backend for the Charts library.") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From 6c8197783dca26159a669202a0635af0338d4992 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:10:15 +0200 Subject: [PATCH 19/56] gnu: Add ghc-atomic-write. * gnu/packages/haskell.scm (ghc-atomic-write): New variable. --- gnu/packages/haskell.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index c040965e92..c1815c60da 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10691,6 +10691,41 @@ (define-public ghc-chart-cairo backend for the Charts library.") (license license:bsd-3))) +(define-public ghc-atomic-write + (package + (name "ghc-atomic-write") + (version "0.2.0.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/atomic-write/atomic-write-" + version + ".tar.gz")) + (sha256 + (base32 + "1iaq0hprxcv0sl1sgwcgmm87zraf738va1bciwnx2jkk3k1v9iyv")))) + (build-system haskell-build-system) + (inputs + `(("ghc-temporary" ,ghc-temporary) + ("ghc-unix-compat" ,ghc-unix-compat) + ("ghc-text" ,ghc-text))) + (native-inputs + `(("ghc-temporary" ,ghc-temporary) + ("ghc-unix-compat" ,ghc-unix-compat) + ("ghc-text" ,ghc-text) + ("ghc-hspec" ,ghc-hspec) + ("hspec-discover" ,hspec-discover))) + (home-page "https://github.com/stackbuilders/atomic-write") + (synopsis "Atomically write to a file") + (description + "Atomically write to a file on POSIX-compliant systems while preserving +permissions. @code{mv} is an atomic operation. This makes it simple to write +to a file atomically just by using the @code{mv} operation. However, this +will destroy the permissions on the original file. This library preserves +permissions while atomically writing to a file.") + (license license:expat))) + (define-public ghc-weigh (package (name "ghc-weigh") From d05ed20ef12e5c9520252f2da230c54f46de703d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:32:38 +0200 Subject: [PATCH 20/56] gnu: Add ghc-cereal-conduit. * gnu/packages/haskell.scm (ghc-cereal-conduit): New variable. --- gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index c1815c60da..a8d22a682a 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10726,6 +10726,33 @@ (define-public ghc-atomic-write permissions while atomically writing to a file.") (license license:expat))) +(define-public ghc-cereal-conduit + (package + (name "ghc-cereal-conduit") + (version "0.8.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "cereal-conduit/cereal-conduit-" + version ".tar.gz")) + (sha256 + (base32 + "1srr7agvgfw78q5s1npjq5sgynvhjgllpihiv37ylkwqm4c4ap6r")))) + (build-system haskell-build-system) + (inputs + `(("ghc-conduit" ,ghc-conduit) + ("ghc-resourcet" ,ghc-resourcet) + ("ghc-cereal" ,ghc-cereal))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit))) + (home-page "https://github.com/snoyberg/conduit") + (synopsis "Turn Data.Serialize Gets and Puts into Sources, Sinks, and Conduits") + (description + "This package turn @code{Data.Serialize} @code{Gets} and @code{Puts} into +@code{Sources}, @code{Sinks}, and @code{Conduits}.") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From 36ec599e785ba3563ede377e05e8172c4323a2aa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:32:40 +0200 Subject: [PATCH 21/56] gnu: Add ghc-lzma. * gnu/packages/haskell.scm (ghc-lzma): New variable. --- gnu/packages/haskell.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a8d22a682a..3e10398966 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10753,6 +10753,37 @@ (define-public ghc-cereal-conduit @code{Sources}, @code{Sinks}, and @code{Conduits}.") (license license:bsd-3))) +(define-public ghc-lzma + (package + (name "ghc-lzma") + (version "0.0.0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/lzma/" + "lzma-" version ".tar.gz")) + (sha256 + (base32 + "0i416gqi8j55nd1pqbkxvf3f6hn6fjys6gq98lkkxphva71j30xg")))) + (build-system haskell-build-system) + (arguments + '(#:tests? #f ; requires older versions of QuickCheck and tasty. + #:cabal-revision + ("3" "1sify6gnsalyp6dakfzi0mdy5jcz2kcp9jsdsgkmxd40nfzgd44m"))) + (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/lzma") + (synopsis "LZMA/XZ compression and decompression") + (description + "This package provides a pure interface for compressing and +decompressing LZMA streams of data represented as lazy @code{ByteString}s. A +monadic incremental interface is provided as well.") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From 80588cfccfd193d70491bb2a386667bf538dbb5d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:32:42 +0200 Subject: [PATCH 22/56] gnu: Add ghc-stm-conduit. * gnu/packages/haskell.scm (ghc-stm-conduit): New variable. --- gnu/packages/haskell.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 3e10398966..d2f6a8b237 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10784,6 +10784,45 @@ (define-public ghc-lzma monadic incremental interface is provided as well.") (license license:bsd-3))) +(define-public ghc-stm-conduit + (package + (name "ghc-stm-conduit") + (version "4.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/stm-conduit/" + "stm-conduit-" version ".tar.gz")) + (sha256 + (base32 + "0paapljn7nqfzrx889y0n8sszci38mdiaxkgr0bb00ph9246rr7z")))) + (build-system haskell-build-system) + (inputs + `(("ghc-stm" ,ghc-stm) + ("ghc-stm-chans" ,ghc-stm-chans) + ("ghc-cereal" ,ghc-cereal) + ("ghc-cereal-conduit" ,ghc-cereal-conduit) + ("ghc-conduit" ,ghc-conduit) + ("ghc-conduit-extra" ,ghc-conduit-extra) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-resourcet" ,ghc-resourcet) + ("ghc-async" ,ghc-async) + ("ghc-monad-loops" ,ghc-monad-loops) + ("ghc-unliftio" ,ghc-unliftio))) + (native-inputs + `(("ghc-doctest" ,ghc-doctest) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-hunit" ,ghc-hunit) + ("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/cgaebel/stm-conduit") + (synopsis "Introduces conduits to channels and promotes using conduits concurrently") + (description + "This package provides two simple conduit wrappers around STM channels: a +source and a sink.") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From 38757d610eedad4dfa4030841132c028460b6c84 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:32:44 +0200 Subject: [PATCH 23/56] gnu: Add ghc-bindings-dsl. * gnu/packages/haskell.scm (ghc-bindings-dsl): New variable. --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index d2f6a8b237..41b1146040 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10823,6 +10823,31 @@ (define-public ghc-stm-conduit source and a sink.") (license license:bsd-3))) +(define-public ghc-bindings-dsl + (package + (name "ghc-bindings-dsl") + (version "1.0.25") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/bindings-DSL/" + "bindings-DSL-" version ".tar.gz")) + (sha256 + (base32 + "0kqrd78nspl3lk4a0fqn47d8dirjg3b24dkvkigcrlb81hw35pk3")))) + (build-system haskell-build-system) + (home-page "https://github.com/jwiegley/bindings-dsl/wiki") + (synopsis "FFI domain specific language, on top of hsc2hs") + (description + "This is a set of macros to be used when writing Haskell FFI. They were +designed to be able to fully describe C interfaces, so that @code{hsc2hs} can +extract from them all Haskell code needed to mimic such interfaces. All +Haskell names used are automatically derived from C names, structures are +mapped to Haskell instances of @code{Storable}, and there are also macros you +can use with C code to help write bindings to inline functions or macro +functions.") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From 44c6180b3fc76f5e015a1b7097eb7a3196210be8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:32:46 +0200 Subject: [PATCH 24/56] gnu: Add ghc-lzma-conduit. * gnu/packages/haskell.scm (ghc-lzma-conduit): New variable. --- gnu/packages/haskell.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 41b1146040..4ebaecbd86 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10848,6 +10848,37 @@ (define-public ghc-bindings-dsl functions.") (license license:bsd-3))) +(define-public ghc-lzma-conduit + (package + (name "ghc-lzma-conduit") + (version "1.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/lzma-conduit/" + "lzma-conduit-" version ".tar.gz")) + (sha256 + (base32 + "0hm72da7xk9l3zxjh274yg444vf405djxqbkf3q3p2qhicmxlmg9")))) + (build-system haskell-build-system) + (inputs + `(("ghc-conduit" ,ghc-conduit) + ("ghc-lzma" ,ghc-lzma) + ("ghc-resourcet" ,ghc-resourcet))) + (native-inputs + `(("ghc-base-compat" ,ghc-base-compat) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://github.com/alphaHeavy/lzma-conduit") + (synopsis "Conduit interface for lzma/xz compression") + (description + "This package provides a @code{Conduit} interface for the LZMA +compression algorithm used in the @code{.xz} file format.") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From 4fc161b9c60163f8353648a8e6e00d8229362ff4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:32:48 +0200 Subject: [PATCH 25/56] gnu: Add ghc-bzlib-conduit. * gnu/packages/haskell.scm (ghc-bzlib-conduit): New variable. --- gnu/packages/haskell.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 4ebaecbd86..d79329f686 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10879,6 +10879,34 @@ (define-public ghc-lzma-conduit compression algorithm used in the @code{.xz} file format.") (license license:bsd-3))) +(define-public ghc-bzlib-conduit + (package + (name "ghc-bzlib-conduit") + (version "0.3.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/bzlib-conduit/" + "bzlib-conduit-" version ".tar.gz")) + (sha256 + (base32 + "0fd2hnr782s7qgipazg2yxwia9qqhkvm9bcm90773c3zkxa13n23")))) + (build-system haskell-build-system) + (inputs + `(("ghc-bindings-dsl" ,ghc-bindings-dsl) + ("ghc-conduit" ,ghc-conduit) + ("ghc-data-default-class" ,ghc-data-default-class) + ("ghc-resourcet" ,ghc-resourcet))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec) + ("ghc-random" ,ghc-random))) + (home-page "https://github.com/snoyberg/bzlib-conduit") + (synopsis "Streaming compression/decompression via conduits") + (description + "This package provides Haskell bindings to bzlib and Conduit support for +streaming compression and decompression.") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From 71c2e3e1a1a0416e6d09eee2691cf4c0decd9be5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:32:50 +0200 Subject: [PATCH 26/56] gnu: Add ghc-pqueue. * gnu/packages/haskell.scm (ghc-pqueue): New variable. --- gnu/packages/haskell.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index d79329f686..80d331c466 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10907,6 +10907,28 @@ (define-public ghc-bzlib-conduit streaming compression and decompression.") (license license:bsd-3))) +(define-public ghc-pqueue + (package + (name "ghc-pqueue") + (version "1.4.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "pqueue/pqueue-" version ".tar.gz")) + (sha256 + (base32 + "1zvwm1zcqqq5n101s1brjhgbay8rf9fviq6gxbplf40i63m57p1x")))) + (build-system haskell-build-system) + (native-inputs + `(("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://hackage.haskell.org/package/pqueue") + (synopsis "Reliable, persistent, fast priority queues") + (description + "This package provides a fast, reliable priority queue implementation +based on a binomial heap.") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From a933cbfb617d84d37e270b4dd89f2de92013834d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:32:52 +0200 Subject: [PATCH 27/56] gnu: Add ghc-conduit-algorithms. * gnu/packages/haskell.scm (ghc-conduit-algorithms): New variable. --- gnu/packages/haskell.scm | 42 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 80d331c466..befb1baae5 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10929,6 +10929,48 @@ (define-public ghc-pqueue based on a binomial heap.") (license license:bsd-3))) +(define-public ghc-conduit-algorithms + (package + (name "ghc-conduit-algorithms") + (version "0.0.8.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "conduit-algorithms/conduit-algorithms-" + version ".tar.gz")) + (sha256 + (base32 + "07gx2q3d1bbfw14q41rmqg0i4m018pci10lswc0k1ij6lw7sb9fd")))) + (build-system haskell-build-system) + (inputs + `(("ghc-async" ,ghc-async) + ("ghc-bzlib-conduit" ,ghc-bzlib-conduit) + ("ghc-conduit" ,ghc-conduit) + ("ghc-conduit-combinators" ,ghc-conduit-combinators) + ("ghc-conduit-extra" ,ghc-conduit-extra) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-lzma-conduit" ,ghc-lzma-conduit) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-pqueue" ,ghc-pqueue) + ("ghc-resourcet" ,ghc-resourcet) + ("ghc-stm" ,ghc-stm) + ("ghc-stm-conduit" ,ghc-stm-conduit) + ("ghc-streaming-commons" ,ghc-streaming-commons) + ("ghc-unliftio-core" ,ghc-unliftio-core) + ("ghc-vector" ,ghc-vector))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework-th" ,ghc-test-framework-th))) + (home-page "https://github.com/luispedro/conduit-algorithms#readme") + (synopsis "Conduit-based algorithms") + (description + "This package provides algorithms on @code{Conduits}, including higher +level asynchronous processing and some other utilities.") + (license license:expat))) + (define-public ghc-weigh (package (name "ghc-weigh") From 320323141f697483277918f411ecc62a8a7ab85d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:32:54 +0200 Subject: [PATCH 28/56] gnu: Add ghc-interpolate. * gnu/packages/haskell.scm (ghc-interpolate): New variable. --- gnu/packages/haskell.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index befb1baae5..8a33cbd6b2 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10971,6 +10971,34 @@ (define-public ghc-conduit-algorithms level asynchronous processing and some other utilities.") (license license:expat))) +(define-public ghc-interpolate + (package + (name "ghc-interpolate") + (version "0.2.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/interpolate/" + "interpolate-" version ".tar.gz")) + (sha256 + (base32 + "1gkaj98yz363v38fv78sqby236mp8yqwqcilx7kr2b9z0w3204bf")))) + (build-system haskell-build-system) + (inputs + `(("ghc-haskell-src-meta" ,ghc-haskell-src-meta))) + (native-inputs + `(("ghc-base-compat" ,ghc-base-compat) + ("ghc-hspec" ,ghc-hspec) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-quickcheck-instances" ,ghc-quickcheck-instances) + ("ghc-text" ,ghc-text) + ("hspec-discover" ,hspec-discover))) + (home-page "https://github.com/sol/interpolate") + (synopsis "String interpolation library") + (description "This package provides a string interpolation library for +Haskell.") + (license license:expat))) + (define-public ghc-weigh (package (name "ghc-weigh") From 5e6bf3e2da6934daeadc36afeb8e09f105754efe Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:15:04 +0200 Subject: [PATCH 29/56] gnu: Add ghc-hpack. * gnu/packages/haskell.scm (ghc-hpack): New variable. --- gnu/packages/haskell.scm | 45 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 8a33cbd6b2..9a5f7c9746 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10999,6 +10999,51 @@ (define-public ghc-interpolate Haskell.") (license license:expat))) +(define-public ghc-hpack + (package + (name "ghc-hpack") + (version "0.28.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/hpack/" + "hpack-" version ".tar.gz")) + (sha256 + (base32 + "18w0h76jdp3mk9vin8da9iz3cwhcxmw787xy8wlh8bxcpcr16q5r")))) + (build-system haskell-build-system) + (inputs + `(("ghc-aeson" ,ghc-aeson) + ("ghc-bifunctors" ,ghc-bifunctors) + ("ghc-cryptonite" ,ghc-cryptonite) + ("ghc-glob" ,ghc-glob) + ("ghc-http-client" ,ghc-http-client) + ("ghc-http-client-tls" ,ghc-http-client-tls) + ("ghc-http-types" ,ghc-http-types) + ("ghc-scientific" ,ghc-scientific) + ("ghc-text" ,ghc-text) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-vector" ,ghc-vector) + ("ghc-yaml" ,ghc-yaml))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec) + ("ghc-hunit" ,ghc-hunit) + ("ghc-interpolate" ,ghc-interpolate) + ("ghc-mockery" ,ghc-mockery) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-temporary" ,ghc-temporary) + ("hspec-discover" ,hspec-discover))) + (home-page "https://github.com/sol/hpack") + (synopsis "Tools for an alternative Haskell package format") + (description + "Hpack is a format for Haskell packages. It is an alternative to the +Cabal package format and follows different design principles. Hpack packages +are described in a file named @code{package.yaml}. Both @code{cabal2nix} and +@code{stack} support @code{package.yaml} natively. For other build tools the +@code{hpack} executable can be used to generate a @code{.cabal} file from +@code{package.yaml}.") + (license license:expat))) + (define-public ghc-weigh (package (name "ghc-weigh") From 52f5114d016688fb143079056a64b8abfb319507 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:37:58 +0200 Subject: [PATCH 30/56] gnu: Add ghc-raw-string-qq. * gnu/packages/haskell.scm (ghc-raw-string-qq): New variable. --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 9a5f7c9746..6b8a4ee3fc 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11044,6 +11044,31 @@ (define-public ghc-hpack @code{package.yaml}.") (license license:expat))) +(define-public ghc-raw-strings-qq + (package + (name "ghc-raw-strings-qq") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "raw-strings-qq/raw-strings-qq-" + version ".tar.gz")) + (sha256 + (base32 + "1lxy1wy3awf52968iy5y9r5z4qgnn2sxkdrh7js3m9gadb11w09f")))) + (build-system haskell-build-system) + (native-inputs `(("ghc-hunit" ,ghc-hunit))) + (home-page "https://github.com/23Skidoo/raw-strings-qq") + (synopsis "Raw string literals for Haskell") + (description + "This package provides a quasiquoter for raw string literals, i.e. string +literals that don't recognise the standard escape sequences. Basically, they +make your code more readable by freeing you from the responsibility to escape +backslashes. They are useful when working with regular expressions, +DOS/Windows paths and markup languages (such as XML).") + (license license:bsd-3))) + (define-public ghc-weigh (package (name "ghc-weigh") From 88189099dff99ecb4912c9c01adb920868049bec Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:38:00 +0200 Subject: [PATCH 31/56] gnu: Add ghc-inline-c. * gnu/packages/haskell.scm (ghc-inline-c): New variable. --- gnu/packages/haskell.scm | 46 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 6b8a4ee3fc..9bc86bfbd3 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11069,6 +11069,52 @@ (define-public ghc-raw-strings-qq DOS/Windows paths and markup languages (such as XML).") (license license:bsd-3))) +(define-public ghc-inline-c + (package + (name "ghc-inline-c") + (version "0.6.1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/inline-c/" + "inline-c-" version ".tar.gz")) + (sha256 + (base32 + "0vbfrsqsi7mdziqsnj68bsqlwbqxxhvrmy9rv6w8z18d1m8w3n6h")))) + (build-system haskell-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'create-Setup.hs + (lambda _ + (with-output-to-file "Setup.hs" + (lambda _ + (display "\ +import Distribution.Simple +main = defaultMain"))) + #t))))) + (inputs + `(("ghc-ansi-wl-pprint" ,ghc-ansi-wl-pprint) + ("ghc-cryptohash" ,ghc-cryptohash) + ("ghc-hashable" ,ghc-hashable) + ("ghc-parsec" ,ghc-parsec) + ("ghc-parsers" ,ghc-parsers) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-vector" ,ghc-vector))) + (native-inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-hspec" ,ghc-hspec) + ("ghc-raw-strings-qq" ,ghc-raw-strings-qq) + ("ghc-regex-posix" ,ghc-regex-posix))) + (home-page "http://hackage.haskell.org/package/inline-c") + (synopsis "Write Haskell source files including C code inline") + (description + "inline-c lets you seamlessly call C libraries and embed high-performance +inline C code in Haskell modules. Haskell and C can be freely intermixed in +the same source file, and data passed to and from code in either language with +minimal overhead. No FFI required.") + (license license:expat))) + (define-public ghc-weigh (package (name "ghc-weigh") From 9ef95a196f5144506eb92e3870de96a180454643 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:38:02 +0200 Subject: [PATCH 32/56] gnu: Add ghc-safe-exceptions. * gnu/packages/haskell.scm (ghc-safe-exceptions): New variable. --- gnu/packages/haskell.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 9bc86bfbd3..5d68ddcada 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11180,4 +11180,37 @@ (define-public ghc-linear vector spaces.") (license license:bsd-3))) +(define-public ghc-safe-exceptions + (package + (name "ghc-safe-exceptions") + (version "0.1.7.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "safe-exceptions/safe-exceptions-" + version ".tar.gz")) + (sha256 + (base32 + "0sd0zfsm9pcll5bzzj523rbn45adjrnavdkz52hgmdjjgdcdrk8q")))) + (build-system haskell-build-system) + (arguments + '(#:cabal-revision + ("4" "0fid41gishzsyb47wzxhd5falandfirqcp760hcja81qjpfmqd32"))) + (inputs `(("ghc-exceptions" ,ghc-exceptions))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec) + ("ghc-void" ,ghc-void) + ("hspec-discover" ,hspec-discover))) + (home-page "https://github.com/fpco/safe-exceptions") + (synopsis "Safe, consistent, and easy exception handling") + (description "Runtime exceptions - as exposed in @code{base} by the +@code{Control.Exception} module - have long been an intimidating part of the +Haskell ecosystem. This package is intended to overcome this. It provides a +safe and simple API on top of the existing exception handling machinery. The +API is equivalent to the underlying implementation in terms of power but +encourages best practices to minimize the chances of getting the exception +handling wrong.") + (license license:expat))) + ;;; haskell.scm ends here From d9ee3e375ca54bb6f4fd6bbc5b3646e27a0c25d0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:38:04 +0200 Subject: [PATCH 33/56] gnu: Add ghc-inline-c-cpp. * gnu/packages/haskell.scm (ghc-inline-c-cpp): New variable. --- gnu/packages/haskell.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 5d68ddcada..9e47c4cbfc 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11213,4 +11213,40 @@ (define-public ghc-safe-exceptions handling wrong.") (license license:expat))) +(define-public ghc-inline-c-cpp + (package + (name "ghc-inline-c-cpp") + (version "0.2.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/inline-c-cpp/" + "inline-c-cpp-" version ".tar.gz")) + (sha256 + (base32 + "1rk7fmpkmxw9hhwr8df29kadnf0ybnwj64ggdbnsdrpfyhnkisci")))) + (build-system haskell-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'create-Setup.hs + (lambda _ + (with-output-to-file "Setup.hs" + (lambda _ + (display "\ +import Distribution.Simple +main = defaultMain"))) + #t))))) + (inputs + `(("ghc-inline-c" ,ghc-inline-c) + ("ghc-safe-exceptions" ,ghc-safe-exceptions))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec))) + (home-page "https://hackage.haskell.org/package/inline-c-cpp") + (synopsis "Lets you embed C++ code into Haskell") + (description + "This package provides utilities to inline C++ code into Haskell using +@code{inline-c}.") + (license license:expat))) + ;;; haskell.scm ends here From d453b899448bd1dc909e7ef279d52940a95031e0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:38:06 +0200 Subject: [PATCH 34/56] gnu: Add ghc-bytestring-lexing. * gnu/packages/haskell.scm (ghc-bytestring-lexing): New variable. --- gnu/packages/haskell.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 9e47c4cbfc..33354e883b 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11249,4 +11249,25 @@ (define-public ghc-inline-c-cpp @code{inline-c}.") (license license:expat))) +(define-public ghc-bytestring-lexing + (package + (name "ghc-bytestring-lexing") + (version "0.5.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "bytestring-lexing/bytestring-lexing-" + version ".tar.gz")) + (sha256 + (base32 + "0wrzniawhgpphc6yx1v972gyqxdbv0pizaz9bafahrshyb9svy81")))) + (build-system haskell-build-system) + (home-page "http://code.haskell.org/~wren/") + (synopsis "Parse and produce literals from strict or lazy bytestrings") + (description + "This package provides tools to parse and produce literals efficiently +from strict or lazy bytestrings.") + (license license:bsd-2))) + ;;; haskell.scm ends here From c7e400b1eefd627e634a9624f4f68f217d55715d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:38:08 +0200 Subject: [PATCH 35/56] gnu: Add ghc-configurator. * gnu/packages/haskell.scm (ghc-configurator): New variable. --- gnu/packages/haskell.scm | 43 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 33354e883b..af44232cee 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11270,4 +11270,47 @@ (define-public ghc-bytestring-lexing from strict or lazy bytestrings.") (license license:bsd-2))) +(define-public ghc-configurator + (package + (name "ghc-configurator") + (version "0.3.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "configurator/configurator-" + version ".tar.gz")) + (sha256 + (base32 + "1d1iq1knwiq6ia5g64rw5hqm6dakz912qj13r89737rfcxmrkfbf")))) + (build-system haskell-build-system) + (inputs + `(("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-hashable" ,ghc-hashable) + ("ghc-text" ,ghc-text) + ("ghc-unix-compat" ,ghc-unix-compat) + ("ghc-unordered-containers" ,ghc-unordered-containers))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit))) + (home-page "http://github.com/bos/configurator") + (synopsis "Configuration management") + (description + "This package provides a configuration management library for programs +and daemons. The features include: + +@enumerate +@item Automatic, dynamic reloading in response to modifications to + configuration files. +@item A simple, but flexible, configuration language, supporting several of + the most commonly needed types of data, along with interpolation of strings + from the configuration or the system environment (e.g. @code{$(HOME)}). +@item Subscription-based notification of changes to configuration properties. +@item An @code{import} directive allows the configuration of a complex + application to be split across several smaller files, or common configuration + data to be shared across several applications. +@end enumerate\n") + (license license:bsd-3))) + ;;; haskell.scm ends here From ea202046fa66028463df9cf23399d4adc39f5c36 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:38:10 +0200 Subject: [PATCH 36/56] gnu: Add ghc-file-embed. * gnu/packages/haskell.scm (ghc-file-embed): New variable. --- gnu/packages/haskell.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index af44232cee..28f5bdffe6 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11313,4 +11313,25 @@ (define-public ghc-configurator @end enumerate\n") (license license:bsd-3))) +(define-public ghc-file-embed + (package + (name "ghc-file-embed") + (version "0.0.10.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/file-embed/" + "file-embed-" version ".tar.gz")) + (sha256 + (base32 + "0lj164cnzqyd487mli91nnr7137a4h4qsasfwsnsh77sx12fpk9k")))) + (build-system haskell-build-system) + (home-page "https://github.com/snoyberg/file-embed") + (synopsis "Use Template Haskell to embed file contents directly") + (description + "This package allows you to use Template Haskell to read a file or all +the files in a directory, and turn them into @code{(path, bytestring)} pairs +embedded in your Haskell code.") + (license license:bsd-3))) + ;;; haskell.scm ends here From b1f9cc88c4e371e39aae4a6dee8fcc775c2ac9a5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:38:12 +0200 Subject: [PATCH 37/56] gnu: Add ghc-safeio. * gnu/packages/haskell.scm (ghc-safeio): New variable. --- gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 28f5bdffe6..0a90ac523c 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11334,4 +11334,34 @@ (define-public ghc-file-embed embedded in your Haskell code.") (license license:bsd-3))) +(define-public ghc-safeio + (package + (name "ghc-safeio") + (version "0.0.5.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/safeio/" + "safeio-" version ".tar.gz")) + (sha256 + (base32 + "04g3070cbjdqj0h9l9ii6470xcbn40xfv4fr89a8yvnkdim9nyfm")))) + (build-system haskell-build-system) + (inputs + `(("ghc-conduit" ,ghc-conduit) + ("ghc-conduit-combinators" ,ghc-conduit-combinators) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-resourcet" ,ghc-resourcet))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework-th" ,ghc-test-framework-th))) + (home-page "https://github.com/luispedro/safeio") + (synopsis "Write output to disk atomically") + (description + "This package implements utilities to perform atomic output so as to +avoid the problem of partial intermediate files.") + (license license:expat))) + ;;; haskell.scm ends here From d71078bc75d149c70dc573a259986f1731145693 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 2 Oct 2018 18:38:14 +0200 Subject: [PATCH 38/56] gnu: Add ngless. * gnu/packages/bioinformatics.scm (ngless): New variable. --- gnu/packages/bioinformatics.scm | 87 +++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 43220d22fe..ab9dc185a3 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -38,6 +38,7 @@ (define-module (gnu packages bioinformatics) #:use-module (guix build-system ant) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system haskell) #:use-module (guix build-system ocaml) #:use-module (guix build-system perl) #:use-module (guix build-system python) @@ -72,6 +73,8 @@ (define-module (gnu packages bioinformatics) #:use-module (gnu packages groff) #:use-module (gnu packages guile) #:use-module (gnu packages haskell) + #:use-module (gnu packages haskell-check) + #:use-module (gnu packages haskell-web) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages java) @@ -13970,3 +13973,87 @@ (define-public r-absfiltergsea Without filtering, users can perform (original) two-tailed or one-tailed absolute GSEA.") (license license:gpl2))) + +(define-public ngless + (package + (name "ngless") + (version "0.9.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/ngless/ngless.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0mc2gi7h4lx74zylvyp76mvc0w6706j858ii9vlgzqsw6acpr117")))) + (build-system haskell-build-system) + (arguments + `(#:haddock? #f ; The haddock phase fails with: NGLess/CmdArgs.hs:20:1: + ; error: parse error on input import + ; import Options.Applicative + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'create-cabal-file + (lambda _ (invoke "hpack") #t))))) + (inputs + `(("ghc-aeson" ,ghc-aeson) + ("ghc-ansi-terminal" ,ghc-ansi-terminal) + ("ghc-async" ,ghc-async) + ("ghc-atomic-write" ,ghc-atomic-write) + ("ghc-bytestring-lexing" ,ghc-bytestring-lexing) + ("ghc-chart" ,ghc-chart) + ("ghc-chart-cairo" ,ghc-chart-cairo) + ("ghc-conduit" ,ghc-conduit) + ("ghc-conduit-algorithms" ,ghc-conduit-algorithms) + ("ghc-conduit-combinators" ,ghc-conduit-combinators) + ("ghc-conduit-extra" ,ghc-conduit-extra) + ("ghc-configurator" ,ghc-configurator) + ("ghc-convertible" ,ghc-convertible) + ("ghc-data-default" ,ghc-data-default) + ("ghc-double-conversion" ,ghc-double-conversion) + ("ghc-edit-distance" ,ghc-edit-distance) + ("ghc-either" ,ghc-either) + ("ghc-errors" ,ghc-errors) + ("ghc-extra" ,ghc-extra) + ("ghc-filemanip" ,ghc-filemanip) + ("ghc-file-embed" ,ghc-file-embed) + ("ghc-gitrev" ,ghc-gitrev) + ("ghc-hashtables" ,ghc-hashtables) + ("ghc-http-conduit" ,ghc-http-conduit) + ("ghc-inline-c" ,ghc-inline-c) + ("ghc-inline-c-cpp" ,ghc-inline-c-cpp) + ("ghc-intervalmap" ,ghc-intervalmap) + ("ghc-missingh" ,ghc-missingh) + ("ghc-optparse-applicative" ,ghc-optparse-applicative) + ("ghc-parsec" ,ghc-parsec) + ("ghc-regex" ,ghc-regex) + ("ghc-safe" ,ghc-safe) + ("ghc-safeio" ,ghc-safeio) + ("ghc-strict" ,ghc-strict) + ("ghc-tar" ,ghc-tar) + ("ghc-text" ,ghc-text) + ("ghc-unliftio" ,ghc-unliftio) + ("ghc-unliftio-core" ,ghc-unliftio-core) + ("ghc-vector" ,ghc-vector) + ("ghc-yaml" ,ghc-yaml) + ("ghc-zlib" ,ghc-zlib))) + (propagated-inputs + `(("r-r6" ,r-r6) + ("r-hdf5r" ,r-hdf5r) + ("r-iterators" ,r-iterators) + ("r-itertools" ,r-itertools) + ("r-matrix" ,r-matrix))) + (native-inputs + `(("ghc-hpack" ,ghc-hpack) + ("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) + ("ghc-test-framework-th" ,ghc-test-framework-th))) + (home-page "https://gitlab.com/ngless/ngless") + (synopsis "DSL for processing next-generation sequencing data") + (description "Ngless is a domain-specific language for +@dfn{next-generation sequencing} (NGS) data processing.") + (license license:expat))) From e90ce1157794bfecfe93f7c31dc4bd631dd710fb Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 6 Oct 2018 03:32:12 -0400 Subject: [PATCH 39/56] gnu: git: Update to 2.19.1 [fixes CVE-2018-17456]. * gnu/packages/version-control.scm (git): Update to 2.19.1. --- gnu/packages/version-control.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index cc892b9c62..00d7e1f189 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -146,14 +146,14 @@ (define-public git (name "git") ;; XXX When updating Git, check if the special 'git-source' input to cgit ;; needs to be updated as well. - (version "2.19.0") + (version "2.19.1") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "1x1y5z3awabmfg7hk6zb331jxngad4nal4507v96bnf0izsyy3qq")))) + "1dfv43lmdnxz42504jc89sihbv1d4d6kgqcz3c5ji140kfm5cl1l")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -166,7 +166,7 @@ (define-public git version ".tar.xz")) (sha256 (base32 - "1jvxiqvp9q4is3np063ny7rnmk5hm36d34bhi3cgv89njqdh8laf")))))) + "1vn6pi9yvw7rnb9dvi1yjrvv39fqd1m9mwbaffqwizs3gaf91br7")))))) (inputs `(("curl" ,curl) ("expat" ,expat) From ccfac015bfb9eb3fa50590517f01fdb20c810750 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 6 Oct 2018 18:18:22 +0200 Subject: [PATCH 40/56] gnu: wcslib: Update to 5.20. * gnu/packages/astronomy.scm (wcslib): Update to 5.20. [arguments]: Build parallelly. --- gnu/packages/astronomy.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 88e3723a1f..3c8b9cc8df 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -68,7 +68,7 @@ (define-public cfitsio (define-public wcslib (package (name "wcslib") - (version "5.18") + (version "5.20") (source (origin (method url-fetch) @@ -76,7 +76,7 @@ (define-public wcslib "ftp://ftp.atnf.csiro.au/pub/software/wcslib/" name "-" version ".tar.bz2")) (sha256 - (base32 "16jh568k99c9p0y3qzcgps2rii933x9wlay7q1xm0lr59zqzp4xn")))) + (base32 "1c8g9kv4dxrnawnqi4spi2p10s2xs7x75pdfxhbqxgcc97dkgh0b")))) (inputs `(("cfitsio" ,cfitsio))) (build-system gnu-build-system) @@ -89,8 +89,7 @@ (define-public wcslib (("/bin/sh") "sh")) #t)) (delete 'install-license-files)) ; installed by ‘make install’ - ;; Both the build and tests fail randomly when run in parallel. - #:parallel-build? #f + ;; Parallel execution of the test suite is not supported. #:parallel-tests? #f)) (home-page "https://www.atnf.csiro.au/people/mcalabre/WCS") (synopsis "Library which implements the FITS WCS standard") From 96808b39e76aae65a0ed3149780f23d91326b6c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Sun, 7 Oct 2018 14:55:55 +0800 Subject: [PATCH 41/56] gnu: pd: Update to 0.49-0. * gnu/packages/music.scm (pd): Update to 0.49-0. --- gnu/packages/music.scm | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 2d834d8c1f..3163e6a8f6 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1726,7 +1726,7 @@ (define-public tuxguitar (define-public pd (package (name "pd") - (version "0.47-1") + (version "0.49-0") (source (origin (method url-fetch) (uri @@ -1734,16 +1734,20 @@ (define-public pd version ".src.tar.gz")) (sha256 (base32 - "0k5s949kqd7yw97h3m8z81bjz32bis9m4ih8df1z0ymipnafca67")))) + "18rzqbpgnnvyslap7k0ly87aw1bbxkb0rk5agpr423ibs9slxq6j")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no "check" target + #:configure-flags + (list + "--enable-jack" + (string-append "--with-wish=" (string-append + (assoc-ref %build-inputs "tk") + "/bin/wish8.6"))) #:phases (modify-phases %standard-phases - (add-before 'configure 'fix-wish-path + (add-before 'configure 'fix-with-path (lambda _ - (substitute* "src/s_inter.c" - ((" wish ") (string-append " " (which "wish8.6") " "))) (substitute* "tcl/pd-gui.tcl" (("exec wish ") (string-append "exec " (which "wish8.6") " "))) #t)) From c8a99ab9112b6a671b15766301f03e428108c4eb Mon Sep 17 00:00:00 2001 From: fis trivial Date: Sun, 7 Oct 2018 09:03:40 +0000 Subject: [PATCH 42/56] gnu: mercurial: Update to 4.6.2. * gnu/packages/version-control.scm (mercurial): Update to 4.6.2. --- gnu/packages/version-control.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 00d7e1f189..528d117e29 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -1119,14 +1119,14 @@ (define-public gitolite (define-public mercurial (package (name "mercurial") - (version "4.4.1") + (version "4.6.2") (source (origin (method url-fetch) (uri (string-append "https://www.mercurial-scm.org/" "release/mercurial-" version ".tar.gz")) (sha256 (base32 - "0ik2ypzxjr6vpcghxvn39a73gw52629n7vwak04gnbycsq95aalg")))) + "1bv6wgcdx8glihjjfg22khhc52mclsn4kwfqvzbzlg0b42h4xl0w")))) (build-system python-build-system) (arguments `(;; Restrict to Python 2, as Python 3 would require From 2c4be1add077bf30f949282edcc2ea507ba44497 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 7 Oct 2018 14:14:13 +0200 Subject: [PATCH 43/56] gnu: Add java-w3c-smil. * gnu/packages/batik.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/batik.scm | 90 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 91 insertions(+) create mode 100644 gnu/packages/batik.scm diff --git a/gnu/local.mk b/gnu/local.mk index 8f854e98b5..f1ce800dd5 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -77,6 +77,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/backup.scm \ %D%/packages/base.scm \ %D%/packages/bash.scm \ + %D%/packages/batik.scm \ %D%/packages/bdw-gc.scm \ %D%/packages/benchmark.scm \ %D%/packages/bioconductor.scm \ diff --git a/gnu/packages/batik.scm b/gnu/packages/batik.scm new file mode 100644 index 0000000000..91eb8f01d5 --- /dev/null +++ b/gnu/packages/batik.scm @@ -0,0 +1,90 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Danny Milosavljevic +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages batik) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix utils) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix packages) + #:use-module (guix build-system ant) + #:use-module (gnu packages) + #:use-module (gnu packages compression) + #:use-module (gnu packages java) + #:use-module (gnu packages textutils)) + +(define-public java-w3c-smil-3.0 + (package + (name "java-w3c-smil") + (version "3.0") + (source #f) + (build-system ant-build-system) + (arguments + `(#:jar-name "w3c-smil.jar" + #:source-dir "." + #:tests? #f ; No tests exist. + #:phases + (modify-phases %standard-phases + (replace 'unpack + (lambda* (#:key source #:allow-other-keys) + ;; https://www.w3.org/TR/SMIL3/smil-timing.html#q142 + (mkdir-p "org/w3c/dom/smil") + (call-with-output-file "org/w3c/dom/smil/ElementTimeControl.java" + (lambda (port) + (format port " +package org.w3c.dom.smil; + +import org.w3c.dom.DOMException; + +public interface ElementTimeControl { + public boolean beginElement(); + + public boolean beginElementAt(float offset); + + public boolean endElement(); + + public boolean endElementAt(float offset); +} +"))) + (call-with-output-file "org/w3c/dom/smil/TimeEvent.java" + (lambda (port) + (format port " +package org.w3c.dom.smil; + +import org.w3c.dom.events.Event; +import org.w3c.dom.views.AbstractView; + +public interface TimeEvent extends Event { + public AbstractView getView(); + + public int getDetail(); + + public void initTimeEvent(String typeArg, + AbstractView viewArg, + int detailArg); + +} +"))) + #t))))) + (native-inputs + `(("unzip" ,unzip))) + (home-page "https://www.w3.org/Style/CSS/SAC/") + (synopsis "W3C SAC interface for CSS parsers in Java") + (description "This package provides a SAC interface by the W3C. +SAC is an interface for CSS parsers.") + (license license:w3c))) From da99c46f63d13cd42b871f3e180be830061cc8b3 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 7 Oct 2018 14:15:21 +0200 Subject: [PATCH 44/56] gnu: Add java-w3c-svg. * gnu/packages/batik.scm (java-w3c-svg-1.0, java-w3c-svg): New variables. --- gnu/packages/batik.scm | 68 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/gnu/packages/batik.scm b/gnu/packages/batik.scm index 91eb8f01d5..b3361d9092 100644 --- a/gnu/packages/batik.scm +++ b/gnu/packages/batik.scm @@ -88,3 +88,71 @@ (define-public java-w3c-smil-3.0 (description "This package provides a SAC interface by the W3C. SAC is an interface for CSS parsers.") (license license:w3c))) + +(define-public java-w3c-svg-1.0 + (package + (name "java-w3c-svg") + (version "20010904") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.w3.org/TR/2001/REC-SVG-" version + "/java-binding.zip")) + (sha256 + (base32 + "0gnxvx51bg6ijplf6l2q0i1m07101f7fickawshfygnsdjqfdnbp")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "w3c-svg.jar" + #:source-dir "." + #:tests? #f ; No tests exist. + #:phases + (modify-phases %standard-phases + (replace 'unpack + (lambda* (#:key source #:allow-other-keys) + (invoke "unzip" source))) + (add-after 'unpack 'patch-interface + (lambda _ + ;; Make it compatible with batik. + ;; This is equivalent to usingxml commons externals' + ;; "externals" part from https://xerces.apache.org/mirrors.cgi + (substitute* "SVGFEConvolveMatrixElement.java" + (("public SVGAnimatedLength[ ]*getKernelUnitLength") + "public SVGAnimatedNumber getKernelUnitLength")) + (substitute* "SVGFEMorphologyElement.java" + (("public SVGAnimatedLength[ ]*getRadius") + "public SVGAnimatedNumber getRadius")) + (call-with-output-file "EventListenerInitializer.java" + (lambda (port) + (format port " +// License: http://www.apache.org/licenses/LICENSE-2.0 +package org.w3c.dom.svg; +public interface EventListenerInitializer { + public void initializeEventListeners(SVGDocument doc); +} + +"))) + #t))))) + (propagated-inputs + `(("java-w3c-smil" ,java-w3c-smil-3.0))) + (native-inputs + `(("unzip" ,unzip))) + (home-page "https://www.w3.org/Style/CSS/SAC/") + (synopsis "W3C SVG interface") + (description "This package provides a SVG interface.") + (license license:w3c))) + +(define-public java-w3c-svg + (package + (inherit java-w3c-svg-1.0) + (version "20110816") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.w3.org/TR/2011/REC-SVG11-" version + "/java-binding.zip")) + (sha256 + (base32 + "0jicqcrxav8ggs37amgvvwgc2f0qp1c5wns4rb2i3si83s2m09ns")))) + (propagated-inputs + `()))) From 283f57d8fa3dc2a9a6798dbea6b6b87319fda1ad Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 7 Oct 2018 14:16:01 +0200 Subject: [PATCH 45/56] gnu: Add java-w3c-sac. * gnu/packages/batik.scm (java-w3c-sac): New variable. --- gnu/packages/batik.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/batik.scm b/gnu/packages/batik.scm index b3361d9092..cf946e570e 100644 --- a/gnu/packages/batik.scm +++ b/gnu/packages/batik.scm @@ -156,3 +156,33 @@ (define-public java-w3c-svg "0jicqcrxav8ggs37amgvvwgc2f0qp1c5wns4rb2i3si83s2m09ns")))) (propagated-inputs `()))) + +(define-public java-w3c-sac + (package + (name "java-w3c-sac") + (version "1.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.w3.org/2002/06/sacjava-" version + ".zip")) + (sha256 + (base32 + "1djp2nnzf8jchnwz1ij9i5jfx4cg1ryf3lbw133yzjy0wkhcla52")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "w3c-sac.jar" + #:source-dir "sac-1.3" + #:tests? #f ; No tests exist. + #:phases + (modify-phases %standard-phases + (replace 'unpack + (lambda* (#:key source #:allow-other-keys) + (invoke "unzip" source)))))) + (native-inputs + `(("unzip" ,unzip))) + (home-page "https://www.w3.org/Style/CSS/SAC/") + (synopsis "W3C SAC interface for CSS parsers in Java") + (description "This package provides a SAC interface by the W3C. +SAC is an interface for CSS parsers.") + (license license:w3c))) From 52d2725ab126a98f170482d483ef4ddd71ba8edf Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 7 Oct 2018 14:32:05 +0200 Subject: [PATCH 46/56] gnu: Add java-xmlgraphics-commons. * gnu/packages/batik.scm (java-xmlgraphics-commons): New variable. --- gnu/packages/batik.scm | 45 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/batik.scm b/gnu/packages/batik.scm index cf946e570e..d45600f7b9 100644 --- a/gnu/packages/batik.scm +++ b/gnu/packages/batik.scm @@ -186,3 +186,48 @@ (define-public java-w3c-sac (description "This package provides a SAC interface by the W3C. SAC is an interface for CSS parsers.") (license license:w3c))) + +(define-public java-xmlgraphics-commons + (package + (name "java-xmlgraphics-commons") + (version "2.3") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://apache/xmlgraphics/commons/source/xmlgraphics-commons-" + version "-src.tar.gz")) + (sha256 + (base32 + "0a432a4ca3vgnbada5cy9mlmfzmq6hi4i176drfxrp17q2d43w23")))) + (build-system ant-build-system) + (arguments + `(#:build-target "jar-main" + ;; TODO: More detailed tests are available--but they need + ;; commons-xml-resolver. + ;; TODO: Provide commons-xml-resolver. + #:test-target "junit-basic" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'make-reproducible + (lambda _ + (substitute* "build.xml" + ((" Date: Sun, 7 Oct 2018 14:42:15 +0200 Subject: [PATCH 47/56] gnu: java-xmlgraphics-commons: Remove bundled dependencies. * gnu/packages/batik.scm (java-xmlgraphics-commons): Remove bundled dependencies. --- gnu/packages/batik.scm | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/gnu/packages/batik.scm b/gnu/packages/batik.scm index d45600f7b9..9449e565f1 100644 --- a/gnu/packages/batik.scm +++ b/gnu/packages/batik.scm @@ -26,7 +26,8 @@ (define-module (gnu packages batik) #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages java) - #:use-module (gnu packages textutils)) + #:use-module (gnu packages textutils) + #:use-module (gnu packages xml)) (define-public java-w3c-smil-3.0 (package @@ -199,13 +200,16 @@ (define-public java-xmlgraphics-commons version "-src.tar.gz")) (sha256 (base32 - "0a432a4ca3vgnbada5cy9mlmfzmq6hi4i176drfxrp17q2d43w23")))) + "0a432a4ca3vgnbada5cy9mlmfzmq6hi4i176drfxrp17q2d43w23")) + (modules '((guix build utils))) + (snippet + `(begin + (delete-file-recursively "lib") + #t)))) (build-system ant-build-system) (arguments `(#:build-target "jar-main" - ;; TODO: More detailed tests are available--but they need - ;; commons-xml-resolver. - ;; TODO: Provide commons-xml-resolver. + ;; TODO: More detailed tests are available. #:test-target "junit-basic" #:phases (modify-phases %standard-phases @@ -215,6 +219,11 @@ (define-public java-xmlgraphics-commons ((" Date: Sun, 7 Oct 2018 14:43:47 +0200 Subject: [PATCH 48/56] gnu: java-xmlgraphics-commons: Make error in tests fail the "check" phase. * gnu/packages/batik.scm (java-xmlgraphics-commons)[arguments]<#:test-target>: Use "junit" test target. --- gnu/packages/batik.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gnu/packages/batik.scm b/gnu/packages/batik.scm index 9449e565f1..5bba859370 100644 --- a/gnu/packages/batik.scm +++ b/gnu/packages/batik.scm @@ -209,8 +209,7 @@ (define-public java-xmlgraphics-commons (build-system ant-build-system) (arguments `(#:build-target "jar-main" - ;; TODO: More detailed tests are available. - #:test-target "junit-basic" + #:test-target "junit" #:phases (modify-phases %standard-phases (add-after 'unpack 'make-reproducible From 3158425eb85419bc8bf787fe1b00af30133bdaa3 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 7 Oct 2018 14:46:26 +0200 Subject: [PATCH 49/56] gnu: java-xmlgraphics-commons: Add dependency to java-cglib. * gnu/packages/batik.scm (java-xmlgraphics-commons)[native-inputs]: Add java-cglib. --- gnu/packages/batik.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/batik.scm b/gnu/packages/batik.scm index 5bba859370..5a74d7cc35 100644 --- a/gnu/packages/batik.scm +++ b/gnu/packages/batik.scm @@ -234,6 +234,7 @@ (define-public java-xmlgraphics-commons #t)))))) (native-inputs `(("java-apache-xml-commons-resolver" ,java-apache-xml-commons-resolver) + ("java-cglib" ,java-cglib) ("java-hamcrest" ,java-hamcrest-core) ("java-junit" ,java-junit) ("java-mockito" ,java-mockito-1) From 12a0b38ce6f93913ead590bb7ebc35db66a6e7b2 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 7 Oct 2018 14:47:36 +0200 Subject: [PATCH 50/56] gnu: java-xmlgraphics-commons: Add dependency to java-asm. * gnu/packages/batik.scm (java-xmlgraphics-commons)[native-inputs]: Add java-asm. --- gnu/packages/batik.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/batik.scm b/gnu/packages/batik.scm index 5a74d7cc35..cdd1e44713 100644 --- a/gnu/packages/batik.scm +++ b/gnu/packages/batik.scm @@ -234,6 +234,7 @@ (define-public java-xmlgraphics-commons #t)))))) (native-inputs `(("java-apache-xml-commons-resolver" ,java-apache-xml-commons-resolver) + ("java-asm" ,java-asm) ("java-cglib" ,java-cglib) ("java-hamcrest" ,java-hamcrest-core) ("java-junit" ,java-junit) From ae6922ed148b6bde06e37a2c244c67a4f5e6dc00 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 7 Oct 2018 15:28:37 +0200 Subject: [PATCH 51/56] gnu: Add java-jakarta-regexp. * gnu/packages/java.scm (java-jakarta-regexp): New variable. --- gnu/packages/java.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 96da495c29..93f5bb6aff 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -9634,6 +9634,39 @@ (define-public java-xerces the DOM level 3 load/save API's are in use.") (license license:asl2.0))) +(define-public java-jakarta-regexp + (package + (name "java-jakarta-regexp") + (version "1.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://archive.apache.org/dist/jakarta/regexp/jakarta-regexp-" + version ".tar.gz")) + (sha256 + (base32 + "0zg9rmyif48dck0cv6ynpxv23mmcsx265am1fnnxss7brgw0ms3r")))) + (build-system ant-build-system) + (arguments + `(#:test-target "test" + #:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (out-share (string-append out "/share/java"))) + (mkdir-p out-share) + (for-each (lambda (name) + (install-file name out-share)) + (find-files "build" "^jakarta-regexp-.*\\.jar$")) + #t)))))) + (home-page "https://attic.apache.org/projects/jakarta-regexp.html") + (synopsis "Regular expression parser generator for Java.") + (description "@code{jakarta-regexp} is an old regular expression parser +generator for Java.") + (license license:asl2.0))) + (define-public java-jline (package (name "java-jline") From 236fadf52868d3ced233b144f9d560b51dcecec1 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Sun, 7 Oct 2018 00:35:23 +0200 Subject: [PATCH 52/56] gnu: mes: Update to 0.18. * gnu/packages/patches/mes-nyacc-0.86.0.patch: Removef file. * gnu/local.mk (dist_patch_DATA): Remove entry. * gnu/packages/mes.scm (mes): Update to 0.18. --- gnu/local.mk | 1 - gnu/packages/mes.scm | 5 +- gnu/packages/patches/mes-nyacc-0.86.0.patch | 197 -------------------- 3 files changed, 2 insertions(+), 201 deletions(-) delete mode 100644 gnu/packages/patches/mes-nyacc-0.86.0.patch diff --git a/gnu/local.mk b/gnu/local.mk index f1ce800dd5..8be91c3708 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -956,7 +956,6 @@ dist_patch_DATA = \ %D%/packages/patches/mcrypt-CVE-2012-4409.patch \ %D%/packages/patches/mcrypt-CVE-2012-4426.patch \ %D%/packages/patches/mcrypt-CVE-2012-4527.patch \ - %D%/packages/patches/mes-nyacc-0.86.0.patch \ %D%/packages/patches/mesa-skip-disk-cache-test.patch \ %D%/packages/patches/meson-for-build-rpath.patch \ %D%/packages/patches/metabat-fix-compilation.patch \ diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index 880e140b80..6dc6dfb4cb 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -63,15 +63,14 @@ (define-public mes (let ((triplet "i686-unknown-linux-gnu")) (package (name "mes") - (version "0.17.1") + (version "0.18") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mes/" "mes-" version ".tar.gz")) - (patches (search-patches "mes-nyacc-0.86.0.patch")) (sha256 (base32 - "02g8zig53ffd0ai8kqhv2zj7bj2366a8hr6ydkwakmi2d1amyrna")))) + "1dsaaqyanzsq9m5wrcd2bjhb3qd6928c9q97rg5r730pyqjwxyxf")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (propagated-inputs diff --git a/gnu/packages/patches/mes-nyacc-0.86.0.patch b/gnu/packages/patches/mes-nyacc-0.86.0.patch deleted file mode 100644 index 58dfc5a46b..0000000000 --- a/gnu/packages/patches/mes-nyacc-0.86.0.patch +++ /dev/null @@ -1,197 +0,0 @@ -From 9e610736bf779f3295c1192e748cd19cbbe3be28 Mon Sep 17 00:00:00 2001 -From: Jan Nieuwenhuizen -Date: Wed, 5 Sep 2018 20:28:06 +0200 -Subject: [PATCH 1/2] mes: Support Nyacc 0.85.3: Add char-set-copy. - -* mes/module/srfi/srfi-14.mes (char-set-copy): New function> ---- - mes/module/srfi/srfi-14.mes | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/mes/module/srfi/srfi-14.mes b/mes/module/srfi/srfi-14.mes -index 0be39b1e..a16d16ce 100644 ---- a/mes/module/srfi/srfi-14.mes -+++ b/mes/module/srfi/srfi-14.mes -@@ -52,3 +52,6 @@ - - (define (char-whitespace? c) - (char-set-contains? char-set:whitespace c)) -+ -+(define (char-set-copy cs) -+ (map identity cs)) --- -2.18.0 - -From b952bdf44f11edbfc277600dc35236aae1769b54 Mon Sep 17 00:00:00 2001 -From: Jan Nieuwenhuizen -Date: Wed, 5 Sep 2018 22:14:34 +0200 -Subject: [PATCH 2/2] mes: Support Nyacc 0.85.3: Integrate progress. - -* mes/module/nyacc/lang/sx-util.mes: New file. -* mes/module/nyacc/version.mes: New file. -* mes/module/nyacc/lang/c99/cpp.mes (nyacc): Include them. -* mes/module/nyacc/lang/c99/parser.mes (nyacc): Include them. -* module/mescc/preprocess.scm (need-progress): New function. -(progress): New function. -(insert-progress-monitors): Use them to Integrate progress. ---- - mes/module/mescc/preprocess.mes | 1 + - mes/module/nyacc/lang/c99/cpp.mes | 1 + - mes/module/nyacc/lang/c99/parser.mes | 1 + - mes/module/nyacc/lang/sx-util.mes | 27 +++++++++++++++++++++ - mes/module/nyacc/version.mes | 26 +++++++++++++++++++++ - module/mescc/preprocess.scm | 35 ++++++++++++++++++++++++++++ - 6 files changed, 91 insertions(+) - create mode 100644 mes/module/nyacc/lang/sx-util.mes - create mode 100644 mes/module/nyacc/version.mes - -diff --git a/mes/module/mescc/preprocess.mes b/mes/module/mescc/preprocess.mes -index c7c5fcaa..022a372c 100644 ---- a/mes/module/mescc/preprocess.mes -+++ b/mes/module/mescc/preprocess.mes -@@ -24,4 +24,5 @@ - (mes-use-module (srfi srfi-13)) - (mes-use-module (srfi srfi-26)) - (mes-use-module (nyacc lang c99 parser)) -+(mes-use-module (nyacc version)) - (include-from-path "mescc/preprocess.scm") -diff --git a/mes/module/nyacc/lang/c99/cpp.mes b/mes/module/nyacc/lang/c99/cpp.mes -index fad1dc55..b25c4a93 100644 ---- a/mes/module/nyacc/lang/c99/cpp.mes -+++ b/mes/module/nyacc/lang/c99/cpp.mes -@@ -28,5 +28,6 @@ - - (mes-use-module (nyacc parse)) - (mes-use-module (nyacc lex)) -+(mes-use-module (nyacc lang sx-util)) - (mes-use-module (nyacc lang util)) - (include-from-path "nyacc/lang/c99/cpp.scm") -diff --git a/mes/module/nyacc/lang/c99/parser.mes b/mes/module/nyacc/lang/c99/parser.mes -index c51552d6..1a9aaf73 100644 ---- a/mes/module/nyacc/lang/c99/parser.mes -+++ b/mes/module/nyacc/lang/c99/parser.mes -@@ -32,6 +32,7 @@ - - (mes-use-module (nyacc lex)) - (mes-use-module (nyacc parse)) -+(mes-use-module (nyacc lang sx-util)) - (mes-use-module (nyacc lang util)) - (mes-use-module (nyacc lang c99 cpp)) - -diff --git a/mes/module/nyacc/lang/sx-util.mes b/mes/module/nyacc/lang/sx-util.mes -new file mode 100644 -index 00000000..41ac5b4a ---- /dev/null -+++ b/mes/module/nyacc/lang/sx-util.mes -@@ -0,0 +1,27 @@ -+;;; -*-scheme-*- -+ -+;;; GNU Mes --- Maxwell Equations of Software -+;;; Copyright © 2018 Jan (janneke) Nieuwenhuizen -+;;; -+;;; This file is part of GNU Mes. -+;;; -+;;; GNU Mes is free software; you can redistribute it and/or modify it -+;;; under the terms of the GNU General Public License as published by -+;;; the Free Software Foundation; either version 3 of the License, or (at -+;;; your option) any later version. -+;;; -+;;; GNU Mes is distributed in the hope that it will be useful, but -+;;; WITHOUT ANY WARRANTY; without even the implied warranty of -+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+;;; GNU General Public License for more details. -+;;; -+;;; You should have received a copy of the GNU General Public License -+;;; along with GNU Mes. If not, see . -+ -+;;; Commentary: -+ -+;;; Code: -+ -+(mes-use-module (srfi srfi-1)) -+(mes-use-module (srfi srfi-16)) -+(include-from-path "nyacc/lang/sx-util.scm") -diff --git a/mes/module/nyacc/version.mes b/mes/module/nyacc/version.mes -new file mode 100644 -index 00000000..b9db628e ---- /dev/null -+++ b/mes/module/nyacc/version.mes -@@ -0,0 +1,26 @@ -+;;; -*-scheme-*- -+ -+;;; GNU Mes --- Maxwell Equations of Software -+;;; Copyright © 2018 Jan (janneke) Nieuwenhuizen -+;;; -+;;; This file is part of GNU Mes. -+;;; -+;;; GNU Mes is free software; you can redistribute it and/or modify it -+;;; under the terms of the GNU General Public License as published by -+;;; the Free Software Foundation; either version 3 of the License, or (at -+;;; your option) any later version. -+;;; -+;;; GNU Mes is distributed in the hope that it will be useful, but -+;;; WITHOUT ANY WARRANTY; without even the implied warranty of -+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+;;; GNU General Public License for more details. -+;;; -+;;; You should have received a copy of the GNU General Public License -+;;; along with GNU Mes. If not, see . -+ -+;;; Commentary: -+ -+;;; Code: -+ -+(include-from-path "nyacc/version.scm") -+(display "nyacc version\n") -diff --git a/module/mescc/preprocess.scm b/module/mescc/preprocess.scm -index 9e341cba..c2efb32c 100644 ---- a/module/mescc/preprocess.scm -+++ b/module/mescc/preprocess.scm -@@ -26,9 +26,44 @@ - #:use-module (srfi srfi-1) - #:use-module (srfi srfi-26) - #:use-module (nyacc lang c99 parser) -+ #:use-module (nyacc lang c99 parser) -+ #:use-module (nyacc version) - #:use-module (mes guile) - #:export (c99-input->ast)) - -+(format (current-error-port) "*nyacc-version*=~a\n" *nyacc-version*) -+;; list of which rules you want progress reported -+(define need-progress -+ (assoc-ref -+ '(("0.85.3" (1 2 3)) -+ ("0.86.0" (1 2 3))) -+ *nyacc-version*)) -+ -+(define (progress o) -+ (when (and o (getenv "NYACC_DEBUG")) -+ (display " :" (current-error-port)) -+ (display o (current-error-port)) -+ (display "\n" (current-error-port)))) -+ -+(define (insert-progress-monitors act-v len-v) -+ (let ((n (vector-length act-v))) -+ (let loop ((ix 0)) -+ (when (< ix n) -+ (if (memq ix need-progress) -+ (vector-set -+ act-v ix -+ (lambda args -+ (progress (list-ref args (1- (vector-ref len-v ix)))) -+ (apply (vector-ref act-v ix) args)))) -+ (loop (1+ ix)))))) -+ -+(cond-expand -+ (guile -+ (insert-progress-monitors (@@ (nyacc lang c99 parser) c99-act-v) -+ (@@ (nyacc lang c99 parser) c99-len-v))) -+ (mes -+ (insert-progress-monitors c99-act-v c99-len-v))) -+ - (define (logf port string . rest) - (apply format (cons* port string rest)) - (force-output port) --- -2.18.0 - From 247537da81095d3bc03dc210954910d1008bafd3 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 6 Oct 2018 22:43:35 -0400 Subject: [PATCH 53/56] gnu: borg: The backup client cannot override the server-side storage quota. * gnu/packages/patches/borg-respect-storage-quota.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/backup.scm (borg)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/backup.scm | 1 + .../patches/borg-respect-storage-quota.patch | 32 +++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 gnu/packages/patches/borg-respect-storage-quota.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8be91c3708..ea2d650e28 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -599,6 +599,7 @@ dist_patch_DATA = \ %D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/blast+-fix-makefile.patch \ %D%/packages/patches/boost-fix-icu-build.patch \ + %D%/packages/patches/borg-respect-storage-quota.patch \ %D%/packages/patches/byobu-writable-status.patch \ %D%/packages/patches/cairo-CVE-2016-9082.patch \ %D%/packages/patches/calibre-no-updates-dialog.patch \ diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index ea5bc8e398..408b64b48d 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -498,6 +498,7 @@ (define-public borg (origin (method url-fetch) (uri (pypi-uri "borgbackup" version)) + (patches (search-patches "borg-respect-storage-quota.patch")) (sha256 (base32 "1p3zia62vyg9vadkdjzzkzbj4dmgijr7ix5lmhfbxpwy5q9imdgp")) diff --git a/gnu/packages/patches/borg-respect-storage-quota.patch b/gnu/packages/patches/borg-respect-storage-quota.patch new file mode 100644 index 0000000000..d23d1ffc01 --- /dev/null +++ b/gnu/packages/patches/borg-respect-storage-quota.patch @@ -0,0 +1,32 @@ +Make sure the client respects the storage quota set by the server: + +https://github.com/borgbackup/borg/issues/4093 + +Patch copied from upstream source repository: + +https://github.com/borgbackup/borg/commit/975cc33206e0e3644626fb7204c34d2157715b61 + +From 975cc33206e0e3644626fb7204c34d2157715b61 Mon Sep 17 00:00:00 2001 +From: Manu +Date: Wed, 3 Oct 2018 23:47:36 +0800 +Subject: [PATCH] Add storage_quota for forced_result if set by serve command. + +--- + src/borg/archiver.py | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/borg/archiver.py b/src/borg/archiver.py +index 916725e7..279194c1 100644 +--- a/src/borg/archiver.py ++++ b/src/borg/archiver.py +@@ -4276,6 +4276,7 @@ def get_args(self, argv, cmd): + result.restrict_to_paths = forced_result.restrict_to_paths + result.restrict_to_repositories = forced_result.restrict_to_repositories + result.append_only = forced_result.append_only ++ result.storage_quota = forced_result.storage_quota + return result + + def parse_args(self, args=None): +-- +2.19.1 + From cd220e60da3add3884aef7cc0ab8f4b9e8fb2e3c Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 7 Oct 2018 15:08:46 -0400 Subject: [PATCH 54/56] gnu: ncmpc: Update to 0.32. * gnu/packages/mpd.scm (ncmpc): Update to 0.32. [inputs]: Add boost, pcre, and python-sphinx. Remove glib. [arguments]: Install the man pages correctly. Remove unnecessary configure flag. --- gnu/packages/mpd.scm | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index c024152dda..3e69ddba69 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -47,6 +47,7 @@ (define-module (gnu packages mpd) #:use-module (gnu packages linux) #:use-module (gnu packages mp3) #:use-module (gnu packages ncurses) + #:use-module (gnu packages pcre) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages pulseaudio) @@ -186,7 +187,7 @@ (define-public mpd-mpc (define-public ncmpc (package (name "ncmpc") - (version "0.30") + (version "0.32") (source (origin (method url-fetch) (uri @@ -195,11 +196,14 @@ (define-public ncmpc "/ncmpc-" version ".tar.xz")) (sha256 (base32 - "18qj3cgqczgfk334x0ywxwa1ckrk9fbjyp34n4zzcxwaifshrzp3")))) + "1b01q1pcaw5yyhvmlffc3h0r3w8qy7rhn55a7xj4qkcfqvs8ap08")))) (build-system meson-build-system) (arguments `(#:configure-flags - (list "-Dcurses=ncurses") + ;; Otherwise, they are installed incorrectly, in + ;; '$out/share/man/man/man1'. + (list (string-append "-Dmandir=" (assoc-ref %outputs "out") + "/share")) #:phases (modify-phases %standard-phases (add-before 'configure 'expand-C++-include-path @@ -211,11 +215,13 @@ (define-public ncmpc (setenv path (string-append c++ ":" (getenv path))) #t)))))) (inputs `(("gcc", gcc-8) ; for its C++14 support - ("glib" ,glib) + ("boost" ,boost) + ("pcre" ,pcre) ("libmpdclient" ,libmpdclient) ("ncurses" ,ncurses))) (native-inputs `(("gettext" ,gettext-minimal) ; for xgettext - ("pkg-config" ,pkg-config))) + ("pkg-config" ,pkg-config) + ("python-sphinx" ,python-sphinx))) (synopsis "Curses Music Player Daemon client") (description "ncmpc is a fully featured MPD client, which runs in a terminal using ncurses.") From 68afb9dccf91cc1a58b6db405befa176b191d809 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 4 Oct 2018 11:30:23 -0400 Subject: [PATCH 55/56] build-system/glib-or-gtk: Build 'in-source' by default. * guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Change to 'out-of-source? #f'. * gnu/packages/audio.scm (audacity)[arguments]: Use the default 'out-of-source?' setting. * gnu/packages/libreoffice.scm (libreoffice): Likewise. --- gnu/packages/audio.scm | 5 ----- gnu/packages/libreoffice.scm | 3 --- guix/build-system/glib-or-gtk.scm | 2 +- 3 files changed, 1 insertion(+), 9 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 434efab953..17b6363f7c 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -413,11 +413,6 @@ (define-public audacity (substitute* "src/prefs/MidiIOPrefs.cpp" (("../../lib-src/portmidi/pm_common/portmidi.h") "portmidi.h")) #t))) - ;; The translation Makefile generation is performed improperly for - ;; out-of-tree builds. - ;; XXX This can be removed if the glib-or-gkt-build-system - ;; switches to #:out-of-source? #t. See . - #:out-of-source? #f ;; The test suite is not "well exercised" according to the developers, ;; and fails with various errors. See ;; . diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index 881cf2008d..e5ab5c5071 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -1018,9 +1018,6 @@ (define-public libreoffice (arguments `(#:tests? #f ; Building the tests already fails. #:make-flags '("build-nocheck") ; Do not build unit tests, which fails. - ;; XXX Remove this if glib-or-gtk-build-system changes to in-source-tree - ;; builds by default. - #:out-of-source? #f #:phases (modify-phases %standard-phases (add-before 'configure 'prepare-src diff --git a/guix/build-system/glib-or-gtk.scm b/guix/build-system/glib-or-gtk.scm index 621e68e0ab..fcd92f2334 100644 --- a/guix/build-system/glib-or-gtk.scm +++ b/guix/build-system/glib-or-gtk.scm @@ -112,7 +112,7 @@ (define* (glib-or-gtk-build store name inputs (configure-flags ''()) ;; Disable icon theme cache generation. (make-flags ''("gtk_update_icon_cache=true")) - (out-of-source? #t) + (out-of-source? #f) (tests? #t) (test-target "check") (parallel-build? #t) From a18accba468beecf0200383f56d02894caf6f41a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 7 Oct 2018 20:15:31 -0400 Subject: [PATCH 56/56] gnu: Remove Go 1.10. * gnu/packages/golang.scm (go-1.10): Remove variable. (go-1.11)[arguments]: Remove unnecessary environment variable from 'set-bootstrap-variables' phase. --- gnu/packages/golang.scm | 128 ++++------------------------------------ 1 file changed, 10 insertions(+), 118 deletions(-) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 7a049e39e1..7f26fbdab6 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -386,123 +386,9 @@ (define-public go-1.9 ,@(package-native-inputs go-1.4))) (supported-systems %supported-systems))) -(define-public go-1.10 - (package - (inherit go-1.9) - (name "go") - (version "1.10.4") - (source - (origin - (method url-fetch) - (uri (string-append "https://storage.googleapis.com/golang/" - name version ".src.tar.gz")) - (sha256 - (base32 - "10ap5pan71y2hdwzv4cg8wx4sy8fkcz5520rm1ldjg25xmjlkr3g")))) - (arguments - (substitute-keyword-arguments (package-arguments go-1.9) - ((#:phases phases) - `(modify-phases ,phases - (replace 'prebuild - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib")) - (ld (string-append (assoc-ref inputs "libc") "/lib")) - (loader (car (find-files ld "^ld-linux.+"))) - (net-base (assoc-ref inputs "net-base")) - (tzdata-path - (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo")) - (output (assoc-ref outputs "out"))) - - ;; Removing net/ tests, which fail when attempting to access - ;; network resources not present in the build container. - (for-each delete-file - '("net/listen_test.go" - "net/parse_test.go" - "net/cgo_unix_test.go")) - - (substitute* "os/os_test.go" - (("/usr/bin") (getcwd)) - (("/bin/pwd") (which "pwd")) - (("/bin/sh") (which "sh"))) - - ;; Add libgcc to runpath - (substitute* "cmd/link/internal/ld/lib.go" - (("!rpath.set") "true")) - (substitute* "cmd/go/internal/work/gccgo.go" - (("cgoldflags := \\[\\]string\\{\\}") - (string-append "cgoldflags := []string{" - "\"-rpath=" gcclib "\"" - "}")) - (("\"-lgcc_s\", ") - (string-append - "\"-Wl,-rpath=" gcclib "\", \"-lgcc_s\", "))) - (substitute* "cmd/go/internal/work/gc.go" - (("ldflags = setextld\\(ldflags, compiler\\)") - (string-append - "ldflags = setextld(ldflags, compiler)\n" - "ldflags = append(ldflags, \"-r\")\n" - "ldflags = append(ldflags, \"" gcclib "\")\n"))) - - ;; Disable failing tests: these tests attempt to access - ;; commands or network resources which are neither available - ;; nor necessary for the build to succeed. - (for-each - (match-lambda - ((file regex) - (substitute* file - ((regex all before test_name) - (string-append before "Disabled" test_name))))) - '(("net/net_test.go" "(.+)(TestShutdownUnix.+)") - ("net/dial_test.go" "(.+)(TestDialTimeout.+)") - ("os/os_test.go" "(.+)(TestHostname.+)") - ("time/format_test.go" "(.+)(TestParseInSydney.+)") - ("time/format_test.go" "(.+)(TestParseInLocation.+)") - ("os/exec/exec_test.go" "(.+)(TestEcho.+)") - ("os/exec/exec_test.go" "(.+)(TestCommandRelativeName.+)") - ("os/exec/exec_test.go" "(.+)(TestCatStdin.+)") - ("os/exec/exec_test.go" "(.+)(TestCatGoodAndBadFile.+)") - ("os/exec/exec_test.go" "(.+)(TestExitStatus.+)") - ("os/exec/exec_test.go" "(.+)(TestPipes.+)") - ("os/exec/exec_test.go" "(.+)(TestStdinClose.+)") - ("os/exec/exec_test.go" "(.+)(TestIgnorePipeErrorOnSuccess.+)") - ("syscall/syscall_unix_test.go" "(.+)(TestPassFD\\(.+)") - ("os/exec/exec_test.go" "(.+)(TestExtraFiles/areturn.+)") - ("cmd/go/go_test.go" "(.+)(TestCoverageWithCgo.+)") - ("cmd/go/go_test.go" "(.+)(TestTwoPkgConfigs.+)") - ("os/exec/exec_test.go" "(.+)(TestOutputStderrCapture.+)") - ("os/exec/exec_test.go" "(.+)(TestExtraFiles.+)") - ("os/exec/exec_test.go" "(.+)(TestExtraFilesRace.+)") - ("net/lookup_test.go" "(.+)(TestLookupPort.+)") - ("syscall/exec_linux_test.go" - "(.+)(TestCloneNEWUSERAndRemapNoRootDisableSetgroups.+)"))) - - ;; fix shebang for testar script - ;; note the target script is generated at build time. - (substitute* "../misc/cgo/testcarchive/carchive_test.go" - (("#!/usr/bin/env") (string-append "#!" (which "env")))) - - (substitute* "net/lookup_unix.go" - (("/etc/protocols") (string-append net-base "/etc/protocols"))) - (substitute* "net/port_unix.go" - (("/etc/services") (string-append net-base "/etc/services"))) - (substitute* "time/zoneinfo_unix.go" - (("/usr/share/zoneinfo/") tzdata-path)) - (substitute* (find-files "cmd" "\\.go") - (("/lib(64)?/ld-linux.*\\.so\\.[0-9]") loader)) - #t))) - (replace 'set-bootstrap-variables - (lambda* (#:key outputs inputs #:allow-other-keys) - ;; Tell the build system where to find the bootstrap Go. - (let ((go (assoc-ref inputs "go"))) - (setenv "GOROOT_BOOTSTRAP" go) - (setenv "GOGC" "400") - ;; Go 1.10 tries to write to $HOME in a test - (setenv "HOME" "/tmp") - #t))))))))) - (define-public go-1.11 (package - (inherit go-1.10) + (inherit go-1.9) (name "go") (version "1.11.1") (source @@ -514,7 +400,7 @@ (define-public go-1.11 (base32 "05qivf2f59pv4bfrmdr4m0xvswkmvvl9c5a2h5dy45g2k8b8r3sm")))) (arguments - (substitute-keyword-arguments (package-arguments go-1.10) + (substitute-keyword-arguments (package-arguments go-1.9) ((#:phases phases) `(modify-phases ,phases (replace 'prebuild @@ -533,7 +419,7 @@ (define-public go-1.11 '("net/listen_test.go" "net/parse_test.go" "net/cgo_unix_test.go" - ;; A side affect of these test scripts is testing + ;; A side effect of these test scripts is testing ;; cgo. Attempts at using cgo flags and ;; directives with these scripts as specified ;; here (https://golang.org/cmd/cgo/) have not @@ -616,7 +502,13 @@ (define-public go-1.11 (("/usr/share/zoneinfo/") tzdata-path)) (substitute* (find-files "cmd" "\\.go") (("/lib(64)?/ld-linux.*\\.so\\.[0-9]") loader)) - #t))))))))) + #t))) + (replace 'set-bootstrap-variables + (lambda* (#:key outputs inputs #:allow-other-keys) + ;; Tell the build system where to find the bootstrap Go. + (let ((go (assoc-ref inputs "go"))) + (setenv "GOROOT_BOOTSTRAP" go) + (setenv "GOGC" "400")))))))))) (define-public go go-1.9)