aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2020-11-23 23:39:47 +0100
committerMarius Bakke <marius@gnu.org>2020-11-23 23:39:47 +0100
commit87a027243fa5e8b00fa6257847fde5d5af04bce6 (patch)
tree87f85b3d5d9f521e29a09d6c36a4f951a426eab0 /gnu
parenta485a98ca8296d760251e9d870583117ac50979e (diff)
parent689d88451e7f1db62df5989ac3ff82f540424061 (diff)
downloadguix-87a027243fa5e8b00fa6257847fde5d5af04bce6.tar
guix-87a027243fa5e8b00fa6257847fde5d5af04bce6.tar.gz
Merge branch 'master' into staging
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk4
-rw-r--r--gnu/packages/admin.scm4
-rw-r--r--gnu/packages/algebra.scm3
-rw-r--r--gnu/packages/audio.scm4
-rw-r--r--gnu/packages/backup.scm4
-rw-r--r--gnu/packages/bioinformatics.scm132
-rw-r--r--gnu/packages/bootloaders.scm17
-rw-r--r--gnu/packages/chromium.scm118
-rw-r--r--gnu/packages/djvu.scm40
-rw-r--r--gnu/packages/emacs-xyz.scm84
-rw-r--r--gnu/packages/fontutils.scm4
-rw-r--r--gnu/packages/game-development.scm49
-rw-r--r--gnu/packages/gpodder.scm5
-rw-r--r--gnu/packages/graphviz.scm23
-rw-r--r--gnu/packages/image.scm6
-rw-r--r--gnu/packages/javascript.scm35
-rw-r--r--gnu/packages/linux.scm36
-rw-r--r--gnu/packages/lsof.scm77
-rw-r--r--gnu/packages/ocaml.scm12
-rw-r--r--gnu/packages/package-management.scm6
-rw-r--r--gnu/packages/parallel.scm4
-rw-r--r--gnu/packages/patches/eigen-remove-openmp-error-counting.patch64
-rw-r--r--gnu/packages/patches/lsof-fatal-test-failures.patch58
-rw-r--r--gnu/packages/patches/ocaml-cairo2-caml_ba_array-fix.patch68
-rw-r--r--gnu/packages/patches/python-pydot-regression-test.patch79
-rw-r--r--gnu/packages/patches/ungoogled-chromium-system-nspr.patch22
-rw-r--r--gnu/packages/python-web.scm13
-rw-r--r--gnu/packages/python-xyz.scm161
-rw-r--r--gnu/packages/rust-apps.scm1
-rw-r--r--gnu/packages/textutils.scm5
-rw-r--r--gnu/packages/virtualization.scm47
-rw-r--r--gnu/packages/webkit.scm6
32 files changed, 963 insertions, 228 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 49d7ea93b3..c095a5e86a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -934,6 +934,7 @@ dist_patch_DATA = \
%D%/packages/patches/ecl-16-format-directive-limit.patch \
%D%/packages/patches/ecl-16-ignore-stderr-write-error.patch \
%D%/packages/patches/ecl-16-libffi.patch \
+ %D%/packages/patches/eigen-remove-openmp-error-counting.patch \
%D%/packages/patches/eigen-stabilise-sparseqr-test.patch \
%D%/packages/patches/einstein-build.patch \
%D%/packages/patches/elfutils-tests-ptrace.patch \
@@ -1312,6 +1313,7 @@ dist_patch_DATA = \
%D%/packages/patches/lrcalc-includes.patch \
%D%/packages/patches/lrzip-CVE-2017-8842.patch \
%D%/packages/patches/lsh-fix-x11-forwarding.patch \
+ %D%/packages/patches/lsof-fatal-test-failures.patch \
%D%/packages/patches/lua-CVE-2014-5461.patch \
%D%/packages/patches/lua-pkgconfig.patch \
%D%/packages/patches/lua51-liblua-so.patch \
@@ -1389,6 +1391,7 @@ dist_patch_DATA = \
%D%/packages/patches/nvi-db4.patch \
%D%/packages/patches/nyacc-binary-literals.patch \
%D%/packages/patches/ocaml-bitstring-fix-configure.patch \
+ %D%/packages/patches/ocaml-cairo2-caml_ba_array-fix.patch \
%D%/packages/patches/ocaml-CVE-2015-8869.patch \
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
%D%/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch \
@@ -1526,6 +1529,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-paste-remove-timing-test.patch \
%D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \
%D%/packages/patches/python-pycrypto-time-clock.patch \
+ %D%/packages/patches/python-pydot-regression-test.patch \
%D%/packages/patches/python2-pygobject-2-deprecation.patch \
%D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \
%D%/packages/patches/python-robotframework-source-date-epoch.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 1ea6f975ff..20d5978e6d 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -443,7 +443,7 @@ graphs and can export its output to different formats.")
(define-public facter
(package
(name "facter")
- (version "4.0.44")
+ (version "4.0.46")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -452,7 +452,7 @@ graphs and can export its output to different formats.")
(file-name (git-file-name name version))
(sha256
(base32
- "0cs4cr5xc3yvnln9k3gdhypnq6iw4zfrhqrhslvli11l9mwdbjwn"))))
+ "1pi93i1jfpmxxw22b5r4gyx5jzgrammlrjzhjr3q2bpn3kcas91j"))))
(build-system ruby-build-system)
(arguments
`(#:phases
diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm
index 1c485a3f07..5b391449a0 100644
--- a/gnu/packages/algebra.scm
+++ b/gnu/packages/algebra.scm
@@ -1017,7 +1017,8 @@ Optional thin wrappers allow usage of the library from other languages.")
(base32
"1vxrsncfnkyq6gwxpsannpryp12mk7lc8f42ybvz3saf7icwc582"))
(file-name (string-append name "-" version ".tar.bz2"))
- (patches (search-patches "eigen-stabilise-sparseqr-test.patch"))
+ (patches (search-patches "eigen-remove-openmp-error-counting.patch"
+ "eigen-stabilise-sparseqr-test.patch"))
(modules '((guix build utils)))
(snippet
;; There are 3 test failures in the "unsupported" directory,
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index df8b8efcf1..852b56e80f 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -4086,14 +4086,14 @@ on the ALSA software PCM plugin.")
(define-public snd
(package
(name "snd")
- (version "20.8")
+ (version "20.9")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz"))
(sha256
(base32
- "1hw81innyyiwiyb8jkpq9aj7idmcb41yvgd1blac997023h78sss"))))
+ "0jxkycxn6jcbs4gklk9sk3gfr0y26dz1m71nxah9rnx80wnzj6hr"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; no tests
diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index 64058f1233..419ffc55e8 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -82,7 +82,7 @@
(define-public duplicity
(package
(name "duplicity")
- (version "0.8.15")
+ (version "0.8.17")
(source
(origin
(method url-fetch)
@@ -91,7 +91,7 @@
"-series/" version "/+download/duplicity-"
version ".tar.gz"))
(sha256
- (base32 "1kg467mxg5a97v1rlv4shk32krgv8ys4nczq4b11av4bp1lgysdc"))))
+ (base32 "114rwkf9b3h4fcagrx013sb7krc4hafbwl9gawjph2wd9pkv2wx2"))))
(build-system python-build-system)
(native-inputs
`(("gettext" ,gettext-minimal) ; for msgfmt
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 01c45fcc96..b051389ae2 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017, 2018 Ben Woodcroft <donttrustben@gmail.com>
-;;; Copyright © 2015, 2016 Pjotr Prins <pjotr.guix@thebird.nl>
+;;; Copyright © 2015, 2016, 2018, 2019, 2020 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2020 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
@@ -18,6 +18,7 @@
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2020 Bonface Munyoki Kilyungi <bonfacemunyoki@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -102,6 +103,7 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages node)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages pcre)
#:use-module (gnu packages parallel)
@@ -112,10 +114,12 @@
#:use-module (gnu packages popt)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages python-compression)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages ruby)
#:use-module (gnu packages serialization)
@@ -2579,6 +2583,132 @@ accessing bigWig files.")
(define-public python2-pybigwig
(package-with-python2 python-pybigwig))
+(define-public python-schema-salad
+ (package
+ (name "python-schema-salad")
+ (version "7.0.20200811075006")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "schema-salad" version))
+ (sha256
+ (base32
+ "0wanbwmqb189x1m0vacnhpivfsr8rwbqknngivzxxs8j46yj80bg"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-cachecontrol" ,python-cachecontrol-0.11)
+ ("python-lockfile" ,python-lockfile)
+ ("python-mistune" ,python-mistune)
+ ("python-rdflib" ,python-rdflib)
+ ("python-rdflib-jsonld" ,python-rdflib-jsonld)
+ ("python-requests" ,python-requests)
+ ("python-ruamel.yaml" ,python-ruamel.yaml)
+ ("python-typing-extensions" ,python-typing-extensions)))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-pytest-runner" ,python-pytest-runner)))
+ (home-page "https://github.com/common-workflow-language/schema_salad")
+ (synopsis "Schema Annotations for Linked Avro Data (SALAD)")
+ (description
+ "Salad is a schema language for describing JSON or YAML structured linked
+data documents. Salad schema describes rules for preprocessing, structural
+validation, and hyperlink checking for documents described by a Salad schema.
+Salad supports rich data modeling with inheritance, template specialization,
+object identifiers, object references, documentation generation, code
+generation, and transformation to RDF. Salad provides a bridge between document
+and record oriented data modeling and the Semantic Web.")
+ (license license:asl2.0)))
+
+(define-public cwltool
+ (package
+ (name "cwltool")
+ (version "3.0.20201121085451")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/common-workflow-language/cwltool")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1awf99n7aglxc5zszrlrv6jxp355jp45ws7wpsgjlgcdv7advn0w"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'loosen-version-restrictions
+ (lambda _
+ (substitute* "setup.py"
+ (("== 1.5.1") ">=1.5.1") ; prov
+ ((", < 3.5") "")) ; shellescape
+ #t))
+ (add-after 'unpack 'dont-use-git
+ (lambda _
+ (substitute* "gittaggers.py"
+ (("self.git_timestamp_tag\\(\\)")
+ (string-append "time.strftime('.%Y%m%d%H%M%S', time.gmtime(int("
+ (string-drop ,version 4) ")))")))
+ #t))
+ (add-after 'unpack 'modify-tests
+ (lambda _
+ ;; Tries to connect to the internet.
+ (delete-file "tests/test_udocker.py")
+ (delete-file "tests/test_http_input.py")
+ (substitute* "tests/test_load_tool.py"
+ (("def test_load_graph_fragment_from_packed")
+ (string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n"
+ "def test_load_graph_fragment_from_packed")))
+ (substitute* "tests/test_examples.py"
+ (("def test_env_filtering")
+ (string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n"
+ "def test_env_filtering")))
+ ;; Tries to use cwl-runners.
+ (substitute* "tests/test_examples.py"
+ (("def test_v1_0_arg_empty_prefix_separate_false")
+ (string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n"
+ "def test_v1_0_arg_empty_prefix_separate_false")))
+ #t)))))
+ (propagated-inputs
+ `(("python-argcomplete" ,python-argcomplete)
+ ("python-bagit" ,python-bagit)
+ ("python-coloredlogs" ,python-coloredlogs)
+ ("python-mypy-extensions" ,python-mypy-extensions)
+ ("python-prov" ,python-prov)
+ ("python-pydot" ,python-pydot)
+ ("python-psutil" ,python-psutil)
+ ("python-rdflib" ,python-rdflib)
+ ("python-requests" ,python-requests)
+ ("python-ruamel.yaml" ,python-ruamel.yaml)
+ ("python-schema-salad" ,python-schema-salad)
+ ("python-shellescape" ,python-shellescape)
+ ("python-typing-extensions" ,python-typing-extensions)
+ ;; Not listed as needed but still necessary:
+ ("node" ,node)))
+ (native-inputs
+ `(("python-arcp" ,python-arcp)
+ ("python-humanfriendly" ,python-humanfriendly)
+ ("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-pytest-mock" ,python-pytest-mock)
+ ("python-pytest-runner" ,python-pytest-runner)
+ ("python-rdflib-jsonld" ,python-rdflib-jsonld)))
+ (home-page
+ "https://github.com/common-workflow-language/common-workflow-language")
+ (synopsis "Common Workflow Language reference implementation")
+ (description
+ "This is the reference implementation of the @acronym{CWL, Common Workflow
+Language} standards. The CWL open standards are for describing analysis
+workflows and tools in a way that makes them portable and scalable across a
+variety of software and hardware environments, from workstations to cluster,
+cloud, and high performance computing (HPC) environments. CWL is designed to
+meet the needs of data-intensive science, such as Bioinformatics, Medical
+Imaging, Astronomy, Physics, and Chemistry. The @acronym{cwltool, CWL reference
+implementation} is intended to be feature complete and to provide comprehensive
+validation of CWL files as well as provide other tools related to working with
+CWL descriptions.")
+ (license license:asl2.0)))
+
(define-public python-dendropy
(package
(name "python-dendropy")
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 12bc39322f..2e9709982f 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -138,14 +138,15 @@
;; These variables need to be set to the native versions
;; of the dependencies because they are used to build
;; programs which are executed during build time.
- (lambda* (#:key native-inputs inputs #:allow-other-keys)
- (let ((freetype (assoc-ref (or native-inputs inputs) "freetype")))
- (setenv "BUILD_FREETYPE_LIBS"
- (string-append "-L" freetype
- "/lib -lfreetype"))
- (setenv "BUILD_FREETYPE_CFLAGS"
- (string-append "-I" freetype
- "/include/freetype2")))
+ (lambda* (#:key native-inputs #:allow-other-keys)
+ (when (assoc-ref native-inputs "freetype")
+ (let ((freetype (assoc-ref native-inputs "freetype")))
+ (setenv "BUILD_FREETYPE_LIBS"
+ (string-append "-L" freetype
+ "/lib -lfreetype"))
+ (setenv "BUILD_FREETYPE_CFLAGS"
+ (string-append "-I" freetype
+ "/include/freetype2"))))
#t))
(add-before 'check 'disable-flaky-test
(lambda _
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
index 3d6a1b03ec..73ef209100 100644
--- a/gnu/packages/chromium.scm
+++ b/gnu/packages/chromium.scm
@@ -27,9 +27,11 @@
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages assembly)
#:use-module (gnu packages base)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
@@ -141,6 +143,7 @@
"third_party/depot_tools/owners.py" ;BSD-3
"third_party/devtools-frontend" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/acorn" ;Expat
+ "third_party/devtools-frontend/src/front_end/third_party/axe-core" ;MPL2.0
"third_party/devtools-frontend/src/front_end/third_party/chromium" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/codemirror" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/fabricjs" ;Expat
@@ -150,8 +153,8 @@
"third_party/devtools-frontend/src/front_end/third_party/lit-html" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/lodash-isequal" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/marked" ;Expat, BSD-3
+ "third_party/devtools-frontend/src/front_end/third_party/puppeteer" ;ASL2.0
"third_party/devtools-frontend/src/front_end/third_party/wasmparser" ;ASL2.0
- "third_party/devtools-frontend/src/third_party/axe-core" ;MPL2.0
"third_party/devtools-frontend/src/third_party/pyjson5" ;ASL2.0
"third_party/devtools-frontend/src/third_party/typescript" ;ASL2.0
"third_party/dom_distiller_js" ;BSD-3
@@ -219,6 +222,7 @@
"third_party/pffft" ;the "FFTPACK" license, similar to BSD-3
"third_party/ply" ;BSD-3
"third_party/polymer" ;BSD-3
+ "third_party/private_membership" ;ASL2.0
"third_party/private-join-and-compute" ;ASL2.0
"third_party/protobuf" ;BSD-3
"third_party/protobuf/third_party/six" ;Expat
@@ -231,6 +235,8 @@
"third_party/s2cellid" ;ASL2.0
"third_party/schema_org" ;CC-BY-SA3.0
"third_party/securemessage" ;ASL2.0
+ "third_party/shaka-player" ;ASL2.0
+ "third_party/shell-encryption" ;ASL2.0
"third_party/skia" ;BSD-3
"third_party/skia/include/third_party/skcms" ;BSD-3
"third_party/skia/third_party/skcms" ;BSD-3
@@ -252,6 +258,8 @@
"third_party/usb_ids" ;BSD-3
"third_party/usrsctp" ;BSD-2
"third_party/vulkan_memory_allocator" ;Expat
+ "third_party/wayland/protocol" ;Expat
+ "third_party/wayland/stubs" ;BSD-3, Expat
"third_party/wayland/wayland_scanner_wrapper.py" ;BSD-3
"third_party/wayland-protocols" ;Expat
"third_party/web-animations-js" ;ASL2.0
@@ -294,17 +302,9 @@
(string-append "ungoogled-chromium-" category "-" name))))
(sha256 (base32 hash))))
-(define (arch-patch name revision hash)
- (origin
- (method url-fetch)
- (uri (string-append "https://raw.githubusercontent.com/archlinux"
- "/svntogit-packages/" revision "/trunk/" name))
- (sha256 (base32 hash))))
-
-(define %chromium-version "86.0.4240.198")
-(define %ungoogled-revision "b68e17f32e9eff56615a07b44e457835bb9460c6")
+(define %chromium-version "87.0.4280.66")
+(define %ungoogled-revision "1f7cdef6dfa8f612afde8f988131f210612333e0")
(define %debian-revision "debian/84.0.4147.105-1")
-(define %arch-revision "2cbe439471932d30ff2c8ded6b3dfd51b312bbc9")
(define %debian-patches
(list (debian-patch "system/zlib.patch" %debian-revision
@@ -312,17 +312,6 @@
(debian-patch "system/openjpeg.patch" %debian-revision
"0zd6v5njx1pc7i0y6mslxvpx5j4cq01mmyx55qcqx8qzkm0gm48j")))
-(define %arch-patches
- (list (arch-patch "check-for-enable-accelerated-video-decode-on-Linux.patch"
- %arch-revision
- "12qj23dcp2g2ivyfyj13m4fzf68nllb9djwcxf1h195gn8wkml03")
- (arch-patch "only-fall-back-to-the-i965-driver-if-we-re-on-iHD.patch"
- %arch-revision
- "0073qjp0dp9kj2ix2j6cxrima01rpdpkcjj9crxlb9b43b4cc53m")
- (arch-patch "fix-invalid-end-iterator-usage-in-CookieMonster.patch"
- %arch-revision
- "1p1wy3dfncw0hhz77a1km0xjhix69ksgbpa569qz86nv76jbgn39")))
-
(define %ungoogled-origin
(origin
(method git-fetch)
@@ -332,7 +321,7 @@
(string-take %ungoogled-revision 7)))
(sha256
(base32
- "0visyhz321ykrmbjndvx31yd8xlmha9gas0xbkavc2i45rpfahjq"))))
+ "1cka9h7znkmilz9ld4s8pw1jjq2p7br03g3agcnqrk591y5h141i"))))
(define %guix-patches
(list (local-file
@@ -363,8 +352,7 @@
(for-each (lambda (patch)
(invoke "patch" "-p1" "--force" "--input"
patch "--no-backup-if-mismatch"))
- (append '#+%debian-patches '#+%arch-patches
- '#+%guix-patches))
+ (append '#+%debian-patches '#+%guix-patches))
(with-directory-excursion #+%ungoogled-origin
(format #t "Ungooglifying...~%")
@@ -455,7 +443,7 @@
%chromium-version ".tar.xz"))
(sha256
(base32
- "0i3s1il0x5yi3528gdsg3bhnyhs2x24zh7p1nd5apv3va9g85ax0"))
+ "0hgpg31gkksqgyvycsan7l7vjypc7cr6ikjfygf2zv7dhbmf9a19"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)
@@ -469,7 +457,7 @@
#:configure-flags
;; See tools/gn/docs/cookbook.md and
;; https://www.chromium.org/developers/gn-build-configuration
- ;; for usage. Run "./gn args . --list" in the Release
+ ;; for usage. Run "gn args . --list" in the Release
;; directory for an exhaustive list of supported flags.
;; (Note: The 'configure' phase will do that for you.)
(list "is_debug=false"
@@ -477,8 +465,10 @@
;; a developer build.
"is_official_build=true"
(string-append "max_jobs_per_link="
- (number->string (parallel-job-count)))
+ ;; Respect the default cap of 8 jobs.
+ (number->string (max 8 (parallel-job-count))))
"clang_use_chrome_plugins=false"
+ "chrome_pgo_phase=0"
"use_sysroot=false"
"goma_dir=\"\""
"enable_nacl=false"
@@ -512,6 +502,11 @@
"use_system_libjpeg=true"
"use_system_libopenjpeg2=true"
"use_system_libpng=true"
+ "use_system_wayland_scanner=true"
+ (string-append "system_wayland_scanner_path=\""
+ (assoc-ref %build-inputs "wayland-scanner")
+ "/bin/wayland-scanner\"")
+
"use_system_zlib=true"
"use_gnome_keyring=false" ;deprecated by libsecret
"use_openh264=true"
@@ -535,6 +530,8 @@
;; WebRTC stuff.
"rtc_use_h264=true"
+ "rtc_use_pipewire=true"
+ "rtc_link_pipewire=true"
;; Don't use bundled sources.
"rtc_build_json=true" ;FIXME: libc++ std::string ABI difference
"rtc_build_libevent=false"
@@ -790,7 +787,8 @@
("python-beautifulsoup4" ,python2-beautifulsoup4)
("python-html5lib" ,python2-html5lib)
- ("python" ,python-2)))
+ ("python" ,python-2)
+ ("wayland-scanner" ,wayland)))
(inputs
`(("alsa-lib" ,alsa-lib)
("atk" ,atk)
@@ -840,12 +838,14 @@
("opus" ,opus+custom)
("pango" ,pango)
("pciutils" ,pciutils)
+ ("pipewire" ,pipewire)
("pulseaudio" ,pulseaudio)
("snappy" ,snappy)
("speech-dispatcher" ,speech-dispatcher)
("udev" ,eudev)
("valgrind" ,valgrind)
- ("vulkan-headers" ,vulkan-headers)))
+ ("vulkan-headers" ,vulkan-headers)
+ ("wayland" ,wayland)))
(native-search-paths
(list (search-path-specification
(variable "CHROMIUM_EXTENSION_DIRECTORY")
@@ -878,24 +878,46 @@ disabled in order to protect the users privacy.")
license:lgpl2.1+))))
(define-public ungoogled-chromium/wayland
- (package/inherit ungoogled-chromium
+ (package
+ (inherit ungoogled-chromium)
(name "ungoogled-chromium-wayland")
+ (native-inputs '())
(inputs
- `(("wayland" ,wayland)
- ("wayland-protocols" ,wayland-protocols)
- ,@(package-inputs ungoogled-chromium)))
+ `(("bash" ,bash-minimal)
+ ("glibc-locales" ,glibc-utf8-locales)
+ ("ungoogled-chromium" ,ungoogled-chromium)))
+ (build-system trivial-build-system)
(arguments
- (substitute-keyword-arguments (package-arguments ungoogled-chromium)
- ((#:configure-flags flags)
- `(append (list "use_ozone=true"
- "ozone_platform_wayland=true"
- "ozone_platform_x11=true"
- "ozone_auto_platforms=false"
- "ozone_platform=\"wayland\""
- "use_xkbcommon=true"
- "use_system_minigbm=true"
- "use_system_libwayland=true"
- (string-append "system_wayland_scanner_path=\""
- (assoc-ref %build-inputs "wayland")
- "/bin/wayland-scanner\""))
- (delete "use_vaapi=true" ,flags)))))))
+ '(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let* ((bash (assoc-ref %build-inputs "bash"))
+ (chromium (assoc-ref %build-inputs "ungoogled-chromium"))
+ (locales (assoc-ref %build-inputs "glibc-locales"))
+ (out (assoc-ref %outputs "out"))
+ (exe (string-append out "/bin/chromium")))
+
+ ;; Use a Unicode locale so we can substitute the file below.
+ (setenv "GUIX_LOCPATH" (string-append locales "/lib/locale"))
+ (setlocale LC_ALL "en_US.utf8")
+
+ (mkdir-p (dirname exe))
+ (symlink (string-append chromium "/bin/chromedriver")
+ (string-append out "/bin/chromedriver"))
+
+ (call-with-output-file exe
+ (lambda (port)
+ (format port "#!~a
+exec ~a --enable-features=UseOzonePlatform --ozone-platform=wayland $@"
+ (string-append bash "/bin/bash")
+ (string-append chromium "/bin/chromium"))))
+ (chmod exe #o555)
+
+ ;; Provide the manual and .desktop file.
+ (copy-recursively (string-append chromium "/share")
+ (string-append out "/share"))
+ (substitute* (string-append
+ out "/share/applications/chromium.desktop")
+ ((chromium) out))
+ #t))))))
diff --git a/gnu/packages/djvu.scm b/gnu/packages/djvu.scm
index 90db1a2d42..605a922768 100644
--- a/gnu/packages/djvu.scm
+++ b/gnu/packages/djvu.scm
@@ -26,6 +26,7 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system python)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
@@ -41,7 +42,9 @@
#:use-module (gnu packages pdf)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
+ #:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xorg))
(define-public djvulibre
@@ -77,7 +80,7 @@ utilities.")
(define-public djview
(package
(name "djview")
- (version "4.11")
+ (version "4.12")
(source
(origin
(method git-fetch)
@@ -85,7 +88,7 @@ utilities.")
(url "https://git.code.sf.net/p/djvu/djview-git")
(commit (string-append "release." version))))
(sha256
- (base32 "0qlhd0xlxn8i869m0hwdjvwivi2vigqm88wliyr1h7s84zl3qhsy"))
+ (base32 "0mn9ywjbc7iga50lbjclrk892g0x0rap0dmb6ybzjyarybdhhcxp"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
@@ -272,3 +275,36 @@ encoder/decoder. It doesn't support colors or grayscales, just black
and white.")
(home-page "https://sourceforge.net/projects/minidjvu/")
(license license:gpl2)))
+
+(define-public djvusmooth
+ (package
+ (name "djvusmooth")
+ (version "0.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/jwilk/djvusmooth/releases/download/" version
+ "/djvusmooth-" version ".tar.gz"))
+ (sha256
+ (base32 "0z403cklvxzz0qaczgv83ax0nknrd9h8micp04j9kjfdxk2sgval"))))
+ (build-system python-build-system)
+ (inputs
+ `(("djvulibre" ,djvulibre)
+ ("python2-djvulibre" ,python2-djvulibre)
+ ("python2-subprocess32" ,python2-subprocess32)
+ ("python2-wxpython" ,python2-wxpython)))
+ (arguments
+ `(#:python ,python-2))
+ (synopsis "Graphical editor for DjVu documents")
+ (description
+ "@code{djvusmooth} is a graphical editor for DjVu_ documents.
+It is able to:
+@itemize
+@item edit document metadata,
+@item edit document outline (bookmarks),
+@item add, remove or edit hyperlinks,
+@item correct occasional errors in the hidden text layer.
+@end itemize\n")
+ (home-page "https://jwilk.net/software/djvusmooth")
+ (license license:gpl2)))
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 885487bf17..5f49c64bb7 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -3074,6 +3074,40 @@ adding convenient undo/redo without losing access to the full undo history,
allowing you to visit all previous states of the document if you need.")
(license license:gpl3+))))
+(define-public emacs-undo-fu-session
+ ;; There are no tagged releases upstream on gitlab, instead we are using the
+ ;; most recent commit.
+ (let ((commit "56cdd3538a058c6916bdf2d9010c2179f2505829")
+ (revision "0"))
+ (package
+ (name "emacs-undo-fu-session")
+ (version (git-version "0.2" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/ideasman42/emacs-undo-fu-session")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "04wq1alrzzlidcb4mjb5j7pg68pks1vgv7kvvmi6dzb3l602mb2a"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:tests? #t
+ #:test-command '("emacs" "--batch" "-l" "undo-fu-session.el"
+ "-l" "undo-fu-session-test.el")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'set-home
+ (lambda _
+ (setenv "HOME" "/tmp")
+ #t)))))
+ (home-page "https://gitlab.com/ideasman42/emacs-undo-fu-session")
+ (synopsis "Save & recover undo steps between Emacs sessions")
+ (description "This package writes undo/redo information upon file save
+which is restored where possible when the file is loaded again.")
+ (license license:gpl3+))))
+
(define-public emacs-s
(package
(name "emacs-s")
@@ -6719,6 +6753,33 @@ background of file-visiting buffers (and certain aspects of the UI) to make
them easier to distinguish from other, less important buffers.")
(license license:expat)))
+(define-public emacs-embark
+ ;; There are no tagged releases upstream on GitHub, instead we are using the
+ ;; most recent commit.
+ (let ((commit "dc20b4e53c4ce1ad91100dfeb093115f2cc0b210")
+ (revision "0"))
+ (package
+ (name "emacs-embark")
+ (version (git-version "0.6" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/oantolin/embark")
+ (commit commit)))
+ (sha256
+ (base32 "1jrvdlwip7zll5ixlnk9l0apr8hj60ysqfc47q3k4hhfyl9rawbq"))
+ (file-name (git-file-name name version))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-avy" ,emacs-avy)))
+ (home-page "https://github.com/oantolin/embark")
+ (synopsis "Emacs mini-buffer actions rooted in keymaps")
+ (description "This package provides a command embark-act (and a variant
+embark-act-noexit), to execute actions on the top minibuffer completion
+canidate: the one that would be chosen by minibuffer-force-complete.")
+ (license license:gpl3+))))
+
(define-public emacs-prescient
(package
(name "emacs-prescient")
@@ -6770,6 +6831,29 @@ marginal benefit compared to the additional complexity of a new
interface.")
(license license:expat)))
+(define-public emacs-orderless
+ (package
+ (name "emacs-orderless")
+ (version "0.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/oantolin/orderless")
+ (commit version)))
+ (sha256
+ (base32 "032lfwflkpaxbcxl4jf438vapswsdagipjczcn30sc4dfdh3p42c"))
+ (file-name (git-file-name name version))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/oantolin/orderless")
+ (synopsis "Emacs completion style that matches multiple regexps in any order")
+ (description "This package provides an orderless completion style that
+divides the pattern into space-separated components, and matches candidates
+that match all of the components in any order. Each component can match in
+any one of several ways: literally, as a regexp, as an initialism, in the flex
+style, or as multiple word prefixes.")
+ (license license:gpl3+)))
+
(define-public emacs-smartparens
(package
(name "emacs-smartparens")
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 870b6dd7b9..7409670a59 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -937,7 +937,7 @@ Unicode Charts. It was developed for use with DejaVu Fonts project.")
(define-public libraqm
(package
(name "libraqm")
- (version "0.7.0")
+ (version "0.7.1")
(source
(origin
(method url-fetch)
@@ -945,7 +945,7 @@ Unicode Charts. It was developed for use with DejaVu Fonts project.")
"releases/download/v" version "/"
"raqm-" version ".tar.gz"))
(sha256
- (base32 "0hgry3fj2y3qaq2fnmdgd93ixkk3ns5jds4vglkiv2jfvpn7b1g2"))))
+ (base32 "0a4q9dziirb85sa9rmkamg2krdhd009di2vlz91njwxcp3q8qj46"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--disable-static")))
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 8c8ed19338..c57ea5a908 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1764,61 +1764,23 @@ a 2D editor view.")
(define-public guile-chickadee
(package
(name "guile-chickadee")
- (version "0.5.0")
+ (version "0.6.0")
(source (origin
(method url-fetch)
(uri (string-append "https://files.dthompson.us/chickadee/"
"chickadee-" version ".tar.gz"))
(sha256
(base32
- "0y3s0p4zyghys48sayfhcbmxmflh8hwawnx5an2jlb3x84yr0dsx"))))
+ "1jv4jkc35b7rizz8iflh74hhk9qy665isn1xa6gqz0qp9grwb019"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0")))
(propagated-inputs
- `(("guile-opengl" ,guile-opengl)
- ("guile-sdl2" ,guile-sdl2)))
- (inputs
- `(("guile" ,guile-2.2)
- ("libvorbis" ,libvorbis)
- ("mpg123" ,mpg123)
- ("openal" ,openal)))
- (native-inputs
- `(("pkg-config" ,pkg-config)
- ("texinfo" ,texinfo)))
- (home-page "https://dthompson.us/projects/chickadee.html")
- (synopsis "Game development toolkit for Guile Scheme with SDL2 and OpenGL")
- (description "Chickadee is a game development toolkit for Guile Scheme
-built on top of SDL2 and OpenGL. Chickadee aims to provide all the features
-that parenthetically inclined game developers need to make 2D (and eventually
-3D) games in Scheme, such as:
-
-@enumerate
-@item extensible, fixed-timestep game loop
-@item OpenGL-based rendering engine
-@item keyboard, mouse, controller input
-@item REPL-driven development model
-@end enumerate\n")
- (license license:gpl3+)))
-
-(define-public guile3.0-chickadee
- (package
- (inherit guile-chickadee)
- (name "guile3.0-chickadee")
- (version "0.5.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://files.dthompson.us/chickadee/"
- "chickadee-" version ".tar.gz"))
- (sha256
- (base32
- "0y3s0p4zyghys48sayfhcbmxmflh8hwawnx5an2jlb3x84yr0dsx"))))
- (build-system gnu-build-system)
- (propagated-inputs
`(("guile-opengl" ,guile3.0-opengl)
("guile-sdl2" ,guile3.0-sdl2)))
(inputs
- `(("guile" ,guile-3.0)
+ `(("freetype" ,freetype)
+ ("guile" ,guile-3.0)
("libvorbis" ,libvorbis)
("mpg123" ,mpg123)
("openal" ,openal)))
@@ -1840,6 +1802,9 @@ that parenthetically inclined game developers need to make 2D (and eventually
@end enumerate\n")
(license license:gpl3+)))
+(define-public guile3.0-chickadee
+ (deprecated-package "guile3.0-chickadee" guile-chickadee))
+
(define-public bennu-game-development
(package
(name "bennu-game-development")
diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm
index fc3a78bc7b..44c356e2ff 100644
--- a/gnu/packages/gpodder.scm
+++ b/gnu/packages/gpodder.scm
@@ -38,7 +38,7 @@
(define-public gpodder
(package
(name "gpodder")
- (version "3.10.16")
+ (version "3.10.17")
(source
(origin
(method git-fetch)
@@ -46,8 +46,7 @@
(url "https://github.com/gpodder/gpodder")
(commit version)))
(sha256
- (base32
- "0pbpaasd7kj6y25nm45y1qyb9sxd4570f7g6zkfcpf6pa3nx7qkq"))
+ (base32 "0wrk8d4q6ricbcjzlhk10vrk1qg9hi323kgyyd0c8nmh7a82h8pd"))
(file-name (git-file-name name version))
(patches (search-patches "gpodder-disable-updater.patch"))))
(build-system python-build-system)
diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm
index 0f2afb99de..b5c4774d5c 100644
--- a/gnu/packages/graphviz.scm
+++ b/gnu/packages/graphviz.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2018 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
+;;; Copyright © 2020 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -31,6 +32,7 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils)
+ #:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
@@ -323,21 +325,34 @@ can be used either as a standalone application, or as a Python library.")
(define-public python-pydot
(package
(name "python-pydot")
- (version "1.2.4")
+ (version "1.4.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pydot" version))
(sha256
(base32
- "1dhy4jpp646jslh2yks6klwwbaxcs905byyny880gl1iap8y5llj"))))
+ "00az4cbf8bv447lkk9xi6pjm7gcc7ia33y4pm71fwfwis56rv76l"))
+ (patches (search-patches "python-pydot-regression-test.patch"))))
(build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ ;; Taken from .travis.yaml
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ (with-directory-excursion "test"
+ (invoke "python" "pydot_unittest.py")))
+ #t)))))
(native-inputs
;; For tests.
- `(("python-chardet" ,python-chardet)))
+ `(("graphviz" ,graphviz)
+ ("python-chardet" ,python-chardet)))
(propagated-inputs
`(("python-pyparsing" ,python-pyparsing)))
- (home-page "https://github.com/erocarrera/pydot")
+ (home-page "https://github.com/pydot/pydot")
(synopsis "Python interface to Graphviz's DOT language")
(description
"Pydot provides an interface to create, handle, modify and process
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 5bc144f769..db0cb855bb 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -2128,16 +2128,16 @@ by AOM, including with alpha.")
(name "mtpaint")
;; The author neither releases tarballs nor uses git version tags.
;; Instead, author puts version in git commit title.
- (version "3.49.27")
+ (version "3.49.33")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/wjaguar/mtPaint")
- (commit "26751cd0336414e2f16cbe25c9fe2702f34e7b5c")))
+ (commit "5272e2b1e773c8e02ac3506b2d3bde82ad946b21")))
(file-name (git-file-name name version))
(sha256
- (base32 "12mzai9pqvyb342m21rjz0jxiy75q24sjw6ax147pzy8frzkgd54"))))
+ (base32 "1bmq4m0dxczl18n1yiqb75g05a4c3pal1vdcyypkilx7ijsr0cmc"))))
(build-system gnu-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)
diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm
index 669951f741..ac9fbfea60 100644
--- a/gnu/packages/javascript.scm
+++ b/gnu/packages/javascript.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;;
@@ -32,7 +32,8 @@
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
- #:use-module (guix build-system minify))
+ #:use-module (guix build-system minify)
+ #:use-module (guix utils))
(define-public font-mathjax
(package
@@ -415,24 +416,28 @@ external server.")
(define-public mujs
(package
(name "mujs")
- (version "1.0.7")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://mujs.com/downloads/mujs-"
- version ".tar.xz"))
- (sha256
- (base32
- "1ilhay15z4k7mlzs6g2d00snivin7vp72dfw5wwpmc0x70jr31l2"))))
+ (version "1.0.9")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ccxvii/mujs")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "146lmmigqlvx36d3fzb9kk7sy6y4ddv0ih4pkjz4zyj30zl84gy2"))))
(build-system gnu-build-system)
(arguments
- '(#:phases
+ `(#:phases
(modify-phases %standard-phases
- (delete 'configure) ; no configure
- (add-after 'install 'install-shared-library
+ (delete 'configure) ; no configure script
+ (replace 'install
(lambda* (#:key (make-flags '()) #:allow-other-keys)
(apply invoke "make" "install-shared" make-flags))))
- #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))
- (string-append "CC=gcc"))
+ #:make-flags
+ (list ,(string-append "VERSION=" version)
+ ,(string-append "CC=" (cc-for-target))
+ (string-append "prefix=" (assoc-ref %outputs "out")))
#:tests? #f)) ; no tests
(inputs
`(("readline" ,readline)))
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index fd2c43aec8..7c07a6d008 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -352,7 +352,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernel. That is, the most recently released major
;; version.
-(define-public linux-libre-5.9-version "5.9.9")
+(define-public linux-libre-5.9-version "5.9.10")
(define deblob-scripts-5.9
(linux-libre-deblob-scripts
linux-libre-5.9-version
@@ -360,7 +360,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0yb04a4j2wq3mwvks3cj7kcm2pscmfs29lrz3falkxpbvjxbbgq2")))
(define-public linux-libre-5.9-pristine-source
(let ((version linux-libre-5.9-version)
- (hash (base32 "1b8zysy0br131ydhc7ycxhh8d88r44xrmkf2q2lffy0jmy3d60m3")))
+ (hash (base32 "0c7hcqn1ld0axlipzpwmjr1jwizrhz5w6bdfbk9npbirx7rb54gm")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.9)))
@@ -368,7 +368,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html>
-(define-public linux-libre-5.4-version "5.4.78")
+(define-public linux-libre-5.4-version "5.4.79")
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
linux-libre-5.4-version
@@ -376,12 +376,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "167zcfkw62pm6nv1xdvvhxw0ca724sywcywnv3z00189f8f8p3vg")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
- (hash (base32 "0z8skj0w9jfrz9pfxaqfzqh82l13bz5lhza2wjsxk02cyhhnm226")))
+ (hash (base32 "09ffj66wlp27vx799lnixq4zdkin3y4pqaw4lx2a6rpz13xr3455")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
-(define-public linux-libre-4.19-version "4.19.158")
+(define-public linux-libre-4.19-version "4.19.159")
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
linux-libre-4.19-version
@@ -389,12 +389,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1jiaw0as1ippkrjdpd52657w5mz9qczg3y2hlra7m9k0xawwiqlf")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
- (hash (base32 "0p5pim9izcscnk1a1kdlxbvyvxnnq9lqr1kwl86kfskr7yqy8n6n")))
+ (hash (base32 "195hlvr9zsa2km80rk71na1gl0222r2mk76rsqx0cxpgg7dhpjv0")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
-(define-public linux-libre-4.14-version "4.14.207")
+(define-public linux-libre-4.14-version "4.14.208")
(define deblob-scripts-4.14
(linux-libre-deblob-scripts
linux-libre-4.14-version
@@ -402,12 +402,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky")))
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
- (hash (base32 "0a804hwh7cwbdd2gnr5n9i32b4s6gppd8iqihah4sn4q1nbm79vq")))
+ (hash (base32 "0vzn5kprjlgpgnjr1drjq97x9xbyfgigpgs42xsfw61h2qjy3b1q")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
-(define-public linux-libre-4.9-version "4.9.244")
+(define-public linux-libre-4.9-version "4.9.245")
(define deblob-scripts-4.9
(linux-libre-deblob-scripts
linux-libre-4.9-version
@@ -415,12 +415,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2")))
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
- (hash (base32 "02givxp0y04qma5nlqbpyxdcl7xdb41p3gw7kgj2rmwdanhzaylr")))
+ (hash (base32 "1vxsd3g96vbykrmfnj9qali0p868h678qzcqvf4yrhya47k6pnnb")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
-(define-public linux-libre-4.4-version "4.4.244")
+(define-public linux-libre-4.4-version "4.4.245")
(define deblob-scripts-4.4
(linux-libre-deblob-scripts
linux-libre-4.4-version
@@ -428,7 +428,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf")))
(define-public linux-libre-4.4-pristine-source
(let ((version linux-libre-4.4-version)
- (hash (base32 "0brdj6z7flchig80ja0dhzcrpl743lh74s4r4r6prbgkksif9ahp")))
+ (hash (base32 "0g1cnis8496kp1ln922gxa7skfr096mdvv89la6676yw7dd4lhyi")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.4)))
@@ -4083,14 +4083,14 @@ isolation or root privileges.")
(define-public hdparm
(package
(name "hdparm")
- (version "9.58")
+ (version "9.60")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/hdparm/hdparm/"
"hdparm-" version ".tar.gz"))
(sha256
(base32
- "03z1qm8zbgpxagk3994lvp24yqsshjibkwg05v9p3q1w7y48xrws"))))
+ "1k1mcv7naiacw1y6bdd1adnjfiq1kkx2ivsadjwmlkg4fff775w3"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
@@ -7600,13 +7600,13 @@ receiving. It is dedicated to the PL011 UART of the Raspberry Pi.")
(define-public ipset
(package
(name "ipset")
- (version "7.7")
+ (version "7.9")
(source (origin
(method url-fetch)
- (uri (string-append "http://ipset.netfilter.org/ipset-" version ".tar.bz2"))
+ (uri (string-append "https://ipset.netfilter.org/ipset-" version ".tar.bz2"))
(sha256
(base32
- "0ckc678l1431mb0q5ilfgy0ajjwi8n135c72h606imm43dc0v9a5"))))
+ "02mkp7vmsh609dcp02xi290sxmsgq2fsch3875dxkwfxkrl16p5p"))))
(build-system gnu-build-system)
(inputs
`(("libmnl" ,libmnl)))
@@ -7614,7 +7614,7 @@ receiving. It is dedicated to the PL011 UART of the Raspberry Pi.")
`(("pkg-config" ,pkg-config)))
(arguments
`(#:configure-flags '("--with-kmod=no")))
- (home-page "http://ipset.netfilter.org/")
+ (home-page "https://ipset.netfilter.org/")
(synopsis "Administration tool for IP sets")
(description "IP sets are a framework inside the Linux 2.4.x and 2.6.x kernel which
can be administered by the ipset utility. Depending on the type,
diff --git a/gnu/packages/lsof.scm b/gnu/packages/lsof.scm
index 34ad0f03d5..b317902ee7 100644
--- a/gnu/packages/lsof.scm
+++ b/gnu/packages/lsof.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
@@ -22,52 +22,37 @@
(define-module (gnu packages lsof)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
- #:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module (guix build-system gnu)
+ #:use-module (guix utils)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages groff)
#:use-module (gnu packages perl))
(define-public lsof
(package
(name "lsof")
- (version "4.91")
+ (version "4.94.0")
(source
(origin
- (method url-fetch)
- (uri
- (apply append
- (map
- (lambda (mirror-uri)
- (let ((tarball (string-append name "_" version ".tar.bz2")))
- (list
- (string-append mirror-uri "/" tarball)
- ;; Upon every new release, the previous one is moved here:
- (string-append mirror-uri "/OLD/" tarball))))
- (list
- "ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/"
-
- ;; Add mirrors because the canonical FTP server at purdue.edu
- ;; bails out when it cannot do a reverse DNS lookup, as noted
- ;; at <https://people.freebsd.org/~abe/>.
- "ftp://ftp.fu-berlin.de/pub/unix/tools/lsof/"
- (string-append "http://www.mirrorservice.org/sites/"
- "lsof.itap.purdue.edu/pub/tools/unix/lsof")
- (string-append "ftp://ftp.mirrorservice.org/sites/"
- "lsof.itap.purdue.edu/pub/tools/unix/lsof")))))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/lsof-org/lsof")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
- (base32 "18sh4hbl9jw2szkf0gvgan8g13f3g4c6s2q9h3zq5gsza9m99nn9"))))
+ (base32 "0yxv2jg6rnzys49lyrz9yjb4knamah4xvlqj596y6ix3vm4k3chp"))
+ (patches (search-patches "lsof-fatal-test-failures.patch"))))
(build-system gnu-build-system)
- (native-inputs `(("perl" ,perl)))
+ (native-inputs
+ `(("groff" ,groff) ; for soelim
+ ("perl" ,perl)))
(arguments
`(#:phases
(modify-phases %standard-phases
- (replace 'unpack
- (lambda* (#:key source #:allow-other-keys)
- (let ((unpack (assoc-ref %standard-phases 'unpack)))
- (unpack #:source source)
- (unpack #:source (car (find-files "." "\\.tar$"))))))
(replace 'configure
(lambda _
- (setenv "LSOF_CC" "gcc")
+ (setenv "LSOF_CC" ,(cc-for-target))
(setenv "LSOF_MAKE" "make")
;; By default, the makefile captures the output of 'uname -a'.
@@ -83,14 +68,13 @@
(substitute* "Makefile"
(("`date`") "`date --date=@1`"))
#t))
+ (add-after 'build 'build-man-page
+ (lambda _
+ (with-output-to-file "lsof.8"
+ (lambda _ (invoke "soelim" "Lsof.8")))
+ #t))
(add-before 'check 'disable-failing-tests
(lambda _
- ;; In libc 2.28, the 'major' and 'minor' macros are provided by
- ;; <sys/sysmacros.h> only so include it.
- (substitute* "tests/LTlib.c"
- (("#ifndef lint")
- "#include <sys/sysmacros.h>\n\n#ifndef lint"))
-
(substitute* "tests/Makefile"
;; Fails with ‘ERROR!!! client gethostbyaddr() failure’.
(("(STDTST=.*) LTsock" _ prefix) prefix)
@@ -98,15 +82,16 @@
(("(OPTTST=.*) LTnfs" _ prefix) prefix))
#t))
(replace 'check
- (lambda _
- (with-directory-excursion "tests"
- ;; Tests refuse to run on ‘unvalidated’ platforms.
- (make-file-writable "TestDB")
- (invoke "./Add2TestDB")
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion "tests"
+ ;; Tests refuse to run on ‘unvalidated’ platforms.
+ (make-file-writable "TestDB")
+ (invoke "./Add2TestDB")
- ;; The ‘standard’ tests suggest running ‘optional’ ones as well.
- (invoke "make" "standard" "optional")
- #t)))
+ ;; The ‘standard’ tests suggest running ‘optional’ ones as well.
+ (invoke "make" "standard" "optional")))
+ #t))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 706def4f43..369e819573 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -5797,16 +5797,18 @@ convenience functions for vectors and matrices.")
(url "https://github.com/Chris00/ocaml-cairo")
(commit version)))
(file-name (git-file-name name version))
+ (patches
+ (search-patches
+ ;; NOTE: This patch will be obsolete on the
+ ;; next tagged release. Remove it at that
+ ;; point.
+ "ocaml-cairo2-caml_ba_array-fix.patch"))
(sha256
(base32
"0wzysis9fa850s68qh8vrvqc6svgllhwra3kzll2ibv0wmdqrich"))))
(build-system dune-build-system)
(arguments
- `(;; NOTE: GC reclaims bigarrays packed into a custom structure
- ;; regardless of their refcounts. Affects OCaml >= 4.10.x
- ;; https://github.com/ocaml/ocaml/issues/9360
- #:tests? #f
- #:test-target "tests"))
+ `(#:test-target "tests"))
(inputs
`(("cairo" ,cairo)
("gtk+-2" ,gtk+-2)
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 4a6881d475..6fd789ef53 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -130,8 +130,8 @@
;; Latest version of Guix, which may or may not correspond to a release.
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
- (let ((version "1.2.0rc2")
- (commit "0d4b1afb6bfa4bdeade2cb6409ece9467d513e39")
+ (let ((version "1.2.0")
+ (commit "bd96e6d34e4e65dc37eaae7302033d0da287c1e2")
(revision 1))
(package
(name "guix")
@@ -148,7 +148,7 @@
(commit commit)))
(sha256
(base32
- "1d0pifzrr14f1n0fn21rlh0hzfjvfsavf9as1vcjga47bdjjvrpp"))
+ "0j27yw6s89rni39dmjdz3i617ddr2yi5y5hj0i2a7sw8fn215hp4"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 2e56fe4c1e..be88829825 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -55,14 +55,14 @@
(define-public parallel
(package
(name "parallel")
- (version "20201022")
+ (version "20201122")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/parallel/parallel-"
version ".tar.bz2"))
(sha256
- (base32 "0qgh3947l854nvh2ylykbyzsflixd2zdi17vmwqm6azn9a32kzim"))))
+ (base32 "0c7zrb26xhbn48kvxs01qyj1vhwrpzkm11xxvi23njb6qi1bz82d"))))
(build-system gnu-build-system)
(arguments
`(#:phases
diff --git a/gnu/packages/patches/eigen-remove-openmp-error-counting.patch b/gnu/packages/patches/eigen-remove-openmp-error-counting.patch
new file mode 100644
index 0000000000..556474e8b3
--- /dev/null
+++ b/gnu/packages/patches/eigen-remove-openmp-error-counting.patch
@@ -0,0 +1,64 @@
+From ef3cc72cb65e2d500459c178c63e349bacfa834f Mon Sep 17 00:00:00 2001
+From: Luke Peterson <hazelnusse@gmail.com>
+Date: Thu, 8 Oct 2020 12:16:53 -0700
+Subject: [PATCH] Remove error counting in OpenMP parallelize_gemm
+
+This resolves a compilation error associated with
+Eigen::eigen_assert_exception. It also eliminates the counting of
+exceptions that may occur in the OpenMP parallel section. If an
+unhandled exception occurs in this section, the behavior is non-conforming
+according to the OpenMP specification.
+---
+ Eigen/src/Core/products/Parallelizer.h | 14 +++++---------
+ test/CMakeLists.txt | 2 +-
+ 2 files changed, 6 insertions(+), 10 deletions(-)
+
+diff --git a/Eigen/src/Core/products/Parallelizer.h b/Eigen/src/Core/products/Parallelizer.h
+index 67b2442b5..a3cc05b77 100644
+--- a/Eigen/src/Core/products/Parallelizer.h
++++ b/Eigen/src/Core/products/Parallelizer.h
+@@ -132,8 +132,7 @@ void parallelize_gemm(const Functor& func, Index rows, Index cols, Index depth,
+
+ ei_declare_aligned_stack_constructed_variable(GemmParallelInfo<Index>,info,threads,0);
+
+- int errorCount = 0;
+- #pragma omp parallel num_threads(threads) reduction(+: errorCount)
++ #pragma omp parallel num_threads(threads)
+ {
+ Index i = omp_get_thread_num();
+ // Note that the actual number of threads might be lower than the number of request ones.
+@@ -152,14 +151,11 @@ void parallelize_gemm(const Functor& func, Index rows, Index cols, Index depth,
+ info[i].lhs_start = r0;
+ info[i].lhs_length = actualBlockRows;
+
+- EIGEN_TRY {
+- if(transpose) func(c0, actualBlockCols, 0, rows, info);
+- else func(0, rows, c0, actualBlockCols, info);
+- } EIGEN_CATCH(...) {
+- ++errorCount;
+- }
++ if(transpose)
++ func(c0, actualBlockCols, 0, rows, info);
++ else
++ func(0, rows, c0, actualBlockCols, info);
+ }
+- if (errorCount) EIGEN_THROW_X(Eigen::eigen_assert_exception());
+ #endif
+ }
+
+diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
+index 0747aa6cb..b02577780 100644
+--- a/test/CMakeLists.txt
++++ b/test/CMakeLists.txt
+@@ -163,7 +163,7 @@ ei_add_test(constructor)
+ ei_add_test(linearstructure)
+ ei_add_test(integer_types)
+ ei_add_test(unalignedcount)
+-if(NOT EIGEN_TEST_NO_EXCEPTIONS)
++if(NOT EIGEN_TEST_NO_EXCEPTIONS AND NOT EIGEN_TEST_OPENMP)
+ ei_add_test(exceptions)
+ endif()
+ ei_add_test(redux)
+--
+GitLab
+
diff --git a/gnu/packages/patches/lsof-fatal-test-failures.patch b/gnu/packages/patches/lsof-fatal-test-failures.patch
new file mode 100644
index 0000000000..e874ba6ad4
--- /dev/null
+++ b/gnu/packages/patches/lsof-fatal-test-failures.patch
@@ -0,0 +1,58 @@
+From: Tobias Geerinckx-Rice <me@tobias.gr>
+Date: Mon, 23 Nov 2020 05:36:53 +0100
+Subject: [PATCH] gnu: lsof: Make test failures fatal.
+
+Submitted upstream[0].
+
+[0]: https://github.com/lsof-org/lsof/pull/144
+
+diff --git a/tests/Makefile b/tests/Makefile
+index 08574a0..2923bb8 100644
+--- a/tests/Makefile
++++ b/tests/Makefile
+@@ -27,7 +27,7 @@ all: ${CKTSTDB} ${BASTST} ${STDTST} FRC
+ exit 1 ;\
+ fi
+ @rm -f config.LT*
+- -@err=0; \
++ @err=0; \
+ echo ""; \
+ echo "Basic test:"; \
+ ./${BASTST}; \
+@@ -54,8 +54,11 @@ all: ${CKTSTDB} ${BASTST} ${STDTST} FRC
+ echo "Suggestion: try the optional tests: \"make opt\""; \
+ echo ""; \
+ fi; \
+- fi;
+- @rm -f config.LT*
++ fi; \
++ rm -f config.LT*; \
++ if [ $$err -ne 0 ]; then \
++ exit 1; \
++ fi
+
+ auto: ckDB silent FRC
+
+@@ -112,7 +115,7 @@ LTunix: LTunix.c ${CONFIG} ${LIBOBJ} ${HDR} config.ldflags
+
+ opt: ${CKTSTDB} ${OPTTST} FRC
+ @rm -f config.LT*
+- -@err=0; \
++ @err=0; \
+ echo ""; \
+ echo "Optional tests:"; \
+ for i in ${OPTTST}; do \
+@@ -126,8 +129,11 @@ opt: ${CKTSTDB} ${OPTTST} FRC
+ else \
+ echo "All optional tests succeeded."; \
+ fi; \
+- echo "";
+- @rm -f config.LT*
++ echo ""; \
++ rm -f config.LT*; \
++ if [ $$err -ne 0 ]; then \
++ exit 1; \
++ fi
+
+ optional: opt
+
diff --git a/gnu/packages/patches/ocaml-cairo2-caml_ba_array-fix.patch b/gnu/packages/patches/ocaml-cairo2-caml_ba_array-fix.patch
new file mode 100644
index 0000000000..1ebde1997f
--- /dev/null
+++ b/gnu/packages/patches/ocaml-cairo2-caml_ba_array-fix.patch
@@ -0,0 +1,68 @@
+From 3c70f2ff18650c4794556049cd4ea22a58cc719e Mon Sep 17 00:00:00 2001
+From: Christophe Troestler <Christophe.Troestler@umons.ac.be>
+Date: Sun, 27 Sep 2020 23:20:52 +0200
+Subject: [PATCH] Do not store the Caml_ba_array_val pointer during surface
+ creation
+
+Extracted from Cairo git-tree on November 22, 2020 by
+Brett Gilio <brettg@gnu.org>
+---
+ src/cairo_stubs.c | 3 ++-
+ tests/image_create.ml | 5 +++--
+ 2 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/cairo_stubs.c b/src/cairo_stubs.c
+index 641ee2c..200abf3 100644
+--- a/src/cairo_stubs.c
++++ b/src/cairo_stubs.c
+@@ -1580,6 +1580,7 @@ static cairo_status_t caml_cairo_image_bigarray_attach_proxy
+ caml_cairo_image_bigarray_finalize);
+ }
+
++#define b (Caml_ba_array_val(vb))
+ #define SURFACE_CREATE_DATA(name) \
+ CAMLexport value caml_cairo_image_surface_create_for_##name \
+ (value vb, value vformat, value vwidth, value vheight, value vstride) \
+@@ -1588,7 +1589,6 @@ static cairo_status_t caml_cairo_image_bigarray_attach_proxy
+ CAMLlocal1(vsurf); \
+ cairo_surface_t* surf; \
+ const int width = Int_val(vwidth); \
+- struct caml_ba_array *b = Caml_ba_array_val(vb); \
+ cairo_status_t status; \
+ \
+ if ((b->flags & CAML_BA_MANAGED_MASK) == CAML_BA_MAPPED_FILE) \
+@@ -1610,6 +1610,7 @@ static cairo_status_t caml_cairo_image_bigarray_attach_proxy
+
+ SURFACE_CREATE_DATA(data8)
+ SURFACE_CREATE_DATA(data32)
++#undef b
+
+ #define SURFACE_GET_DATA(type, num_dims, dims ...) \
+ CAMLexport value caml_cairo_image_surface_get_##type(value vsurf) \
+diff --git a/tests/image_create.ml b/tests/image_create.ml
+index eec98d6..b13c206 100644
+--- a/tests/image_create.ml
++++ b/tests/image_create.ml
+@@ -10,6 +10,7 @@ let create() =
+
+ let () =
+ let cr = create() in
++ printf "With Cairo handle:\n%!";
+ set_source_rgb cr 1. 1. 1.;
+ rectangle cr 0. 0. ~w:300. ~h:300.;
+ fill cr;
+@@ -21,9 +22,9 @@ let () =
+ show_text cr "Hello";
+ Gc.compact(); Gc.compact();
+
+- eprintf "Write image\n%!";
++ eprintf "- Write image\n%!";
+ PNG.write (get_target cr) "test_image.png";
+- eprintf "Finish surface\n%!";
++ eprintf "- Finish surface\n%!";
+ Surface.finish (get_target cr);
+ Gc.compact()
+
+--
+2.29.2
+
diff --git a/gnu/packages/patches/python-pydot-regression-test.patch b/gnu/packages/patches/python-pydot-regression-test.patch
new file mode 100644
index 0000000000..d2f0f5996e
--- /dev/null
+++ b/gnu/packages/patches/python-pydot-regression-test.patch
@@ -0,0 +1,79 @@
+This patch is taken from the upstream repository
+https://github.com/pydot/pydot/commit/a10ced4d132361027a545a471af4541dea8c5cf5.patch
+It should be included in the 1.4.2 release.
+
+
+From a10ced4d132361027a545a471af4541dea8c5cf5 Mon Sep 17 00:00:00 2001
+From: Peter Nowee <peter@peternowee.com>
+Date: Wed, 26 Jun 2019 15:43:38 +0800
+Subject: [PATCH] Fix multi.dot Graphviz regression test
+
+Commit d6602ad of 2018-12-01 fixed the regression test broken by commit
+2d55978 of 2016-07-01. This revealed that `test/graphs/multi.dot` was
+failing.
+
+`multi.dot` was introduced in commit 2b3f088 of 2010-11-07 together
+with many of the other tests still here today. It has not been touched
+since. It is a DOT-file containing two digraphs. The regression test
+compares the JPEG images rendered from the DOT-file by pydot with those
+rendered by Graphviz's dot directly.
+
+Commit 66734d2 of 2016-07-01 is the actual cause of the failure. It
+changed one of the render methods of the regression test,
+`_render_with_pydot`, from calculating a single hash for all the JPEG
+images to calculating separate hashes for each JPEG image and then
+concatenating those hashes in one long string. The other render method,
+`_render_with_graphviz`, still calculates a single hash over all data.
+For DOT-files that generate only one image the end result is the same,
+but because `multi.dot` has two graphs, it produces two images and this
+leads to comparing a string of two hashes with one single hash.
+
+I do not think the change in generating the hash was intentional, for
+the following reasons:
+- Commit 66734d2 states that its purpose was to adapt the test to an
+ API change in pydot. It does not mention a deliberate choice to
+ change the testing method.
+- There was no effort to change `_render_with_graphviz` to also produce
+ multiple hashes.
+- Except for easier debugging in case of a failing test with multiple
+ images (AFAICT, only `multi.dot`), I do not see much added benefit in
+ checking a concatenation of the hashes of all images vs. checking one
+ hash of all images together: In both cases the test will fail if one
+ or more images is rendered differently.
+- Given that there were many commits authored that same hour, including
+ commit 2d55978 which broke the regression tests, I suspect the author
+ did not run the tests for each individual commit, but only at the end
+ of that batch, and was therefore also not alerted of this change by
+ the test suite.
+
+Assuming that the change was not intended, this commit will now revert
+`_render_with_pydot` to the old behavior of calculating a single hash
+from all JPEG image data.
+
+Tested with Debian 9.9, Graphviz 2.38.0-17, Python 2.7.13-2 and 3.5.3-1.
+
+Fixes https://github.com/pydot/pydot/issues/204.
+---
+ test/pydot_unittest.py | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/test/pydot_unittest.py b/test/pydot_unittest.py
+index 881ee16..64aa856 100644
+--- a/test/pydot_unittest.py
++++ b/test/pydot_unittest.py
+@@ -194,11 +194,11 @@ def _render_with_graphviz(self, filename, encoding):
+
+ def _render_with_pydot(self, filename, encoding):
+ c = pydot.graph_from_dot_file(filename, encoding=encoding)
+- sha = ''
++ jpe_data = bytearray()
+ for g in c:
+- jpe_data = g.create(prog=TEST_PROGRAM, format='jpe', encoding=encoding)
+- sha += sha256(jpe_data).hexdigest()
+- return sha
++ jpe_data.extend(g.create(prog=TEST_PROGRAM, format='jpe',
++ encoding=encoding))
++ return sha256(jpe_data).hexdigest()
+
+ def test_my_regression_tests(self):
+ path = os.path.join(test_dir, TESTS_DIR_1)
diff --git a/gnu/packages/patches/ungoogled-chromium-system-nspr.patch b/gnu/packages/patches/ungoogled-chromium-system-nspr.patch
index 6fbc0a56a7..988296b143 100644
--- a/gnu/packages/patches/ungoogled-chromium-system-nspr.patch
+++ b/gnu/packages/patches/ungoogled-chromium-system-nspr.patch
@@ -17,8 +17,8 @@ https://salsa.debian.org/chromium-team/chromium/-/blob/master/debian/patches/sys
--- a/base/time/time.cc
+++ b/base/time/time.cc
@@ -14,7 +14,7 @@
- #include "base/macros.h"
- #include "base/no_destructor.h"
+ #include "base/optional.h"
+ #include "base/strings/string_util.h"
#include "base/strings/stringprintf.h"
-#include "base/third_party/nspr/prtime.h"
+#include <nspr/prtime.h>
@@ -27,7 +27,7 @@ https://salsa.debian.org/chromium-team/chromium/-/blob/master/debian/patches/sys
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
-@@ -107,6 +107,9 @@ config("base_flags") {
+@@ -102,6 +102,9 @@
"-Wglobal-constructors",
]
}
@@ -37,7 +37,7 @@ https://salsa.debian.org/chromium-team/chromium/-/blob/master/debian/patches/sys
}
config("base_implementation") {
-@@ -712,8 +715,6 @@ jumbo_component("base") {
+@@ -720,8 +723,6 @@
"third_party/cityhash_v103/src/city_v103.h",
"third_party/icu/icu_utf.cc",
"third_party/icu/icu_utf.h",
@@ -48,19 +48,19 @@ https://salsa.debian.org/chromium-team/chromium/-/blob/master/debian/patches/sys
"threading/hang_watcher.cc",
--- a/tools/gn/build/gen.py
+++ b/tools/gn/build/gen.py
-@@ -339,6 +339,9 @@ def WriteGNNinja(path, platform, host, o
+@@ -380,6 +380,9 @@
if not options.no_static_libstdcpp:
ldflags.append('-static-libstdc++')
+ # Additional system libraries that are used.
+ libs.append('-lnspr4')
+
- # This is needed by libc++.
- if not platform.is_mingw():
- libs.append('-ldl')
+ if platform.is_mingw() or platform.is_msys():
+ cflags.remove('-std=c++17')
+ cflags.extend([
--- a/third_party/blink/renderer/platform/BUILD.gn
+++ b/third_party/blink/renderer/platform/BUILD.gn
-@@ -103,6 +103,9 @@
+@@ -110,6 +110,9 @@
"//build/win:default_exe_manifest",
"//third_party/icu",
]
@@ -72,7 +72,7 @@ https://salsa.debian.org/chromium-team/chromium/-/blob/master/debian/patches/sys
# This isn't strictly necessary since we can just add the deps to "platform",
--- a/third_party/crashpad/crashpad/handler/BUILD.gn
+++ b/third_party/crashpad/crashpad/handler/BUILD.gn
-@@ -140,6 +140,9 @@
+@@ -144,6 +144,9 @@
"../third_party/mini_chromium:base",
"../tools:tool_support",
]
@@ -104,7 +104,7 @@ https://salsa.debian.org/chromium-team/chromium/-/blob/master/debian/patches/sys
+ "-lnspr4",
+ ]
if (is_ios) {
- libs = [ "UIKit.framework" ]
+ frameworks = [ "UIKit.framework" ]
}
--- a/components/schema_org/BUILD.gn
+++ b/components/schema_org/BUILD.gn
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 2ccb41fe3a..16249680f2 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3111,6 +3111,19 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
(define-public python2-cachecontrol
(package-with-python2 python-cachecontrol))
+(define-public python-cachecontrol-0.11
+ (package
+ (inherit python-cachecontrol)
+ (name "python-cachecontrol")
+ (version "0.11.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "CacheControl" version))
+ (sha256
+ (base32
+ "07jsfhlbcwgqg6ayz8nznzaqg5rmxqblbzxz1qvg5wc44pcjjy4g"))))))
+
(define-public python-betamax
(package
(name "python-betamax")
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2f270d1b3e..2d9f2f10cc 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -56,6 +56,7 @@
;;; Copyright © 2018, 2019, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018 Luther Thompson <lutheroto@gmail.com>
;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org>
+;;; Copyright © 2015, 2018 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2019, 2020 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2019 Sam <smbaines8@gmail.com>
;;; Copyright © 2019 Jack Hill <jackhill@jackhill.us>
@@ -123,6 +124,7 @@
#:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
#:use-module (gnu packages dbm)
+ #:use-module (gnu packages djvu)
#:use-module (gnu packages docker)
#:use-module (gnu packages enchant)
#:use-module (gnu packages file)
@@ -166,6 +168,7 @@
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages qt)
+ #:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages sdl)
#:use-module (gnu packages search)
@@ -16264,6 +16267,125 @@ and integration into other projects.")
(propagated-inputs
`(("python2-selectors2" ,python2-selectors2))))))
+(define-public python-bagit
+ (package
+ (name "python-bagit")
+ (version "1.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "bagit" version))
+ (sha256
+ (base32
+ "1m6y04qmig0b5hzb35lnaw3d2yfydb7alyr1579yblvgs3da6j7j"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-setuptools-scm" ,python-setuptools-scm)
+ ("python-coverage" ,python-coverage)
+ ("python-mock" ,python-mock)))
+ (home-page "https://libraryofcongress.github.io/bagit-python/")
+ (synopsis "Create and validate BagIt packages")
+ (description "Bagit is a Python library and command line utility for working
+with BagIt style packages. BagIt is a minimalist packaging format for digital
+preservation.")
+ (license license:cc0)))
+
+(define-public python-prov
+ (package
+ (name "python-prov")
+ (version "2.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "prov" version))
+ (sha256
+ (base32
+ "1vi2fj31vygfcqrkimdmk52q2ldw08g9fn4v4zlgdfgcjlhqyhxn"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-dateutil" ,python-dateutil)
+ ("python-lxml" ,python-lxml)
+ ("python-networkx" ,python-networkx)
+ ("python-rdflib" ,python-rdflib)))
+ (native-inputs
+ `(("graphviz" ,graphviz)
+ ("python-pydot" ,python-pydot)))
+ (home-page "https://github.com/trungdong/prov")
+ (synopsis
+ "W3C Provenance Data Model supporting PROV-JSON, PROV-XML and PROV-O (RDF)")
+ (description
+ "This package provides a library for W3C Provenance Data Model supporting
+PROV-O (RDF), PROV-XML, PROV-JSON import/export.")
+ (license license:expat)))
+
+(define-public python-arcp
+ (package
+ (name "python-arcp")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "arcp" version))
+ (sha256
+ (base32
+ "1p8mfyjssa6pbn5dp6pyzv9yy6kwm2rz5jn2kjbq5vy9f9wsq5sw"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page "http://arcp.readthedocs.io/")
+ (synopsis
+ "Archive and Package URI parser and generator")
+ (description
+ "@acronym{arcp, Archive and Package} provides functions for creating
+@code{arcp_} URIs, which can be used for identifying or parsing hypermedia files
+packaged in an archive or package, like a ZIP file. arcp URIs can be used to
+consume or reference hypermedia resources bundled inside a file archive or an
+application package, as well as to resolve URIs for archive resources within a
+programmatic framework. This URI scheme provides mechanisms to generate a
+unique base URI to represent the root of the archive, so that relative URI
+references in a bundled resource can be resolved within the archive without
+having to extract the archive content on the local file system. An arcp URI can
+be used for purposes of isolation (e.g. when consuming multiple archives),
+security constraints (avoiding \"climb out\" from the archive), or for
+externally identiyfing sub-resources referenced by hypermedia formats.")
+ (license license:asl2.0)))
+
+(define-public python-shellescape
+ (package
+ (name "python-shellescape")
+ (version "3.8.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/chrissimpkins/shellescape")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0wzccxk139qx1lb2g70f5b2yh9zq15nr2mgvqdbfabg5zm0vf1qw"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ (invoke "python" "tests/test_shellescape.py"))
+ #t)))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page "https://github.com/chrissimpkins/shellescape")
+ (synopsis
+ "Shell escape a string to safely use it as a token in a shell command")
+ (description
+ "The shellescape Python module defines the @code{shellescape.quote()}
+function that returns a shell-escaped version of a Python string. This is a
+backport of the @code{shlex.quote()} function from Python 3.8 that makes it
+accessible to users of Python 3 versions < 3.3 and all Python 2.x versions.")
+ (license license:expat)))
+
(define-public python-validators
(package
(name "python-validators")
@@ -16352,14 +16474,14 @@ address is valid and really exists.")
(define-public python-marshmallow
(package
(name "python-marshmallow")
- (version "3.0.0b14")
+ (version "3.9.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "marshmallow" version))
(sha256
(base32
- "1digk3f5cfk7wmlka65mc7bzsd96pbsgcsvp6pimd5b4ff9zb5p3"))))
+ "0kizhh3mnhpa08wfnsv1gagy22bpxzxszgbiylkhpz1d8qvwrykk"))))
(build-system python-build-system)
(propagated-inputs
`(("python-dateutil" ,python-dateutil)
@@ -22872,3 +22994,38 @@ applications with variable CPU loads).")
(define-public python2-parallel
(package-with-python2 python-parallel))
+
+(define-public python-djvulibre
+ (package
+ (name "python-djvulibre")
+ (version "0.8.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "python-djvulibre" version))
+ (sha256
+ (base32 "1c0lvpg7j2525cv52s3q5sg7hfnakkb8rmghg0jc02gshsxmrj4f"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("ghostscript" ,ghostscript)
+ ("pkg-config" ,pkg-config)
+ ("python-nose" ,python-nose)))
+ (inputs
+ `(("djvulibre" ,djvulibre)
+ ("python-cython" ,python-cython)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ ;; Unit tests try to load the 'dllpath.py' and fail, because it
+ ;; doesn't make sense on GNU/Linux.
+ (delete-file "djvu/dllpath.py")
+ #t)))))
+ (synopsis "Python bindings for DjVuLibre")
+ (description "This is a set of Python bindings for the DjVuLibre library.")
+ (home-page "https://jwilk.net/software/python-djvulibre")
+ (license license:gpl2)))
+
+(define-public python2-djvulibre
+ (package-with-python2 python-djvulibre))
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 004f71ae8d..4b66429335 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -73,6 +73,7 @@
("rust-zoneinfo-compiled" ,rust-zoneinfo-compiled-0.4))
#:cargo-development-inputs
(("rust-datetime" ,rust-datetime-0.4))
+ #:phases
(modify-phases %standard-phases
;; Ignoring failing tests.
;; Reported in https://github.com/ogham/exa/issues/318
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index 11613cb703..34da04d0d8 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -1126,14 +1126,13 @@ such as ISO-2022-JP, Shift_JIS, EUC-JP, UTF-8, UTF-16 or UTF-32.")
(define-public python-pandocfilters
(package
(name "python-pandocfilters")
- (version "1.4.2")
+ (version "1.4.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pandocfilters" version))
(sha256
- (base32
- "1a8d9b7s48gmq9zj0pmbyv2sivn5i7m6mybgpkk4jm5vd7hp1pdk"))))
+ (base32 "1sq675dg4barb5949xxz4d5gk2ly524hi1p1xgwb3d1l0nsznqxw"))))
(build-system python-build-system)
(home-page "https://github.com/jgm/pandocfilters")
(synopsis "Python module for writing Pandoc filters")
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 09ee84e3ad..ed09f3dcd2 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -86,6 +87,7 @@
#:use-module (gnu packages polkit)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
@@ -2047,3 +2049,48 @@ administrators and developers in managing the database.")
libosinfo library. It provides information about guest operating systems for
use with virtualization provisioning tools")
(license license:lgpl2.0+)))
+
+(define-public python-transient
+ (package
+ (name "python-transient")
+ (version "0.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "transient" version))
+ (sha256
+ (base32
+ "1740l50483fcq9748g69nkk28s2x69n4hh1l7n8f4s7p6lq1kqjy"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f ; Requires behave
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'fix-dependencies
+ (lambda _
+ (substitute* "setup.py"
+ (("==")
+ ">="))
+ #t)))))
+ (propagated-inputs
+ `(("python-beautifultable" ,python-beautifultable)
+ ("python-click" ,python-click)
+ ("python-importlib-resources"
+ ,python-importlib-resources)
+ ("python-lark-parser" ,python-lark-parser)
+ ("python-marshmallow" ,python-marshmallow)
+ ("python-progressbar2" ,python-progressbar2)
+ ("python-requests" ,python-requests)
+ ("python-toml" ,python-toml)))
+ (native-inputs
+ `(("python-black" ,python-black)
+ ("python-mypy" ,python-mypy)
+ ("python-pyhamcrest" ,python-pyhamcrest)
+ ("python-twine" ,python-twine)))
+ (home-page
+ "https://github.com/ALSchwalm/transient")
+ (synopsis
+ "QEMU Wrapper written in Python")
+ (description
+ "@code{transient} is a wrapper for QEMU allowing the creation of virtual
+machines with shared folder, ssh, and disk creation support.")
+ (license license:expat)))
diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index d72cbfeda3..89a3b4c18b 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
;;;
@@ -224,14 +224,14 @@ acceleration in mind, leveraging common 3D graphics APIs for best performance.")
(define-public webkitgtk
(package
(name "webkitgtk")
- (version "2.30.2")
+ (version "2.30.3")
(source (origin
(method url-fetch)
(uri (string-append "https://www.webkitgtk.org/releases/"
"webkitgtk-" version ".tar.xz"))
(sha256
(base32
- "0ak8slddg7gpk6m096xzkiqw9bfsrrizvqr815bw44665fyf0ry4"))
+ "0zsy3say94d9bhaan0l6mfr59z03a5x4kngyy8b2i20n77q19skd"))
(patches (search-patches "webkitgtk-share-store.patch"
"webkitgtk-bind-all-fonts.patch"))))
(build-system cmake-build-system)