aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2017-09-15 13:11:23 -0400
committerMark H Weaver <mhw@netris.org>2017-09-15 13:12:38 -0400
commita54bf725fcb35052120d1111c6e82c951d4d7873 (patch)
tree7fa0066bbf0e35594ecc25d2e24b749f4e0a5f1f /gnu/packages
parent8f21aa22bf4b731ed0e5631c371846028e5cec0d (diff)
downloadguix-a54bf725fcb35052120d1111c6e82c951d4d7873.tar.gz
guix-a54bf725fcb35052120d1111c6e82c951d4d7873.zip
gnu: webkitgtk: Update to 2.18.0.
* gnu/packages/webkit.scm (webkitgtk): Update to 2.18.0. [arguments]: Add -DUSE_GSTREAMER_GL=OFF to configure-flags. [inputs]: Add libtasn1.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/webkit.scm17
1 files changed, 14 insertions, 3 deletions
diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index 5ab27b49f5..7b4b306e8f 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -46,6 +46,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages ruby)
+ #:use-module (gnu packages tls)
#:use-module (gnu packages video)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg))
@@ -53,14 +54,14 @@
(define-public webkitgtk
(package
(name "webkitgtk")
- (version "2.16.6")
+ (version "2.18.0")
(source (origin
(method url-fetch)
(uri (string-append "https://www.webkitgtk.org/releases/"
name "-" version ".tar.xz"))
(sha256
(base32
- "08abxbhi2n1pfby9f2c20z8mpmbvbs2z7vf0p5ckq4jkz46na8zw"))))
+ "1383wlv98l8fwmhzy0fad82a44h5svm89c1kpa03wsp37mmf90xm"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; no tests
@@ -69,7 +70,16 @@
"-DPORT=GTK"
(string-append ; uses lib64 by default
"-DLIB_INSTALL_DIR="
- (assoc-ref %outputs "out") "/lib"))
+ (assoc-ref %outputs "out") "/lib")
+
+ ;; XXX Adding GStreamer GL support would apparently
+ ;; require adding gst-plugins-bad to the inputs,
+ ;; which might entail a security risk as a result of
+ ;; the plugins of dubious code quality that are
+ ;; included. More investigation is needed. For
+ ;; now, we explicitly disable it to prevent an error
+ ;; at configuration time.
+ "-DUSE_GSTREAMER_GL=OFF")
#:phases
(modify-phases %standard-phases
(add-after
@@ -112,6 +122,7 @@
("libnotify" ,libnotify)
("libpng" ,libpng)
("libsecret" ,libsecret)
+ ("libtasn1" ,libtasn1)
("libwebp" ,libwebp)
("libxcomposite" ,libxcomposite)
("libxml2" ,libxml2)
='mode'>-rw-r--r--gnu/packages/haskell-apps.scm4
-rw-r--r--gnu/packages/ibus.scm43
-rw-r--r--gnu/packages/libreoffice.scm4
-rw-r--r--gnu/packages/libusb.scm12
-rw-r--r--gnu/packages/lisp-xyz.scm507
-rw-r--r--gnu/packages/lxqt.scm10
-rw-r--r--gnu/packages/mail.scm7
-rw-r--r--gnu/packages/music.scm20
-rw-r--r--gnu/packages/patches/qemu-CVE-2020-1711.patch69
-rw-r--r--gnu/packages/patches/sbcl-graph-asdf-definitions.patch12
-rw-r--r--gnu/packages/pulseaudio.scm37
-rw-r--r--gnu/packages/python-web.scm79
-rw-r--r--gnu/packages/python-xyz.scm17
-rw-r--r--gnu/packages/samba.scm26
-rw-r--r--gnu/packages/sdr.scm3
-rw-r--r--gnu/packages/stb.scm11
-rw-r--r--gnu/packages/tor.scm6
-rw-r--r--gnu/packages/unicode.scm149
-rw-r--r--gnu/packages/video.scm5
-rw-r--r--gnu/packages/virtualization.scm3
-rw-r--r--gnu/packages/web-browsers.scm4
-rw-r--r--gnu/packages/web.scm83
-rw-r--r--guix/import/gem.scm147
-rw-r--r--guix/import/pypi.scm34
-rw-r--r--guix/licenses.scm6
-rw-r--r--tests/gem.scm4
-rw-r--r--tests/graph.scm4
39 files changed, 1429 insertions, 512 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index bd9d896c78..b0bb61c9c1 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -3292,8 +3292,10 @@ $ guix build emacs --dry-run
@end example
@noindent
-This indicates that substitutes from @code{@value{SUBSTITUTE-SERVER}} are usable and
-will be downloaded, when possible, for future builds.
+The text changed from ``The following derivations would be built'' to
+``112.3 MB would be downloaded''. This indicates that substitutes from
+@code{@value{SUBSTITUTE-SERVER}} are usable and will be downloaded, when
+possible, for future builds.
@cindex substitutes, how to disable
The substitute mechanism can be disabled globally by running
@@ -4158,7 +4160,7 @@ say, on another machine, by providing a channel specification in
(channel
(name 'my-personal-packages)
(url "https://example.org/personal-packages.git")
- (branch "dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb")))
+ (commit "dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb")))
@end lisp
The @command{guix describe --format=channels} command can even generate this
@@ -5057,12 +5059,21 @@ Alternatively, you can produce a pack in the Docker image format using
the following command:
@example
-guix pack -f docker guile emacs geiser
+guix pack -f docker -S /bin=bin guile guile-readline
@end example
@noindent
The result is a tarball that can be passed to the @command{docker load}
-command. See the
+command, followed by @code{docker run}:
+
+@example
+docker load < @var{file}
+docker run -ti guile-guile-readline /bin/guile
+@end example
+
+@noindent
+where @var{file} is the image returned by @var{guix pack}, and
+@code{guile-guile-readline} is its ``image tag''. See the
@uref{https://docs.docker.com/engine/reference/commandline/load/, Docker
documentation} for more information.
diff --git a/gnu/local.mk b/gnu/local.mk
index 125118bc55..eba3e92171 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -502,6 +502,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/tor.scm \
%D%/packages/tv.scm \
%D%/packages/uml.scm \
+ %D%/packages/unicode.scm \
%D%/packages/unrtf.scm \
%D%/packages/upnp.scm \
%D%/packages/usb-modeswitch.scm \
@@ -1349,6 +1350,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-unittest2-remove-argparse.patch \
%D%/packages/patches/python-waitress-fix-tests.patch \
%D%/packages/patches/qemu-glibc-2.27.patch \
+ %D%/packages/patches/qemu-CVE-2020-1711.patch \
%D%/packages/patches/qemu-CVE-2020-7039.patch \
%D%/packages/patches/qemu-CVE-2020-7211.patch \
%D%/packages/patches/qemu-fix-documentation-build-failure.patch \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a5f224f99e..bc39122c1d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -444,8 +444,30 @@ ArrayVec and ArrayString.")
"This package provides a simple interface for querying atty.")
(license license:expat)))
+(define-public rust-autocfg-1.0
+ (package
+ (name "rust-autocfg")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "autocfg" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "17cv6pwb4q08s0ynpr4n8hv5299hcmhdgvdchzixfpw8y5qcgapq"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/cuviper/autocfg")
+ (synopsis
+ "Automatic cfg for Rust compiler features")
+ (description
+ "Automatic cfg for Rust compiler features.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-autocfg-0.1
(package
+ (inherit rust-autocfg-1.0)
(name "rust-autocfg")
(version "0.1.7")
(source
@@ -456,16 +478,7 @@ ArrayVec and ArrayString.")
(sha256
(base32
"1chwgimpx5z7xbag7krr9d8asxfqbh683qhgl9kn3hxk2l0djj8x"))))
- (build-system cargo-build-system)
- (arguments '(#:skip-build? #t))
- (home-page "https://github.com/cuviper/autocfg")
- (synopsis "Automatic cfg for Rust compiler features")
- (description "Rust library for build scripts to automatically configure
-code based on compiler support. Code snippets are dynamically tested to see
-if the @code{rustc} will accept them, rather than hard-coding specific version
-support.")
- (license (list license:asl2.0
- license:expat))))
+ (arguments '(#:skip-build? #t))))
(define-public rust-backtrace-0.3
(package
@@ -5167,6 +5180,29 @@ immutable interval tree.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-iso8601-0.1
+ (package
+ (name "rust-iso8601")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "iso8601" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0xy48qyfmirslaj4dy6n4g8b564jap3cjiql35fmj5vgii7ldp0i"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clippy" ,rust-clippy-0.0)
+ ("rust-nom" ,rust-nom-1.2))))
+ (home-page "https://github.com/badboy/iso8601")
+ (synopsis "Parsing ISO8601 dates using nom")
+ (description "Parsing ISO8601 dates using nom.")
+ (license license:expat)))
+
(define-public rust-itertools-0.8
(package
(name "rust-itertools")
@@ -5700,6 +5736,45 @@ allows loading dynamic libraries (also known as shared libraries) as well as use
functions and static variables these libraries contain.")
(license license:isc)))
+(define-public rust-libm-0.2
+ (package
+ (name "rust-libm")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libm" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0akh56sh51adhagmk9l84dyrlz60gv8ri05xhr13i1b18czkpmy7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-rand" ,rust-rand-0.6))
+ #:cargo-development-inputs
+ (("rust-no-panic" ,rust-no-panic-0.1))))
+ (home-page "https://github.com/rust-lang/libm")
+ (synopsis "Libm in pure Rust")
+ (description "This package provides an implementation of libm in pure Rust.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-libm-0.1
+ (package
+ (inherit rust-libm-0.2)
+ (name "rust-libm")
+ (version "0.1.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libm" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "16pc0gx4gkg0q2s1ssq8268brn14j8344623vwhadmivc4lsmivz"))))))
+
(define-public rust-libssh2-sys-0.2
(package
(name "rust-libssh2-sys")
@@ -5745,6 +5820,28 @@ functions and static variables these libraries contain.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-locale-0.2
+ (package
+ (name "rust-locale")
+ (version "0.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "locale" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1z87wc7z6889x1pqlrwjw8f1crshzi15q5m102lqs8y0m69f9nsz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
+ (home-page "https://github.com/rust-locale/rust-locale")
+ (synopsis "Library for basic localisation")
+ (description
+ "This package provides a library for basic localisation.")
+ (license license:expat)))
+
(define-public rust-lock-api-0.3
(package
(name "rust-lock-api")
@@ -6681,6 +6778,34 @@ release (fork of debug_unreachable)")
"Rust friendly bindings to *nix APIs.")
(license license:expat)))
+(define-public rust-no-panic-0.1
+ (package
+ (name "rust-no-panic")
+ (version "0.1.12")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "no-panic" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0xan5v9ac1aklinc8aw16raq36pb4idjrl502np8gy32gfs6s751"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1.0)
+ ("rust-quote" ,rust-quote-1.0)
+ ("rust-syn" ,rust-syn-1.0))
+ #:cargo-development-inputs
+ (("rust-tempfile" ,rust-tempfile-3.1))))
+ (home-page "https://github.com/dtolnay/no-panic")
+ (synopsis "Prove a function can't ever panic")
+ (description
+ "This package provides a rust attribute macro to require that the compiler
+prove a function can't ever panic.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-nodrop-0.1
(package
(name "rust-nodrop")
@@ -6760,6 +6885,24 @@ implementation (which is unstable / requires nightly).")
combinators library.")
(license license:expat)))
+(define-public rust-nom-1.2
+ (package
+ (inherit rust-nom-4.2)
+ (name "rust-nom")
+ (version "1.2.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "nom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1kjh42w67z1hh1dw3jrilgqrf54jk2xcvhw4rcdm4wclzmbc5f55"))))
+ (arguments
+ ;; This is an ancient version and all inputs are optional.
+ `(#:skip-build? #t))))
+
(define-public rust-num-complex-0.2
(package
(name "rust-num-complex")
@@ -6862,7 +7005,7 @@ combinators library.")
(define-public rust-num-traits-0.2
(package
(name "rust-num-traits")
- (version "0.2.8")
+ (version "0.2.11")
(source
(origin
(method url-fetch)
@@ -6871,13 +7014,15 @@ combinators library.")
(string-append name "-" version ".crate"))
(sha256
(base32
- "0clvrm34rrqc8p6gq5ps5fcgws3kgq5knh7nlqxf2ayarwks9abb"))))
+ "15khrlm1bra50nd48ijl1vln13m9xg4fxzghf28jp16ic5zf8ay6"))))
(build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-autocfg" ,rust-autocfg-1.0)
+ ("rust-libm" ,rust-libm-0.2))))
(home-page "https://github.com/rust-num/num-traits")
(synopsis "Numeric traits for generic mathematics")
(description "Numeric traits for generic mathematics.")
- (properties '((hidden? . #t)))
- ;; Dual licensed.
(license (list license:asl2.0
license:expat))))
@@ -6894,7 +7039,9 @@ combinators library.")
(sha256
(base32
"0c9whknf2dm74a3cqirafy6gj83a76gl56g4v3g19k6lkwz13rcj"))))
- (build-system cargo-build-system)))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-num-traits" , rust-num-traits-0.2))))))
(define-public rust-numtoa-0.1
(package
@@ -7253,6 +7400,29 @@ normally prevent moving a type that has been borrowed from.")
(description "Portable Packed SIMD vectors.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-pad-0.1
+ (package
+ (name "rust-pad")
+ (version "0.1.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pad" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1qy0r26r52gp034fv252mmg0s599a55h9nr4xswy04hvky49pbfj"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-unicode-width" ,rust-unicode-width-0.1))))
+ (home-page "https://github.com/ogham/rust-pad")
+ (synopsis "Library for padding strings at runtime")
+ (description
+ "This package provides a library for padding strings at runtime.")
+ (license license:expat)))
+
(define-public rust-parking-lot-0.9
(package
(name "rust-parking-lot")
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index b0297e9075..3ae1ec2192 100644
--- a/gnu/packages/education.scm
+++ b/gnu/packages/education.scm
@@ -5,6 +5,7 @@
;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -24,6 +25,7 @@
(define-module (gnu packages education)
#:use-module (ice-9 regex)
#:use-module (gnu packages)
+ #:use-module (gnu packages audio)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages compression)
@@ -40,14 +42,18 @@
#:use-module (gnu packages javascript)
#:use-module (gnu packages kde)
#:use-module (gnu packages kde-frameworks) ; extra-cmake-modules
+ #:use-module (gnu packages mp3)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-web)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages sdl)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
+ #:use-module (gnu packages video)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xml)
#:use-module ((guix licenses) #:prefix license:)
@@ -126,7 +132,7 @@ of categories with some of the activities available in that category.
(define-public gcompris-qt
(package
(name "gcompris-qt")
- (version "0.96")
+ (version "0.97")
(source
(origin
(method url-fetch)
@@ -134,11 +140,16 @@ of categories with some of the activities available in that category.
"https://gcompris.net/download/qt/src/gcompris-qt-"
version ".tar.xz"))
(sha256
- (base32 "06483il59l46ny2w771sg45dgzjwv1ph7vidzzbj0wb8wbk2rg52"))))
+ (base32 "0hl3a1jjnrpnbqkpx3rl3fl86yfv503lh48djb888hplvr4nf747"))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-test
+ (lambda _
+ (substitute* "tests/core/CMakeLists.txt"
+ (("DownloadManagerTest\\.cpp") "#"))
+ #t))
(add-before 'check 'start-xorg-server
(lambda* (#:key inputs #:allow-other-keys)
;; The test suite requires a running X server.
@@ -167,6 +178,7 @@ of categories with some of the activities available in that category.
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
("gettext" ,gettext-minimal)
+ ("kdoctools" ,kdoctools)
("perl" ,perl)
("qttools" ,qttools)
("xorg-server" ,xorg-server-for-tests)))
@@ -715,6 +727,103 @@ languages and keyboard layouts, and typing statistics are used to dynamically
adjust the level of difficulty.")
(license license:gpl2)))
+(define-public anki
+ (package
+ (name "anki")
+ ;; Later versions have dependencies on npm packages not yet in Guix.
+ (version "2.1.16")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://apps.ankiweb.net/downloads/archive/anki-"
+ version "-source.tgz"))
+ (sha256
+ (base32 "1gfr51rnllkyzli73p4r51h5ypzfa3m7lic3m3rzpywmqwrxs07k"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags (list (string-append "PREFIX=" %output))
+ #:tests? #f ;no check target
+ #:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (ice-9 match))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ;no configure script
+ (add-after 'install 'wrap
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref outputs "out") "/bin"))
+ ;; List of paths to the site-packages directories of Python
+ ;; library inputs.
+ (site-packages
+ (map (lambda (pyinput)
+ (string-append
+ (cdr pyinput)
+ "/lib/python"
+ ;; Calculate the python version to avoid breaking
+ ;; with future 3.X releases.
+ ,(version-major+minor
+ (package-version python-wrapper))
+ "/site-packages"))
+ (filter (match-lambda
+ ((label . _)
+ (string-prefix? "python-" label)))
+ inputs)))
+ (qtwebengineprocess
+ (string-append (assoc-ref inputs "qtwebengine")
+ "/lib/qt5/libexec/QtWebEngineProcess")))
+ ;; The program fails to find the QtWebEngineProcess program, so
+ ;; we set QTWEBENGINEPROCESS_PATH to help it. PYTHONPATH is
+ ;; wrapped to avoid declaring Python libraries as propagated
+ ;; inputs.
+ (for-each (lambda (program)
+ (wrap-program program
+ `("QTWEBENGINEPROCESS_PATH" =
+ (,qtwebengineprocess))
+ `("PYTHONPATH" = ,site-packages)))
+ (find-files bin ".")))
+ #t)))))
+ (native-inputs
+ `(("xdg-utils" ,xdg-utils)))
+ (inputs
+ `(("lame" ,lame)
+ ("mpv" ,mpv)
+ ("python" ,python-wrapper)
+ ("python-beautifulsoup4" ,python-beautifulsoup4)
+ ("python-decorator" ,python-decorator)
+ ("python-distro" ,python-distro)
+ ("python-jsonschema" ,python-jsonschema)
+ ("python-markdown" ,python-markdown)
+ ("python-pyaudio" ,python-pyaudio)
+ ;; `python-pyqtwebengine' must precede `python-pyqt' in PYTHONPATH.
+ ("python-pyqtwebengine" ,python-pyqtwebengine)
+ ("python-pyqt" ,python-pyqt)
+ ("python-requests" ,python-requests)
+ ("python-send2trash" ,python-send2trash)
+ ("python-sip" ,python-sip)
+ ;; `qtwebengine' is included in `pyqtwebengine', included here for easy
+ ;; wrapping.
+ ("qtwebengine" ,qtwebengine)))
+ (home-page "https://apps.ankiweb.net/")
+ (synopsis "Powerful, intelligent flash cards")
+ (description "Anki is a program which makes remembering things
+easy. Because it's a lot more efficient than traditional study
+methods, you can either greatly decrease your time spent studying, or
+greatly increase the amount you learn.
+
+Anyone who needs to remember things in their daily life can benefit
+from Anki. Since it is content-agnostic and supports images, audio,
+videos and scientific markup (via LaTeX), the possibilities are
+endless. For example:
+@itemize
+@item Learning a language
+@item Studying for medical and law exams
+@item Memorizing people's names and faces
+@item Brushing up on geography
+@item Mastering long poems
+@item Even practicing guitar chords!
+@end itemize")
+ (license license:agpl3+)))
+
(define-public t4k-common
(package
(name "t4k-common")
diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm
index 75caa54296..5fa66210db 100644
--- a/gnu/packages/elf.scm
+++ b/gnu/packages/elf.scm
@@ -6,6 +6,7 @@
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2020 Mark Wielaard <mark@klomp.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -54,9 +55,10 @@
(build-system gnu-build-system)
;; Separate programs because that's usually not what elfutils users want,
- ;; and because they duplicate what Binutils provides.
+ ;; and because they duplicate what Binutils provides (but are named
+ ;; differently, using the eu- prefix and can be installed in parallel).
(outputs '("out" ; libelf.so, elfutils/*.h, etc.
- "bin")) ; ld, nm, objdump, etc.
+ "bin")) ; eu-nm, eu-objdump, etc.
(arguments
;; Programs don't have libelf.so in their RUNPATH and libraries don't
@@ -84,11 +86,21 @@
(native-inputs `(("m4" ,m4)))
(inputs `(("zlib" ,zlib)))
(home-page "https://sourceware.org/elfutils/")
- (synopsis "Linker and ELF manipulation tools")
+ (synopsis "Collection of utilities and libraries to handle ELF files and
+DWARF data")
(description
- "This package provides command-line tools to manipulate binaries in the
-Executable and Linkable Format (@dfn{ELF}). This includes @command{ld},
-@command{ar}, @command{objdump}, @command{addr2line}, and more.")
+ "Elfutils is a collection of utilities and libraries to read, create and
+modify Executable and Linkable Format (@dfn{ELF}) binary files, find and
+handle Debugging With Arbitrary Record Formats (@dfn{DWARF}) debug data,
+symbols, thread state and stacktraces for processes and core files on
+GNU/Linux. Elfutils includes @file{libelf} for manipulating ELF files,
+@file{libdw} for inspecting DWARF data and process state and utilities like
+@command{eu-stack} (to show backtraces), @command{eu-nm} (for listing symbols
+from object files), @command{eu-size} (for listing the section sizes of an
+object or archive file), @command{eu-strip} (for discarding symbols),
+@command{eu-readelf} (to see the raw ELF file structures),
+@command{eu-elflint} (to check for well-formed ELF files),
+@command{eu-elfcompress} (to compress or decompress ELF sections), and more.")
;; Libraries are dual-licensed LGPLv3.0+ | GPLv2, and programs are GPLv3+.
(license lgpl3+)))
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 9936127a18..2efb4c220c 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -6942,29 +6942,26 @@ Dust.js, React/JSX, Angularjs, ejs, etc.")
(license license:gpl3+)))
(define-public emacs-wgrep
- ;; Tag is missing, so we use the commit directly.
- ;; https://github.com/mhayashi1120/Emacs-wgrep/issues/64
- (let ((commit "379afd89ebd76f63842c8589127d66096a8bb595"))
- (package
- (name "emacs-wgrep")
- (version "2.3.1")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/mhayashi1120/Emacs-wgrep")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0v1qx8z1xj9qzirlycbihnkpwcklyi3a0j8lil78pmdpixdbgh47"))))
- (build-system emacs-build-system)
- (home-page "https://github.com/mhayashi1120/Emacs-wgrep")
- (synopsis "Edit a grep buffer and apply those changes to the files")
- (description
- "Emacs wgrep allows you to edit a grep buffer and apply those changes
+ (package
+ (name "emacs-wgrep")
+ (version "2.3.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mhayashi1120/Emacs-wgrep")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "00cwqzb94jlq4mwgv8z7r3mn0a6mhq95z6j189kacq9g4473zh8d"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/mhayashi1120/Emacs-wgrep")
+ (synopsis "Edit a grep buffer and apply those changes to the files")
+ (description
+ "Emacs wgrep allows you to edit a grep buffer and apply those changes
to the file buffer. Several backends are supported beside the classic grep:
ack, ag, helm and pt.")
- (license license:gpl3+))))
+ (license license:gpl3+)))
(define-public emacs-helm
(package
@@ -8577,35 +8574,35 @@ been adapted to work with mu4e.")
(define-public emacs-yasnippet
(package
(name "emacs-yasnippet")
- (version "0.13.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/joaotavora/yasnippet.git")
- (commit version)))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0fkkplycrw8f8r30hjjxl1wm7p2irq2ipzzc1g7cc52abaal796p"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; YASnippet expects a "snippets" subdirectory in the same
- ;; directory as yasnippet.el, but we don't install it
- ;; because it's a git submodule pointing to an external
- ;; repository. Adjust `yas-snippet-dirs' to prevent
- ;; warnings about a missing directory.
- (substitute* "yasnippet.el"
- (("^ +'yas-installed-snippets-dir\\)\\)\n")
- "))\n"))
- #t))))
+ (version "0.14.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/joaotavora/yasnippet.git")
+ (commit version)))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0via9dzw8m5lzymg1h78xkwjssh39zr3g6ccyamlf1rjzjsyxknv"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; YASnippet expects a "snippets" subdirectory in the same
+ ;; directory as yasnippet.el, but we don't install it because it's
+ ;; a git submodule pointing to an external repository. Adjust
+ ;; `yas-snippet-dirs' to prevent warnings about a missing
+ ;; directory.
+ (substitute* "yasnippet.el"
+ (("^ +'yas-installed-snippets-dir\\)\\)\n")
+ "))\n"))
+ #t))))
(build-system emacs-build-system)
(arguments
`(#:tests? #t
#:test-command '("emacs" "--batch"
"-l" "yasnippet-tests.el"
"-f" "ert-run-tests-batch-and-exit")
- ;; FIXME: one failing test
+ ;; FIXME: one failing test.
#:phases
(modify-phases %standard-phases
(add-before 'check 'make-tests-writable
@@ -8615,11 +8612,10 @@ been adapted to work with mu4e.")
(add-before 'check 'delete-rebinding-test
(lambda _
(emacs-batch-edit-file "yasnippet-tests.el"
- `(progn (progn (goto-char (point-min))
- (re-search-forward
- "ert-deftest test-rebindings")
- (beginning-of-line)
- (kill-sexp))
+ `(progn (goto-char (point-min))
+ (re-search-forward "ert-deftest test-rebindings")
+ (beginning-of-line)
+ (kill-sexp)
(basic-save-buffer)))
#t)))))
(home-page "https://github.com/joaotavora/yasnippet")
@@ -8630,50 +8626,40 @@ abbreviation and automatically expand it into function templates.")
(license license:gpl3+)))
(define-public emacs-yasnippet-snippets
- (let ((commit "885050d34737e2fb36a3e7759d60c09347bd4ce0")
- (revision "1"))
- (package
- (name "emacs-yasnippet-snippets")
- (version (string-append "1-" revision "." (string-take commit 8)))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/AndreaCrotti/yasnippet-snippets")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1m935zgglw0iakzrixld5rcjz3wnj84f8wy2mvc3pggjri9l0qr9"))))
- (build-system trivial-build-system)
- (arguments
- `(#:modules ((ice-9 ftw)
- (ice-9 regex)
- (guix build utils))
- #:builder
- (begin
- (use-modules (ice-9 ftw)
- (ice-9 regex)
- (guix build utils))
- (with-directory-excursion (assoc-ref %build-inputs "source")
- (for-each (lambda (dir)
- (copy-recursively
- dir
- (string-append %output
- "/share/emacs/yasnippet-snippets/"
- dir)))
- (scandir "." (lambda (fname)
- (and (string-match "-mode$" fname)
- (directory-exists? fname))))))
- #t)))
- (home-page "https://github.com/AndreaCrotti/yasnippet-snippets")
- (synopsis "Collection of YASnippet snippets for many languages")
- (description
- "Provides Andrea Crotti's collection of YASnippet snippets. After installation,
+ (package
+ (name "emacs-yasnippet-snippets")
+ (version "0.20")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AndreaCrotti/yasnippet-snippets")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "095w7cdmfwmmr6426mbq15n0a5izgbmv9408m9yh1pqz5x3v3vsx"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let* ((source (assoc-ref %build-inputs "source"))
+ (out (assoc-ref %outputs "out"))
+ (snippet-dir
+ (string-append out "/share/emacs/yasnippet-snippets/")))
+ (with-directory-excursion source
+ (mkdir-p snippet-dir)
+ (copy-recursively "snippets" snippet-dir)))
+ #t)))
+ (home-page "https://github.com/AndreaCrotti/yasnippet-snippets")
+ (synopsis "Collection of YASnippet snippets for many languages")
+ (description
+ "Provides Andrea Crotti's collection of YASnippet snippets. After installation,
the snippets will be in \"~/.guix-profile/share/emacs/yasnippet-snippets/\".
To make YASnippet aware of these snippets, add the above directory to
@code{yas-snippet-dirs}.")
- (license license:expat))))
+ (license license:gpl3+)))
(define-public emacs-helm-c-yasnippet
(let ((commit "65ca732b510bfc31636708aebcfe4d2d845b59b0")
diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm
index b2ab13d951..58d817853b 100644
--- a/gnu/packages/ftp.scm
+++ b/gnu/packages/ftp.scm
@@ -46,7 +46,7 @@
(define-public lftp
(package
(name "lftp")
- (version "4.8.4")
+ (version "4.9.1")
(source (origin
(method url-fetch)
;; See https://lftp.tech/get.html for mirrors.
@@ -58,7 +58,7 @@
"ftp/lftp/lftp-" version ".tar.xz")))
(sha256
(base32
- "0qks22357xv9y6ripmf5j2n5svh8j5z0yniphfk89sjwkqg2gg2f"))))
+ "0jq2g8h1bx06ya9fsja748vwb2qrca4wsfrgi3fmaa8hznpgqsar"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c05503cabb..b502cd0ec4 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm