From 78b3748c1c5446f19e7a74ec424d61a7826fc843 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 23 Mar 2019 19:18:31 +0100 Subject: [PATCH 001/411] guix: dune-build-system: Add a package parameter. * guix/build-system/dune.scm: Add a package parameter. * guix/build/dune.scm (build, test, install): Use it. * doc/guix.texi: Document it. --- doc/guix.texi | 5 +++++ guix/build-system/dune.scm | 2 ++ guix/build/dune-build-system.scm | 17 ++++++++++------- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index d10fbce3a4..6e8ce3c084 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5816,6 +5816,11 @@ list of flags passed to the @code{dune} command during the build. The @code{#:jbuild?} parameter can be passed to use the @code{jbuild} command instead of the more recent @code{dune} command while building a package. Its default value is @code{#f}. + +The @code{#:package} parameter can be passed to specify a package name, which +is useful when a package contains multiple packages and you want to build +only one of them. This is equivalent to passing the @code{-p} argument to +@code{dune}. @end defvr @defvr {Scheme Variable} go-build-system diff --git a/guix/build-system/dune.scm b/guix/build-system/dune.scm index 8bd41c89f0..6a2f3d16de 100644 --- a/guix/build-system/dune.scm +++ b/guix/build-system/dune.scm @@ -87,6 +87,7 @@ (define* (dune-build store name inputs (build-flags ''()) (out-of-source? #t) (jbuild? #f) + (package #f) (tests? #t) (test-flags ''()) (test-target "test") @@ -125,6 +126,7 @@ (define builder #:build-flags ,build-flags #:out-of-source? ,out-of-source? #:jbuild? ,jbuild? + #:package ,package #:tests? ,tests? #:test-target ,test-target #:install-target ,install-target diff --git a/guix/build/dune-build-system.scm b/guix/build/dune-build-system.scm index 00b0c7c406..7e2ec1e3e1 100644 --- a/guix/build/dune-build-system.scm +++ b/guix/build/dune-build-system.scm @@ -31,27 +31,30 @@ (define-module (guix build dune-build-system) ;; Code: (define* (build #:key (build-flags '()) (jbuild? #f) - (use-make? #f) #:allow-other-keys) + (use-make? #f) (package #f) #:allow-other-keys) "Build the given package." (let ((program (if jbuild? "jbuilder" "dune"))) - (apply invoke program "build" "@install" build-flags)) + (apply invoke program "build" "@install" + (append (if package (list "-p" package) '()) build-flags))) #t) (define* (check #:key (test-flags '()) (test-target "test") tests? - (jbuild? #f) #:allow-other-keys) + (jbuild? #f) (package #f) #:allow-other-keys) "Test the given package." (when tests? (let ((program (if jbuild? "jbuilder" "dune"))) - (apply invoke program "runtest" test-target test-flags))) + (apply invoke program "runtest" test-target + (append (if package (list "-p" package) '()) test-flags)))) #t) (define* (install #:key outputs (install-target "install") (jbuild? #f) - #:allow-other-keys) + (package #f) #:allow-other-keys) "Install the given package." (let ((out (assoc-ref outputs "out")) (program (if jbuild? "jbuilder" "dune"))) - (invoke program install-target "--prefix" out "--libdir" - (string-append out "/lib/ocaml/site-lib"))) + (apply invoke program install-target "--prefix" out "--libdir" + (string-append out "/lib/ocaml/site-lib") + (if package (list package) '()))) #t) (define %standard-phases From 23c8a97a5b2766eb853a161c47cc86babf3b4322 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sat, 23 Mar 2019 19:22:37 +0100 Subject: [PATCH 002/411] gnu: ocaml-alcotest: Update to 0.8.5. * gnu/packages/ocaml.scm (ocaml-alcotest): Update to 0.8.5. --- gnu/packages/ocaml.scm | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 801611beb1..a6889c642e 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -1724,28 +1724,26 @@ (define-public ocaml4.02-astring (define-public ocaml-alcotest (package (name "ocaml-alcotest") - (version "0.7.2") + (version "0.8.5") (source (origin (method url-fetch) (uri (string-append "https://github.com/mirage/alcotest/releases/" "download/" version "/alcotest-" version ".tbz")) (sha256 (base32 - "0g5lzk0gpfx4q8hyhr460gr4lab5wakfxsmhfwvb3yinxwzs95gc")))) - (build-system ocaml-build-system) + "0szwjxvaahgynsx0apj81jxj3ki6yz4is9mh2wkcbx66qy7n6fvb")))) + (build-system dune-build-system) (arguments - `(#:tests? #f - #:build-flags (list "build") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) + `(#:package "alcotest" + #:test-target ".")) (native-inputs - `(("ocamlbuild" ,ocamlbuild) - ("opam" ,opam) - ("topkg" ,ocaml-topkg))) + `(("ocamlbuild" ,ocamlbuild))) (propagated-inputs - `(("fmt" ,ocaml-fmt) - ("astring" ,ocaml-astring))) + `(("ocaml-astring" ,ocaml-astring) + ("ocaml-cmdliner" ,ocaml-cmdliner) + ("ocaml-fmt" ,ocaml-fmt) + ("ocaml-result" ,ocaml-result) + ("ocaml-uuidm" ,ocaml-uuidm))) (home-page "https://github.com/mirage/alcotest") (synopsis "Lightweight OCaml test framework") (description "Alcotest exposes simple interface to perform unit tests. It From 112dc8eb290ddc7862fa7bcca1592d2184e69e9b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 23 Mar 2019 23:32:41 +0100 Subject: [PATCH 003/411] gnu: lynis: Update to 2.7.3. * gnu/packages/admin.scm (lynis): Update to 2.7.3. [native-inputs]: Update lynis-sdk, too. --- gnu/packages/admin.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 9ed2e32324..7f7b2fec3e 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2918,7 +2918,8 @@ (define-public solaar (define-public lynis (package (name "lynis") - (version "2.7.2") + ;; Also update the ‘lynis-sdk’ input to the commit matching this release. + (version "2.7.3") (source (origin (method git-fetch) @@ -2927,7 +2928,7 @@ (define-public lynis (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0dbbfk47dpxx7zpb98n4w3ls3z5di57qnr2nsgxjvp49gk9j3f6k")) + (base32 "0md1w86i3fy9l78i98ijr5136nbhdiik2dxyw9qnzmvdlvkqmw70")) (modules '((guix build utils))) (snippet '(begin @@ -2944,11 +2945,10 @@ (define-public lynis (method git-fetch) (uri (git-reference (url "https://github.com/CISOfy/lynis-sdk") - (commit "3310aef4f2b3dd97d166c96ad0253c89c4ad390d"))) + (commit "c166b6a67a53b24f5c1fecd4eb5033f54279a5b3"))) (file-name (git-file-name "lynis-sdk" version)) (sha256 - (base32 - "0sqsrm5wal742yrwps8bqb8a8lxd93n4b93n3kkm1b30nbs25g7y")))))) + (base32 "0wa2azcmx6pj9axvq1jmwmz7826rj1c214asmmn1hq7pxmfw62zr")))))) (arguments `(#:phases (modify-phases %standard-phases From 80a699353be50117a8fc2e03650579b815c30b3f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 23 Mar 2019 23:46:13 +0100 Subject: [PATCH 004/411] gnu: asunder: Update to 2.9.3. * gnu/packages/cdrom.scm (asunder): Update to 2.9.3. --- gnu/packages/cdrom.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm index 50bf3abcb9..ae982cef8a 100644 --- a/gnu/packages/cdrom.scm +++ b/gnu/packages/cdrom.scm @@ -8,7 +8,7 @@ ;;; Copyright © 2016 Marius Bakke ;;; Copyright © 2017 John Darrington ;;; Copyright © 2017 Thomas Danckaert -;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2017 ng0 ;;; Copyright © 2018 Oleg Pykhalov ;;; Copyright © 2018, 2019 Ricardo Wurmus @@ -656,7 +656,7 @@ (define-public geteltorito (define-public asunder (package (name "asunder") - (version "2.8") + (version "2.9.3") (source (origin (method url-fetch) (uri @@ -665,7 +665,7 @@ (define-public asunder ".tar.bz2")) (sha256 (base32 - "1nq9kd4rd4k2kibf57gdbm0zw2gxa234vvvdhxkm8g5bhx5h3iyq")))) + "1630i1df06y840v3fgdf75jxw1s8kwbfn5bhi0686viah0scccw5")))) (build-system glib-or-gtk-build-system) (arguments '(#:out-of-source? #f From 920c896c1a3fdcdcd5a38bbb712b145dbbe53c94 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 24 Mar 2019 00:08:40 +0100 Subject: [PATCH 005/411] gnu: filezilla: Update to 3.41.2 [security fixes]. * gnu/packages/ftp.scm (filezilla): Update to 3.41.2. --- gnu/packages/ftp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index 3651b92e5d..68ad8da716 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -209,14 +209,14 @@ (define-public libfilezilla (define-public filezilla (package (name "filezilla") - (version "3.41.1") + (version "3.41.2") (source (origin (method url-fetch) (uri (string-append "https://download.filezilla-project.org/client/" "FileZilla_" version "_src.tar.bz2")) (sha256 - (base32 "0mlv21054fk11rspbnig0q4gph1iqsqm4rpya3wl5is50p33vg5w")))) + (base32 "05zhvzvzkbns0cdxmlswvasfa6031y22dhfj9y5p85gi654f4fy2")))) (build-system gnu-build-system) (arguments ;; Don't let filezilla phone home to check for updates. From 6f565d6c771b337ec43ef5ac2bb3670a37035bd9 Mon Sep 17 00:00:00 2001 From: Pkill -9 Date: Thu, 21 Feb 2019 13:02:07 +0000 Subject: [PATCH 006/411] gnu: Add odamex. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/games.scm (odamex): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/games.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index e750d0657e..98438808ec 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5397,6 +5397,34 @@ (define-public gzdoom "file://dumb/licence.txt" "Dumb license, explicitly GPL compatible."))))) +(define-public odamex + (package + (name "odamex") + (version "0.8.0") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/odamex/Odamex/" version "/" + "odamex-src-" version ".tar.gz")) + (sha256 + (base32 + "1sh6lqj7vsdmnqz17hw0b6vy7xx6dp41k2sdw99ympsfa2xd1d2j")))) + (build-system cmake-build-system) + (arguments `(#:tests? #f)) ; no tests. + (inputs + `(("sdl" ,sdl) + ("sdl-mixer" ,sdl-mixer) + ("zlib" ,zlib) + ("libpng" ,libpng) + ("alsa-lib" ,alsa-lib))) + (home-page "https://odamex.net/") + (synopsis "Multiplayer Doom port") + (description "Odamex is a modification of the Doom engine that +allows players to easily join servers dedicated to playing Doom +online.") + (license license:gpl2+))) + (define-public fortune-mod (package (name "fortune-mod") From 7b7e4e89c8a1a34e166a2755493e48035e8a78ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 23 Mar 2019 23:09:45 +0100 Subject: [PATCH 007/411] tests: Add missing import. This is a followup to 22f95e028f038cee342f455dfc55bd32b804907c. * tests/scripts.scm: Use (guix tests). --- tests/scripts.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/scripts.scm b/tests/scripts.scm index efee271197..0315642f38 100644 --- a/tests/scripts.scm +++ b/tests/scripts.scm @@ -19,6 +19,7 @@ (define-module (test-scripts) #:use-module (guix scripts) + #:use-module (guix tests) #:use-module ((guix scripts build) #:select (%standard-build-options)) #:use-module (srfi srfi-64)) From 94aeec0aef03ab44e41bfc3e77c3b623cb3d607c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 23 Mar 2019 23:53:55 +0100 Subject: [PATCH 008/411] ui: Bypass Texinfo parsing and rendering for searches. This makes search queries such as: LANGUAGE=fr guix package -s utilitaire -s recherche about 6 times faster. * guix/ui.scm (%package-metrics): Do not use 'package-synopsis-string' and 'package-description-string' to bypass Texinfo parsing and rendering. --- guix/ui.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/guix/ui.scm b/guix/ui.scm index 2fc001d2eb..0070301c47 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -1329,8 +1329,14 @@ (define %package-metrics ;; Metrics used to compute the "relevance score" of a package against a set ;; of regexps. `((,package-name . 4) - (,package-synopsis-string . 3) - (,package-description-string . 2) + + ;; Match regexps on the raw Texinfo since formatting it is quite expensive + ;; and doesn't have much of an effect on search results. + (,(lambda (package) + (and=> (package-synopsis package) P_)) . 3) + (,(lambda (package) + (and=> (package-description package) P_)) . 2) + (,(lambda (type) (match (and=> (package-location type) location-file) ((? string? file) (basename file ".scm")) From 9c2e58564f3c8b53ce86d5791e3ea5818e1a4fd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 24 Mar 2019 00:10:51 +0100 Subject: [PATCH 009/411] tests: Adjust 'guix pack -f squashfs' test. This is a followup to 427c87d0bdc06cc3ee7fc220fd3ad36084412533. * tests/pack.scm ("squashfs-image + localstatedir"): Expect "bin" to be a relative symlink. --- tests/pack.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/pack.scm b/tests/pack.scm index 40473a9fe9..ea88cd89f2 100644 --- a/tests/pack.scm +++ b/tests/pack.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017, 2018 Ludovic Courtès +;;; Copyright © 2017, 2018, 2019 Ludovic Courtès ;;; Copyright © 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. @@ -206,7 +206,11 @@ (define bin (file-exists? "var/guix/db/db.sqlite") (string=? (string-append #$%bootstrap-guile "/bin") (pk 'binlink (readlink bin))) - (string=? (string-append #$profile "/bin") + + ;; This is a relative symlink target. + (string=? (string-drop + (string-append #$profile "/bin") + 1) (pk 'guilelink (readlink "bin")))) (mkdir #$output)))))))) (built-derivations (list check))))) From b89bb804fe68073b5cfe8aaa4fdf82ef908ea0f8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 24 Mar 2019 00:39:32 +0100 Subject: [PATCH 010/411] gnu: perl-image-exiftool: Downgrade to 11.30. * gnu/packages/photo.scm (perl-image-exiftool): Downgrade to 11.30. --- gnu/packages/photo.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index f2cabec39a..69ec69548b 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -204,10 +204,13 @@ (define-public gphoto2 ;; Files are typically under LGPLv2+, but 'COPYING' says GPLv2+. (license license:gpl2+))) +;; Note: See for the latest +;; release. The versions at +;; are not meant for production use according to the Changes file. (define-public perl-image-exiftool (package (name "perl-image-exiftool") - (version "11.31") + (version "11.30") (source (origin (method url-fetch) @@ -218,7 +221,7 @@ (define-public perl-image-exiftool (string-append "https://www.sno.phy.queensu.ca/~phil/exiftool/" "Image-ExifTool-" version ".tar.gz"))) (sha256 - (base32 "1kplb7hvhrhqxkr4ddc44q7a3fs0r8svv2jlh325nwkfi7aa5kz5")))) + (base32 "0vkjb2c1a3jdlq8rx1jywx4p3f1bmgjn7rzfwx6dxgij2lx76lrs")))) (build-system perl-build-system) (arguments '(#:phases From 4041fabb1ff6b3a6b05453135f5550794d38a8b0 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Sun, 24 Mar 2019 13:56:16 +0100 Subject: [PATCH 011/411] gnu: Add bennu-game-development. * gnu/packages/game-development.scm (bennu-game-development): New variable. --- gnu/packages/game-development.scm | 46 +++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 25935aafcc..f6dd401f24 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2017 Arun Isaac ;;; Copyright © 2017 Rutger Helling ;;; Copyright © 2018 Marius Bakke +;;; Copyright © 2019 Pierre Neidhardt ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,6 +36,7 @@ (define-module (gnu packages game-development) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix svn-download) #:use-module (guix utils) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) @@ -1329,3 +1331,47 @@ (define-public guile-chickadee @item REPL-driven development model @end enumerate\n") (license license:gpl3+))) + +(define-public bennu-game-development + (package + (name "bennu-game-development") + (version "348") + (source (origin + (method svn-fetch) + (uri (svn-reference + (url "http://svn.code.sf.net/p/bennugd/code") + (revision (string->number version)))) + (file-name (string-append name "-" version)) + (sha256 + (base32 + "0wpzsbh4zi3931493dnyl5ffmh1b7fj2sx3mzrq304z9zs4d6lqq")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-configure-for-x86-64 + (lambda* (#:key outputs #:allow-other-keys) + (chdir "core") + (delete-file "configure") + (substitute* "configure.in" + (("i\\*86\\)") + "x86_64) + COMMON_CFLAGS=\"$COMMON_CFLAGS -DUSE_OPENSSL\" + COMMON_LDFLAGS=\"$COMMON_LDFLAGS\" + LIBSSL=\"crypto\" + USE_OPENSSL=yes + ;; + + i*86)"))))))) + (inputs `(("openssl" ,openssl) + ("zlib" ,zlib))) + (native-inputs `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + (synopsis "Programming language to create games") + (description "Bennu Game Development, also known as bennudg, is a +programming language tailored at game development. It is the successor of +Fenix.") + (home-page "https://sourceforge.net/projects/bennugd/") + (license license:zlib))) From 24c4b012ee9789e2e767da826d9dccf71bbad3b5 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Sun, 24 Mar 2019 14:00:32 +0100 Subject: [PATCH 012/411] gnu: Add bennu-game-development-modules. * gnu/packages/game-development.scm (bennu-game-development-modules): New variable. --- gnu/packages/game-development.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index f6dd401f24..e67f10aec6 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1375,3 +1375,27 @@ (define-public bennu-game-development Fenix.") (home-page "https://sourceforge.net/projects/bennugd/") (license license:zlib))) + +(define-public bennu-game-development-modules + (package + (inherit bennu-game-development) + (name "bennu-game-development-modules") + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-conflicting-definitions + (lambda _ + (with-fluids ((%default-port-encoding #f)) + (substitute* "core/include/fmath.h" + (("extern fixed fmul\\( int x, int y \\);") "") + (("extern fixed fdiv\\( int x, int y \\);") ""))) + (chdir "modules")))))) + (inputs `(("zlib" ,zlib) + ("libpng" ,libpng) + ("openssl" ,openssl) + ("sdl-mixer" ,sdl-mixer) + ("bennu-game-development" ,bennu-game-development))) + (synopsis "Modules for the Bennu Game Developement programming language") + (description "This package contains a collection of modules for the Bennu +Game Developement programming language, from CD handling through SDL to +joystick support."))) From d7d41026645fddf8876504cd1f053a3a396ff13d Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 24 Mar 2019 14:46:50 +0100 Subject: [PATCH 013/411] gnu: ocaml-react: Update to 1.2.1. * gnu/packages/ocaml.scm (ocaml-react): Update to 1.2.1. --- gnu/packages/ocaml.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index a6889c642e..5b3e996db2 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -1795,21 +1795,22 @@ (define-public ocaml4.02-ppx-tools (define-public ocaml-react (package (name "ocaml-react") - (version "1.2.0") + (version "1.2.1") (source (origin (method url-fetch) (uri (string-append "http://erratique.ch/software/react/releases/react-" version ".tbz")) (sha256 (base32 - "0knhgbngphv5sp1yskfd97crf169qhpc0igr6w7vqw0q36lswyl8")))) + "1aj8w79gdd9xnrbz7s5p8glcb4pmimi8jp9f439dqnf6ih3mqb3v")))) (build-system ocaml-build-system) (native-inputs `(("ocamlbuild" ,ocamlbuild) - ("opam" ,opam))) + ("opam" ,opam) + ("ocaml-topkg" ,ocaml-topkg))) (arguments `(#:tests? #f - #:build-flags (list "native=true" "native-dynlink=true") + #:build-flags (list "build") #:phases (modify-phases %standard-phases (delete 'configure)))) From a1034ea0ccbdbebe37104f86d43604849aafe1e9 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 24 Mar 2019 15:01:54 +0100 Subject: [PATCH 014/411] gnu: ocaml-bos: Update to 0.2.0. * gnu/packages/ocaml.scm (ocaml-bos): Update to 0.2.0. --- gnu/packages/ocaml.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 5b3e996db2..395d621935 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -2014,14 +2014,14 @@ (define-public ocaml4.02-fpath (define-public ocaml-bos (package (name "ocaml-bos") - (version "0.1.4") + (version "0.2.0") (source (origin (method url-fetch) (uri (string-append "http://erratique.ch/software/bos/releases/" "bos-" version ".tbz")) (sha256 (base32 - "1ly66lysk4w6mdy4k1n3ynlpfpq7lw4wshcpzgx58v6x613w5s7q")))) + "1s10iqx8rgnxr5n93lf4blwirjf8nlm272yg5sipr7lsr35v49wc")))) (build-system ocaml-build-system) (arguments `(#:tests? #f From 8d135e37263cd157f3a37aa8ed3ab5bc5817049f Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 24 Mar 2019 15:18:41 +0100 Subject: [PATCH 015/411] gnu: dune: Fix libdir. * gnu/packages/ocaml.scm (dune): Install libraries in site-lib. --- gnu/packages/ocaml.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 395d621935..5c32c434f5 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -1254,7 +1254,9 @@ (define-public dune (build-system ocaml-build-system) (arguments `(#:tests? #f; require odoc - #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) + (string-append "LIBDIR=" (assoc-ref %outputs "out") + "/lib/ocaml/site-lib")) #:phases (modify-phases %standard-phases (replace 'configure From 8fd897888dda9872d48cc8b6c99186564dda1d4b Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 24 Mar 2019 15:26:25 +0100 Subject: [PATCH 016/411] gnu: ocaml-gsl: Update to 1.24.0. * gnu/packages/ocaml.scm (ocaml-gsl): Update to 1.24.0. --- gnu/packages/ocaml.scm | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 5c32c434f5..7bebf3921b 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -4791,7 +4791,7 @@ (define-public ocaml-merlin (define-public ocaml-gsl (package (name "ocaml-gsl") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) @@ -4801,10 +4801,22 @@ (define-public ocaml-gsl version "/gsl-" version ".tbz")) (sha256 (base32 - "17vcswipliq1b2idbzx1z95kskn1a4q4s5v04igilg0f7lnkaarb")))) - (build-system ocaml-build-system) + "1l5zkkkg8sglsihrbf10ivq9s8xzl1y6ag89i4jqpnmi4m43fy34")))) + (build-system dune-build-system) + (arguments + `(#:test-target "." + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-gsl-directory + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/config/discover.ml" + (("/usr") (assoc-ref inputs "gsl"))) + #t))))) (inputs `(("gsl" ,gsl))) + (propagated-inputs + `(("ocaml-base" ,ocaml-base) + ("ocaml-stdio" ,ocaml-stdio))) (home-page "https://mmottl.github.io/gsl-ocaml") (synopsis "Bindings to the GNU Scientific Library") (description From edf1ce60f7b418c6552da71661f6aeea2aae85c2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 24 Mar 2019 16:05:56 +0200 Subject: [PATCH 017/411] gnu: bennu-game-development: Remove bundled code. * gnu/packages/game-development.scm (bennu-game-development)[source]: Add snippet to remove '3rdparty' folder from source code. --- gnu/packages/game-development.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index e67f10aec6..b57f46c69e 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1344,7 +1344,11 @@ (define-public bennu-game-development (file-name (string-append name "-" version)) (sha256 (base32 - "0wpzsbh4zi3931493dnyl5ffmh1b7fj2sx3mzrq304z9zs4d6lqq")))) + "0wpzsbh4zi3931493dnyl5ffmh1b7fj2sx3mzrq304z9zs4d6lqq")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "3rdparty") #t)))) (build-system gnu-build-system) (arguments '(#:phases From f0e4cfcb0bdb09f95641b42e5133d2aab3e4f5f9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 24 Mar 2019 16:07:07 +0200 Subject: [PATCH 018/411] gnu: bennu-game-development: Build against openssl on all archictures. * gnu/packages/game-development.scm (bennu-game-development)[arguments]: Rename custom phase to 'patch-configure-to-use-openssl, change glob pattern to match all cases. Return #t from all phases. --- gnu/packages/game-development.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index b57f46c69e..49fe467252 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1353,20 +1353,21 @@ (define-public bennu-game-development (arguments '(#:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-configure-for-x86-64 + (add-after 'unpack 'patch-configure-to-use-openssl (lambda* (#:key outputs #:allow-other-keys) (chdir "core") (delete-file "configure") (substitute* "configure.in" (("i\\*86\\)") - "x86_64) + "*) COMMON_CFLAGS=\"$COMMON_CFLAGS -DUSE_OPENSSL\" COMMON_LDFLAGS=\"$COMMON_LDFLAGS\" LIBSSL=\"crypto\" USE_OPENSSL=yes ;; - i*86)"))))))) + i*86)")) + #t))))) (inputs `(("openssl" ,openssl) ("zlib" ,zlib))) (native-inputs `(("pkg-config" ,pkg-config) From e2015de69ca14ace155de74fa06dc8087c364ea3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 24 Mar 2019 13:36:30 +0100 Subject: [PATCH 019/411] gnu: tiled: Update to 1.2.3. * gnu/packages/game-development.scm (tiled): Update to 1.2.3. --- gnu/packages/game-development.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 49fe467252..16e6dd53e6 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -433,7 +433,7 @@ (define-public python2-xsge (define-public tiled (package (name "tiled") - (version "1.2.2") + (version "1.2.3") (source (origin (method git-fetch) (uri (git-reference @@ -442,7 +442,7 @@ (define-public tiled (file-name (git-file-name name version)) (sha256 (base32 - "0ay4x1b6h5xfax1cqry2fklcmqi6a16klgmci4gkhga7as66lnnn")))) + "1nfyigfkl10n9r82p1qxhpr09jn2kwalh9n5r209bcaj8dxspph8")))) (build-system gnu-build-system) (inputs `(("qtbase" ,qtbase) From d00a8b8422b350792fb0475cde5ad5c3f247b633 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 24 Mar 2019 13:52:43 +0100 Subject: [PATCH 020/411] gnu: physfs: Update to 3.0.2. * gnu/packages/game-development.scm (physfs): Update to 3.0.2. --- gnu/packages/game-development.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 16e6dd53e6..53ed66c636 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -569,7 +569,7 @@ (define-public sfxr (define-public physfs (package (name "physfs") - (version "3.0.1") + (version "3.0.2") (source (origin (method url-fetch) (uri (string-append @@ -578,7 +578,7 @@ (define-public physfs (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1wgj2zqpnfbnyyi1i7bq5pshcc9n5cvwlpzp8im67nb8662ryyxp")))) + "0qzqz4r88gvd8m7sh2z5hvqcr0jfr4wb2f77c19xycyn0rigfk9h")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no check target From 37bf216dfce713112bb6de68e64e007241ccf26b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 24 Mar 2019 14:26:29 +0100 Subject: [PATCH 021/411] gnu: openmw: Don't use NAME in source URI. * gnu/packages/game-development.scm (openmw)[source]: Hard-code NAME. --- gnu/packages/game-development.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 53ed66c636..adcad53a11 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1080,7 +1080,7 @@ (define-public openmw (method url-fetch) (uri (string-append "https://github.com/OpenMW/openmw/archive/" - name "-" version ".tar.gz")) + "openmw-" version ".tar.gz")) (sha256 (base32 "03fgm2f2r7y0aqlgp038pdlnllgvm3jimrp968p4nhz1sffvjzcy")))) From d9f7b116da0f8ea06f299b112b8f3612a5206756 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 24 Mar 2019 15:07:24 +0100 Subject: [PATCH 022/411] gnu: ddcutil: Update to 0.9.5. * gnu/packages/hardware.scm (ddcutil): Update to 0.9.5. --- gnu/packages/hardware.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm index 006a61c086..a735ecb011 100644 --- a/gnu/packages/hardware.scm +++ b/gnu/packages/hardware.scm @@ -38,14 +38,14 @@ (define-module (gnu packages hardware) (define-public ddcutil (package (name "ddcutil") - (version "0.9.4") + (version "0.9.5") (source (origin (method url-fetch) (uri (string-append "https://www.ddcutil.com/tarballs/" "ddcutil-" version ".tar.gz")) (sha256 - (base32 "1jqfip43sx3dnx86znmpy8dj4ikkfpgf8npgq66s7hqwwa99i7zc")))) + (base32 "18brwj54dkjylvpx7c6ksf7fzhdjffi60avyg7qbs8vw9awnsxqz")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From b28e4e3c0d37c397a8e8060c5764dce5871567f5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 24 Mar 2019 19:36:30 +0200 Subject: [PATCH 023/411] doc: Remove instances of powerpc-linux being a supported Guix architecture. * doc/contributing.texi (Submitting Patches): Remove powerpc-linux examples. * doc/guix.texi (Virtualization Services): Replace powerpc-linux example with mips64el-linux. --- doc/contributing.texi | 7 +++---- doc/guix.texi | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/doc/contributing.texi b/doc/contributing.texi index 9459c481a7..5331d3e18a 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -827,7 +827,7 @@ your @code{operating-system} configuration: @example (service qemu-binfmt-service-type (qemu-binfmt-configuration - (platforms (lookup-qemu-platforms "arm" "aarch64" "ppc" "mips64el")) + (platforms (lookup-qemu-platforms "arm" "aarch64" "mips64el")) (guix-support? #t))) @end example @@ -835,12 +835,11 @@ Then reconfigure your system. You can then build packages for different platforms by specifying the @code{--system} option. For example, to build the "hello" package for -the armhf, aarch64, powerpc, or mips64 architectures, you would run the -following commands, respectively: +the armhf, aarch64, or mips64 architectures, you would run the following +commands, respectively: @example guix build --system=armhf-linux --rounds=2 hello guix build --system=aarch64-linux --rounds=2 hello -guix build --system=powerpc-linux --rounds=2 hello guix build --system=mips64el-linux --rounds=2 hello @end example diff --git a/doc/guix.texi b/doc/guix.texi index 6e8ce3c084..a58ca4b4a7 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -21629,7 +21629,7 @@ emulated: @example (service qemu-binfmt-service-type (qemu-binfmt-configuration - (platforms (lookup-qemu-platforms "arm" "aarch64" "ppc")))) + (platforms (lookup-qemu-platforms "arm" "aarch64" "mips64el")))) @end example In this example, we enable transparent emulation for the ARM and aarch64 From dff4dcb7fed54d56e8a1645656039ddbed1701ee Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sun, 24 Mar 2019 22:09:09 +0300 Subject: [PATCH 024/411] gnu: perl-package-stash-xs: Update source tarball URL. * gnu/packages/perl.scm (perl-package-stash-xs)[source]: Update URL. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 8c28c94ed9..3161e4d31e 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -18,7 +18,7 @@ ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2017 Leo Famulari ;;; Copyright © 2017 Christopher Allan Webber -;;; Copyright © 2018 Oleg Pykhalov +;;; Copyright © 2018, 2019 Oleg Pykhalov ;;; Copyright © 2018, 2019 Pierre Neidhardt ;;; Copyright © 2018 Kei Kebreau ;;; @@ -6663,7 +6663,7 @@ (define-public perl-package-stash-xs (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/D/DO/DOY/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "Package-Stash-XS-" version ".tar.gz")) (sha256 (base32 "1akqk10qxwk798qppajqbczwmhy4cs9g0lg961m3vq218slnnryk")))) From da4cdc48fdcb3c83b3cb6e0c6dbbddc1294faf56 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sun, 24 Mar 2019 22:10:24 +0300 Subject: [PATCH 025/411] gnu: perl-package-stash: Update source tarball URL. * gnu/packages/perl.scm (perl-package-stash)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 3161e4d31e..7de2f19ef7 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6635,7 +6635,7 @@ (define-public perl-package-stash (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/D/DO/DOY/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "Package-Stash-" version ".tar.gz")) (sha256 (base32 "0zrs4byhlpq5ybnl0fd3y6pfzair6i2dyvzn7f7a7pgj9n2fi3n5")))) From d378e1a1c5f80dbb06bf8bb4b5a3cf2a45991799 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:25:22 +0100 Subject: [PATCH 026/411] gnu: r-matrix: Update to 1.2-17. * gnu/packages/statistics.scm (r-matrix): Update to 1.2-17. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 6face9910a..a1929e9501 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -548,14 +548,14 @@ (define-public r-lattice (define-public r-matrix (package (name "r-matrix") - (version "1.2-16") + (version "1.2-17") (source (origin (method url-fetch) (uri (cran-uri "Matrix" version)) (sha256 (base32 - "10fh0y1wd0bvnqbzlyck08pn1vxcd58bskx2lrf9m42v5792ba9p")))) + "1k1zf92ycqr7fz44w7bp1p354ww7jg0wm23ybb8dzmbg37qfchyv")))) (properties `((upstream-name . "Matrix"))) (build-system r-build-system) (propagated-inputs From adf610718c1ac66d514215d2458ff76532ec1e61 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:25:43 +0100 Subject: [PATCH 027/411] gnu: r-openssl: Update to 1.3. * gnu/packages/statistics.scm (r-openssl): Update to 1.3. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index a1929e9501..373a6649d9 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2316,14 +2316,14 @@ (define-public r-roxygen2 (define-public r-openssl (package (name "r-openssl") - (version "1.2.2") + (version "1.3") (source (origin (method url-fetch) (uri (cran-uri "openssl" version)) (sha256 (base32 - "0jfkna9zzhy2m5qd8501ija5jnpxzjn8wi3wjw0kr2fm4sl7qynz")))) + "1gx4mk7js1irzkql5rgk48ja9c6mm28ccxz483ngbhdd57az90qw")))) (build-system r-build-system) (inputs `(("libressl" ,libressl))) From 3a4185872e6fa3a6a2216e02dcb4abf4f4f6bfd4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:25:49 +0100 Subject: [PATCH 028/411] gnu: r-rcpparmadillo: Update to 0.9.300.2.0. * gnu/packages/statistics.scm (r-rcpparmadillo): Update to 0.9.300.2.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 373a6649d9..735c30da94 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2580,13 +2580,13 @@ (define-public r-latticeextra (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.9.200.7.1") + (version "0.9.300.2.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "1gy3ywzw1cx344a8xihnmflgxphy2fhci7ng85msqd1iv9gzxyk4")))) + "02zha49v6s8g39dcmk5dz0pygx0jibgmcwsyzybp9wmlqxnmdvip")))) (properties `((upstream-name . "RcppArmadillo"))) (build-system r-build-system) ;; All needed for vignettes From 6f2fa038aee4fa2ca7c0f8bfe1697d4f9db81f7a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:25:58 +0100 Subject: [PATCH 029/411] gnu: r-pls: Update to 2.7-1. * gnu/packages/cran.scm (r-pls): Update to 2.7-1. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 5a3762fd7a..16ff3e6590 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -1218,14 +1218,14 @@ (define-public r-plogr (define-public r-pls (package (name "r-pls") - (version "2.7-0") + (version "2.7-1") (source (origin (method url-fetch) (uri (cran-uri "pls" version)) (sha256 (base32 - "0xaqqgmdvfh7g7v1m4bcwjqzph68b9cq3bn4kjisfsadl54i5p2x")))) + "0jw3zl5z06023zxr74phnvwax8m3i4a4i6lsqiq6j15aq9zq3zgq")))) (build-system r-build-system) (home-page "http://mevik.net/work/software/pls.html") (synopsis "Partial Least Squares and Principal Component Regression") From 42e7552dc8ab371bd351e789dc87986b198e5061 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:26:06 +0100 Subject: [PATCH 030/411] gnu: r-quantmod: Update to 0.4-14. * gnu/packages/cran.scm (r-quantmod): Update to 0.4-14. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 16ff3e6590..8eb1f1653c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -3944,14 +3944,14 @@ (define-public r-aggregation (define-public r-quantmod (package (name "r-quantmod") - (version "0.4-13") + (version "0.4-14") (source (origin (method url-fetch) (uri (cran-uri "quantmod" version)) (sha256 (base32 - "16aldg96z7amp5mr90nb8127yy04gxsihfr26km5p3cx3j117yv0")))) + "1csljagnpkr1mmc18h70b64zbyj07kx972nip9dng39jfg7ilnyr")))) (build-system r-build-system) (propagated-inputs `(("r-curl" ,r-curl) From 3be585cf448bbd071da52f874f79cbcd65c3648b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:26:12 +0100 Subject: [PATCH 031/411] gnu: r-polynom: Update to 1.4-0. * gnu/packages/cran.scm (r-polynom): Update to 1.4-0. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 8eb1f1653c..372095a326 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -5534,14 +5534,14 @@ (define-public r-itertools (define-public r-polynom (package (name "r-polynom") - (version "1.3-9") + (version "1.4-0") (source (origin (method url-fetch) (uri (cran-uri "polynom" version)) (sha256 (base32 - "1s4xxv5rvpigawknvq27v9vzvs83phfsj5h8mim2lmf5bj950nnk")))) + "1pflscwc0qzdf0y60j7s0dkglgmz18xajywfbn6s263idyr8idy5")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/polynom/") (synopsis "Functions for univariate polynomial manipulations") From 104ec4c9cfa11d31a14c33735e6908283256c724 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:26:19 +0100 Subject: [PATCH 032/411] gnu: r-getopt: Update to 1.20.3. * gnu/packages/cran.scm (r-getopt): Update to 1.20.3. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 372095a326..88d0bcdde9 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -6054,14 +6054,14 @@ (define-public r-goplot (define-public r-getopt (package (name "r-getopt") - (version "1.20.2") + (version "1.20.3") (source (origin (method url-fetch) (uri (cran-uri "getopt" version)) (sha256 (base32 - "13p35lbpy7i578752fa71sbfvcsqw5qfa9p6kf8b5m3c5p9i4v1x")))) + "0zzmzgwl9a4y3s34600vmih22d6y32294f9bvxrnmffnvkgmy7sk")))) (build-system r-build-system) (home-page "https://github.com/trevorld/getopt") (synopsis "Command-line option processor for R") From 7a73c247b2711d1d7bcbb4275fa5dc1ef33b9032 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:26:27 +0100 Subject: [PATCH 033/411] gnu: r-rbgl: Update to 1.58.2. * gnu/packages/bioinformatics.scm (r-rbgl): Update to 1.58.2. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 1836939970..ef71dd4f48 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6792,14 +6792,14 @@ (define-public r-annotationforge (define-public r-rbgl (package (name "r-rbgl") - (version "1.58.1") + (version "1.58.2") (source (origin (method url-fetch) (uri (bioconductor-uri "RBGL" version)) (sha256 (base32 - "1l5x2icv9di1lr3gqfi0vjnyd9xc3l77yc42ippqd4cadj3d1pzf")))) + "0vhnh47pswnp27c0zqcbnnsayfmq3cxcgrs9g860555ldqfl4cyl")))) (properties `((upstream-name . "RBGL"))) (build-system r-build-system) (propagated-inputs `(("r-graph" ,r-graph))) From adfbda0fb0f4e3e87740237a8ef0bc36d9f1bee8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:26:34 +0100 Subject: [PATCH 034/411] gnu: r-gqtlstats: Update to 1.14.1. * gnu/packages/bioinformatics.scm (r-gqtlstats): Update to 1.14.1. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ef71dd4f48..bef995dcac 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10384,14 +10384,14 @@ (define-public r-ldblock (define-public r-gqtlstats (package (name "r-gqtlstats") - (version "1.14.0") + (version "1.14.1") (source (origin (method url-fetch) (uri (bioconductor-uri "gQTLstats" version)) (sha256 (base32 - "1sg9kw59dlayj7qxql9pd93d4hmml504sa3kkfpzfh3xri7m5pxf")))) + "1rkbnb3h02fdksc4nacqvmq4jgbj9fz4hm7j51yr2ggcgcykwraa")))) (properties `((upstream-name . "gQTLstats"))) (build-system r-build-system) (propagated-inputs From 9ebb7f8181f9fa306236805757f6c7a3365ad666 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:26:39 +0100 Subject: [PATCH 035/411] gnu: r-phangorn: Update to 2.5.3. * gnu/packages/bioinformatics.scm (r-phangorn): Update to 2.5.3. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index bef995dcac..a129c48e37 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10861,14 +10861,14 @@ (define-public r-delayedmatrixstats (define-public r-phangorn (package (name "r-phangorn") - (version "2.4.0") + (version "2.5.3") (source (origin (method url-fetch) (uri (cran-uri "phangorn" version)) (sha256 (base32 - "0xc8k552nxczy19jr0xjjagrzc8x6lafasgk2c099ls8bc1yml1i")))) + "1bv86yfk5r015s7ij6v4zz7bagwrw9m13yfs5853drxb19d5h1m3")))) (build-system r-build-system) (propagated-inputs `(("r-ape" ,r-ape) From f98d97c6f2ca00775a4c0e28889827318eb57a65 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:39:35 +0100 Subject: [PATCH 036/411] gnu: Add r-lemon. * gnu/packages/cran.scm (r-lemon): New variable. --- gnu/packages/cran.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 88d0bcdde9..c30112ce73 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11823,3 +11823,31 @@ (define-public r-reinforcelearn can be used with function approximation, eligibility traces (Singh & Sutton, 1996) and experience replay (Mnih et al., 2013).") (license license:expat))) + +(define-public r-lemon + (package + (name "r-lemon") + (version "0.4.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "lemon" version)) + (sha256 + (base32 + "0wsn5bfg10wq4dnrgpyraz2bzx9p19c7hf1pwj3h4zmpqfgsdbpw")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra) + ("r-gtable" ,r-gtable) + ("r-knitr" ,r-knitr) + ("r-lattice" ,r-lattice) + ("r-plyr" ,r-plyr) + ("r-scales" ,r-scales))) + (home-page "https://github.com/stefanedwards/lemon") + (synopsis "Freshen up your ggplot2 plots") + (description + "This package provides functions for working with legends and axis lines +of ggplot2, facets that repeat axis lines on all panels, and some knitr +extensions.") + (license license:gpl3))) From 79db3a1a33304de59b9b8ced29778ee2ebe44235 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 11:41:23 +0100 Subject: [PATCH 037/411] gnu: Add r-wgaim. * gnu/packages/cran.scm (r-wgaim): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c30112ce73..b6df127d2f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11851,3 +11851,25 @@ (define-public r-lemon of ggplot2, facets that repeat axis lines on all panels, and some knitr extensions.") (license license:gpl3))) + +(define-public r-wgaim + (package + (name "r-wgaim") + (version "1.4-11") + (source + (origin + (method url-fetch) + (uri (cran-uri "wgaim" version)) + (sha256 + (base32 + "1jjyp100dcjjczp61xlvhmy48ynniqcys535vzbgswhr7fvijymg")))) + (build-system r-build-system) + (propagated-inputs + `(("r-lattice" ,r-lattice) + ("r-qtl" ,r-qtl))) + (home-page "https://cran.r-project.org/web/packages/wgaim") + (synopsis "Whole genome average interval mapping for QTL detection") + (description + "This package integrates sophisticated mixed modelling methods with a +whole genome approach to detecting significant QTL in linkage maps.") + (license license:gpl2+))) From f33cb7ab7e85fcf29f4ebb97faf679e174edf2eb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 12:09:05 +0100 Subject: [PATCH 038/411] gnu: Add r-bedr. * gnu/packages/cran.scm (r-bedr): New variable. --- gnu/packages/cran.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b6df127d2f..fc84b9fb54 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -40,6 +40,7 @@ (define-module (gnu packages cran) #:use-module (guix build-system r) #:use-module (gnu packages algebra) #:use-module (gnu packages base) + #:use-module (gnu packages bioinformatics) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages databases) @@ -11873,3 +11874,36 @@ (define-public r-wgaim "This package integrates sophisticated mixed modelling methods with a whole genome approach to detecting significant QTL in linkage maps.") (license license:gpl2+))) + +(define-public r-bedr + (package + (name "r-bedr") + (version "1.0.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "bedr" version)) + (sha256 + (base32 + "0q790695h8bls0qw284n1zn7lxzym1dnnj095fsbjga2p116z4yv")))) + (build-system r-build-system) + (propagated-inputs + `(("r-data-table" ,r-data-table) + ("r-r-utils" ,r-r-utils) + ("r-testthat" ,r-testthat) + ("r-venndiagram" ,r-venndiagram) + ("r-yaml" ,r-yaml) + ("bedops" ,bedops) + ("bedtools" ,bedtools) + ("htslib" ,htslib))) ; for tabix + (native-inputs + `(("r-knitr" ,r-knitr))) ; for vignettes + (home-page "https://cran.r-project.org/web/packages/bedr") + (synopsis "Genomic region processing") + (description + "This package is for genomic regions processing using command line tools +such as BEDTools, BEDOPS and Tabix. These tools offer scalable and efficient +utilities to perform genome arithmetic e.g indexing, formatting and merging. +The bedr package's API enhances access to these tools as well as offers +additional utilities for genomic regions processing.") + (license license:gpl2))) From 459dcb95f4642b24062b90478310d84a36bad35a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 20:34:59 +0100 Subject: [PATCH 039/411] gnu: Add r-partitions. * gnu/packages/cran.scm (r-partitions): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index fc84b9fb54..d9e6c1563b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11907,3 +11907,27 @@ (define-public r-bedr The bedr package's API enhances access to these tools as well as offers additional utilities for genomic regions processing.") (license license:gpl2))) + +(define-public r-partitions + (package + (name "r-partitions") + (version "1.9-19") + (source + (origin + (method url-fetch) + (uri (cran-uri "partitions" version)) + (sha256 + (base32 + "1pklfnjdc094c8nzkqcdvqzdh8v3p5n8jbg4pf9678iw648saiyx")))) + (build-system r-build-system) + (propagated-inputs + `(("r-gmp" ,r-gmp) + ("r-polynom" ,r-polynom))) + (home-page "https://cran.r-project.org/web/packages/partitions") + (synopsis "Additive partitions of integers") + (description + "This package provides tools to enumerates the partitions, unequal +partitions, and restricted partitions of an integer; the three corresponding +partition functions are also given.") + ;; Any version of the GPL + (license license:gpl2+))) From 761c097ff5333501634f360718090b52680e4b7c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 20:35:11 +0100 Subject: [PATCH 040/411] gnu: Add r-brobdingnag. * gnu/packages/cran.scm (r-brobdingnag): New variable. --- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d9e6c1563b..d8a1233bea 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11931,3 +11931,26 @@ (define-public r-partitions partition functions are also given.") ;; Any version of the GPL (license license:gpl2+))) + +(define-public r-brobdingnag + (package + (name "r-brobdingnag") + (version "1.2-6") + (source + (origin + (method url-fetch) + (uri (cran-uri "Brobdingnag" version)) + (sha256 + (base32 + "1m3ajvcksqfck5l5hj5xiflj4ry6d896ybv4f0xxks8chgnwmv0r")))) + (properties `((upstream-name . "Brobdingnag"))) + (build-system r-build-system) + (home-page "https://github.com/RobinHankin/Brobdingnag.git") + (synopsis "Very large numbers in R") + (description + "This package handles very large numbers in R. Real numbers are held +using their natural logarithms, plus a logical flag indicating sign. The +package includes a vignette that gives a step-by-step introduction to using S4 +methods.") + ;; Any version of the GPL + (license license:gpl2+))) From c30be23a6d97f356ebfb1dbb81f010e291d51212 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 20:35:17 +0100 Subject: [PATCH 041/411] gnu: Add r-untb. * gnu/packages/cran.scm (r-untb): New variable. --- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d8a1233bea..b638e46cf5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11954,3 +11954,26 @@ (define-public r-brobdingnag methods.") ;; Any version of the GPL (license license:gpl2+))) + +(define-public r-untb + (package + (name "r-untb") + (version "1.7-4") + (source + (origin + (method url-fetch) + (uri (cran-uri "untb" version)) + (sha256 + (base32 + "1i7m4vfslsix98dwx4jlrsldm7fhhfp25gr7aapcxqxms7ryaby6")))) + (build-system r-build-system) + (propagated-inputs + `(("r-brobdingnag" ,r-brobdingnag) + ("r-partitions" ,r-partitions) + ("r-polynom" ,r-polynom))) + (home-page "https://github.com/RobinHankin/untb.git") + (synopsis "Ecological drift under the UNTB") + (description + "This package provides numerical simulations, and visualizations, of +Hubbell's @dfn{Unified Neutral Theory of Biodiversity} (UNTB).") + (license license:gpl2+))) From 37f628960516cd49f6bce37366949e5255bfa5e7 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 24 Mar 2019 22:46:01 +0100 Subject: [PATCH 042/411] gnu: avidemux: Update to 2.7.3. * gnu/packages/video.scm (avidemux): Update to 2.7.3. --- gnu/packages/video.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 50dd7e4a83..55a1931530 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1841,7 +1841,7 @@ (define-public srt2vtt (define-public avidemux (package (name "avidemux") - (version "2.7.2") + (version "2.7.3") (source (origin (method url-fetch) (uri (string-append @@ -1849,7 +1849,7 @@ (define-public avidemux "avidemux_" version ".tar.gz")) (sha256 (base32 - "07fdz3y4iln7cizikdjj96dqvp2f8zzhs31ncxxwzdkngn5v8138")) + "17x2mnnr5h8pp764p55l1xcn2ljnzhbj8cykajlllvk4rc4qwxld")) (patches (search-patches "avidemux-install-to-lib.patch")))) (build-system cmake-build-system) (native-inputs @@ -1878,7 +1878,7 @@ (define-public avidemux ("yasm" ,yasm) ("zlib" ,zlib))) (arguments - `(#:tests? #f ; no check target + `(#:tests? #f ; no check target #:phases ;; Make sure files inside the included ffmpeg tarball are ;; patch-shebanged. From 16360cc884030eb69590dc18d9694b04c67273f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 24 Mar 2019 22:26:50 +0100 Subject: [PATCH 043/411] gnu: flatpak: Use glib-or-gtk-build-system. This wraps 'flatpak' such that GIO_EXTRA_MODULES is set, thereby allowing GIO (part of GLib) to find the GnuTLS-based TLS backend that glib-networking provides. Fixes . Reported by Raghav Gururajan . * gnu/packages/package-management.scm (flatpak)[build-system]: Change to GLIB-OR-GTK-BUILD-SYSTEM. --- gnu/packages/package-management.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 86e8fce1dc..0b70ae4cf4 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -78,6 +78,7 @@ (define-module (gnu packages package-management) #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) + #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system python) @@ -1018,7 +1019,11 @@ (define-public flatpak (sha256 (base32 "0i0dn3w3545lvmjlzqj3j70lk8yrq64r9frp1rk6a161gwq20ixv")))) - (build-system gnu-build-system) + + ;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to + ;; find the TLS backend in glib-networking. + (build-system glib-or-gtk-build-system) + (arguments '(#:tests? #f ;; Tests fail due to trying to create files where it can't. #:configure-flags (list From 8a0e1bb12b3c22a8c9a2be17492058ca63ec7c5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 17 Mar 2019 22:12:40 +0100 Subject: [PATCH 044/411] bootloader: Remove unused 'additional-configuration' field. * gnu/bootloader.scm ()[additional-configuration]: Remove. --- gnu/bootloader.scm | 2 -- 1 file changed, 2 deletions(-) diff --git a/gnu/bootloader.scm b/gnu/bootloader.scm index a32bf5ec67..5ae8ea3ee3 100644 --- a/gnu/bootloader.scm +++ b/gnu/bootloader.scm @@ -122,8 +122,6 @@ (define-record-type* (serial-unit bootloader-configuration-serial-unit ; integer | #f (default #f)) (serial-speed bootloader-configuration-serial-speed ; integer | #f - (default #f)) - (additional-configuration bootloader-configuration-additional-configuration ; record (default #f))) From 91b6873b24c205bd445844845fb44add643d0cff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 17 Mar 2019 22:14:30 +0100 Subject: [PATCH 045/411] bootloader: Reindent record type definition. * gnu/bootloader.scm (): Reindent. --- gnu/bootloader.scm | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/gnu/bootloader.scm b/gnu/bootloader.scm index 5ae8ea3ee3..e48bcc073c 100644 --- a/gnu/bootloader.scm +++ b/gnu/bootloader.scm @@ -104,25 +104,25 @@ (define-record-type* (define-record-type* bootloader-configuration make-bootloader-configuration bootloader-configuration? - (bootloader bootloader-configuration-bootloader) ; - (target bootloader-configuration-target ; string - (default #f)) - (menu-entries bootloader-configuration-menu-entries ; list of - (default '())) - (default-entry bootloader-configuration-default-entry ; integer - (default 0)) - (timeout bootloader-configuration-timeout ; seconds as integer - (default 5)) - (theme bootloader-configuration-theme ; bootloader-specific theme - (default #f)) - (terminal-outputs bootloader-configuration-terminal-outputs ; list of symbols - (default '(gfxterm))) - (terminal-inputs bootloader-configuration-terminal-inputs ; list of symbols - (default '())) - (serial-unit bootloader-configuration-serial-unit ; integer | #f - (default #f)) - (serial-speed bootloader-configuration-serial-speed ; integer | #f - (default #f))) + (bootloader bootloader-configuration-bootloader) ; + (target bootloader-configuration-target ;string + (default #f)) + (menu-entries bootloader-configuration-menu-entries ;list of + (default '())) + (default-entry bootloader-configuration-default-entry ;integer + (default 0)) + (timeout bootloader-configuration-timeout ;seconds as integer + (default 5)) + (theme bootloader-configuration-theme ;bootloader-specific theme + (default #f)) + (terminal-outputs bootloader-configuration-terminal-outputs ;list of symbols + (default '(gfxterm))) + (terminal-inputs bootloader-configuration-terminal-inputs ;list of symbols + (default '())) + (serial-unit bootloader-configuration-serial-unit ;integer | #f + (default #f)) + (serial-speed bootloader-configuration-serial-speed ;integer | #f + (default #f))) ;;; From db1e2522f6222594fc507ce7a7ba7b1c0ac5037d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 19 Mar 2019 21:32:13 +0100 Subject: [PATCH 046/411] Add (gnu system keyboard). * gnu/system/keyboard.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu.scm (%public-modules): Add it. --- gnu.scm | 3 +- gnu/local.mk | 1 + gnu/system/keyboard.scm | 98 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 gnu/system/keyboard.scm diff --git a/gnu.scm b/gnu.scm index 3e7e7c0ebc..2c29b6dc3f 100644 --- a/gnu.scm +++ b/gnu.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès +;;; Copyright © 2014, 2015, 2016, 2017, 2019 Ludovic Courtès ;;; Copyright © 2015 Joshua S. Grant ;;; Copyright © 2017 Mathieu Othacehe ;;; @@ -45,6 +45,7 @@ (define %public-modules (gnu system file-systems) (gnu bootloader) (gnu bootloader grub) + (gnu system keyboard) (gnu system pam) (gnu system shadow) ; 'user-account' (gnu system linux-initrd) diff --git a/gnu/local.mk b/gnu/local.mk index f957b8af62..079b42c11e 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -538,6 +538,7 @@ GNU_SYSTEM_MODULES = \ %D%/system/accounts.scm \ %D%/system/file-systems.scm \ %D%/system/install.scm \ + %D%/system/keyboard.scm \ %D%/system/linux-container.scm \ %D%/system/linux-initrd.scm \ %D%/system/locale.scm \ diff --git a/gnu/system/keyboard.scm b/gnu/system/keyboard.scm new file mode 100644 index 0000000000..cd3ab37b27 --- /dev/null +++ b/gnu/system/keyboard.scm @@ -0,0 +1,98 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Ludovic Courtès +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu system keyboard) + #:use-module (guix gexp) + #:use-module ((gnu packages xorg) + #:select (xkeyboard-config console-setup)) + #:use-module (srfi srfi-9 gnu) + #:use-module (ice-9 match) + #:export (keyboard-layout? + keyboard-layout + keyboard-layout-name + keyboard-layout-variant + keyboard-layout-model + keyboard-layout-options + + keyboard-layout->console-keymap)) + +;;; Commentary: +;;; +;;; This module provides a data structure to represent keyboard layouts +;;; according to the XKB naming and classification (see the 'xkeyboard-config' +;;; package). +;;; +;;; Code: + +(define-immutable-record-type + (%keyboard-layout name variant model options) + keyboard-layout? + (name keyboard-layout-name) ;string + (variant keyboard-layout-variant) ;#f | string + (model keyboard-layout-model) ;#f | string + (options keyboard-layout-options)) ;list of strings + +(define* (keyboard-layout name #:optional variant + #:key model (options '())) + "Return a new keyboard layout with the given NAME and VARIANT. + +NAME must be a string such as \"fr\"; VARIANT must be a string such as +\"bepo\" or \"nodeadkeys\". See the 'xkeyboard-config' package for valid +options." + (%keyboard-layout name variant model options)) + +(define* (keyboard-layout->console-keymap layout + #:key + (xkeyboard-config xkeyboard-config)) + "Return a Linux console keymap file for LAYOUT, a record. +Layout information is taken from the XKEYBOARD-CONFIG package." + (define build + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils) + (ice-9 popen) + (ice-9 match)) + + (define pipe + (open-pipe* OPEN_READ + #+(file-append console-setup "/bin/ckbcomp") + (string-append "-I" + #+(file-append xkeyboard-config + "/share/X11/xkb")) + "-rules" "base" + #$@(match (keyboard-layout-model layout) + (#f '()) + (model `("-model" ,model))) + #$(keyboard-layout-name layout) + #$(or (keyboard-layout-variant layout) + "") + #$(string-join (keyboard-layout-options layout) ","))) + + (call-with-output-file #$output + (lambda (output) + (dump-port pipe output))) + + ;; Note: ckbcomp errors out when the layout name is unknown, but + ;; merely emits a warning when the variant is unknown. + (unless (zero? (close-pipe pipe)) + (error "failed to create console keymap for keyboard layout" + #$(keyboard-layout-name layout)))))) + + (computed-file (string-append "console-keymap." + (keyboard-layout-name layout)) + build)) From 8d058e7b1b1a409d3d9cc29c5650a98db4e78783 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 17 Mar 2019 22:37:53 +0100 Subject: [PATCH 047/411] bootloader: Add a 'keyboard-layout' field. * gnu/bootloader/grub.scm (keyboard-layout-file): New procedure. (grub-configuration-file)[keyboard-layout-file]: New variable. [builder]: Use it. * gnu/bootloader.scm ()[keyboard-layout]: New field. * doc/guix.texi (Bootloader Configuration): Document it. Co-authored-by: nee --- doc/guix.texi | 28 ++++++++++++++++++++++++++++ gnu/bootloader.scm | 3 +++ gnu/bootloader/grub.scm | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 66 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index a58ca4b4a7..af74f7a636 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -23654,6 +23654,34 @@ current system. The number of seconds to wait for keyboard input before booting. Set to 0 to boot immediately, and to -1 to wait indefinitely. +@cindex keyboard layout, for the bootloader +@item @code{keyboard-layout} (default: @code{#f}) +If this is @code{#f}, the bootloader's menu (if any) uses the default keyboard +layout, usually US@tie{}English (``qwerty''). + +Otherwise, this must be a @code{keyboard-layout} object. For instance, the +following example defines a standard German keyboard layout: + +@example +(keyboard-layout "de") +@end example + +@noindent +while the example below designates the bépo layout for French: + +@example +(keyboard-layout "fr" "bepo") +@end example + +The layout name and variant must match an existing layout in the +@code{xkeyboard-config} package under the @file{share/X11/xkb/symbols} +directory. + +@quotation Note +This option is currently ignored by bootloaders other than @code{grub} and +@code{grub-efi}. +@end quotation + @item @code{theme} (default: @var{#f}) The bootloader theme object describing the theme to use. If no theme is provided, some bootloaders might use a default theme, that's true diff --git a/gnu/bootloader.scm b/gnu/bootloader.scm index e48bcc073c..a381f67145 100644 --- a/gnu/bootloader.scm +++ b/gnu/bootloader.scm @@ -47,6 +47,7 @@ (define-module (gnu bootloader) bootloader-configuration-menu-entries bootloader-configuration-default-entry bootloader-configuration-timeout + bootloader-configuration-keyboard-layout bootloader-configuration-theme bootloader-configuration-terminal-outputs bootloader-configuration-terminal-inputs @@ -113,6 +114,8 @@ (define-record-type* (default 0)) (timeout bootloader-configuration-timeout ;seconds as integer (default 5)) + (keyboard-layout bootloader-configuration-keyboard-layout ; | #f + (default #f)) (theme bootloader-configuration-theme ;bootloader-specific theme (default #f)) (terminal-outputs bootloader-configuration-terminal-outputs ;list of symbols diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index 14aede72c5..e97a17b3e2 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -27,8 +27,10 @@ (define-module (gnu bootloader grub) #:use-module (gnu bootloader) #:use-module (gnu system uuid) #:use-module (gnu system file-systems) + #:use-module (gnu system keyboard) #:autoload (gnu packages bootloaders) (grub) #:autoload (gnu packages gtk) (guile-cairo guile-rsvg) + #:autoload (gnu packages xorg) (xkeyboard-config) #:use-module (ice-9 match) #:use-module (ice-9 regex) #:use-module (srfi srfi-1) @@ -219,6 +221,26 @@ (define image ;;; Configuration file. ;;; +(define* (keyboard-layout-file layout + #:key + (grub grub)) + "Process the X keyboard layout description LAYOUT, a record, +and return a file in the format for GRUB keymaps. LAYOUT must be present in +the 'share/X11/xkb/symbols/' directory of 'xkeyboard-config'." + (define builder + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) + + ;; 'grub-kbdcomp' passes all its arguments but '-o' to 'ckbcomp' + ;; (from the 'console-setup' package). + (invoke #$(file-append grub "/bin/grub-mklayout") + "-i" #+(keyboard-layout->console-keymap layout) + "-o" #$output)))) + + (computed-file (string-append "grub-keymap." (keyboard-layout-name layout)) + builder)) + (define (grub-setup-io config) "Return GRUB commands to configure the input / output interfaces. The result is a string that can be inserted in grub.cfg." @@ -330,6 +352,18 @@ (define sugar #:system system #:port #~port)) + (define keyboard-layout-config + (let ((layout (bootloader-configuration-keyboard-layout config)) + (grub (bootloader-package + (bootloader-configuration-bootloader config)))) + #~(let ((keymap #$(and layout + (keyboard-layout-file layout #:grub grub)))) + (when keymap + (format port "\ +terminal_input at_keyboard +insmod keylayouts +keymap ~a~%" keymap))))) + (define builder #~(call-with-output-file #$output (lambda (port) @@ -338,6 +372,7 @@ (define builder # will be lost upon reconfiguration. ") #$sugar + #$keyboard-layout-config (format port " set default=~a set timeout=~a~%" From 956607e34095e99235706e94b61376a4c7c497bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 18 Mar 2019 21:52:18 +0100 Subject: [PATCH 048/411] services: xorg: Remove unused #:guile parameter. * gnu/services/xorg.scm (xorg-wrapper): Remove #:guile, which was unused. (xorg-start-command): Likewise. (xinitrc): Likewise. --- doc/guix.texi | 2 +- gnu/services/xorg.scm | 9 ++------- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index af74f7a636..5789b3b99b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -13352,7 +13352,7 @@ type @code{}. @end example @end deffn -@deffn {Scheme Procedure} xorg-start-command [#:guile] @ +@deffn {Scheme Procedure} xorg-start-command @ [#:modules %default-xorg-modules] @ [#:fonts %default-xorg-fonts] @ [#:configuration-file (xorg-configuration-file @dots{})] @ diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index f2a3c28c90..8381a7ed04 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -261,7 +261,6 @@ (define files #t)))) (define* (xorg-wrapper #:key - (guile (canonical-package guile-2.0)) (modules %default-xorg-modules) (configuration-file (xorg-configuration-file #:modules modules)) @@ -287,7 +286,6 @@ (define exp (program-file "X-wrapper" exp)) (define* (xorg-start-command #:key - (guile (canonical-package guile-2.0)) (modules %default-xorg-modules) (fonts %default-xorg-fonts) (configuration-file @@ -300,8 +298,7 @@ (define* (xorg-start-command #:key @code{xorg-wrapper} for more details on the arguments. The result should be used in place of @code{startx}." (define X - (xorg-wrapper #:guile guile - #:configuration-file configuration-file + (xorg-wrapper #:configuration-file configuration-file #:modules modules #:xorg-server xorg-server)) (define exp @@ -312,9 +309,7 @@ (define exp (program-file "startx" exp)) -(define* (xinitrc #:key - (guile (canonical-package guile-2.0)) - fallback-session) +(define* (xinitrc #:key fallback-session) "Return a system-wide xinitrc script that starts the specified X session, which should be passed to this script as the first argument. If not, the @var{fallback-session} will be used or, if @var{fallback-session} is false, a From b2e564515a811c75ed9bd30969bc48ac4eadebfb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 18 Mar 2019 22:56:13 +0100 Subject: [PATCH 049/411] services: xorg: Define an record type. * gnu/services/xorg.scm (): New record type. (xorg-configuration-file): Remove. (xorg-wrapper): Remove #:modules, #:configuration-file, and #:xorg-server; add optional 'config' parameter instead. Adjust accordingly. (xorg-start-command): Likewise. * doc/guix.texi (X Window): Document 'xorg-configuration'. Update 'xorg-start-command' documentation. Remove 'xorg-configuration-file' documentation. --- doc/guix.texi | 130 ++++++++++++++---------------------------- gnu/services/xorg.scm | 115 ++++++++++++++++++------------------- 2 files changed, 99 insertions(+), 146 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 5789b3b99b..b49f651562 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -13352,98 +13352,52 @@ type @code{}. @end example @end deffn -@deffn {Scheme Procedure} xorg-start-command @ - [#:modules %default-xorg-modules] @ - [#:fonts %default-xorg-fonts] @ - [#:configuration-file (xorg-configuration-file @dots{})] @ - [#:xorg-server @var{xorg-server}] - [#:xserver-arguments '("-nolisten" "tcp")] -Return a @code{startx} script in which @var{modules}, a list of X module -packages, and @var{fonts}, a list of X font directories, are available. See -@code{xorg-wrapper} for more details on the arguments. The result should be -used in place of @code{startx}. +@cindex Xorg, configuration +@deftp {Data Type} xorg-configuration +This data type represents the configuration of the Xorg graphical display +server. Note that there is not Xorg service; instead, the X server is started +by a ``display manager'' such as GDM, SDDM, and SLiM. Thus, the configuration +of these display managers aggregates an @code{xorg-configuration} record. + +@table @asis +@item @code{modules} (default: @code{%default-xorg-modules}) +This is a list of @dfn{module packages} loaded by the Xorg +server---e.g., @code{xf86-video-vesa}, @code{xf86-input-keyboard}, and so on. + +@item @code{fonts} (default: @code{%default-xorg-fonts}) +This is a list of font directories to add to the server's @dfn{font path}. + +@item @code{drivers} (default: @code{'()}) +This must be either the empty list, in which case Xorg chooses a graphics +driver automatically, or a list of driver names that will be tried in this +order---e.g., @code{("modesetting" "vesa")}. + +@item @code{resolutions} (default: @code{'()}) +When @code{resolutions} is the empty list, Xorg chooses an appropriate screen +resolution. Otherwise, it must be a list of resolutions---e.g., @code{((1024 +768) (640 480))}. + +@item @code{extra-config} (default: @code{'()}) +This is a list of strings or objects appended to the configuration file. It +is used to pass extra text to be added verbatim to the configuration file. + +@item @code{server} (default: @code{xorg-server}) +This is the package providing the Xorg server. + +@item @code{server-arguments} (default: @code{%default-xorg-server-arguments}) +This is the list of command-line arguments to pass to the X server. The +default is @code{-nolisten tcp}. +@end table +@end deftp + +@deffn {Scheme Procedure} xorg-start-command [@var{config}] +Return a @code{startx} script in which the modules, fonts, etc. specified +in @var{config}, are available. The result should be used in place of +@code{startx}. Usually the X server is started by a login manager. @end deffn -@cindex @code{-listen tcp}, for X11. -This procedure is useful to override command line options for the X server, -such as having it listen to over TCP: - -@example -(operating-system - ... - (services - (modify-services %desktop-services - (slim-service-type config => - (slim-configuration - (inherit config) - (startx (xorg-start-command - #:xserver-arguments '("-listen" "tcp")))))))) -@end example - -@deffn {Scheme Procedure} xorg-configuration-file @ - [#:modules %default-xorg-modules] @ - [#:fonts %default-xorg-fonts] @ - [#:drivers '()] [#:resolutions '()] [#:extra-config '()] -Return a configuration file for the Xorg server containing search paths for -all the common drivers. - -@var{modules} must be a list of @dfn{module packages} loaded by the Xorg -server---e.g., @code{xf86-video-vesa}, @code{xf86-input-keyboard}, and so on. -@var{fonts} must be a list of font directories to add to the server's -@dfn{font path}. - -@var{drivers} must be either the empty list, in which case Xorg chooses a -graphics driver automatically, or a list of driver names that will be tried in -this order---e.g., @code{("modesetting" "vesa")}. - -Likewise, when @var{resolutions} is the empty list, Xorg chooses an -appropriate screen resolution; otherwise, it must be a list of -resolutions---e.g., @code{((1024 768) (640 480))}. - -Last, @var{extra-config} is a list of strings or objects appended to the -configuration file. It is used to pass extra text to be -added verbatim to the configuration file. - -@cindex keymap -@cindex keyboard layout -This procedure is especially useful to configure a different keyboard layout -than the default US keymap. For instance, to use the ``bépo'' keymap by -default on the display manager: - -@example -(define bepo-evdev - "Section \"InputClass\" - Identifier \"evdev keyboard catchall\" - Driver \"evdev\" - MatchIsKeyboard \"on\" - Option \"xkb_layout\" \"fr\" - Option \"xkb_variant\" \"bepo\" -EndSection") - -(operating-system - ... - (services - (modify-services %desktop-services - (slim-service-type config => - (slim-configuration - (inherit config) - (startx (xorg-start-command - #:configuration-file - (xorg-configuration-file - #:extra-config - (list bepo-evdev))))))))) -@end example - -The @code{MatchIsKeyboard} line specifies that we only apply the configuration -to keyboards. Without this line, other devices such as touchpad may not work -correctly because they will be attached to the wrong driver. In this example, -the user typically used @code{setxkbmap fr bepo} to set their favorite keymap -once logged in. The first argument corresponds to the layout, while the second -argument corresponds to the variant. The @code{xkb_variant} line can be omitted -to select the default variant. -@end deffn @deffn {Scheme Procedure} screen-locker-service @var{package} [@var{program}] Add @var{package}, a package for a screen locker or screen saver whose diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index 8381a7ed04..3c547c1303 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -48,7 +48,16 @@ (define-module (gnu services xorg) #:use-module (srfi srfi-9) #:use-module (srfi srfi-26) #:use-module (ice-9 match) - #:export (xorg-configuration-file + #:export (xorg-configuration + xorg-configuration? + xorg-configuration-modules + xorg-configuration-fonts + xorg-configuration-drivers + xorg-configuration-resolutions + xorg-configuration-extra-config + xorg-configuration-server + xorg-configuration-server-arguments + %default-xorg-modules %default-xorg-fonts xorg-wrapper @@ -122,33 +131,36 @@ (define %default-xorg-fonts "/share/fonts/X11/misc") (file-append font-adobe75dpi "/share/fonts/X11/75dpi"))) -(define* (xorg-configuration-file #:key - (modules %default-xorg-modules) - (fonts %default-xorg-fonts) - (drivers '()) (resolutions '()) - (extra-config '())) - "Return a configuration file for the Xorg server containing search paths for -all the common drivers. +(define %default-xorg-server-arguments + ;; Default command-line arguments for X. + '("-nolisten" "tcp")) -@var{modules} must be a list of @dfn{module packages} loaded by the Xorg -server---e.g., @code{xf86-video-vesa}, @code{xf86-input-keyboard}, and so on. -@var{fonts} must be a list of font directories to add to the server's -@dfn{font path}. +;; Configuration of an Xorg server. +(define-record-type* + xorg-configuration make-xorg-configuration + xorg-configuration? + (modules xorg-configuration-modules ;list of packages + (default %default-xorg-modules)) + (fonts xorg-configuration-fonts ;list of packges + (default %default-xorg-fonts)) + (drivers xorg-configuration-drivers ;list of strings + (default '())) + (resolutions xorg-configuration-resolutions ;list of tuples + (default '())) + (extra-config xorg-configuration-extra-config ;list of strings + (default '())) + (server xorg-configuration-server ;package + (default xorg-server)) + (server-arguments xorg-configuration-server-arguments ;list of strings + (default %default-xorg-server-arguments))) -@var{drivers} must be either the empty list, in which case Xorg chooses a -graphics driver automatically, or a list of driver names that will be tried in -this order---e.g., @code{(\"modesetting\" \"vesa\")}. - -Likewise, when @var{resolutions} is the empty list, Xorg chooses an -appropriate screen resolution; otherwise, it must be a list of -resolutions---e.g., @code{((1024 768) (640 480))}. - -Last, @var{extra-config} is a list of strings or objects appended to the -configuration file. It is used to pass extra text to be -added verbatim to the configuration file." +(define (xorg-configuration->file config) + "Compute an Xorg configuration file corresponding to CONFIG, an + record." (define all-modules ;; 'xorg-server' provides 'fbdevhw.so' etc. - (append modules (list xorg-server))) + (append (xorg-configuration-modules config) + (list xorg-server))) (define build #~(begin @@ -159,7 +171,7 @@ (define build (call-with-output-file #$output (lambda (port) (define drivers - '#$drivers) + '#$(xorg-configuration-drivers config)) (define (device-section driver) (string-append " @@ -201,7 +213,7 @@ (define (expand modules) (display "Section \"Files\"\n" port) (for-each (lambda (font) (format port " FontPath \"~a\"~%" font)) - '#$fonts) + '#$(xorg-configuration-fonts config)) (for-each (lambda (module) (format port " ModulePath \"~a\"~%" @@ -221,7 +233,8 @@ (define (expand modules) port) (newline port) (display (string-join - (map (cut screen-section <> '#$resolutions) + (map (cut screen-section <> + '#$(xorg-configuration-resolutions config)) drivers) "\n") port) @@ -229,11 +242,10 @@ (define (expand modules) (for-each (lambda (config) (display config port)) - '#$extra-config))))) + '#$(xorg-configuration-extra-config config)))))) (computed-file "xserver.conf" build)) - (define (xorg-configuration-directory modules) "Return a directory that contains the @code{.conf} files for X.org that includes the @code{share/X11/xorg.conf.d} directories of each package listed @@ -260,51 +272,38 @@ (define files files) #t)))) -(define* (xorg-wrapper #:key - (modules %default-xorg-modules) - (configuration-file (xorg-configuration-file - #:modules modules)) - (xorg-server xorg-server)) - "Return a derivation that builds a @var{guile} script to start the X server -from @var{xorg-server}. @var{configuration-file} is the server configuration -file or a derivation that builds it; when omitted, the result of -@code{xorg-configuration-file} is used. The resulting script should be used -in place of @code{/usr/bin/X}." +(define* (xorg-wrapper #:optional (config (xorg-configuration))) + "Return a derivation that builds a script to start the X server with the +given @var{config}. The resulting script should be used in place of +@code{/usr/bin/X}." (define exp ;; Write a small wrapper around the X server. #~(begin (setenv "XORG_DRI_DRIVER_PATH" (string-append #$mesa "/lib/dri")) (setenv "XKB_BINDIR" (string-append #$xkbcomp "/bin")) - (let ((X (string-append #$xorg-server "/bin/X"))) + (let ((X (string-append #$(xorg-configuration-server config) "/bin/X"))) (apply execl X X "-xkbdir" (string-append #$xkeyboard-config "/share/X11/xkb") - "-config" #$configuration-file - "-configdir" #$(xorg-configuration-directory modules) + "-config" #$(xorg-configuration->file config) + "-configdir" #$(xorg-configuration-directory + (xorg-configuration-modules config)) (cdr (command-line)))))) (program-file "X-wrapper" exp)) -(define* (xorg-start-command #:key - (modules %default-xorg-modules) - (fonts %default-xorg-fonts) - (configuration-file - (xorg-configuration-file #:modules modules - #:fonts fonts)) - (xorg-server xorg-server) - (xserver-arguments '("-nolisten" "tcp"))) - "Return a @code{startx} script in which @var{modules}, a list of X module -packages, and @var{fonts}, a list of X font directories, are available. See -@code{xorg-wrapper} for more details on the arguments. The result should be -used in place of @code{startx}." +(define* (xorg-start-command #:optional (config (xorg-configuration))) + "Return a @code{startx} script in which the modules, fonts, etc. specified +in @var{config}, are available. The result should be used in place of +@code{startx}." (define X - (xorg-wrapper #:configuration-file configuration-file - #:modules modules - #:xorg-server xorg-server)) + (xorg-wrapper config)) + (define exp ;; Write a small wrapper around the X server. #~(apply execl #$X #$X ;; Second #$X is for argv[0]. - "-logverbose" "-verbose" "-terminate" #$@xserver-arguments + "-logverbose" "-verbose" "-terminate" + #$@(xorg-configuration-server-arguments config) (cdr (command-line)))) (program-file "startx" exp)) From 554b8607396785dcde6eb391f75f98a07ec582fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 19 Mar 2019 21:26:33 +0100 Subject: [PATCH 050/411] services: sddm, slim, gdm: Take an record. * gnu/services/sddm.scm ()[xorg-server-path] [xserver-arguments]: Remove. [xorg-configuration]: New field. (sddm-configuration-file): Adjust accordingly. * gnu/services/xorg.scm ()[startx]: Remove. [xorg-configuration]: New field. (slim-shepherd-service, slim-service): Adjust accordingly. ()[x-server]: Remove. [xorg-configuration]: New field. (gdm-shepherd-service, gdm-service): Adjust accordingly. * doc/guix.texi (X Window): Update accordingly. --- doc/guix.texi | 11 ++++------- gnu/services/sddm.scm | 14 ++++++++------ gnu/services/xorg.scm | 19 +++++++++---------- 3 files changed, 21 insertions(+), 23 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index b49f651562..5511aaaf57 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -13223,8 +13223,8 @@ your user profile. Failing to do that, if @code{auto-login-session} is false, you will be unable to log in. @end quotation -@item @code{startx} (default: @code{(xorg-start-command)}) -The command used to start the X11 graphical server. +@item @code{xorg-configuration} (default @code{(xorg-configuration)}) +Configuration of the Xorg graphical server. @item @code{xauth} (default: @code{xauth}) The XAuth package to use. @@ -13300,8 +13300,8 @@ Script to run before starting a wayland session. @item @code{sessions-directory} (default "/run/current-system/profile/share/wayland-sessions") Directory to look for desktop files starting wayland sessions. -@item @code{xorg-server-path} (default @code{xorg-start-command}) -Path to xorg-server. +@item @code{xorg-configuration} (default @code{(xorg-configuration)}) +Configuration of the Xorg graphical server. @item @code{xauth-path} (default @code{#~(string-append #$xauth "/bin/xauth")}) Path to xauth. @@ -13324,9 +13324,6 @@ Directory to look for desktop files starting X sessions. @item @code{minimum-vt} (default: 7) Minimum VT to use. -@item @code{xserver-arguments} (default "-nolisten tcp") -Arguments to pass to xorg-server. - @item @code{auto-login-user} (default "") User to use for auto-login. diff --git a/gnu/services/sddm.scm b/gnu/services/sddm.scm index 2ebfe22016..a33eb39c43 100644 --- a/gnu/services/sddm.scm +++ b/gnu/services/sddm.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 David Craven +;;; Copyright © 2019 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -83,8 +84,8 @@ (define-record-type* (sessions-directory sddm-configuration-sessions-directory (default "/run/current-system/profile/share/wayland-sessions")) ;; [X11] - (xorg-server-path sddm-configuration-xorg-server-path - (default (xorg-start-command))) + (xorg-configuration sddm-configuration-xorg + (default (xorg-configuration))) (xauth-path sddm-configuration-xauth-path (default (file-append xauth "/bin/xauth"))) (xephyr-path sddm-configuration-xephyr-path @@ -99,8 +100,6 @@ (define-record-type* (default "/run/current-system/profile/share/xsessions")) (minimum-vt sddm-configuration-minimum-vt (default 7)) - (xserver-arguments sddm-configuration-xserver-arguments - (default "-nolisten tcp")) ;; [Autologin] (auto-login-user sddm-configuration-auto-login-user @@ -140,7 +139,8 @@ (define (sddm-configuration-file config) SessionDir=" (sddm-configuration-sessions-directory config) " [X11] -ServerPath=" (sddm-configuration-xorg-server-path config) " +ServerPath=" (xorg-configuration-server + (sddm-configuration-xorg config)) " XauthPath=" (sddm-configuration-xauth-path config) " XephyrPath=" (sddm-configuration-xephyr-path config) " DisplayCommand=" (sddm-configuration-xdisplay-start config) " @@ -148,7 +148,9 @@ (define (sddm-configuration-file config) SessionCommand=" (sddm-configuration-xsession-command config) " SessionDir=" (sddm-configuration-xsessions-directory config) " MinimumVT=" (number->string (sddm-configuration-minimum-vt config)) " -ServerArguments=" (sddm-configuration-xserver-arguments config) " +ServerArguments=" (string-join + (xorg-configuration-server-arguments + (sddm-configuration-xorg config))) " [Autologin] User=" (sddm-configuration-auto-login-user config) " diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index 3c547c1303..a3a4d769d7 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -436,8 +436,8 @@ (define-record-type* (default shepherd)) (auto-login-session slim-configuration-auto-login-session (default #f)) - (startx slim-configuration-startx - (default (xorg-start-command))) + (xorg-configuration slim-configuration-xorg + (default (xorg-configuration))) (sessreg slim-configuration-sessreg (default sessreg))) @@ -454,7 +454,7 @@ (define slim.cfg (slim-configuration-auto-login-session config))) (slim (slim-configuration-slim config)) (xauth (slim-configuration-xauth config)) - (startx (slim-configuration-startx config)) + (startx (xorg-start-command (slim-configuration-xorg config))) (shepherd (slim-configuration-shepherd config)) (theme-name (slim-configuration-theme-name config)) (sessreg (slim-configuration-sessreg config))) @@ -561,8 +561,7 @@ (define-deprecated (slim-service #:key (slim slim) (auto-login? auto-login?) (default-user default-user) (theme theme) (theme-name theme-name) (xauth xauth) (shepherd shepherd) - (auto-login-session auto-login-session) - (startx startx)))) + (auto-login-session auto-login-session)))) ;;; @@ -641,8 +640,8 @@ (define-record-type* (default-user gdm-configuration-default-user (default #f)) (gnome-shell-assets gdm-configuration-gnome-shell-assets (default (list adwaita-icon-theme font-cantarell))) - (x-server gdm-configuration-x-server - (default (xorg-wrapper))) + (xorg-configuration gdm-configuration-xorg + (default (xorg-configuration))) (x-session gdm-configuration-x-session (default (xinitrc)))) @@ -714,7 +713,8 @@ (define (gdm-shepherd-service config) #$(gdm-configuration-dbus-daemon config)) (string-append "GDM_X_SERVER=" - #$(gdm-configuration-x-server config)) + #$(xorg-wrapper + (gdm-configuration-xorg config))) (string-append "GDM_X_SESSION=" #$(gdm-configuration-x-session config)) @@ -779,7 +779,6 @@ (define-deprecated (gdm-service #:key (gdm gdm) (service gdm-service-type (gdm-configuration (gdm gdm) - (allow-empty-passwords? allow-empty-passwords?) - (x-server x-server)))) + (allow-empty-passwords? allow-empty-passwords?)))) ;;; xorg.scm ends here From 598757e038ab5dea3b59c9c248a2ad860c41fe62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 19 Mar 2019 21:34:02 +0100 Subject: [PATCH 051/411] services: xorg: Add a 'keyboard-layout' field in . * gnu/services/xorg.scm ()[keyboard-layout]: New field. (xorg-configuration->file)[input-class-section]: New procedure. Use it. * doc/guix.texi (X Window): Document 'keyboard-layout' field. Co-authored-by: nee --- doc/guix.texi | 9 +++++++++ gnu/services/xorg.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index 5511aaaf57..4a8b66703d 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -13374,6 +13374,15 @@ When @code{resolutions} is the empty list, Xorg chooses an appropriate screen resolution. Otherwise, it must be a list of resolutions---e.g., @code{((1024 768) (640 480))}. +@cindex keyboard layout, for Xorg +@cindex keymap, for Xorg +@item @code{keyboard-layout} (default: @code{#f}) +If this is @code{#f}, Xorg uses the default keyboard layout---usually US +English (``qwerty'') for a 105-key PC keyboard. + +Otherwise this must be a @code{keyboard-layout} object specifying the keyboard +layout in use when Xorg is running. + @item @code{extra-config} (default: @code{'()}) This is a list of strings or objects appended to the configuration file. It is used to pass extra text to be added verbatim to the configuration file. diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index a3a4d769d7..05465f3bdf 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -25,6 +25,7 @@ (define-module (gnu services xorg) #:use-module (gnu services) #:use-module (gnu services shepherd) #:use-module (gnu system pam) + #:use-module (gnu system keyboard) #:use-module (gnu services dbus) #:use-module ((gnu packages base) #:select (canonical-package)) #:use-module (gnu packages guile) @@ -147,6 +148,8 @@ (define-record-type* (default '())) (resolutions xorg-configuration-resolutions ;list of tuples (default '())) + (keyboard-layout xorg-configuration-keyboard-layout ;#f | + (default #f)) (extra-config xorg-configuration-extra-config ;list of strings (default '())) (server xorg-configuration-server ;package @@ -195,6 +198,31 @@ (define (screen-section driver resolutions) EndSubSection EndSection")) + (define (input-class-section layout variant model options) + (string-append " +Section \"InputClass\" + Identifier \"evdev keyboard catchall\" + MatchIsKeyboard \"on\" + Option \"XkbLayout\" " (object->string layout) + (if variant + (string-append " Option \"XkbVariant\" \"" + variant "\"") + "") + (if model + (string-append " Option \"XkbModel\" \"" + model "\"") + "") + (match options + (() + "") + (_ + (string-append " Option \"XkbOptions\" \"" + (string-join options ",") "\""))) " + + MatchDevicePath \"/dev/input/event*\" + Driver \"evdev\" +EndSection\n")) + (define (expand modules) ;; Append to MODULES the relevant /lib/xorg/modules ;; sub-directories. @@ -240,6 +268,19 @@ (define (expand modules) port) (newline port) + (let ((layout #$(and=> (xorg-configuration-keyboard-layout config) + keyboard-layout-name)) + (variant #$(and=> (xorg-configuration-keyboard-layout config) + keyboard-layout-variant)) + (model #$(and=> (xorg-configuration-keyboard-layout config) + keyboard-layout-model)) + (options '#$(keyboard-layout-options + (xorg-configuration-keyboard-layout config)))) + (when layout + (display (input-class-section layout variant model options) + port) + (newline port))) + (for-each (lambda (config) (display config port)) '#$(xorg-configuration-extra-config config)))))) From 132823c2acd34f46d6df89ce3635db62643a09c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 19 Mar 2019 22:53:48 +0100 Subject: [PATCH 052/411] vm: 'virtualized-operating-system' inherits from the user's bootloader config. * gnu/system/vm.scm (virtualized-operating-system): Inherit from the bootloader of OS. --- gnu/system/vm.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 55cddb1a4b..5068cb3068 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -790,6 +790,7 @@ (define virtual-file-systems ;; force the traditional i386/BIOS method. ;; See . (bootloader (bootloader-configuration + (inherit (operating-system-bootloader os)) (bootloader grub-bootloader) (target "/dev/vda"))) From 48e595b7a8f8f83ba00386e4dccf1ef809474226 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 20 Mar 2019 12:17:14 +0100 Subject: [PATCH 053/411] gnu: Add loadkeys-static. * gnu/packages/linux.scm (loadkeys-static): New variable. --- gnu/packages/linux.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index bc2219b1fa..d52e12f9cd 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1999,6 +1999,43 @@ (define-public kbd 'loadkeys', 'setfont', 'kbdinfo', and 'chvt'.") (license license:gpl2+))) +(define-public loadkeys-static + (package + (inherit kbd) + (name "loadkeys-static") + (arguments + (substitute-keyword-arguments (package-arguments kbd) + ((#:configure-flags flags ''()) + `(append '("LDFLAGS=-static" "--disable-shared" "--disable-nls" + "--disable-vlock" ;so we don't need libpam + "--disable-libkeymap") + ,flags)) + ((#:make-flags flags ''()) + `(cons "LDFLAGS=-all-static" ,flags)) + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; The binary keeps references to gzip, among other things, + ;; which we don't need in the initrd, so strip references. + (remove-store-references "src/loadkeys") + + (install-file "src/loadkeys" + (string-append out "/bin")) + #t))) + (delete 'post-install))) + ((#:strip-flags _ '()) + ''("--strip-all")) + ((#:allowed-references _ '()) + '()))) + + (synopsis "Statically-linked @command{loadkeys} program") + + ;; This package is meant to be used internally in the initrd so don't + ;; expose it. + (properties '((hidden? . #t))))) + (define-public inotify-tools (package (name "inotify-tools") From ae7a316b9da0d1a50c5abdc531c68c8e98e561c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 20 Mar 2019 12:19:14 +0100 Subject: [PATCH 054/411] system: Initialize console keyboard layout in the initrd. Partially fixes . * gnu/system.scm ()[keyboard-layout]: New field. (operating-system-initrd-file): Pass #:keyboard-layout to MAKE-INITRD. * gnu/system/linux-initrd.scm (raw-initrd): Add #:keyboard-layout. Pass #:keymap-file to 'boot-system'. (base-initrd): Add #:keyboard-layout. [helper-packages]: Add LOADKEYS-STATIC when KEYBOARD-LAYOUT is true. Pass #:keyboard-layout to 'raw-initrd'. * gnu/build/linux-boot.scm (boot-system): Add #:keymap-file and honor it. * doc/guix.texi (operating-system Reference): Document the 'keyboard-layout' field. (Initial RAM Disk): Update 'raw-initrd' and 'base-initrd' documentation. --- doc/guix.texi | 34 +++++++++++++++++++++++++++++++++- gnu/build/linux-boot.scm | 15 +++++++++++++-- gnu/system.scm | 7 +++++-- gnu/system/linux-initrd.scm | 26 ++++++++++++++++++++++++-- 4 files changed, 75 insertions(+), 7 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 4a8b66703d..fb3fef689a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -10405,6 +10405,24 @@ the command-line of the kernel---e.g., @code{("console=ttyS0")}. @item @code{bootloader} The system bootloader configuration object. @xref{Bootloader Configuration}. +@item @code{keyboard-layout} (default: @code{#f}) +This field specifies the keyboard layout to use in the console. It can be +either @code{#f}, in which case the default keyboard layout is used (usually +US English), or a @code{} record. + +This keyboard layout is in effect as soon as the kernel has booted. For +instance, it is the keyboard layout in effect when you type a passphrase if +your root file system is on a @code{luks-device-mapping} mapped device +(@pxref{Mapped Devices}). + +@quotation Note +This does @emph{not} specify the keyboard layout used by the bootloader, nor +that used by the graphical display server. @xref{Bootloader Configuration}, +for information on how to specify the bootloader's keyboard layout. @xref{X +Window}, for information on how to specify the keyboard layout used by the X +Window System. +@end quotation + @item @code{initrd-modules} (default: @code{%base-initrd-modules}) @cindex initrd @cindex initial RAM disk @@ -23493,6 +23511,7 @@ here is how to use it and customize it further. @cindex initial RAM disk @deffn {Scheme Procedure} raw-initrd @var{file-systems} @ [#:linux-modules '()] [#:mapped-devices '()] @ + [#:keyboard-layout #f] @ [#:helper-packages '()] [#:qemu-networking? #f] [#:volatile-root? #f] Return a derivation that builds a raw initrd. @var{file-systems} is a list of file systems to be mounted by the initrd, possibly in addition to @@ -23504,6 +23523,12 @@ the root file system specified on the kernel command line via @code{--root}. include @code{e2fsck/static} or other packages needed by the initrd to check the root file system. +When true, @var{keyboard-layout} is a @code{} record denoting +the desired console keyboard layout. This is done before @var{mapped-devices} +are set up and before @var{file-systems} are mounted such that, should the +user need to enter a passphrase or use the REPL, this happens using the +intended keyboard layout. + When @var{qemu-networking?} is true, set up networking with the standard QEMU parameters. When @var{virtio?} is true, load additional modules so that the initrd can be used as a QEMU guest with para-virtualized I/O drivers. @@ -23513,7 +23538,8 @@ to it are lost. @end deffn @deffn {Scheme Procedure} base-initrd @var{file-systems} @ - [#:mapped-devices '()] [#:qemu-networking? #f] [#:volatile-root? #f]@ + [#:mapped-devices '()] [#:keyboard-layout #f] @ + [#:qemu-networking? #f] [#:volatile-root? #f] @ [#:linux-modules '()] Return as a file-like object a generic initrd, with kernel modules taken from @var{linux}. @var{file-systems} is a list of file-systems to be @@ -23521,6 +23547,12 @@ mounted by the initrd, possibly in addition to the root file system specified on the kernel command line via @code{--root}. @var{mapped-devices} is a list of device mappings to realize before @var{file-systems} are mounted. +When true, @var{keyboard-layout} is a @code{} record denoting +the desired console keyboard layout. This is done before @var{mapped-devices} +are set up and before @var{file-systems} are mounted such that, should the +user need to enter a passphrase or use the REPL, this happens using the +intended keyboard layout. + @var{qemu-networking?} and @var{volatile-root?} behaves as in @code{raw-initrd}. The initrd is automatically populated with all the kernel modules necessary diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm index 44b3506284..a35d18ad7c 100644 --- a/gnu/build/linux-boot.scm +++ b/gnu/build/linux-boot.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès ;;; Copyright © 2017 Mathieu Othacehe ;;; ;;; This file is part of GNU Guix. @@ -437,6 +437,7 @@ (define (switch-root root) (define* (boot-system #:key (linux-modules '()) linux-module-directory + keymap-file qemu-guest-networking? volatile-root? pre-mount @@ -444,7 +445,8 @@ (define* (boot-system #:key (on-error 'debug)) "This procedure is meant to be called from an initrd. Boot a system by first loading LINUX-MODULES (a list of module names) from -LINUX-MODULE-DIRECTORY, then setting up QEMU guest networking if +LINUX-MODULE-DIRECTORY, then installing KEYMAP-FILE with 'loadkeys' (if +KEYMAP-FILE is true), then setting up QEMU guest networking if QEMU-GUEST-NETWORKING? is true, calling PRE-MOUNT, mounting the file systems specified in MOUNTS, and finally booting into the new root if any. The initrd supports kernel command-line options '--load', '--root', and '--repl'. @@ -491,6 +493,15 @@ (define (lookup-module name) #:lookup-module lookup-module) (map lookup-module linux-modules)) + (when keymap-file + (let ((status (system* "loadkeys" keymap-file))) + (unless (zero? status) + ;; Emit a warning rather than abort when we cannot load + ;; KEYMAP-FILE. + (format (current-error-port) + "warning: 'loadkeys' exited with status ~a~%" + status)))) + (when qemu-guest-networking? (unless (configure-qemu-networking) (display "network interface is DOWN\n"))) diff --git a/gnu/system.scm b/gnu/system.scm index 6bccdaa8c2..035bbd82a1 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2015, 2016 Alex Kost ;;; Copyright © 2016 Chris Marusich @@ -157,6 +157,8 @@ (define-record-type* operating-system (default '())) ; list of gexps/strings (bootloader operating-system-bootloader) ; + (keyboard-layout operating-system-keyboard-layout ;#f | + (default #f)) (initrd operating-system-initrd ; (list fs) -> file-like (default base-initrd)) (initrd-modules operating-system-initrd-modules ; list of strings @@ -878,7 +880,8 @@ (define make-initrd #:linux (operating-system-kernel os) #:linux-modules (operating-system-initrd-modules os) - #:mapped-devices mapped-devices)) + #:mapped-devices mapped-devices + #:keyboard-layout (operating-system-keyboard-layout os))) (define (locale-name->definition* name) "Variant of 'locale-name->definition' that raises an error upon failure." diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm index 983c6d81c8..656afd1ddb 100644 --- a/gnu/system/linux-initrd.scm +++ b/gnu/system/linux-initrd.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès ;;; Copyright © 2016 Mark H Weaver ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2017 Mathieu Othacehe @@ -31,10 +31,13 @@ (define-module (gnu system linux-initrd) #:use-module (gnu packages disk) #:use-module (gnu packages linux) #:use-module (gnu packages guile) + #:use-module ((gnu packages xorg) + #:select (console-setup xkeyboard-config)) #:use-module ((gnu packages make-bootstrap) #:select (%guile-static-stripped)) #:use-module (gnu system file-systems) #:use-module (gnu system mapped-devices) + #:use-module (gnu system keyboard) #:use-module (ice-9 match) #:use-module (ice-9 regex) #:use-module (ice-9 vlist) @@ -139,6 +142,7 @@ (define* (raw-initrd file-systems (linux linux-libre) (linux-modules '()) (mapped-devices '()) + (keyboard-layout #f) (helper-packages '()) qemu-networking? volatile-root? @@ -152,6 +156,11 @@ (define* (raw-initrd file-systems HELPER-PACKAGES is a list of packages to be copied in the initrd. It may include e2fsck/static or other packages needed by the initrd to check root partition. +When true, KEYBOARD-LAYOUT is a record denoting the desired +console keyboard layout. This is done before MAPPED-DEVICES are set up and +before FILE-SYSTEMS are mounted such that, should the user need to enter a +passphrase or use the REPL, this happens using the intended keyboard layout. + When QEMU-NETWORKING? is true, set up networking with the standard QEMU parameters. @@ -206,6 +215,8 @@ (define kodir (and #$@device-mapping-commands)) #:linux-modules '#$linux-modules #:linux-module-directory '#$kodir + #:keymap-file #+(and=> keyboard-layout + keyboard-layout->console-keymap) #:qemu-guest-networking? #$qemu-networking? #:volatile-root? '#$volatile-root? #:on-error '#$on-error))) @@ -290,6 +301,7 @@ (define* (base-initrd file-systems (linux linux-libre) (linux-modules '()) (mapped-devices '()) + (keyboard-layout #f) qemu-networking? volatile-root? (extra-modules '()) ;deprecated @@ -300,6 +312,11 @@ (define* (base-initrd file-systems on the kernel command line via '--root'. MAPPED-DEVICES is a list of device mappings to realize before FILE-SYSTEMS are mounted. +When true, KEYBOARD-LAYOUT is a record denoting the desired +console keyboard layout. This is done before MAPPED-DEVICES are set up and +before FILE-SYSTEMS are mounted such that, should the user need to enter a +passphrase or use the REPL, this happens using the intended keyboard layout. + QEMU-NETWORKING? and VOLATILE-ROOT? behaves as in raw-initrd. The initrd is automatically populated with all the kernel modules necessary @@ -316,13 +333,18 @@ (define linux-modules* ,@extra-modules)) (define helper-packages - (file-system-packages file-systems #:volatile-root? volatile-root?)) + (append (file-system-packages file-systems + #:volatile-root? volatile-root?) + (if keyboard-layout + (list loadkeys-static) + '()))) (raw-initrd file-systems #:linux linux #:linux-modules linux-modules* #:mapped-devices mapped-devices #:helper-packages helper-packages + #:keyboard-layout keyboard-layout #:qemu-networking? qemu-networking? #:volatile-root? volatile-root? #:on-error on-error)) From 2bbb4ead771fcb29266607b338b21c6dd97e3f69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 20 Mar 2019 22:45:44 +0100 Subject: [PATCH 055/411] doc: Document keyboard layout. * doc/guix.texi (Keyboard Layout): New node. (Bootloader Configuration): Remove examples and refer to it. (X Window): Add cross-reference. --- doc/guix.texi | 126 ++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 108 insertions(+), 18 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index fb3fef689a..63405bcf49 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -251,6 +251,7 @@ System Configuration * File Systems:: Configuring file system mounts. * Mapped Devices:: Block device extra processing. * User Accounts:: Specifying user accounts. +* Keyboard Layout:: How the system interprets key strokes. * Locales:: Language and cultural convention settings. * Services:: Specifying system services. * Setuid Programs:: Programs running with root privileges. @@ -10132,6 +10133,7 @@ instance to support new system services. * File Systems:: Configuring file system mounts. * Mapped Devices:: Block device extra processing. * User Accounts:: Specifying user accounts. +* Keyboard Layout:: How the system interprets key strokes. * Locales:: Language and cultural convention settings. * Services:: Specifying system services. * Setuid Programs:: Programs running with root privileges. @@ -10992,6 +10994,108 @@ Note that the ``root'' account is not included here. It is a special-case and is automatically added whether or not it is specified. @end defvr +@node Keyboard Layout +@section Keyboard Layout + +To specify what each key of your keyboard does, you need to tell the operating +system what @dfn{keyboard layout} you want to use. The default, when nothing +is specified, is the US English QWERTY layout for 105-key PC keyboards. +However, German speakers will usually prefer the German QWERTZ layout, French +speakers will want the AZERTY layout, and so on; hackers might prefer Dvorak +or bépo, and they might even want to further customize the effect of some of +the keys. This section explains how to get that done. + +@cindex keyboard layout, definition +There are three components that will want to know about your keyboard layout: + +@itemize +@item +The @emph{bootloader} may want to know what keyboard layout you want to use +(@pxref{Bootloader Configuration, @code{keyboard-layout}}). This is useful if +you want, for instance, to make sure that you can type the passphrase of your +encrypted root partition using the right layout. + +@item +The @emph{operating system kernel}, Linux, will need that so that the console +is properly configured (@pxref{operating-system Reference, +@code{keyboard-layout}}). + +@item +The @emph{graphical display server}, usually Xorg, also has its own idea of +the keyboard layout (@pxref{X Window, @code{keyboard-layout}}). +@end itemize + +Guix allows you to configure all three separately but, fortunately, it allows +you to share the same keyboard layout for all three components. + +@cindex XKB, keyboard layouts +Keyboard layouts are represented by records created by the +@code{keyboard-layout} procedure of @code{(gnu system keyboard)}. Following +the X Keyboard extension (XKB), each layout has four attributes: a name (often +a language code such as ``fi'' for Finnish or ``jp'' for Japanese), an +optional variant name, an optional keyboard model name, and a possibly empty +list of additional options. In most cases the layout name is all you care +about. Here are a few example: + +@example +;; The German QWERTZ layout. Here we assume a standard +;; "pc105" keyboard model. +(keyboard-layout "de") + +;; The bépo variant of the French layout. +(keyboard-layout "fr" "bepo") + +;; The Catalan layout. +(keyboard-layout "es" "cat") + +;; The Latin American Spanish layout. In addition, the +;; "Caps Lock" key is used as an additional "Ctrl" key, +;; and the "Menu" key is used as a "Compose" key to enter +;; accented letters. +(keyboard-layout "latam" + #:options '("ctrl:nocaps" "compose:menu")) + +;; The Russian layout for a ThinkPad keyboard. +(keyboard-layout "ru" #:model "thinkpad") + +;; The "US international" layout, which is the US layout plus +;; dead keys to enter accented characters. This is for an +;; Apple MacBook keyboard. +(keyboard-layout "us" "intl" #:model "macbook78") +@end example + +See the @file{share/X11/xkb} directory of the @code{xkeyboard-config} package +for a complete list of supported layouts, variants, and models. + +@cindex keyboard layout, configuration +Let's say you want your system to use the Turkish keyboard layout throughout +your system---bootloader, console, and Xorg. Here's what your system +configuration would look like: + +@lisp +;; Using the Turkish layout for the bootloader, the console, +;; and for Xorg. + +(operating-system + ;; ... + (keyboard-layout (keyboard-layout "tr")) ;for the console + (bootloader (bootloader-configuration + (bootloader grub-efi-bootloader) + (target "/boot/efi") + (keyboard-layout keyboard-layout))) ;for GRUB + (services (modify-services %desktop-services + (slim-service-type config => + (slim-configuration + (inherit config) + (xorg-configuration + (xorg-configuration ;for Xorg + (keyboard-layout keyboard-layout)))))))) +@end lisp + +In the example above, for GRUB and for Xorg, we just refer to the +@code{keyboard-layout} field defined above, but we could just as well refer to +a different layout. + @node Locales @section Locales @@ -13399,7 +13503,8 @@ If this is @code{#f}, Xorg uses the default keyboard layout---usually US English (``qwerty'') for a 105-key PC keyboard. Otherwise this must be a @code{keyboard-layout} object specifying the keyboard -layout in use when Xorg is running. +layout in use when Xorg is running. @xref{Keyboard Layout}, for more +information on how to specify the keyboard layout. @item @code{extra-config} (default: @code{'()}) This is a list of strings or objects appended to the configuration file. It @@ -23651,23 +23756,8 @@ The number of seconds to wait for keyboard input before booting. Set to If this is @code{#f}, the bootloader's menu (if any) uses the default keyboard layout, usually US@tie{}English (``qwerty''). -Otherwise, this must be a @code{keyboard-layout} object. For instance, the -following example defines a standard German keyboard layout: - -@example -(keyboard-layout "de") -@end example - -@noindent -while the example below designates the bépo layout for French: - -@example -(keyboard-layout "fr" "bepo") -@end example - -The layout name and variant must match an existing layout in the -@code{xkeyboard-config} package under the @file{share/X11/xkb/symbols} -directory. +Otherwise, this must be a @code{keyboard-layout} object (@pxref{Keyboard +Layout}). @quotation Note This option is currently ignored by bootloaders other than @code{grub} and From fab9aa1daa5d4ebcd80d934a6f00db4a1e6afb8a Mon Sep 17 00:00:00 2001 From: Pkill -9 Date: Sat, 23 Mar 2019 11:49:52 +0000 Subject: [PATCH 056/411] gnu: Add xfce4-whiskermenu-plugin. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/xfce.scm (xfce4-whiskermenu-plugin): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/xfce.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm index 6c253849f6..8543dcffed 100644 --- a/gnu/packages/xfce.scm +++ b/gnu/packages/xfce.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2017 Petter ;;; Copyright © 2017 ng0 ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2019 Pkill -9 ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +30,7 @@ (define-module (gnu packages xfce) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) + #:use-module (guix build-system cmake) #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) @@ -406,6 +408,39 @@ (define-public xfce4-pulseaudio-plugin keys for controlling the audio volume.") (license gpl2+))) +(define-public xfce4-whiskermenu-plugin + (package + (name "xfce4-whiskermenu-plugin") + (version "2.3.1") + (source (origin + (method url-fetch) + (uri (string-append "http://archive.xfce.org/src/panel-plugins/" + name "/" (version-major+minor version) "/" + name "-" version ".tar.bz2")) + (sha256 + (base32 + "1cnas2x7xi53v6ylq44040narhzd828dc0ysz8yk3qn2mmvp5yr2")))) + (build-system cmake-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool))) + (inputs + `(("xfce4-panel" ,xfce4-panel) + ("garcon" ,garcon) + ("exo" ,exo) + ("gtk+" ,gtk+-2))) + (arguments + `(#:tests? #f)) ; no tests + (home-page "https://goodies.xfce.org/projects/panel-plugins/xfce4-whiskermenu-plugin") + (synopsis "Application menu panel plugin for Xfce") + (description + "This package provides an alternative to the default application menu +panel plugin for Xfce4. It uses separate sections to display categories and +applications, and includes a search bar to search for applications.") + ;; The main plugin code is covered by gpl2, but files in panel-plugin directory + ;; are covered by gpl2+. The SVG icon is covered by gpl2. + (license (list gpl2 gpl2+)))) + (define-public xfce4-xkb-plugin (package (name "xfce4-xkb-plugin") From 64843c6b0fddd0257f7fbd426e85b12fc365e5eb Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Mon, 25 Mar 2019 01:34:07 +0300 Subject: [PATCH 057/411] gnu: perl-time-hires: Update source tarball URL. * gnu/packages/perl.scm (perl-time-hires)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 7de2f19ef7..228e142510 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -8612,7 +8612,7 @@ (define-public perl-time-hires (source (origin (method url-fetch) (uri (string-append - "mirror://cpan/authors/id/J/JH/JHI/Time-HiRes-" + "mirror://cpan/authors/id/A/AT/ATOOMIC/Time-HiRes-" version ".tar.gz")) (sha256 (base32 From ea87b4e37d56bae7c8262c9d539ecfc9fae5e0fa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 20:37:55 +0100 Subject: [PATCH 058/411] gnu: Add r-stepwise. * gnu/packages/cran.scm (r-stepwise): New variable. --- gnu/packages/cran.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b638e46cf5..12c3989b18 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11977,3 +11977,22 @@ (define-public r-untb "This package provides numerical simulations, and visualizations, of Hubbell's @dfn{Unified Neutral Theory of Biodiversity} (UNTB).") (license license:gpl2+))) + +(define-public r-stepwise + (package + (name "r-stepwise") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "stepwise" version)) + (sha256 + (base32 + "1lbx1bxwkf9dw6q46w40pp7h5nkxgghmx8rkpaymm6iybc7gyir2")))) + (build-system r-build-system) + (home-page "http://stat.sfu.ca/statgen/research/stepwise.html") + (synopsis "Stepwise detection of recombination breakpoints") + (description + "This package provides a stepwise approach to identifying recombination +breakpoints in a genomic sequence alignment.") + (license license:gpl2+))) From 2a35bb1509a3f5ed3618b37de8dc4c020266d514 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 22:57:42 +0100 Subject: [PATCH 059/411] gnu: Add r-snpmaxsel. * gnu/packages/cran.scm (r-snpmaxsel): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 12c3989b18..6b45e6c9d4 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11996,3 +11996,27 @@ (define-public r-stepwise "This package provides a stepwise approach to identifying recombination breakpoints in a genomic sequence alignment.") (license license:gpl2+))) + +(define-public r-snpmaxsel + (package + (name "r-snpmaxsel") + (version "1.0-3") + (source + (origin + (method url-fetch) + (uri (cran-uri "SNPmaxsel" version)) + (sha256 + (base32 + "0pjvixwqzjd3jwccc8yqq9c76afvbmfq0z1w0cwyj8bblrjpx13z")))) + (properties `((upstream-name . "SNPmaxsel"))) + (build-system r-build-system) + (propagated-inputs + `(("r-combinat" ,r-combinat) + ("r-mvtnorm" ,r-mvtnorm))) + (home-page "https://cran.r-project.org/web/packages/SNPmaxsel/index.html") + (synopsis "Maximally selected statistics for SNP data") + (description + "This package implements asymptotic methods related to maximally selected +statistics, with applications to @dfn{single-nucleotide polymorphism} (SNP) +data.") + (license license:gpl2+))) From 011ec1e51bc970173654babe63f8ec2fcec42eef Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:17:31 +0100 Subject: [PATCH 060/411] gnu: Add udunits. * gnu/packages/c.scm (udunits): New variable. --- gnu/packages/c.scm | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm index 3b20e84a91..2629ebb6dd 100644 --- a/gnu/packages/c.scm +++ b/gnu/packages/c.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016, 2018 Ludovic Courtès -;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus +;;; Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 Pierre Neidhardt ;;; Copyright © 2019 Efraim Flashner @@ -38,7 +38,8 @@ (define-module (gnu packages c) #:use-module (gnu packages python) #:use-module (gnu packages autotools) #:use-module (gnu packages gettext) - #:use-module (gnu packages pkg-config)) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages xml)) (define-public tcc (package @@ -257,3 +258,32 @@ (define-public libbytesize every project that needs to deal with sizes in bytes. It is written in the C language with thin bindings for other languages.") (license license:lgpl2.1+))) + +(define-public udunits + (package + (name "udunits") + (version "2.2.26") + (source (origin + (method url-fetch) + (uri (string-append "ftp://ftp.unidata.ucar.edu/pub/udunits/" + "udunits-" version ".tar.gz")) + (sha256 + (base32 + "0v9mqw4drnkzkm57331ail6yvs9485jmi37s40lhvmf7r5lli3rn")))) + (build-system gnu-build-system) + (inputs + `(("expat" ,expat))) + (home-page "https://www.unidata.ucar.edu/software/udunits/") + (synopsis "C library for units of physical quantities and value-conversion utils") + (description + "The UDUNITS-2 package provides support for units of physical quantities. +Its three main components are: + +@enumerate +@item @code{udunits2lib}, a C library for units of physical quantities; +@item @code{udunits2prog}, a utility for obtaining the definition of a unit + and for converting numeric values between compatible units; and +@item an extensive database of units. +@end enumerate\n") + ;; Like the BSD-3 license but with an extra anti patent clause. + (license (license:non-copyleft "file://COPYRIGHT")))) From 7002c44fb0d30ce2800871a518bcf03c21992541 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:17:48 +0100 Subject: [PATCH 061/411] gnu: Add r-units. * gnu/packages/cran.scm (r-units): New variable. --- gnu/packages/cran.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 6b45e6c9d4..17c14cd08d 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -41,6 +41,7 @@ (define-module (gnu packages cran) #:use-module (gnu packages algebra) #:use-module (gnu packages base) #:use-module (gnu packages bioinformatics) + #:use-module (gnu packages c) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages databases) @@ -12020,3 +12021,29 @@ (define-public r-snpmaxsel statistics, with applications to @dfn{single-nucleotide polymorphism} (SNP) data.") (license license:gpl2+))) + +(define-public r-units + (package + (name "r-units") + (version "0.6-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "units" version)) + (sha256 + (base32 + "0w7iwp8c66d5gj4rsb8c87vb0ja39hym6fmfnqaqwb3is1snfa2y")))) + (build-system r-build-system) + (inputs + `(("udunits" ,udunits))) + (propagated-inputs + `(("r-rcpp" ,r-rcpp))) + (home-page "https://github.com/r-quantities/units/") + (synopsis "Measurement Units for R Vectors") + (description + "This package provides support for measurement units in R vectors, +matrices and arrays: automatic propagation, conversion, derivation and +simplification of units; raising errors in case of unit incompatibility. It +is compatible with the @code{POSIXct}, @code{Date} and @code{difftime} +classes.") + (license license:gpl2))) From 518c1dea10760cb226471b5c43c1de6fbf485637 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:20:04 +0100 Subject: [PATCH 062/411] gnu: Add r-classint. * gnu/packages/cran.scm (r-classint): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 17c14cd08d..3fe4286a69 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12047,3 +12047,27 @@ (define-public r-units is compatible with the @code{POSIXct}, @code{Date} and @code{difftime} classes.") (license license:gpl2))) + +(define-public r-classint + (package + (name "r-classint") + (version "0.3-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "classInt" version)) + (sha256 + (base32 + "1fcjrb593bzvx1z57hq1sjs2gp6g7sm4d4xrhasfrps4nmbzirp2")))) + (properties `((upstream-name . "classInt"))) + (build-system r-build-system) + (propagated-inputs + `(("r-class" ,r-class) + ("r-e1071" ,r-e1071))) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "https://github.com/r-spatial/classInt/") + (synopsis "Choose univariate class intervals") + (description + "This package provides selected commonly used methods for choosing +univariate class intervals for mapping or other graphics purposes.") + (license license:gpl2+))) From 66c08ff4c307300fd47239fe1aa4225bbbf98c3b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:22:12 +0100 Subject: [PATCH 063/411] gnu: Add r-spdata. * gnu/packages/cran.scm (r-spdata): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 3fe4286a69..d4c7ef0388 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12071,3 +12071,28 @@ (define-public r-classint "This package provides selected commonly used methods for choosing univariate class intervals for mapping or other graphics purposes.") (license license:gpl2+))) + +(define-public r-spdata + (package + (name "r-spdata") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "spData" version)) + (sha256 + (base32 + "162cqb331ki43jx4r8lpkjpn2l712figd896rnawg9j1jmjyl96y")))) + (properties `((upstream-name . "spData"))) + (build-system r-build-system) + (home-page "https://github.com/Nowosad/spData") + (synopsis "Datasets for spatial analysis") + (description + "This a package containing diverse spatial datasets for demonstrating, +benchmarking and teaching spatial data analysis. It includes R data of class +@code{sf}, @code{Spatial}, and @code{nb}. It also contains data stored in a +range of file formats including GeoJSON, ESRI Shapefile and GeoPackage. Some +of the datasets are designed to illustrate specific analysis techniques. +@code{cycle_hire()} and @code{cycle_hire_osm()}, for example, are designed to +illustrate point pattern analysis techniques.") + (license license:cc0))) From e5228273de3ff6601118bffb9aead3d20f006eff Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:22:47 +0100 Subject: [PATCH 064/411] gnu: Add r-learnbayes. * gnu/packages/cran.scm (r-learnbayes): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d4c7ef0388..07d4bb08f2 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12096,3 +12096,28 @@ (define-public r-spdata @code{cycle_hire()} and @code{cycle_hire_osm()}, for example, are designed to illustrate point pattern analysis techniques.") (license license:cc0))) + +(define-public r-learnbayes + (package + (name "r-learnbayes") + (version "2.15.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "LearnBayes" version)) + (sha256 + (base32 + "0ch54v2zz2yyyk0lvn5rfikdmyz1qh9j1wk3585wl8v58mc0h4cv")))) + (properties `((upstream-name . "LearnBayes"))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/LearnBayes") + (synopsis "Functions for learning Bayesian inference") + (description + "This package provides a collection of functions helpful in learning the +basic tenets of Bayesian statistical inference. It contains functions for +summarizing basic one and two parameter posterior distributions and predictive +distributions. It contains MCMC algorithms for summarizing posterior +distributions defined by the user. It also contains functions for regression +models, hierarchical models, Bayesian tests, and illustrations of Gibbs +sampling.") + (license license:gpl2+))) From dcc502865c6f1c88065747cc3daf63ceb1bdc796 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:26:48 +0100 Subject: [PATCH 065/411] gnu: Add r-deldir. * gnu/packages/cran.scm (r-deldir): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 07d4bb08f2..2916bfa685 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12121,3 +12121,27 @@ (define-public r-learnbayes models, hierarchical models, Bayesian tests, and illustrations of Gibbs sampling.") (license license:gpl2+))) + +(define-public r-deldir + (package + (name "r-deldir") + (version "0.1-16") + (source + (origin + (method url-fetch) + (uri (cran-uri "deldir" version)) + (sha256 + (base32 + "0549kj0hlkdyvm5axsm3np30wg53fm2pxybijzw0avlgsd2y2n2q")))) + (build-system r-build-system) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "https://cran.r-project.org/web/packages/deldir") + (synopsis "Delaunay triangulation and Dirichlet (Voronoi) tessellation") + (description + "This package provides tools for calculating the Delaunay triangulation +and the Dirichlet or Voronoi tessellation (with respect to the entire plane) +of a planar point set. It plots triangulations and tessellations in various +ways, clips tessellations to sub-windows, calculates perimeters of +tessellations, and summarizes information about the tiles of the +tessellation.") + (license license:gpl2+))) From d884e4072bc6dbf65578ce4fa5f8995b179998ae Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:31:42 +0100 Subject: [PATCH 066/411] gnu: Add r-sf. * gnu/packages/cran.scm (r-sf): New variable. --- gnu/packages/cran.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 2916bfa685..4c823ab232 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -47,6 +47,7 @@ (define-module (gnu packages cran) #:use-module (gnu packages databases) #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) + #:use-module (gnu packages geo) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gl) #:use-module (gnu packages gnome) @@ -12145,3 +12146,37 @@ (define-public r-deldir tessellations, and summarizes information about the tiles of the tessellation.") (license license:gpl2+))) + +(define-public r-sf + (package + (name "r-sf") + (version "0.7-3") + (source + (origin + (method url-fetch) + (uri (cran-uri "sf" version)) + (sha256 + (base32 + "1b9lbid0hmmz8m5vhg8mi2mi2rclia6qwzd1jr8s81i2l0md828d")))) + (build-system r-build-system) + (inputs + `(("gdal" ,gdal) + ("geos" ,geos) + ("proj" ,proj.4) + ("zlib" ,zlib))) + (propagated-inputs + `(("r-classint" ,r-classint) + ("r-dbi" ,r-dbi) + ("r-magrittr" ,r-magrittr) + ("r-rcpp" ,r-rcpp) + ("r-units" ,r-units))) + (native-inputs `(("pkg-config" ,pkg-config))) + (home-page "https://github.com/r-spatial/sf/") + (synopsis "Simple features for R") + (description + "This package provides support for simple features, a standardized way to +encode spatial vector data. It binds to GDAL for reading and writing data, to +GEOS for geometrical operations, and to PROJ for projection conversions and +datum transformations.") + ;; Either of these licenses + (license (list license:gpl2 license:expat)))) From e371e534a79b491a62b9bf8e250fb504019a0a87 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:33:18 +0100 Subject: [PATCH 067/411] gnu: Add r-spdep. * gnu/packages/cran.scm (r-spdep): New variable. --- gnu/packages/cran.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 4c823ab232..ba966fff6c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12180,3 +12180,38 @@ (define-public r-sf datum transformations.") ;; Either of these licenses (license (list license:gpl2 license:expat)))) + +(define-public r-spdep + (package + (name "r-spdep") + (version "1.0-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "spdep" version)) + (sha256 + (base32 + "1ciqn5xslm4ryad10nm6fqy1qhq3qhd4hx9bj94kphfm8x1zm7kg")))) + (build-system r-build-system) + (propagated-inputs + `(("r-boot" ,r-boot) + ("r-coda" ,r-coda) + ("r-deldir" ,r-deldir) + ("r-expm" ,r-expm) + ("r-gmodels" ,r-gmodels) + ("r-learnbayes" ,r-learnbayes) + ("r-mass" ,r-mass) + ("r-matrix" ,r-matrix) + ("r-nlme" ,r-nlme) + ("r-sf" ,r-sf) + ("r-sp" ,r-sp) + ("r-spdata" ,r-spdata))) + (home-page "https://github.com/r-spatial/spdep/") + (synopsis "Spatial dependence: weighting schemes, statistics and models") + (description + "This package provides a collection of functions to create spatial +weights matrix objects from polygon contiguities, from point patterns by +distance and tessellations, for summarizing these objects, and for permitting +their use in spatial data analysis, including regional aggregation by minimum +spanning tree.") + (license license:gpl2+))) From 49a48c496f04d018f233bd5efc8b8ee11cd83cc9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:36:10 +0100 Subject: [PATCH 068/411] gnu: r-acsnminer: Move to (gnu packages cran). * gnu/packages/bioinformatics.scm (r-acsnminer): Move from here... * gnu/packages/cran.scm (r-acsnminer): ...to here. --- gnu/packages/bioinformatics.scm | 26 -------------------------- gnu/packages/cran.scm | 26 ++++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a129c48e37..807f5c87ab 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7243,32 +7243,6 @@ (define-public bioruby ;; (LGPLv2.1+) and scripts in samples (which have GPL2 and GPL2+) (license (list license:ruby license:lgpl2.1+ license:gpl2+ )))) -(define-public r-acsnminer - (package - (name "r-acsnminer") - (version "0.16.8.25") - (source (origin - (method url-fetch) - (uri (cran-uri "ACSNMineR" version)) - (sha256 - (base32 - "0gh604s8qall6zfjlwcg2ilxjvz08dplf9k5g47idhv43scm748l")))) - (properties `((upstream-name . "ACSNMineR"))) - (build-system r-build-system) - (propagated-inputs - `(("r-ggplot2" ,r-ggplot2) - ("r-gridextra" ,r-gridextra))) - (home-page "https://cran.r-project.org/web/packages/ACSNMineR") - (synopsis "Gene enrichment analysis") - (description - "This package provides tools to compute and represent gene set enrichment -or depletion from your data based on pre-saved maps from the @dfn{Atlas of -Cancer Signalling Networks} (ACSN) or user imported maps. The gene set -enrichment can be run with hypergeometric test or Fisher exact test, and can -use multiple corrections. Visualization of data can be done either by -barplots or heatmaps.") - (license license:gpl2+))) - (define-public r-biocinstaller (package (name "r-biocinstaller") diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index ba966fff6c..22355c3bc5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12023,6 +12023,32 @@ (define-public r-snpmaxsel data.") (license license:gpl2+))) +(define-public r-acsnminer + (package + (name "r-acsnminer") + (version "0.16.8.25") + (source (origin + (method url-fetch) + (uri (cran-uri "ACSNMineR" version)) + (sha256 + (base32 + "0gh604s8qall6zfjlwcg2ilxjvz08dplf9k5g47idhv43scm748l")))) + (properties `((upstream-name . "ACSNMineR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra))) + (home-page "https://cran.r-project.org/web/packages/ACSNMineR") + (synopsis "Gene enrichment analysis") + (description + "This package provides tools to compute and represent gene set enrichment +or depletion from your data based on pre-saved maps from the @dfn{Atlas of +Cancer Signalling Networks} (ACSN) or user imported maps. The gene set +enrichment can be run with hypergeometric test or Fisher exact test, and can +use multiple corrections. Visualization of data can be done either by +barplots or heatmaps.") + (license license:gpl2+))) + (define-public r-units (package (name "r-units") From c4d521ba2c14ddf7f3be9ca430e03add435ff0e7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:37:51 +0100 Subject: [PATCH 069/411] gnu: r-seqinr: Move to (gnu packages cran). * gnu/packages/bioinformatics.scm (r-seqinr): Move from here... * gnu/packages/cran.scm (r-seqinr): ...to here. --- gnu/packages/bioinformatics.scm | 25 ------------------------- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 807f5c87ab..a615a9c5da 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7436,31 +7436,6 @@ (define-public r-s4vectors S4Vectors package itself.") (license license:artistic2.0))) -(define-public r-seqinr - (package - (name "r-seqinr") - (version "3.4-5") - (source - (origin - (method url-fetch) - (uri (cran-uri "seqinr" version)) - (sha256 - (base32 - "17zv0n5cji17izwmwg0jcbxbjl3w5rls91w15svcnlpxjms38ahn")))) - (build-system r-build-system) - (propagated-inputs - `(("r-ade4" ,r-ade4) - ("r-segmented" ,r-segmented))) - (inputs - `(("zlib" ,zlib))) - (home-page "http://seqinr.r-forge.r-project.org/") - (synopsis "Biological sequences retrieval and analysis") - (description - "This package provides tools for exploratory data analysis and data -visualization of biological sequence (DNA and protein) data. It also includes -utilities for sequence data management under the ACNUC system.") - (license license:gpl2+))) - (define-public r-iranges (package (name "r-iranges") diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 22355c3bc5..6079ed9737 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12049,6 +12049,31 @@ (define-public r-acsnminer barplots or heatmaps.") (license license:gpl2+))) +(define-public r-seqinr + (package + (name "r-seqinr") + (version "3.4-5") + (source + (origin + (method url-fetch) + (uri (cran-uri "seqinr" version)) + (sha256 + (base32 + "17zv0n5cji17izwmwg0jcbxbjl3w5rls91w15svcnlpxjms38ahn")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ade4" ,r-ade4) + ("r-segmented" ,r-segmented))) + (inputs + `(("zlib" ,zlib))) + (home-page "http://seqinr.r-forge.r-project.org/") + (synopsis "Biological sequences retrieval and analysis") + (description + "This package provides tools for exploratory data analysis and data +visualization of biological sequence (DNA and protein) data. It also includes +utilities for sequence data management under the ACNUC system.") + (license license:gpl2+))) + (define-public r-units (package (name "r-units") From 91c1fbdfdd2b18ae3c77c150d558c7947276d59e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:34:18 +0100 Subject: [PATCH 070/411] gnu: Add r-adegenet. * gnu/packages/cran.scm (r-adegenet): New variable. --- gnu/packages/cran.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 6079ed9737..b1466dc27b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12266,3 +12266,42 @@ (define-public r-spdep their use in spatial data analysis, including regional aggregation by minimum spanning tree.") (license license:gpl2+))) + +(define-public r-adegenet + (package + (name "r-adegenet") + (version "2.1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "adegenet" version)) + (sha256 + (base32 + "0ynfblp0hbd3dp3k86fn1wyhqr28lk6hs2bg4q7gyf0sfdfzwhrh")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ade4" ,r-ade4) + ("r-ape" ,r-ape) + ("r-boot" ,r-boot) + ("r-dplyr" ,r-dplyr) + ("r-ggplot2" ,r-ggplot2) + ("r-igraph" ,r-igraph) + ("r-mass" ,r-mass) + ("r-reshape2" ,r-reshape2) + ("r-seqinr" ,r-seqinr) + ("r-shiny" ,r-shiny) + ("r-spdep" ,r-spdep) + ("r-vegan" ,r-vegan))) + (home-page "https://github.com/thibautjombart/adegenet") + (synopsis "Exploratory analysis of genetic and genomic data") + (description + "This package provides a toolset for the exploration of genetic and +genomic data. Adegenet provides formal (S4) classes for storing and handling +various genetic data, including genetic markers with varying ploidy and +hierarchical population structure (@code{genind} class), alleles counts by +populations (@code{genpop}), and genome-wide SNP data (@code{genlight}). It +also implements original multivariate methods (DAPC, sPCA), graphics, +statistical tests, simulation tools, distance and similarity measures, and +several spatial methods. A range of both empirical and simulated datasets is +also provided to illustrate various methods.") + (license license:gpl2+))) From 3d2bc817517d9ff69e3eb255d078dad76305bedd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:41:19 +0100 Subject: [PATCH 071/411] gnu: Add r-pegas. * gnu/packages/cran.scm (r-pegas): New variable. --- gnu/packages/cran.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b1466dc27b..7273989e49 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12305,3 +12305,29 @@ (define-public r-adegenet several spatial methods. A range of both empirical and simulated datasets is also provided to illustrate various methods.") (license license:gpl2+))) + +(define-public r-pegas + (package + (name "r-pegas") + (version "0.11") + (source + (origin + (method url-fetch) + (uri (cran-uri "pegas" version)) + (sha256 + (base32 + "0l21bapzbjcvblbvks3jh9rpy9hng1ccd7f0glhqw695lc737bpx")))) + (build-system r-build-system) + (propagated-inputs + `(("r-adegenet" ,r-adegenet) + ("r-ape" ,r-ape))) + (home-page "http://ape-package.ird.fr/pegas.html") + (synopsis "Population and evolutionary genetics analysis system") + (description + "This package provides functions for reading, writing, plotting, +analysing, and manipulating allelic and haplotypic data, including from VCF +files, and for the analysis of population nucleotide sequences and +micro-satellites including coalescent analyses, linkage disequilibrium, +population structure (Fst, Amova) and equilibrium (HWE), haplotype networks, +minimum spanning tree and network, and median-joining networks.") + (license license:gpl2+))) From cd977b35be01aca4322df1cc1678fdbeead40505 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:42:54 +0100 Subject: [PATCH 072/411] gnu: Add r-rmetasim. * gnu/packages/cran.scm (r-rmetasim): New variable. --- gnu/packages/cran.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 7273989e49..34e7a6c12a 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12331,3 +12331,30 @@ (define-public r-pegas population structure (Fst, Amova) and equilibrium (HWE), haplotype networks, minimum spanning tree and network, and median-joining networks.") (license license:gpl2+))) + +(define-public r-rmetasim + (package + (name "r-rmetasim") + (version "3.1.7") + (source + (origin + (method url-fetch) + (uri (cran-uri "rmetasim" version)) + (sha256 + (base32 + "0sz4mdprdi6sgkfwfdvh2hr9nxiwq17sw0vggq3cvs7lzb0i6m9r")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ade4" ,r-ade4) + ("r-adegenet" ,r-adegenet) + ("r-gtools" ,r-gtools) + ("r-pegas" ,r-pegas))) + (home-page "https://cran.r-project.org/web/packages/rmetasim") + (synopsis "Individual-based population genetic simulation environment") + (description + "This package provides an interface between R and the metasim simulation +engine. The simulation environment is documented in: Strand, A.(2002), +Metasim 1.0: an individual-based environment for simulating population +genetics of complex population dynamics.") + ;; Any GPL version + (license license:gpl2+))) From b15d19a651bdf15dbb6ccce05e0fad5cd021c538 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:53:33 +0100 Subject: [PATCH 073/411] gnu: perl6-json-class: Remove unsupported syntax from description. * gnu/packages/perl6.scm (perl6-json-class)[description]: Remove @quot. --- gnu/packages/perl6.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/perl6.scm b/gnu/packages/perl6.scm index f227786e8d..a8b4248a1b 100644 --- a/gnu/packages/perl6.scm +++ b/gnu/packages/perl6.scm @@ -331,11 +331,12 @@ (define-public perl6-json-class (synopsis "Provide simple serialisation/deserialisation of objects to/from JSON") (description "This is a simple role that provides methods to instantiate a class from a JSON string that (hopefully,) represents it, and to serialise an -object of the class to a JSON string. The JSON created from an instance should -round trip to a new instance with the same values for the @quot{public -attributes}. @quot{Private} attributes (that is ones without accessors,) will -be ignored for both serialisation and de-serialisation. The exact behaviour -depends on that of @code{JSON::Marshal} and @code{JSON::Unmarshal} respectively.") +object of the class to a JSON string. The JSON created from an instance +should round trip to a new instance with the same values for the public +attributes. Private attributes (that is ones without accessors,) will be +ignored for both serialisation and de-serialisation. The exact behaviour +depends on that of @code{JSON::Marshal} and @code{JSON::Unmarshal} +respectively.") (license license:artistic2.0))) (define-public perl6-json-fast From 8559df6406f256294c22eaff54dd87e13c668c57 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 24 Mar 2019 23:53:57 +0100 Subject: [PATCH 074/411] gnu: perl6-meta6: Remove unsupported syntax from description. * gnu/packages/perl6.scm (perl6-meta6)[description]: Remove @quot. --- gnu/packages/perl6.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/perl6.scm b/gnu/packages/perl6.scm index a8b4248a1b..33c1686088 100644 --- a/gnu/packages/perl6.scm +++ b/gnu/packages/perl6.scm @@ -493,13 +493,13 @@ (define-public perl6-meta6 specification - the META file data can be read, created, parsed and written in a manner that is conformant with the specification. -Where they are known about it also makes allowance for @quot{customary} usage in +Where they are known about it also makes allowance for customary usage in existing software (such as installers and so forth.) -The intent of this is allow the generation and testing of META files for module -authors, so it can provide meta-information whether the attributes are mandatory -as per the spec and where known the places that @quot{customary} attributes are -used.") +The intent of this is allow the generation and testing of META files for +module authors, so it can provide meta-information whether the attributes are +mandatory as per the spec and where known the places that customary attributes +are used.") (license license:artistic2.0))) (define-public perl6-mime-base64 From b9a57fd1b297592f7382c76490b0293e7125f183 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Mon, 25 Mar 2019 01:58:22 +0300 Subject: [PATCH 075/411] gnu: perl-uri-escape: Update source tarball URL. * gnu/packages/perl-web.scm (perl-uri-escape)[source]: Update URL. --- gnu/packages/perl-web.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl-web.scm b/gnu/packages/perl-web.scm index c1af1d2caf..6ced2d160e 100644 --- a/gnu/packages/perl-web.scm +++ b/gnu/packages/perl-web.scm @@ -55,7 +55,7 @@ (define-public perl-uri-escape (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/URI-" + (uri (string-append "mirror://cpan/authors/id/O/OA/OALDERS/URI-" version ".tar.gz")) (sha256 (base32 From 70bb83b7b29ba9d5eb151aa2748717f182a25534 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 25 Mar 2019 00:20:42 +0100 Subject: [PATCH 076/411] services: xorg: Fix cases where 'keyboard-layout' is #f. This is a followup to 598757e038ab5dea3b59c9c248a2ad860c41fe62. * gnu/services/xorg.scm (xorg-configuration->file): Check whether 'xorg-configuration-keyboard-layout' returns #f before calling 'keyboard-layout-options'. --- gnu/services/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index 05465f3bdf..f047b8a043 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -274,8 +274,8 @@ (define (expand modules) keyboard-layout-variant)) (model #$(and=> (xorg-configuration-keyboard-layout config) keyboard-layout-model)) - (options '#$(keyboard-layout-options - (xorg-configuration-keyboard-layout config)))) + (options '#$(and=> (xorg-configuration-keyboard-layout config) + keyboard-layout-options))) (when layout (display (input-class-section layout variant model options) port) From e02b7694ec43b2ffd6a551bd4e1bb66f243bda1b Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 25 Mar 2019 01:19:39 -0400 Subject: [PATCH 077/411] gnu: linux-libre@4.4: Update to 4.4.177. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.177. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index d52e12f9cd..c1d67055bb 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -459,8 +459,8 @@ (define-public linux-libre-4.9 #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.176" - "0c300zqmsadahs2fpzxh6cn7q3h7jxq69msd17rh8v3wnvql8vzx" + (make-linux-libre "4.4.177" + "0vvppw7j6jwn3cd5hhzgj5xfqkmz682zy36iyr6ynd0rbh1j7bhm" '("x86_64-linux" "i686-linux") #:configuration-file kernel-config)) From eb69d5ddde2aef508aa7fcbb6f8766a8b07beb70 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 25 Mar 2019 01:20:35 -0400 Subject: [PATCH 078/411] gnu: linux-libre@4.9: Update to 4.9.165. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.165. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index c1d67055bb..19767e3d60 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -453,8 +453,8 @@ (define-public linux-libre-4.14 #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.164" - "06bbynvijqlk92bpppmnjijyfwr0sk01krqdw4hpgbrvlg3wdlbk" + (make-linux-libre "4.9.165" + "0za56qgs57381xl2a1qkqlhgg4mjvqvlc5hy064ldxwma9q59xfm" '("x86_64-linux" "i686-linux") #:configuration-file kernel-config)) From 60b223ac516d92bab3000f9c7f4986569783d2d6 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 25 Mar 2019 01:21:12 -0400 Subject: [PATCH 079/411] gnu: linux-libre@4.14: Update to 4.14.108. * gnu/packages/linux.scm (%linux-libre-4.14-version): Update to 4.14.108. (%linux-libre-4.14-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 19767e3d60..0f20c76f44 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -443,8 +443,8 @@ (define-public linux-libre-4.19 #:patches %linux-libre-4.19-patches #:configuration-file kernel-config)) -(define %linux-libre-4.14-version "4.14.107") -(define %linux-libre-4.14-hash "19i17b8sjjvi99vya1vncjalysdy027hp35rrla68gjs28dyas7r") +(define %linux-libre-4.14-version "4.14.108") +(define %linux-libre-4.14-hash "1ydp1dzfcv6caahcdlx2l2q13bnhwgin5wwkgrc10f2d96acyr47") (define-public linux-libre-4.14 (make-linux-libre %linux-libre-4.14-version From be6d2713d3454526c0761d1d52ded7bbd879d9bd Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 25 Mar 2019 01:22:06 -0400 Subject: [PATCH 080/411] gnu: linux-libre@4.19: Update to 4.19.31. * gnu/packages/linux.scm (%linux-libre-4.19-version): Update to 4.19.31. (%linux-libre-4.19-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 0f20c76f44..414442ea01 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -429,8 +429,8 @@ (define-public linux-libre #:patches %linux-libre-5.0-patches #:configuration-file kernel-config)) -(define %linux-libre-4.19-version "4.19.30") -(define %linux-libre-4.19-hash "1i15cs7zb53hagllgga8jaz0j1p9b22j93iczwc2w587zzhzlvng") +(define %linux-libre-4.19-version "4.19.31") +(define %linux-libre-4.19-hash "0s0j5mnl83rg23shqfyhk352m3jhq1h7bksyz0sd8sz3q3pwj2ii") (define %linux-libre-4.19-patches (list %boot-logo-patch From 33b233ba633dcfa3b16f6198d4a1626e33336aff Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 25 Mar 2019 01:23:04 -0400 Subject: [PATCH 081/411] gnu: linux-libre: Update to 5.0.4. * gnu/packages/linux.scm (%linux-libre-version): Update to 5.0.4. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 414442ea01..cd1f069a13 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -415,8 +415,8 @@ (define* (make-linux-libre version hash supported-systems It has been modified to remove all non-free binary blobs.") (license license:gpl2))) -(define %linux-libre-version "5.0.3") -(define %linux-libre-hash "1ivdqr3y8r2hmv3a1g0a641cr2ckl3x4arapw0j6nwd0sbcyncam") +(define %linux-libre-version "5.0.4") +(define %linux-libre-hash "1j369x19kqryhf7w5p14rah0p3lglrhr5kac9ysqigx92as7kq50") (define %linux-libre-5.0-patches (list %boot-logo-patch From 601ddf02cc8ceb59c220b01bc7b1894de261f2e9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 09:38:24 +0100 Subject: [PATCH 082/411] gnu: Add r-genetics. * gnu/packages/cran.scm (r-genetics): New variable. --- gnu/packages/cran.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 34e7a6c12a..d6a42ceea2 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12358,3 +12358,33 @@ (define-public r-rmetasim genetics of complex population dynamics.") ;; Any GPL version (license license:gpl2+))) + +(define-public r-genetics + (package + (name "r-genetics") + (version "1.3.8.1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "genetics" version)) + (sha256 + (base32 + "0p59r4vxhy68d7cv2s2k4vbgnkxji21naz9jmdry9wxclrg7fw28")))) + (build-system r-build-system) + (propagated-inputs + `(("r-combinat" ,r-combinat) + ("r-gdata" ,r-gdata) + ("r-gtools" ,r-gtools) + ("r-mass" ,r-mass) + ("r-mvtnorm" ,r-mvtnorm))) + (home-page "https://cran.r-project.org/web/packages/genetics/") + (synopsis "Population genetics") + (description + "This package provides classes and methods for handling genetic data. +It includes classes to represent genotypes and haplotypes at single markers up +to multiple markers on multiple chromosomes. Function include allele +frequencies, flagging homo/heterozygotes, flagging carriers of certain +alleles, estimating and testing for Hardy-Weinberg disequilibrium, estimating +and testing for linkage disequilibrium, ...") + ;; Any GPL version. + (license license:gpl2+))) From 5ef7d057ed4791686ebc2c2649069cc54ca026c5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 09:38:40 +0100 Subject: [PATCH 083/411] gnu: Add r-snp-plotter. * gnu/packages/cran.scm (r-snp-plotter): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d6a42ceea2..fca123f5b4 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12388,3 +12388,28 @@ (define-public r-genetics and testing for linkage disequilibrium, ...") ;; Any GPL version. (license license:gpl2+))) + +(define-public r-snp-plotter + (package + (name "r-snp-plotter") + (version "0.5.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "snp.plotter" version)) + (sha256 + (base32 + "16apsqvkah5l0d5qcwp3lq2jspkb6n62wzr0wskmj84jblx483vv")))) + (properties `((upstream-name . "snp.plotter"))) + (build-system r-build-system) + (propagated-inputs `(("r-genetics" ,r-genetics))) + (home-page "https://cran.r-project.org/web/packages/snp.plotter/") + (synopsis "Plot p-values using single SNP and/or haplotype data") + (description + "This package helps you create plots of p-values using single SNP and/or +haplotype data. Main features of the package include options to display a +@dfn{linkage disequilibrium} (LD) plot and the ability to plot multiple +datasets simultaneously. Plots can be created using global and/or individual +haplotype p-values along with single SNP p-values. Images are created as +either PDF/EPS files.") + (license license:gpl2+))) From 6a472af3f630aa0ea6e044c72afbe54314d25c55 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 09:38:51 +0100 Subject: [PATCH 084/411] gnu: Add r-polspline. * gnu/packages/cran.scm (r-polspline): New variable. --- gnu/packages/cran.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index fca123f5b4..7ea30dcc74 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12413,3 +12413,24 @@ (define-public r-snp-plotter haplotype p-values along with single SNP p-values. Images are created as either PDF/EPS files.") (license license:gpl2+))) + +(define-public r-polspline + (package + (name "r-polspline") + (version "1.1.14") + (source + (origin + (method url-fetch) + (uri (cran-uri "polspline" version)) + (sha256 + (base32 + "0g4s5nwi13yfs6b169yw8vrs48nvjyc014k2v7ybcxarl8z81va0")))) + (build-system r-build-system) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "https://cran.r-project.org/web/packages/polspline/") + (synopsis "Polynomial spline routines") + (description + "This package provides routines for the polynomial spline fitting +routines hazard regression, hazard estimation with flexible tails, logspline, +lspec, polyclass, and polymars.") + (license license:gpl2+))) From a8c965cfeca16e6a836542a161a6cf8b3eb0bcb5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 09:39:01 +0100 Subject: [PATCH 085/411] gnu: Add r-rms. * gnu/packages/cran.scm (r-rms): New variable. --- gnu/packages/cran.scm | 44 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 7ea30dcc74..b69a4defd6 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12434,3 +12434,47 @@ (define-public r-polspline routines hazard regression, hazard estimation with flexible tails, logspline, lspec, polyclass, and polymars.") (license license:gpl2+))) + +(define-public r-rms + (package + (name "r-rms") + (version "5.1-3") + (source + (origin + (method url-fetch) + (uri (cran-uri "rms" version)) + (sha256 + (base32 + "1sw9a0iqiips580jpbk7yiqgyiswihvaqbnq4ybsmd4ki86i5isz")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-hmisc" ,r-hmisc) + ("r-htmltable" ,r-htmltable) + ("r-htmltools" ,r-htmltools) + ("r-lattice" ,r-lattice) + ("r-multcomp" ,r-multcomp) + ("r-nlme" ,r-nlme) + ("r-polspline" ,r-polspline) + ("r-quantreg" ,r-quantreg) + ("r-rpart" ,r-rpart) + ("r-sparsem" ,r-sparsem) + ("r-survival" ,r-survival))) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "http://biostat.mc.vanderbilt.edu/rms") + (synopsis "Regression modeling strategies") + (description + "This is a package for regression modeling, testing, estimation, +validation, graphics, prediction, and typesetting by storing enhanced model +design attributes in the fit. The rms package is a collection of functions +that assist with and streamline modeling. It also contains functions for +binary and ordinal logistic regression models, ordinal models for continuous Y +with a variety of distribution families, and the Buckley-James multiple +regression model for right-censored responses, and implements penalized +maximum likelihood estimation for logistic and ordinary linear models. The +package works with almost any regression model, but it was especially written +to work with binary or ordinal regression models, Cox regression, accelerated +failure time models, ordinary linear models, the Buckley-James model, +generalized least squares for serially or spatially correlated observations, +generalized linear models, and quantile regression.") + (license license:gpl2+))) From cd47dcf6a20f57d3e49f3f46c30a971aadc41698 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 09:39:10 +0100 Subject: [PATCH 086/411] gnu: Add r-haplo-stats. * gnu/packages/cran.scm (r-haplo-stats): New variable. --- gnu/packages/cran.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b69a4defd6..1556d56672 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12478,3 +12478,31 @@ (define-public r-rms generalized least squares for serially or spatially correlated observations, generalized linear models, and quantile regression.") (license license:gpl2+))) + +(define-public r-haplo-stats + (package + (name "r-haplo-stats") + (version "1.7.9") + (source + (origin + (method url-fetch) + (uri (cran-uri "haplo.stats" version)) + (sha256 + (base32 + "19kxascqq5qz0zdxx0w837ji207y1z2ggxkl4vmlbay03k2dw2mx")))) + (properties `((upstream-name . "haplo.stats"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rms" ,r-rms))) + (native-inputs + `(("r-r-rsp" ,r-r-rsp))) ; for vignettes + (home-page "https://www.mayo.edu/research/labs/statistical-genetics-genetic-epidemiology/software") + (synopsis "Analysis of haplotypes when linkage phase is ambiguous") + (description + "This package provides routines for the analysis of indirectly measured +haplotypes. The statistical methods assume that all subjects are unrelated +and that haplotypes are ambiguous (due to unknown linkage phase of the genetic +markers). The main functions are: @code{haplo.em()}, @code{haplo.glm()}, +@code{haplo.score()}, and @code{haplo.power()}; all of which have detailed +examples in the vignette.") + (license license:gpl2+))) From 4518a9dfa885cb87f188e745c0fe2edb501562b2 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 25 Mar 2019 00:56:33 -0400 Subject: [PATCH 087/411] gnu: icecat: Update to 60.6.1-guix1 [security fixes]. Includes fixes for CVE-2019-9810 and CVE-2019-9813. * gnu/packages/gnuzilla.scm (%icecat-version): Update to 60.6.1-guix1. (icecat-source)[upstream-firefox-source]: Update hash. --- gnu/packages/gnuzilla.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 33e6b933f3..9b6e713d41 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -578,7 +578,7 @@ (define* (computed-origin-method gexp-promise hash-algo hash #:system system #:guile-for-build guile))) -(define %icecat-version "60.6.0-guix1") +(define %icecat-version "60.6.1-guix1") ;; 'icecat-source' is a "computed" origin that generates an IceCat tarball ;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat' @@ -600,7 +600,7 @@ (define icecat-source "firefox-" upstream-firefox-version ".source.tar.xz")) (sha256 (base32 - "1mc57dhwyjr6qjm3q617wvj306wi72548wjx7lz1dxkz6hndi03w")))) + "1x8419a1yg6igsq5ij3ymf1zmnb2wpm9dqcdfkv5wy43xgf7y0wl")))) (upstream-icecat-base-version "60.3.0") ; maybe older than base-version (upstream-icecat-gnu-version "1") From b58ab1598fc615f3f11ad7b439e61e0616117e2c Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Wed, 20 Mar 2019 23:55:31 +0000 Subject: [PATCH 088/411] gnu: Add python-mygpoclient. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gpodder.scm (python-mygpoclient): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/gpodder.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm index 5b872908a5..b398846e37 100644 --- a/gnu/packages/gpodder.scm +++ b/gnu/packages/gpodder.scm @@ -57,6 +57,36 @@ (define-public libmygpo-qt and track podcasts.") (license license:lgpl2.1+))) +(define-public python-mygpoclient + (package + (name "python-mygpoclient") + (version "1.8") + (source + (origin + (method url-fetch) + (uri (pypi-uri "mygpoclient" version)) + (sha256 + (base32 + "1fi5x6k1mngr0iviw2s4n1f3y2x7pwqy5ivkcrjdprzvwr37f0mh")))) + (build-system python-build-system) + (native-inputs + `(("python-coverage" ,python-coverage) + ("python-minimock" ,python-minimock) + ("python-nose" ,python-nose))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "make" "test")))))) + (home-page "https://mygpoclient.readthedocs.io") + (synopsis "Python library for the gPodder web service") + (description "@code{mygpoclient} provides an easy and structured way to +access the @url{https://gpodder.net} web services. In addition to +subscription list synchronization and storage, the API supports uploading and +downloading episode status changes.") + (license license:gpl3+))) + (define-public python-podcastparser (package (name "python-podcastparser") From de5ea7d96193f18026e774bdd0b4247a79c39209 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Thu, 21 Mar 2019 00:22:04 +0000 Subject: [PATCH 089/411] gnu: Add gPodder. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/podcast.scm (gpodder): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/gpodder.scm | 68 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm index b398846e37..ea1a3108ca 100644 --- a/gnu/packages/gpodder.scm +++ b/gnu/packages/gpodder.scm @@ -18,15 +18,83 @@ (define-module (gnu packages gpodder) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix packages) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system cmake) #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages check) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python-web) + #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt)) +(define-public gpodder + (package + (name "gpodder") + (version "3.10.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gpodder/gpodder.git") + (commit version))) + (sha256 + (base32 + "0sx9rj6dpvd2xz7lak2yi0zlgr3lp2ng1fw23s39la9ly4g1835j")) + (file-name (git-file-name name version)))) + (build-system python-build-system) + (native-inputs + `(("intltool" ,intltool))) + (inputs + `(("gtk+" ,gtk+) + ("python-pygobject" ,python-pygobject) + ("python-pycairo" ,python-pycairo) + ("python-dbus" ,python-dbus) + ("python-html5lib" ,python-html5lib) + ("python-mygpoclient" ,python-mygpoclient) + ("python-podcastparser" ,python-podcastparser) + ("xdg-utils" ,xdg-utils))) + (arguments + '(#:phases + (modify-phases %standard-phases + ;; Avoid needing xdg-utils as a propagated input. + (add-after 'unpack 'patch-xdg-open + (lambda* (#:key inputs #:allow-other-keys) + (let ((xdg-utils (assoc-ref inputs "xdg-utils"))) + (substitute* "src/gpodder/util.py" + (("xdg-open") (string-append xdg-utils "/bin/xdg-open"))) + #t))) + (add-before 'install 'make-po-files-writable + (lambda _ + (for-each + (lambda (f) + (chmod f #o664)) + (find-files "po")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (setenv "PREFIX" (assoc-ref outputs "out")) + (invoke "make" "install") + #t)) + (add-after 'install 'wrap-gpodder + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gi-typelib-path (getenv "GI_TYPELIB_PATH"))) + (wrap-program (string-append out "/bin/gpodder") + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))) + #t)))))) + (home-page "https://gpodder.github.io") + (synopsis "Simple podcast client") + (description "gPodder is a podcatcher, i.e. an application that allows +podcast feeds (RSS, Atom, Youtube, Soundcloud, Vimeo and XSPF) to be +subscribed to, checks for new episodes and allows the podcast to be saved +locally for later listening.") + (license license:gpl3+))) + (define-public libmygpo-qt (package (name "libmygpo-qt") From bb034ab0803fc2b15d8e893a3483f0fdead7b86a Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Sun, 24 Mar 2019 00:40:47 +0100 Subject: [PATCH 090/411] gnu: Add emacs-company-lsp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-company-lsp): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 0f040b2b07..c2c489b217 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -2959,6 +2959,34 @@ (define-public emacs-typo on context.") (license license:gpl3+))) +(define-public emacs-company-lsp + (package + (name "emacs-company-lsp") + (version "2.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tigersoldier/company-lsp.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1hy1x2w0yp5brm7714d1hziz3rpkywb5jp3yj78ibmi9ifny9vri")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-lsp-mode" ,emacs-lsp-mode) + ("emacs-company" ,emacs-company) + ("emacs-s" ,emacs-s) + ("emacs-dash" ,emacs-dash))) + (home-page "https://github.com/tigersoldier/company-lsp") + (synopsis "Completion for @code{lsp-mode}") + (description + "This package provides completion features that are not possible with +@code{lsp-mode} and @code{company-capf} alone, including support for trigger +characters and asynchronous fetching of completion candidates.") + (license license:gpl3+))) + (define-public emacs-scheme-complete (let ((commit "9b5cf224bf2a5994bc6d5b152ff487517f1a9bb5")) (package From 6cd504ce75750a711b44b70ae066656dd9a252c8 Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Sun, 24 Mar 2019 00:57:25 +0100 Subject: [PATCH 091/411] gnu: Add emacs-company-cabal. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-company-cabal): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index c2c489b217..df475eea1c 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3311,6 +3311,32 @@ (define-public emacs-jinja2-mode sgml/html integration, and indentation (working with sgml).") (license license:gpl3+))) +(define-public emacs-company-cabal + ;; The latest version is 0.3.0, but no release has been provided after 0.2.1. + (let ((commit "62112a7259e24bd6c08885629a185afe512b7d3d") + (revision "1")) + (package + (name "emacs-company-cabal") + (version (git-version "0.3.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/iquiw/company-cabal/") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1gf45xwjzdm8i4q6c6khk4dbg1mmp2r0awz2sjr4dcr2dbd1n7mg")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-company" ,emacs-company))) + (home-page "https://github.com/iquiw/company-cabal/") + (synopsis "Company completion for Haskell Cabal files") + (description + "This package allows for completion of field names, section names, +field values, and more within @code{haskell-cabal-mode}.") + (license license:gpl3+)))) + (define-public emacs-rfcview (package (name "emacs-rfcview") From 5247cd2a5e3de892dddfb973b7a039c30d7510e1 Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Sun, 24 Mar 2019 00:45:57 +0100 Subject: [PATCH 092/411] gnu: Add emacs-company-auctex. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-company-auctex): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index df475eea1c..b1a431caeb 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3065,6 +3065,33 @@ (define-public emacs-scel SuperCollider is a platform for audio synthesis and algorithmic composition.") (license license:gpl2+)))) +(define-public emacs-company-auctex + (let ((commit "48c42c58ce2f0e693301b0cb2d085055410c1b25") + (revision "1")) + (package + (name "emacs-company-auctex") + (version (git-version "0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alexeyr/company-auctex") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "10qn7frn5wcmrlci3v6iliqzj7r9dls87h9zp3xkgrgn4bqprfp8")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-yasnippet" ,emacs-yasnippet) + ("emacs-auctex" ,emacs-auctex) + ("emacs-company" ,emacs-company))) + (home-page "https://github.com/alexeyr/company-auctex/") + (synopsis "Completion for @code{AUCTeX}") + (description + "This package provides a group of backends permitting auto-completion +for @code{AUCTeX}.") + (license license:gpl3+)))) + (define-public emacs-mit-scheme-doc (package (name "emacs-mit-scheme-doc") From 13e99cfcd8abe172d0155f9f6266a68678afe8ac Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Sun, 24 Mar 2019 00:59:47 +0100 Subject: [PATCH 093/411] gnu: Add emacs-prescient. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-prescient): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index b1a431caeb..583dda69e9 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3616,6 +3616,31 @@ (define-public emacs-base16-theme single theme but a set of guidelines with numerous implementations.") (license license:expat))) +(define-public emacs-prescient + (package + (name "emacs-prescient") + (version "2.2.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/raxod502/prescient.el/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ncplx5p3cffyzg9ygzqqxj0vpvwrz9rp2n4z6c375a78fyydrk0")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-company" ,emacs-company) + ("emacs-ivy" ,emacs-ivy))) + (home-page "https://github.com/raxod502/prescient.el/") + (synopsis "Library that sorts and filters lists of candidates") + (description + "This package provides a library for sorting and filtering, as well as +extensions for @code{ivy-mode} and @code{company-mode} that make use of the +library.") + (license license:gpl3+))) + (define-public emacs-smartparens (package (name "emacs-smartparens") From 16f6a75db052637a4419eff873ee6b80fe84611a Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Sun, 24 Mar 2019 00:52:27 +0100 Subject: [PATCH 094/411] gnu: Add emacs-python-environment. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-python-environment): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 583dda69e9..f10b82a53b 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3263,6 +3263,28 @@ (define-public emacs-popup and popup menus.") (license license:gpl3+))) +(define-public emacs-python-environment + (package + (name "emacs-python-environment") + (version "0.0.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tkf/emacs-python-environment/") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0q6bib9nr6xiq6npzbngyfcjk87yyvwzq1zirr3z1h5wadm34lsk")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-deferred" ,emacs-deferred))) + (home-page "https://github.com/tkf/emacs-python-environment") + (synopsis "Provides a @code{virtualenv} API in Emacs Lisp") + (description + "This package permits automated installation of tools written in Python.") + (license license:gpl3+))) + (define-public emacs-puppet-mode (let ((commit "b3ed5057166a4f49dfa9be638523a348b55a2fd2") (revision "1")) From 06aff7385569059136f33d0e64b5bed091f09461 Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Sun, 24 Mar 2019 00:54:16 +0100 Subject: [PATCH 095/411] gnu: Add emacs-jedi. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-jedi): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index f10b82a53b..10de1b5277 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3285,6 +3285,33 @@ (define-public emacs-python-environment "This package permits automated installation of tools written in Python.") (license license:gpl3+))) +(define-public emacs-jedi + (package + (name "emacs-jedi") + (version "0.2.7") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tkf/emacs-jedi/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xbp9fcxgbf298w05hvf52z41kk7r52975ailgdn8sg60xc98fa7")))) + (build-system emacs-build-system) + (native-inputs + `(("emacs-mocker" ,emacs-mocker))) + (propagated-inputs + `(("emacs-auto-complete" ,emacs-auto-complete) + ("emacs-python-environment" ,emacs-python-environment) + ("emacs-epc" ,emacs-epc))) + (home-page "https://github.com/tkf/emacs-jedi") + (synopsis "Provides Python completion in Emacs") + (description + "This package provides completion in Python buffers and also helps find +the locations of docstrings, arguments, and functions.") + (license license:gpl3+))) + (define-public emacs-puppet-mode (let ((commit "b3ed5057166a4f49dfa9be638523a348b55a2fd2") (revision "1")) From 1172d914eace72e6c45c25832ff9c977f8436261 Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Sun, 24 Mar 2019 00:58:30 +0100 Subject: [PATCH 096/411] gnu: Add emacs-company-flow. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-company-flow): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 10de1b5277..71bdcadc53 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3539,6 +3539,31 @@ (define-public emacs-org-trello organizer.") (license license:gpl3+))) +(define-public emacs-company-flow + (let ((commit "76ef585c70d2a3206c2eadf24ba61e59124c3a16") + (revision "1")) + (package + (name "emacs-company-flow") + (version (git-version "0.1.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/aaronjensen/company-flow/") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0zs9cblnbkxa0dxw4lyllmybqizxcdx96gv8jlhx20nrjpi78piw")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-company" ,emacs-company) + ("emacs-dash" ,emacs-dash))) + (home-page "https://github.com/aaronjensen/company-flow/") + (synopsis "Flow backend for @code{company-mode}") + (description + "This package provides completion for JavaScript files utilizing Flow.") + (license license:gpl3+)))) + (define-public emacs-atom-one-dark-theme (let ((commit "1f1185bf667a38d3d0d180ce85fd4c131818aae2") (revision "0")) From 8dc329656be57e1e133366fb56dda4c0f3207b19 Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Sun, 24 Mar 2019 00:55:04 +0100 Subject: [PATCH 097/411] gnu: Add emacs-company-jedi. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-company-jedi): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 71bdcadc53..442bc3849c 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3312,6 +3312,29 @@ (define-public emacs-jedi the locations of docstrings, arguments, and functions.") (license license:gpl3+))) +(define-public emacs-company-jedi + (package + (name "emacs-company-jedi") + (version "0.04") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/syohex/emacs-company-jedi") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ihqapp4dv92794rsgyq0rmhwika60cmradqd4bn9b72ss6plxs1")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-jedi" ,emacs-jedi) + ("emacs-company" ,emacs-company))) + (home-page "https://github.com/syohex/emacs-company-jedi") + (synopsis "Provides Python completion in @code{company-mode}") + (description + "This package provides a Company backend for Python.") + (license license:gpl3+))) + (define-public emacs-puppet-mode (let ((commit "b3ed5057166a4f49dfa9be638523a348b55a2fd2") (revision "1")) From f970946c1d3dc6d20bd48ec6f42c82a43bb7696f Mon Sep 17 00:00:00 2001 From: Meiyo Peng Date: Sun, 24 Mar 2019 14:05:33 +0800 Subject: [PATCH 098/411] gnu: fmt: Update to 5.3.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/pretty-print.scm (fmt): Update to 5.3.0. [arguments]: Remove #:configure-flags. Signed-off-by: Ludovic Courtès --- gnu/packages/pretty-print.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm index 34793db58b..346d3660d5 100644 --- a/gnu/packages/pretty-print.scm +++ b/gnu/packages/pretty-print.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2017 Marius Bakke ;;; Copyright © 2017 Ludovic Courtès ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2019 Meiyo Peng ;;; ;;; This file is part of GNU Guix. ;;; @@ -162,7 +163,7 @@ (define-public enscript (define-public fmt (package (name "fmt") - (version "4.1.0") + (version "5.3.0") (source (origin (method url-fetch) (uri (string-append @@ -170,14 +171,10 @@ (define-public fmt version "/fmt-" version ".zip")) (sha256 (base32 - "1swyqw3dn2vx5sw2yh5vk0vrvrkp7fv07cj4272yxl5rrq1byjcx")))) + "0p51nhmvjniqlffmmb9djhprnclvm448f2vkdxymvxw307hl21sc")))) (build-system cmake-build-system) (native-inputs `(("unzip" ,unzip))) - (arguments - `(#:configure-flags - (list (string-append "-DCMAKE_INSTALL_LIBDIR=" - (assoc-ref %outputs "out") "/lib")))) (home-page "http://fmtlib.net/") (synopsis "Small and fast C++ formatting library") (description From 799f484251e91f8e9064eb76cfdaddf3cb0ec893 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 12:24:34 +0100 Subject: [PATCH 099/411] gnu: perl-object-signature: Update source URL. * gnu/packages/perl.scm (perl-object-signature)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 228e142510..2d8d1ec446 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6540,7 +6540,7 @@ (define-public perl-object-signature (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "Object-Signature-" version ".tar.gz")) (sha256 (base32 "12k90c19ly93ib1p6sm3k7sbnr2h5dbywkdmnff2ngm99p4m68c4")))) From 3ed36f3153021d433f284670d8ff63a02a1362e2 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 12:26:02 +0100 Subject: [PATCH 100/411] gnu: perl-file-temp: Update source URL. * gnu/packages/perl.scm (perl-file-temp)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 2d8d1ec446..712a96b57d 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3747,7 +3747,7 @@ (define-public perl-file-temp (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "File-Temp-" version ".tar.gz")) (sha256 (base32 "0pr3wrxrk93wy7dz9gsb1sgl77icrs8rh2mah6wms5cdi2ll5ch1")))) From 357b69499a5d7e3549943871492b8a1d060d1a73 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 12:28:42 +0100 Subject: [PATCH 101/411] gnu: perl-log-any: Update source URL. * gnu/packages/perl.scm (perl-log-any)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 712a96b57d..199ffb287b 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -4515,7 +4515,7 @@ (define-public perl-log-any (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/Log-Any-" + (uri (string-append "mirror://cpan/authors/id/P/PR/PREACTION/Log-Any-" version ".tar.gz")) (sha256 (base32 "1wb55ib4gvk8h5pjb6hliqg7li1xjk420q3w5r33f9p1ps60ylbl")))) From fd9fe868f818b159b58c6a9811cc68e752a0af48 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 12:51:15 +0100 Subject: [PATCH 102/411] gnu: perl-moosex-emulate-class-accessor-fast: Update source URL. * gnu/packages/perl.scm (perl-moosex-emulate-class-accessor-fast) [source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 199ffb287b..69c710a031 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5516,7 +5516,7 @@ (define-public perl-moosex-emulate-class-accessor-fast (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/F/FL/FLORA/" + (uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/" "MooseX-Emulate-Class-Accessor-Fast-" version ".tar.gz")) (sha256 From 5ca9cb1e177154c7c4cca3fb46aec47fade5ccad Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 13:11:16 +0100 Subject: [PATCH 103/411] gnu: perl-plack-test-externalserver: Update source URL. * gnu/packages/web.scm (perl-plack-test-externalserver)[source]: Update URL. --- gnu/packages/web.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index f6701dca30..8d0487e3bd 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3477,7 +3477,7 @@ (define-public perl-plack-test-externalserver (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/F/FL/FLORA/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "Plack-Test-ExternalServer-" version ".tar.gz")) (sha256 (base32 "1l1yj1l25679x7cbpd27ii7s1f1ajpkspif9xqnl21hczrbmrbsv")))) From e68f20502cc80b2dd02b9d4045b6b7ec0ce92703 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 13:18:21 +0100 Subject: [PATCH 104/411] gnu: perl-class-c3-componentised: Update source URL. * gnu/packages/perl.scm (perl-class-c3-componentised)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 69c710a031..641f0c2cee 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -981,7 +981,7 @@ (define-public perl-class-c3-componentised (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/F/FR/FREW/" + (uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/" "Class-C3-Componentised-" version ".tar.gz")) (sha256 (base32 "14wn1g45z3b5apqq7dcai5drk01hfyqydsd2m6hsxzhyvi3b2l9h")))) From ae61388fb504cdeb51709ddde13630da02d03ef9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 13:27:48 +0100 Subject: [PATCH 105/411] gnu: perl-carp-clan: Update source URL. * gnu/packages/perl.scm (perl-carp-clan)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 641f0c2cee..09370be031 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -821,7 +821,7 @@ (define-public perl-carp-clan (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/K/KE/KENTNL/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "Carp-Clan-" version ".tar.gz")) (sha256 (base32 From 83617aec58a72c2683481a8b3d22140be436ede6 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 13:31:29 +0100 Subject: [PATCH 106/411] gnu: perl-datetime-calendar-julian: Update source URL. * gnu/packages/perl.scm (perl-datetime-calendar-julian)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 09370be031..cacb1dee25 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2216,7 +2216,7 @@ (define-public perl-datetime-calendar-julian (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/P/PI/PIJLL/" + (uri (string-append "mirror://cpan/authors/id/W/WY/WYANT/" "DateTime-Calendar-Julian-" version ".tar.gz")) (sha256 (base32 "0gbw7rh706qk5jlmmz3yzsm0ilzp39kyar28g4j6d57my8cwaipx")))) From a7da90936f100336e70fb2e89a41b72673d1be08 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 13:34:59 +0100 Subject: [PATCH 107/411] gnu: perl-base: Update source URL. * gnu/packages/perl.scm (perl-base)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index cacb1dee25..c93080af82 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -387,7 +387,7 @@ (define-public perl-base (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/R/RG/RGARCIA/" + (uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/" "base-" version ".tar.gz")) (sha256 (base32 "1pjxcbbcpwlgzm0fzsbqd58zn8cj9vwril1wn3xfd7ws550mixa0")))) From a4876fbe1747d88954ab38c009ab809f2f658733 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 13:37:16 +0100 Subject: [PATCH 108/411] gnu: perl-class-accessor-grouped: Update source URL. * gnu/packages/perl.scm (perl-class-accessor-grouped)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index c93080af82..f70f6fa89f 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -911,7 +911,7 @@ (define-public perl-class-accessor-grouped (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/R/RI/RIBASUSHI/" + (uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/" "Class-Accessor-Grouped-" version ".tar.gz")) (sha256 (base32 "1fy48hx56n5kdn1gz66awg465qf34r0n5jam64x7zxh9zhzb1m9m")))) From 2db3b2d3031e25ea6bf3323f254fe0ebd2c1d508 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 13:38:57 +0100 Subject: [PATCH 109/411] gnu: perl-carp: Update source URL. * gnu/packages/perl.scm (perl-carp)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index f70f6fa89f..c925567e0a 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -733,7 +733,7 @@ (define-public perl-carp (source (origin (method url-fetch) (uri (string-append - "mirror://cpan/authors/id/R/RJ/RJBS/Carp-" + "mirror://cpan/authors/id/X/XS/XSAWYERX/Carp-" version ".tar.gz")) (sha256 (base32 From 587f764e2a0748d22f1dbb5af30efc3d15d3e86e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 14:02:40 +0100 Subject: [PATCH 110/411] gnu: perl-mouse: Update source URL. * gnu/packages/perl.scm (perl-mouse)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index c925567e0a..1ef304c75e 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6226,7 +6226,7 @@ (define-public perl-mouse (source (origin (method url-fetch) (uri (string-append - "mirror://cpan/authors/id/S/SY/SYOHEX/Mouse-v" + "mirror://cpan/authors/id/S/SK/SKAJI/Mouse-v" version ".tar.gz")) (sha256 From 034eae9c129fccdc0bd62fbf150a09c58117e592 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 14:07:13 +0100 Subject: [PATCH 111/411] gnu: perl-class-date: Update source URL. * gnu/packages/perl.scm (perl-class-date)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 1ef304c75e..e96c23668c 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1027,7 +1027,7 @@ (define-public perl-class-date (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/S/SZ/SZABGAB/" + (uri (string-append "mirror://cpan/authors/id/Y/YA/YANICK/" "Class-Date-" version ".tar.gz")) (sha256 (base32 "1h7dfjxkpqbfymrf1bn7699i4fx6pbv5wvvi5zszfr8sqqkax1yf")))) From c3b5c803f0108a2b6c7671c2fa3916ffe50577f8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 25 Mar 2019 14:08:33 +0100 Subject: [PATCH 112/411] gnu: perl-svg: Update source URL. * gnu/packages/perl.scm (perl-svg)[source]: Update URL. --- gnu/packages/perl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index e96c23668c..038d551fb1 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7790,7 +7790,7 @@ (define-public perl-svg (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/S/SZ/SZABGAB/SVG-" + (uri (string-append "mirror://cpan/authors/id/M/MA/MANWAR/SVG-" version ".tar.gz")) (sha256 (base32 "1br8dwh2363s6r0qgy7vv30gv5kj456vj5m6x83savx4wzfnsggc")))) From bffb58269f986f12091db55471cc2064736ff139 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 13:40:31 +0100 Subject: [PATCH 113/411] gnu: Add r-bqtl. * gnu/packages/cran.scm (r-bqtl): New variable. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 1556d56672..2e4eb5c914 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12506,3 +12506,23 @@ (define-public r-haplo-stats @code{haplo.score()}, and @code{haplo.power()}; all of which have detailed examples in the vignette.") (license license:gpl2+))) + +(define-public r-bqtl + (package + (name "r-bqtl") + (version "1.0-32") + (source + (origin + (method url-fetch) + (uri (cran-uri "bqtl" version)) + (sha256 + (base32 + "0jjqgsm9fmvz5nkgz608xfljjpmaf4rs4f7kxvpqn4b1l9s5lhci")))) + (build-system r-build-system) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "http://famprevmed.ucsd.edu/faculty/cberry/bqtl/") + (synopsis "Bayesian QTL mapping toolkit") + (description + "This is a QTL mapping toolkit for inbred crosses and recombinant inbred +lines. It includes maximum likelihood and Bayesian tools.") + (license license:gpl2+))) From 73fcd222447f602d2e31325695376002c41ed2e7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 13:40:40 +0100 Subject: [PATCH 114/411] gnu: Add r-ibdreg. * gnu/packages/cran.scm (r-ibdreg): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 2e4eb5c914..dda2a3e1b2 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12526,3 +12526,25 @@ (define-public r-bqtl "This is a QTL mapping toolkit for inbred crosses and recombinant inbred lines. It includes maximum likelihood and Bayesian tools.") (license license:gpl2+))) + +(define-public r-ibdreg + (package + (name "r-ibdreg") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (cran-uri "ibdreg" version)) + (sha256 + (base32 + "1kaa5q1byi30wzr0mw4w2cv1ssxprzcwf91wrpqwkgcsdy7dkh2g")))) + (build-system r-build-system) + (home-page "https://www.mayo.edu/research/labs/\ +statistical-genetics-genetic-epidemiology/software") + (synopsis "Regression methods for IBD linkage with covariates") + (description + "This package provides a method to test genetic linkage with covariates +by regression methods with response IBD sharing for relative pairs. Account +for correlations of IBD statistics and covariates for relative pairs within +the same pedigree.") + (license license:gpl2+))) From d4a255a48451f1899a0ebd1d17db0d200a3704b4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 13:40:45 +0100 Subject: [PATCH 115/411] gnu: Add r-dlmap. * gnu/packages/cran.scm (r-dlmap): New variable. --- gnu/packages/cran.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index dda2a3e1b2..b6fe53998b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12548,3 +12548,34 @@ (define-public r-ibdreg for correlations of IBD statistics and covariates for relative pairs within the same pedigree.") (license license:gpl2+))) + +(define-public r-dlmap + (package + (name "r-dlmap") + (version "1.13") + (source + (origin + (method url-fetch) + (uri (cran-uri "dlmap" version)) + (sha256 + (base32 + "0s6wlkggkm3qndwyvw72xv1n0mcjb7ss3ajbq2ll6rv30splq0db")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ibdreg" ,r-ibdreg) + ("r-mgcv" ,r-mgcv) + ("r-nlme" ,r-nlme) + ("r-qtl" ,r-qtl) + ("r-wgaim" ,r-wgaim))) + (home-page "https://cran.r-project.org/web/packages/dlmap/") + (synopsis "Detection localization mapping for QTL") + (description + "This is package for QTL mapping in a mixed model framework with separate +detection and localization stages. The first stage detects the number of QTL +on each chromosome based on the genetic variation due to grouped markers on +the chromosome; the second stage uses this information to determine the most +likely QTL positions. The mixed model can accommodate general fixed and +random effects, including spatial effects in field trials and pedigree +effects. It is applicable to backcrosses, doubled haploids, recombinant +inbred lines, F2 intercrosses, and association mapping populations.") + (license license:gpl2))) From 1cdd9f0e8a3235cdb4f56f8d0ced569cba852079 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 13:45:00 +0100 Subject: [PATCH 116/411] gnu: Add r-ldheatmap. * gnu/packages/cran.scm (r-ldheatmap): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b6fe53998b..4d7f68bbee 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12579,3 +12579,28 @@ (define-public r-dlmap effects. It is applicable to backcrosses, doubled haploids, recombinant inbred lines, F2 intercrosses, and association mapping populations.") (license license:gpl2))) + +(define-public r-ldheatmap + (package + (name "r-ldheatmap") + (version "0.99-5") + (source + (origin + (method url-fetch) + (uri (cran-uri "LDheatmap" version)) + (sha256 + (base32 + "0il3g3n3bzv74lz7dlhyiwc2x2417v6yhx2g47pahxdzqa09kf4s")))) + (properties `((upstream-name . "LDheatmap"))) + (build-system r-build-system) + (propagated-inputs + `(("r-genetics" ,r-genetics) + ("r-snpstats" ,r-snpstats))) + (home-page "http://stat.sfu.ca/statgen/research/ldheatmap.html") + (synopsis "Graphical display of pairwise linkage disequilibria between SNPs") + (description + "This package provides tools to produce a graphical display, as a heat +map, of measures of pairwise linkage disequilibria between SNPs. Users may +optionally include the physical locations or genetic map distances of each SNP +on the plot.") + (license license:gpl3))) From b8fea3c85998a3c39e39f1eda6fa28ac54cda008 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 13:46:37 +0100 Subject: [PATCH 117/411] gnu: Add r-hwde. * gnu/packages/cran.scm (r-hwde): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 4d7f68bbee..e50acce5d6 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12604,3 +12604,25 @@ (define-public r-ldheatmap optionally include the physical locations or genetic map distances of each SNP on the plot.") (license license:gpl3))) + +(define-public r-hwde + (package + (name "r-hwde") + (version "0.67") + (source + (origin + (method url-fetch) + (uri (cran-uri "hwde" version)) + (sha256 + (base32 + "0wb2f9i5qi7w77ygh8bvydfpr7j5x8dyvnnhdkajaz0wdcpkyaqy")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/hwde/") + (synopsis "Models and tests for departure from Hardy-Weinberg equilibrium") + (description + "This package fits models for genotypic disequilibria, as described in +Huttley and Wilson (2000), Weir (1996) and Weir and Wilson (1986). Contrast +terms are available that account for first order interactions between loci. +It also implements, for a single locus in a single population, a conditional +exact test for Hardy-Weinberg equilibrium.") + (license license:gpl2+))) From 7cd4ff2f0cb950744074af56711bd8a83c08fda1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 14:00:14 +0100 Subject: [PATCH 118/411] gnu: Add r-tdthap. * gnu/packages/cran.scm (r-tdthap): New variable. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index e50acce5d6..bb97f72353 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12626,3 +12626,23 @@ (define-public r-hwde It also implements, for a single locus in a single population, a conditional exact test for Hardy-Weinberg equilibrium.") (license license:gpl2+))) + +(define-public r-tdthap + (package + (name "r-tdthap") + (version "1.1-9") + (source + (origin + (method url-fetch) + (uri (cran-uri "tdthap" version)) + (sha256 + (base32 + "0y01x0hcf0rw06cpn4pk17b0shf4v2c9was7vfs0zhsbq8qcwx7r")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/tdthap/") + (synopsis "TDT tests for extended haplotypes") + (description + "Functions and examples are provided for transmission/disequilibrium +tests for extended marker haplotypes, as in Clayton, D. and Jones, H. (1999) +\"Transmission/disequilibrium tests for extended marker haplotypes\".") + (license license:artistic2.0))) From 469fb438918df593f6c38b18e78532a25be2ccef Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 14:01:56 +0100 Subject: [PATCH 119/411] gnu: r-sparql: Move to (gnu packages cran). * gnu/packages/bioinformatics.scm (r-sparql): Move from here... * gnu/packages/cran.scm (r-sparql): ...to here. --- gnu/packages/bioinformatics.scm | 23 ----------------------- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a615a9c5da..7d3b34d1a9 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7014,29 +7014,6 @@ (define-public r-grohmm "This package provides a pipeline for the analysis of GRO-seq data.") (license license:gpl3+))) -(define-public r-sparql - (package - (name "r-sparql") - (version "1.16") - (source (origin - (method url-fetch) - (uri (cran-uri "SPARQL" version)) - (sha256 - (base32 - "0gak1q06yyhdmcxb2n3v0h9gr1vqd0viqji52wpw211qp6r6dcrc")))) - (properties `((upstream-name . "SPARQL"))) - (build-system r-build-system) - (propagated-inputs - `(("r-rcurl" ,r-rcurl) - ("r-xml" ,r-xml))) - (home-page "https://cran.r-project.org/web/packages/SPARQL") - (synopsis "SPARQL client for R") - (description "This package provides an interface to use SPARQL to pose -SELECT or UPDATE queries to an end-point.") - ;; The only license indication is found in the DESCRIPTION file, - ;; which states GPL-3. So we cannot assume GPLv3+. - (license license:gpl3))) - (define-public vsearch (package (name "vsearch") diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index bb97f72353..d4564f4f49 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12646,3 +12646,26 @@ (define-public r-tdthap tests for extended marker haplotypes, as in Clayton, D. and Jones, H. (1999) \"Transmission/disequilibrium tests for extended marker haplotypes\".") (license license:artistic2.0))) + +(define-public r-sparql + (package + (name "r-sparql") + (version "1.16") + (source (origin + (method url-fetch) + (uri (cran-uri "SPARQL" version)) + (sha256 + (base32 + "0gak1q06yyhdmcxb2n3v0h9gr1vqd0viqji52wpw211qp6r6dcrc")))) + (properties `((upstream-name . "SPARQL"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcurl" ,r-rcurl) + ("r-xml" ,r-xml))) + (home-page "https://cran.r-project.org/web/packages/SPARQL") + (synopsis "SPARQL client for R") + (description "This package provides an interface to use SPARQL to pose +SELECT or UPDATE queries to an end-point.") + ;; The only license indication is found in the DESCRIPTION file, + ;; which states GPL-3. So we cannot assume GPLv3+. + (license license:gpl3))) From 0ef062b338962dbe9b3c28334643b2410fbfef78 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 14:03:21 +0100 Subject: [PATCH 120/411] gnu: r-bookdown: Move to (gnu packages cran). * gnu/packages/bioinformatics.scm (r-bookdown): Move from here... * gnu/packages/cran.scm (r-bookdown): ...to here. --- gnu/packages/bioinformatics.scm | 24 ------------------------ gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 7d3b34d1a9..dcee9438a9 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7266,30 +7266,6 @@ (define-public r-biocviews also known as views, in a controlled vocabulary.") (license license:artistic2.0))) -(define-public r-bookdown - (package - (name "r-bookdown") - (version "0.9") - (source (origin - (method url-fetch) - (uri (cran-uri "bookdown" version)) - (sha256 - (base32 - "0vg1s1w0l9pm95asqb21yf39mfk1nc9rdhmlys9xwr7p7i7rsz32")))) - (build-system r-build-system) - (propagated-inputs - `(("r-htmltools" ,r-htmltools) - ("r-knitr" ,r-knitr) - ("r-rmarkdown" ,r-rmarkdown) - ("r-tinytex" ,r-tinytex) - ("r-yaml" ,r-yaml) - ("r-xfun" ,r-xfun))) - (home-page "https://github.com/rstudio/bookdown") - (synopsis "Authoring books and technical documents with R markdown") - (description "This package provides output formats and utilities for -authoring books and technical documents with R Markdown.") - (license license:gpl3))) - (define-public r-biocstyle (package (name "r-biocstyle") diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d4564f4f49..03aa2f59f5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12669,3 +12669,27 @@ (define-public r-sparql ;; The only license indication is found in the DESCRIPTION file, ;; which states GPL-3. So we cannot assume GPLv3+. (license license:gpl3))) + +(define-public r-bookdown + (package + (name "r-bookdown") + (version "0.9") + (source (origin + (method url-fetch) + (uri (cran-uri "bookdown" version)) + (sha256 + (base32 + "0vg1s1w0l9pm95asqb21yf39mfk1nc9rdhmlys9xwr7p7i7rsz32")))) + (build-system r-build-system) + (propagated-inputs + `(("r-htmltools" ,r-htmltools) + ("r-knitr" ,r-knitr) + ("r-rmarkdown" ,r-rmarkdown) + ("r-tinytex" ,r-tinytex) + ("r-yaml" ,r-yaml) + ("r-xfun" ,r-xfun))) + (home-page "https://github.com/rstudio/bookdown") + (synopsis "Authoring books and technical documents with R markdown") + (description "This package provides output formats and utilities for +authoring books and technical documents with R Markdown.") + (license license:gpl3))) From 72a216a9d048a2a1018877b7e0eadb75fb278cf1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 14:04:19 +0100 Subject: [PATCH 121/411] gnu: r-optparse: Move to (gnu packages cran). * gnu/packages/bioinformatics.scm (r-optparse): Move from here... * gnu/packages/cran.scm (r-optparse): ...to here. --- gnu/packages/bioinformatics.scm | 23 ----------------------- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 2 files changed, 22 insertions(+), 23 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index dcee9438a9..c1d7f5d20e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7339,29 +7339,6 @@ (define-public r-bioccheck checks on R packages that are to be submitted to the Bioconductor repository.") (license license:artistic2.0))) -(define-public r-optparse - (package - (name "r-optparse") - (version "1.6.1") - (source - (origin - (method url-fetch) - (uri (cran-uri "optparse" version)) - (sha256 - (base32 - "04vyb6dhcga30mvghsg1p052jmf69xqxkvh3hzqz7dscyppy76w1")))) - (build-system r-build-system) - (propagated-inputs - `(("r-getopt" ,r-getopt))) - (home-page - "https://github.com/trevorld/optparse") - (synopsis "Command line option parser") - (description - "This package provides a command line parser inspired by Python's -@code{optparse} library to be used with Rscript to write shebang scripts -that accept short and long options.") - (license license:gpl2+))) - (define-public r-s4vectors (package (name "r-s4vectors") diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 03aa2f59f5..8bf5404a0c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12693,3 +12693,25 @@ (define-public r-bookdown (description "This package provides output formats and utilities for authoring books and technical documents with R Markdown.") (license license:gpl3))) + +(define-public r-optparse + (package + (name "r-optparse") + (version "1.6.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "optparse" version)) + (sha256 + (base32 + "04vyb6dhcga30mvghsg1p052jmf69xqxkvh3hzqz7dscyppy76w1")))) + (build-system r-build-system) + (propagated-inputs + `(("r-getopt" ,r-getopt))) + (home-page "https://github.com/trevorld/optparse") + (synopsis "Command line option parser") + (description + "This package provides a command line parser inspired by Python's +@code{optparse} library to be used with Rscript to write shebang scripts +that accept short and long options.") + (license license:gpl2+))) From c5a2b518ad1cf5e062c073fe31692e690c28ab78 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 14:05:09 +0100 Subject: [PATCH 122/411] gnu: r-wgcna: Move to (gnu packages cran). * gnu/packages/bioinformatics.scm (r-wgcna): Move from here... * gnu/packages/cran.scm (r-wgcna): ...to here. --- gnu/packages/bioinformatics.scm | 39 --------------------------------- gnu/packages/cran.scm | 39 +++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 39 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index c1d7f5d20e..1a942b6476 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8466,45 +8466,6 @@ (define-public r-mutationalpatterns in SNV base substitution data.") (license license:expat))) -(define-public r-wgcna - (package - (name "r-wgcna") - (version "1.66") - (source - (origin - (method url-fetch) - (uri (cran-uri "WGCNA" version)) - (sha256 - (base32 - "0rhnyhzfn93yp24jz9v6dzrmyizwzdw070a7idm0k33w1cm8sjqv")))) - (properties `((upstream-name . "WGCNA"))) - (build-system r-build-system) - (propagated-inputs - `(("r-annotationdbi" ,r-annotationdbi) - ("r-doparallel" ,r-doparallel) - ("r-dynamictreecut" ,r-dynamictreecut) - ("r-fastcluster" ,r-fastcluster) - ("r-foreach" ,r-foreach) - ("r-go-db" ,r-go-db) - ("r-hmisc" ,r-hmisc) - ("r-impute" ,r-impute) - ("r-rcpp" ,r-rcpp) - ("r-robust" ,r-robust) - ("r-survival" ,r-survival) - ("r-matrixstats" ,r-matrixstats) - ("r-preprocesscore" ,r-preprocesscore))) - (home-page - "http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/Rpackages/WGCNA/") - (synopsis "Weighted correlation network analysis") - (description - "This package provides functions necessary to perform Weighted -Correlation Network Analysis on high-dimensional data. It includes functions -for rudimentary data cleaning, construction and summarization of correlation -networks, module identification and functions for relating both variables and -modules to sample traits. It also includes a number of utility functions for -data manipulation and visualization.") - (license license:gpl2+))) - (define-public r-chipkernels (let ((commit "c9cfcacb626b1221094fb3490ea7bac0fd625372") (revision "1")) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 8bf5404a0c..ba86457808 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12715,3 +12715,42 @@ (define-public r-optparse @code{optparse} library to be used with Rscript to write shebang scripts that accept short and long options.") (license license:gpl2+))) + +(define-public r-wgcna + (package + (name "r-wgcna") + (version "1.66") + (source + (origin + (method url-fetch) + (uri (cran-uri "WGCNA" version)) + (sha256 + (base32 + "0rhnyhzfn93yp24jz9v6dzrmyizwzdw070a7idm0k33w1cm8sjqv")))) + (properties `((upstream-name . "WGCNA"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-doparallel" ,r-doparallel) + ("r-dynamictreecut" ,r-dynamictreecut) + ("r-fastcluster" ,r-fastcluster) + ("r-foreach" ,r-foreach) + ("r-go-db" ,r-go-db) + ("r-hmisc" ,r-hmisc) + ("r-impute" ,r-impute) + ("r-rcpp" ,r-rcpp) + ("r-robust" ,r-robust) + ("r-survival" ,r-survival) + ("r-matrixstats" ,r-matrixstats) + ("r-preprocesscore" ,r-preprocesscore))) + (home-page + "http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/Rpackages/WGCNA/") + (synopsis "Weighted correlation network analysis") + (description + "This package provides functions necessary to perform Weighted +Correlation Network Analysis on high-dimensional data. It includes functions +for rudimentary data cleaning, construction and summarization of correlation +networks, module identification and functions for relating both variables and +modules to sample traits. It also includes a number of utility functions for +data manipulation and visualization.") + (license license:gpl2+))) From bac0ca322ce5b1140e8bdd7fb2364e8c09dc09aa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 14:33:02 +0100 Subject: [PATCH 123/411] gnu: r-kernlab: Move to (gnu packages cran). * gnu/packages/machine-learning.scm (r-kernlab): Move from here... * gnu/packages/cran.scm (r-kernlab): ...to here. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ gnu/packages/machine-learning.scm | 22 ---------------------- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index ba86457808..de2337e11a 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12754,3 +12754,25 @@ (define-public r-wgcna modules to sample traits. It also includes a number of utility functions for data manipulation and visualization.") (license license:gpl2+))) + +(define-public r-kernlab + (package + (name "r-kernlab") + (version "0.9-27") + (source + (origin + (method url-fetch) + (uri (cran-uri "kernlab" version)) + (sha256 + (base32 + "1m0xqf6gyvwayz7w3c83y32ayvnlz0jicj8ijk808zq9sh7dbbgn")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/kernlab") + (synopsis "Kernel-based machine learning tools") + (description + "This package provides kernel-based machine learning methods for +classification, regression, clustering, novelty detection, quantile regression +and dimensionality reduction. Among other methods @code{kernlab} includes +Support Vector Machines, Spectral Clustering, Kernel PCA, Gaussian Processes +and a QP solver.") + (license license:gpl2))) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index 28bb44a3ca..62b3507b67 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -626,28 +626,6 @@ (define-public r-adaptivesparsity geometric models.") (license license:lgpl3+))) -(define-public r-kernlab - (package - (name "r-kernlab") - (version "0.9-27") - (source - (origin - (method url-fetch) - (uri (cran-uri "kernlab" version)) - (sha256 - (base32 - "1m0xqf6gyvwayz7w3c83y32ayvnlz0jicj8ijk808zq9sh7dbbgn")))) - (build-system r-build-system) - (home-page "https://cran.r-project.org/web/packages/kernlab") - (synopsis "Kernel-based machine learning tools") - (description - "This package provides kernel-based machine learning methods for -classification, regression, clustering, novelty detection, quantile regression -and dimensionality reduction. Among other methods @code{kernlab} includes -Support Vector Machines, Spectral Clustering, Kernel PCA, Gaussian Processes -and a QP solver.") - (license license:gpl2))) - (define-public dlib (package (name "dlib") From 80eb01c7763e99603dac6c1e4ad41f521fed5c26 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 14:34:41 +0100 Subject: [PATCH 124/411] gnu: r-gkmsvm: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-gkmsvm): Move from here... * gnu/packages/bioconductor.scm (r-gkmsvm): ...to here. --- gnu/packages/bioconductor.scm | 34 +++++++++++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 33 -------------------------------- 2 files changed, 34 insertions(+), 33 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 710b9fd07a..f687a03030 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2521,3 +2521,37 @@ (define-public r-ioniser visualising metrics relative to experiment run time or spatially over the surface of a flowcell.") (license license:expat))) + +;; This is a CRAN package, but it depends on packages from Bioconductor. +(define-public r-gkmsvm + (package + (name "r-gkmsvm") + (version "0.79.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "gkmSVM" version)) + (sha256 + (base32 + "04dakbgfvfalz4rm4fvvybp506dn5fbj5g86ybfhrc6wywjllsz3")))) + (properties `((upstream-name . "gkmSVM"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-kernlab" ,r-kernlab) + ("r-rcpp" ,r-rcpp) + ("r-rocr" ,r-rocr) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors) + ("r-seqinr" ,r-seqinr))) + (home-page "https://cran.r-project.org/web/packages/gkmSVM") + (synopsis "Gapped-kmer support vector machine") + (description + "This R package provides tools for training gapped-kmer SVM classifiers +for DNA and protein sequences. This package supports several sequence +kernels, including: gkmSVM, kmer-SVM, mismatch kernel and wildcard kernel.") + (license license:gpl2+))) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 1a942b6476..42c90ea949 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8533,39 +8533,6 @@ (define-public r-seqgl factors bound at the specific regions.") (license license:gpl2+))) -(define-public r-gkmsvm - (package - (name "r-gkmsvm") - (version "0.79.0") - (source - (origin - (method url-fetch) - (uri (cran-uri "gkmSVM" version)) - (sha256 - (base32 - "04dakbgfvfalz4rm4fvvybp506dn5fbj5g86ybfhrc6wywjllsz3")))) - (properties `((upstream-name . "gkmSVM"))) - (build-system r-build-system) - (propagated-inputs - `(("r-biocgenerics" ,r-biocgenerics) - ("r-biostrings" ,r-biostrings) - ("r-genomeinfodb" ,r-genomeinfodb) - ("r-genomicranges" ,r-genomicranges) - ("r-iranges" ,r-iranges) - ("r-kernlab" ,r-kernlab) - ("r-rcpp" ,r-rcpp) - ("r-rocr" ,r-rocr) - ("r-rtracklayer" ,r-rtracklayer) - ("r-s4vectors" ,r-s4vectors) - ("r-seqinr" ,r-seqinr))) - (home-page "https://cran.r-project.org/web/packages/gkmSVM") - (synopsis "Gapped-kmer support vector machine") - (description - "This R package provides tools for training gapped-kmer SVM classifiers -for DNA and protein sequences. This package supports several sequence -kernels, including: gkmSVM, kmer-SVM, mismatch kernel and wildcard kernel.") - (license license:gpl2+))) - (define-public r-tximport (package (name "r-tximport") From ab7f1eb97abd49676f8e98e35e861f9785f0c2b2 Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian Date: Sun, 24 Mar 2019 18:01:51 -0700 Subject: [PATCH 125/411] gnu: Add brightnessctl. * gnu/packages/linux.scm (brightnessctl): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/linux.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index cd1f069a13..404cd63dbb 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -4304,6 +4304,45 @@ (define-public light Light is the successor of lightscript.") (license license:gpl3+))) +(define-public brightnessctl + (let ((commit "6a791e7694aeeb5d027f71c6098e5182cf03371c")) + (package + (name "brightnessctl") + (version (git-version "0.4" "0" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Hummer12007/brightnessctl/") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1n1gb8ldgqv3vs565yhk1w4jfvrviczp94r8wqlkv5q6ab43c8w9")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f ; no tests + #:make-flags (list "CC=gcc" + (string-append "PREFIX=" %output) + (string-append "UDEVDIR=" %output "/lib/udev/rules.d/")) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'unpack 'adjust-udev-rules + (lambda _ + (substitute* "90-brightnessctl.rules" + (("/bin/") "/run/current-system/profile/bin/")) + #t))))) + (home-page "https://github.com/Hummer12007/brightnessctl") + (synopsis "Backlight and LED brightness control") + (description + "This program allows you read and control device brightness. Devices +include backlight and LEDs. It can also preserve current brightness before +applying the operation, such as on lid close. + +The appropriate permissions must be set on the backlight or LED control +interface in sysfs, which can be accomplished with the included udev rules.") + (license license:expat)))) + (define-public tlp (package (name "tlp") From a0583c0d1392a3401116faed50c7ccf534d0c4c4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 15:58:38 +0100 Subject: [PATCH 126/411] gnu: Add r-hierfstat. * gnu/packages/cran.scm (r-hierfstat): New variable. --- gnu/packages/cran.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index de2337e11a..fe69ee8fc4 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12776,3 +12776,29 @@ (define-public r-kernlab Support Vector Machines, Spectral Clustering, Kernel PCA, Gaussian Processes and a QP solver.") (license license:gpl2))) + +(define-public r-hierfstat + (package + (name "r-hierfstat") + (version "0.04-22") + (source + (origin + (method url-fetch) + (uri (cran-uri "hierfstat" version)) + (sha256 + (base32 + "1fav2v2996v5kb1ffa6v5wxfm921syxg6as034vd3j4jfhdibyfx")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ade4" ,r-ade4) + ("r-adegenet" ,r-adegenet) + ("r-gtools" ,r-gtools))) + (home-page "https://cran.r-project.org/web/packages/hierfstat/") + (synopsis "Estimation and tests of hierarchical F-statistics") + (description + "This package allows the estimation of hierarchical F-statistics from +haploid or diploid genetic data with any numbers of levels in the hierarchy, +following the algorithm of Yang (Evolution, 1998, 52(4):950-956). Functions +are also given to test via randomisations the significance of each F and +variance components, using the likelihood-ratio statistics G.") + (license license:gpl2+))) From 3080b81af63c201decc96f8ba62ae174cdc574a2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:02:15 +0100 Subject: [PATCH 127/411] gnu: Add r-hapassoc. * gnu/packages/cran.scm (r-hapassoc): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index fe69ee8fc4..c10af5fa2e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12802,3 +12802,25 @@ (define-public r-hierfstat are also given to test via randomisations the significance of each F and variance components, using the likelihood-ratio statistics G.") (license license:gpl2+))) + +(define-public r-hapassoc + (package + (name "r-hapassoc") + (version "1.2-8") + (source + (origin + (method url-fetch) + (uri (cran-uri "hapassoc" version)) + (sha256 + (base32 + "0qs5jl0snzfchgpp6pabncwywxcmi743g91jvjiyyzw0lw85yv4s")))) + (build-system r-build-system) + (home-page "http://stat.sfu.ca/statgen/research/hapassoc.html") + (synopsis "Inference of trait associations with SNP haplotypes") + (description + "Hapassoc performs likelihood inference of trait associations with +haplotypes and other covariates in @dfn{generalized linear models} (GLMs). The +functions are developed primarily for data collected in cohort or +cross-sectional studies. They can accommodate uncertain haplotype phase and +handle missing genotypes at some SNPs.") + (license license:gpl2))) From 8a5460b4fb32962e835ec08907210f6416e53582 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:09:07 +0100 Subject: [PATCH 128/411] gnu: Add r-triform. * gnu/packages/bioconductor.scm (r-triform): New variable. --- gnu/packages/bioconductor.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index f687a03030..7bd126b5c0 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2555,3 +2555,27 @@ (define-public r-gkmsvm for DNA and protein sequences. This package supports several sequence kernels, including: gkmSVM, kmer-SVM, mismatch kernel and wildcard kernel.") (license license:gpl2+))) + +(define-public r-triform + (package + (name "r-triform") + (version "1.24.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "triform" version)) + (sha256 + (base32 + "12ca24pv1r5vbw3rq345jqg7x3prrbsxk6445zikpzfblwmw0b4s")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-iranges" ,r-iranges) + ("r-yaml" ,r-yaml))) + (home-page "https://bioconductor.org/packages/triform/") + (synopsis "Find enriched regions in transcription factor ChIP-sequencing data") + (description + "The Triform algorithm uses model-free statistics to identify peak-like +distributions of TF ChIP sequencing reads, taking advantage of an improved +peak definition in combination with known profile characteristics.") + (license license:gpl2))) From c538bcdd38ca12fbdf02b220a371ac16448cab8c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:09:16 +0100 Subject: [PATCH 129/411] gnu: Add r-varianttools. * gnu/packages/bioconductor.scm (r-varianttools): New variable. --- gnu/packages/bioconductor.scm | 40 +++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 7bd126b5c0..744fc8780d 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2579,3 +2579,43 @@ (define-public r-triform distributions of TF ChIP sequencing reads, taking advantage of an improved peak definition in combination with known profile characteristics.") (license license:gpl2))) + +(define-public r-varianttools + (package + (name "r-varianttools") + (version "1.24.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "VariantTools" version)) + (sha256 + (base32 + "1ml3pl7xnxvzr6zkypr80xzw6nffswk29gzxycn42473sc4ixn7j")))) + (properties `((upstream-name . "VariantTools"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocparallel" ,r-biocparallel) + ("r-biostrings" ,r-biostrings) + ("r-bsgenome" ,r-bsgenome) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicfeatures" ,r-genomicfeatures) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-matrix" ,r-matrix) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors) + ("r-variantannotation" ,r-variantannotation))) + (home-page "https://bioconductor.org/packages/VariantTools/") + (synopsis "Tools for exploratory analysis of variant calls") + (description + "Explore, diagnose, and compare variant calls using filters. The +VariantTools package supports a workflow for loading data, calling single +sample variants and tumor-specific somatic mutations or other sample-specific +variant types (e.g., RNA editing). Most of the functions operate on +alignments (BAM files) or datasets of called variants. The user is expected +to have already aligned the reads with a separate tool, e.g., GSNAP via +gmapR.") + (license license:artistic2.0))) From 3e41919d5123ec7a5772ec2828a157ec64cfb947 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:19:40 +0100 Subject: [PATCH 130/411] gnu: Add r-heatplus. * gnu/packages/bioconductor.scm (r-heatplus): New variable. --- gnu/packages/bioconductor.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 744fc8780d..a17372da82 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2619,3 +2619,28 @@ (define-public r-varianttools to have already aligned the reads with a separate tool, e.g., GSNAP via gmapR.") (license license:artistic2.0))) + +(define-public r-heatplus + (package + (name "r-heatplus") + (version "2.28.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "Heatplus" version)) + (sha256 + (base32 + "0drspjzgb23ra2kdvpxhsd8mdifsf97fcf668llyz2hr0r39fc48")))) + (properties `((upstream-name . "Heatplus"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcolorbrewer" ,r-rcolorbrewer))) + (home-page "https://github.com/alexploner/Heatplus") + (synopsis "Heatmaps with row and/or column covariates and colored clusters") + (description + "This package provides tools to display a rectangular heatmap (intensity +plot) of a data matrix. By default, both samples (columns) and features (row) +of the matrix are sorted according to a hierarchical clustering, and the +corresponding dendrogram is plotted. Optionally, panels with additional +information about samples and features can be added to the plot.") + (license license:gpl2+))) From c04f230eb3199b3b516584e102a87fc0e456806a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:19:52 +0100 Subject: [PATCH 131/411] gnu: Add r-gosemsim. * gnu/packages/bioconductor.scm (r-gosemsim): New variable. --- gnu/packages/bioconductor.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index a17372da82..78af3f5153 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2644,3 +2644,30 @@ (define-public r-heatplus corresponding dendrogram is plotted. Optionally, panels with additional information about samples and features can be added to the plot.") (license license:gpl2+))) + +(define-public r-gosemsim + (package + (name "r-gosemsim") + (version "2.8.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "GOSemSim" version)) + (sha256 + (base32 + "0ckihpy8jmgn2np1avprz76v9z7i5hqm2gj514c6dmmq3csbc7ib")))) + (properties `((upstream-name . "GOSemSim"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-go-db" ,r-go-db) + ("r-rcpp" ,r-rcpp))) + (home-page "https://guangchuangyu.github.io/software/GOSemSim") + (synopsis "GO-terms semantic similarity measures") + (description + "The semantic comparisons of @dfn{Gene Ontology} (GO) annotations provide +quantitative ways to compute similarities between genes and gene groups, and +have became important basis for many bioinformatics analysis approaches. +GOSemSim is an R package for semantic similarity computation among GO terms, +sets of GO terms, gene products and gene clusters.") + (license license:artistic2.0))) From 9d0f794229faeb24801d30f20c5df47bc4a03041 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:20:00 +0100 Subject: [PATCH 132/411] gnu: Add r-anota. * gnu/packages/bioconductor.scm (r-anota): New variable. --- gnu/packages/bioconductor.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 78af3f5153..656a594d96 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2671,3 +2671,34 @@ (define-public r-gosemsim GOSemSim is an R package for semantic similarity computation among GO terms, sets of GO terms, gene products and gene clusters.") (license license:artistic2.0))) + +(define-public r-anota + (package + (name "r-anota") + (version "1.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "anota" version)) + (sha256 + (base32 + "182fp6dpws516y0igvwn6936higfqvy25haa0xs273f8aczr9cf0")))) + (build-system r-build-system) + (propagated-inputs + `(("r-multtest" ,r-multtest) + ("r-qvalue" ,r-qvalue))) + (home-page "https://bioconductor.org/packages/anota/") + (synopsis "Analysis of translational activity") + (description + "Genome wide studies of translational control is emerging as a tool to +study verious biological conditions. The output from such analysis is both +the mRNA level (e.g. cytosolic mRNA level) and the levl of mRNA actively +involved in translation (the actively translating mRNA level) for each mRNA. +The standard analysis of such data strives towards identifying differential +translational between two or more sample classes - i.e. differences in +actively translated mRNA levels that are independent of underlying differences +in cytosolic mRNA levels. This package allows for such analysis using partial +variances and the random variance model. As 10s of thousands of mRNAs are +analyzed in parallell the library performs a number of tests to assure that +the data set is suitable for such analysis.") + (license license:gpl3))) From a6d867fed9d54f8fe650be45ffb781b16f26dc7a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:20:04 +0100 Subject: [PATCH 133/411] gnu: Add r-sigpathway. * gnu/packages/bioconductor.scm (r-sigpathway): New variable. --- gnu/packages/bioconductor.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 656a594d96..59ca93dde8 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2702,3 +2702,25 @@ (define-public r-anota analyzed in parallell the library performs a number of tests to assure that the data set is suitable for such analysis.") (license license:gpl3))) + +(define-public r-sigpathway + (package + (name "r-sigpathway") + (version "1.50.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "sigPathway" version)) + (sha256 + (base32 + "0pygrla2q2151981gshzv51jnj60h1df3vby5gsxqvxn2pdr4bv3")))) + (properties `((upstream-name . "sigPathway"))) + (build-system r-build-system) + (home-page "https://www.pnas.org/cgi/doi/10.1073/pnas.0506577102") + (synopsis "Pathway analysis") + (description + "This package is used to conduct pathway analysis by calculating the NT_k +and NE_k statistics in a statistical framework for determining whether a +specified group of genes for a pathway has a coordinated association with a +phenotype of interest.") + (license license:gpl2))) From 6bdce94f43c6500d680413bb912adeee7db98167 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:28:20 +0100 Subject: [PATCH 134/411] gnu: r-gsl: Update to 2.1-6. * gnu/packages/cran.scm (r-gsl): Update to 2.1-6. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c10af5fa2e..f72dc0dc95 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -8803,14 +8803,14 @@ (define-public r-stabledist (define-public r-gsl (package (name "r-gsl") - (version "2.1-5") + (version "2.1-6") (source (origin (method url-fetch) (uri (cran-uri "gsl" version)) (sha256 (base32 - "18kzgwmyfqg570gn2b33fm6mj87fiaa4a3bx954yrj8iq28im71v")))) + "0p4rh7npp6qbfc5sxjq86xjn7c9ivf3pd60qf1hldwckjqin7m7m")))) (build-system r-build-system) (inputs `(("gsl" ,gsl))) From 7166b77adc51072a77911e4734ccfb1ac0590485 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:28:38 +0100 Subject: [PATCH 135/411] gnu: Add r-sampling. * gnu/packages/cran.scm (r-sampling): New variable. --- gnu/packages/cran.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index f72dc0dc95..4ba686e90e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12824,3 +12824,24 @@ (define-public r-hapassoc cross-sectional studies. They can accommodate uncertain haplotype phase and handle missing genotypes at some SNPs.") (license license:gpl2))) + +(define-public r-sampling + (package + (name "r-sampling") + (version "2.8") + (source + (origin + (method url-fetch) + (uri (cran-uri "sampling" version)) + (sha256 + (base32 + "06pj7dan0mknpsblmlnk7am78qrnwgnql5vvx7vmbfvib7rj6s9m")))) + (build-system r-build-system) + (propagated-inputs + `(("r-lpsolve" ,r-lpsolve) + ("r-mass" ,r-mass))) + (home-page "https://cran.r-project.org/web/packages/sampling/") + (synopsis "Survey sampling") + (description + "This package provides functions for drawing and calibrating samples.") + (license license:gpl2+))) From 4f8b1fb35fd768ee937dbb6bed9f0d4e27cdf435 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 16:29:03 +0100 Subject: [PATCH 136/411] gnu: Add r-r2html. * gnu/packages/cran.scm (r-r2html): New variable. --- gnu/packages/cran.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 4ba686e90e..68516ecf6f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12845,3 +12845,29 @@ (define-public r-sampling (description "This package provides functions for drawing and calibrating samples.") (license license:gpl2+))) + +(define-public r-r2html + (package + (name "r-r2html") + (version "2.3.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "R2HTML" version)) + (sha256 + (base32 + "00kxny7hajs9r2kw63qk7d03ggdxx2j1g8vbrmzp806y8aczvik9")))) + (properties `((upstream-name . "R2HTML"))) + (build-system r-build-system) + (home-page "https://github.com/nalimilan/R2HTML") + (synopsis "HTML export for R objects") + (description + "This package includes HTML functions and methods to write in an HTML +file. Thus, making HTML reports is easy. It includes a function that allows +redirection on the fly, which appears to be very useful for teaching purposes, +as the student can keep a copy of the produced output to keep all that they +did during the course. The package comes with a vignette describing how to +write HTML reports for statistical analysis. Finally, a driver for Sweave +allows to parse HTML flat files containing R code and to automatically write +the corresponding outputs (tables and graphs).") + (license license:gpl2+))) From 3f6e6e98572e43297f8f780e0500a9c907c332c9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 17:19:47 +0100 Subject: [PATCH 137/411] gnu: Add r-rjava. * gnu/packages/cran.scm (r-rjava): New variable. --- gnu/packages/cran.scm | 50 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 68516ecf6f..d9648e4e9e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -54,8 +54,10 @@ (define-module (gnu packages cran) #:use-module (gnu packages graph) #:use-module (gnu packages gtk) #:use-module (gnu packages haskell) + #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) + #:use-module (gnu packages java) #:use-module (gnu packages javascript) #:use-module (gnu packages lisp) #:use-module (gnu packages machine-learning) @@ -63,6 +65,7 @@ (define-module (gnu packages cran) #:use-module (gnu packages mpi) #:use-module (gnu packages multiprecision) #:use-module (gnu packages networking) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -12871,3 +12874,50 @@ (define-public r-r2html allows to parse HTML flat files containing R code and to automatically write the corresponding outputs (tables and graphs).") (license license:gpl2+))) + +(define-public r-rjava + (package + (name "r-rjava") + (version "0.9-10") + (source + (origin + (method url-fetch) + (uri (cran-uri "rJava" version)) + (sha256 + (base32 + "0y7yg70i3zwbwl4g36js4dqpl51cmwss5ymrsk24d1z07bflp4y9")))) + (properties `((upstream-name . "rJava"))) + (build-system r-build-system) + (arguments + `(#:modules ((guix build utils) + (guix build r-build-system) + (ice-9 match)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-JAVA_HOME + (lambda* (#:key inputs #:allow-other-keys) + (let ((jdk (assoc-ref inputs "jdk"))) + (setenv "JAVA_HOME" jdk) + (setenv "JAVA" (which "java")) + (setenv "JAR" (which "jar")) + (setenv "JAVAC" (which "javac")) + (setenv "JAVAH" (which "javah")) + (setenv "JAVA_CPPFLAGS" + (string-append "-I" jdk "/include " + "-I" jdk "/include/linux")) + (match (find-files (string-append jdk "/jre/lib/") "libjvm.so") + ((lib) (setenv "JAVA_LIBS" lib)) + (_ (error "Could not find libjvm.so")))) + #t))))) + (inputs + `(("icu4c" ,icu4c) + ("jdk" ,icedtea-8 "jdk") + ("pcre" ,pcre) + ("zlib" ,zlib))) + (home-page "http://www.rforge.net/rJava/") + (synopsis "Low-Level R to Java interface") + (description + "This package provides a low-level interface to the Java VM very much +like .C/.Call and friends. It allows the creation of objects, calling methods +and accessing fields.") + (license license:gpl2))) From b9b177b31756221837c8b85df786c8cdd7df3ef0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 25 Mar 2019 17:20:14 +0100 Subject: [PATCH 138/411] gnu: Add r-svmisc. * gnu/packages/cran.scm (r-svmisc): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d9648e4e9e..8b8c0a4132 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12921,3 +12921,25 @@ (define-public r-rjava like .C/.Call and friends. It allows the creation of objects, calling methods and accessing fields.") (license license:gpl2))) + +(define-public r-svmisc + (package + (name "r-svmisc") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "svMisc" version)) + (sha256 + (base32 + "01r2a73wx2sh1njky961fxabx5wgddqqjqba6vjg0f3h8r3abmn2")))) + (properties `((upstream-name . "svMisc"))) + (build-system r-build-system) + (home-page "https://github.com/SciViews/svMisc") + (synopsis "Miscellaneous functions for SciViews") + (description + "This package provides miscellaneous functions for SciViews or general +use, including tools to manage a temporary environment attached to the search +path for temporary variables you do not want to @code{save()} or +@code{load()}; test the current platform; showing progress bars, etc.") + (license license:gpl2))) From b283d5f6308154b42a8656f370c97168726b2ab5 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 25 Mar 2019 17:40:45 +0100 Subject: [PATCH 139/411] services: SDDM: Specify absolute path to the X server. I'm not sure how this service ever worked, but SDDM started consistently failing on one machine seemingly because of this setting. * gnu/services/sddm.scm (sddm-configuration-file): Append /bin/X to the ServerPath setting. --- gnu/services/sddm.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/services/sddm.scm b/gnu/services/sddm.scm index a33eb39c43..43b34a38d9 100644 --- a/gnu/services/sddm.scm +++ b/gnu/services/sddm.scm @@ -140,7 +140,7 @@ (define (sddm-configuration-file config) [X11] ServerPath=" (xorg-configuration-server - (sddm-configuration-xorg config)) " + (sddm-configuration-xorg config)) "/bin/X" " XauthPath=" (sddm-configuration-xauth-path config) " XephyrPath=" (sddm-configuration-xephyr-path config) " DisplayCommand=" (sddm-configuration-xdisplay-start config) " From cdfb69b46abbdaa2ac0a80b5f92172cd1290a782 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 25 Mar 2019 14:58:53 -0400 Subject: [PATCH 140/411] gnu: nano: Update to 4.0. * gnu/packages/nano.scm (nano): Update to 4.0. --- gnu/packages/nano.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/nano.scm b/gnu/packages/nano.scm index 057e8c3bd9..04877f33ba 100644 --- a/gnu/packages/nano.scm +++ b/gnu/packages/nano.scm @@ -30,7 +30,7 @@ (define-module (gnu packages nano) (define-public nano (package (name "nano") - (version "3.2") + (version "4.0") (source (origin (method url-fetch) @@ -38,7 +38,7 @@ (define-public nano version ".tar.xz")) (sha256 (base32 - "0jb3zq0v84xb0chyynkcp2jhs9660wmpkic294p4p6c96npp69yi")))) + "1hxsx6qi7897d8bwkbnijlwvnn1dfy5pd1b7v2kj8ikq6pmcybqy")))) (build-system gnu-build-system) (inputs `(("gettext" ,gettext-minimal) From 516f6f55eb038238c23fb769169b4769e323438f Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Tue, 19 Mar 2019 09:16:25 +0100 Subject: [PATCH 141/411] gnu: docker: Use fewer modprobes. Fixes . Reported by Allan Adair . * gnu/packages/patches/docker-use-fewer-modprobes.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/docker.scm (docker)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/docker.scm | 5 +- .../patches/docker-use-fewer-modprobes.patch | 116 ++++++++++++++++++ 3 files changed, 121 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/docker-use-fewer-modprobes.patch diff --git a/gnu/local.mk b/gnu/local.mk index 079b42c11e..42d8f1ce18 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -729,6 +729,7 @@ dist_patch_DATA = \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/docker-engine-test-noinstall.patch \ %D%/packages/patches/docker-fix-tests.patch \ + %D%/packages/patches/docker-use-fewer-modprobes.patch \ %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \ %D%/packages/patches/doxygen-test.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm index 88fc7fc6ec..a11ce266d2 100644 --- a/gnu/packages/docker.scm +++ b/gnu/packages/docker.scm @@ -227,6 +227,8 @@ (define-public containerd (home-page "http://containerd.io/") (license license:asl2.0))) +;; TODO: Patch out modprobes for ip_vs, nf_conntrack, +;; brige, nf_conntrack_netlink, aufs. (define-public docker (package (name "docker") @@ -242,7 +244,8 @@ (define-public docker (base32 "06yr5xwr181lalh8z1lk07nxlp7hn38aq8cyqjk617dfy4lz0ixx")) (patches (search-patches "docker-engine-test-noinstall.patch" - "docker-fix-tests.patch")))) + "docker-fix-tests.patch" + "docker-use-fewer-modprobes.patch")))) (build-system gnu-build-system) (arguments `(#:modules diff --git a/gnu/packages/patches/docker-use-fewer-modprobes.patch b/gnu/packages/patches/docker-use-fewer-modprobes.patch new file mode 100644 index 0000000000..ebee83329c --- /dev/null +++ b/gnu/packages/patches/docker-use-fewer-modprobes.patch @@ -0,0 +1,116 @@ +This patch makes docker find out whether a filesystem type is supported +by trying to mount a filesystem of that type rather than invoking "modprobe". +--- docker-18.09.0-checkout/daemon/graphdriver/overlay/overlay.go.orig 1970-01-01 01:00:00.000000000 +0100 ++++ docker-18.09.0-checkout/daemon/graphdriver/overlay/overlay.go 2019-03-19 09:16:03.487087490 +0100 +@@ -8,7 +8,6 @@ + "io" + "io/ioutil" + "os" +- "os/exec" + "path" + "path/filepath" + "strconv" +@@ -201,9 +200,16 @@ + } + + func supportsOverlay() error { +- // We can try to modprobe overlay first before looking at +- // proc/filesystems for when overlay is supported +- exec.Command("modprobe", "overlay").Run() ++ // Access overlay filesystem so that Linux loads it (if possible). ++ mountTarget, err := ioutil.TempDir("", "supportsOverlay") ++ if err != nil { ++ logrus.WithField("storage-driver", "overlay2").Error("Could not create temporary directory, so assuming that 'overlay' is not supported.") ++ return graphdriver.ErrNotSupported ++ } else { ++ /* The mounting will fail--after the module has been loaded.*/ ++ defer os.RemoveAll(mountTarget) ++ unix.Mount("overlay", mountTarget, "overlay", 0, "") ++ } + + f, err := os.Open("/proc/filesystems") + if err != nil { +--- docker-18.09.0-checkout/daemon/graphdriver/overlay2/overlay.go.orig 2019-03-18 23:42:23.728525231 +0100 ++++ docker-18.09.0-checkout/daemon/graphdriver/overlay2/overlay.go 2019-03-19 08:54:31.411906113 +0100 +@@ -10,7 +10,6 @@ + "io" + "io/ioutil" + "os" +- "os/exec" + "path" + "path/filepath" + "strconv" +@@ -261,9 +260,16 @@ + } + + func supportsOverlay() error { +- // We can try to modprobe overlay first before looking at +- // proc/filesystems for when overlay is supported +- exec.Command("modprobe", "overlay").Run() ++ // Access overlay filesystem so that Linux loads it (if possible). ++ mountTarget, err := ioutil.TempDir("", "supportsOverlay") ++ if err != nil { ++ logrus.WithField("storage-driver", "overlay2").Error("Could not create temporary directory, so assuming that 'overlay' is not supported.") ++ return graphdriver.ErrNotSupported ++ } else { ++ /* The mounting will fail--after the module has been loaded.*/ ++ defer os.RemoveAll(mountTarget) ++ unix.Mount("overlay", mountTarget, "overlay", 0, "") ++ } + + f, err := os.Open("/proc/filesystems") + if err != nil { +--- docker-18.09.0-checkout/daemon/graphdriver/devmapper/deviceset.go.orig 2019-03-19 09:19:16.592844887 +0100 ++++ docker-18.09.0-checkout/daemon/graphdriver/devmapper/deviceset.go 2019-03-19 09:21:18.019361761 +0100 +@@ -540,8 +539,14 @@ + return err // error text is descriptive enough + } + +- // Check if kernel supports xfs filesystem or not. +- exec.Command("modprobe", "xfs").Run() ++ mountTarget, err := ioutil.TempDir("", "supportsOverlay") ++ if err != nil { ++ return errors.Wrapf(err, "error checking for xfs support") ++ } else { ++ /* The mounting will fail--after the module has been loaded.*/ ++ defer os.RemoveAll(mountTarget) ++ unix.Mount("none", mountTarget, "xfs", 0, "") ++ } + + f, err := os.Open("/proc/filesystems") + if err != nil { +--- docker-18.09.0-checkout/vendor/github.com/docker/libnetwork/iptables/iptables.go.orig 2019-03-19 09:47:19.430111170 +0100 ++++ docker-18.09.0-checkout/vendor/github.com/docker/libnetwork/iptables/iptables.go 2019-03-19 10:38:01.445136177 +0100 +@@ -72,11 +71,12 @@ + } + + func probe() { +- if out, err := exec.Command("modprobe", "-va", "nf_nat").CombinedOutput(); err != nil { +- logrus.Warnf("Running modprobe nf_nat failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err) ++ path, err := exec.LookPath("iptables") ++ if err != nil { ++ return + } +- if out, err := exec.Command("modprobe", "-va", "xt_conntrack").CombinedOutput(); err != nil { +- logrus.Warnf("Running modprobe xt_conntrack failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err) ++ if out, err := exec.Command(path, "--wait", "-t", "nat", "-L", "-n").CombinedOutput(); err != nil { ++ logrus.Warnf("Running iptables --wait -t nat -L -n failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err) + } + } + +--- docker-18.09.0-checkout/vendor/github.com/docker/libnetwork/ns/init_linux.go.orig 2019-03-19 11:23:20.738316699 +0100 ++++ docker-18.09.0-checkout/vendor/github.com/docker/libnetwork/ns/init_linux.go 2019-03-19 11:27:57.149753073 +0100 +@@ -100,12 +100,7 @@ + } + + func loadXfrmModules() error { +- if out, err := exec.Command("modprobe", "-va", "xfrm_user").CombinedOutput(); err != nil { +- return fmt.Errorf("Running modprobe xfrm_user failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err) +- } +- if out, err := exec.Command("modprobe", "-va", "xfrm_algo").CombinedOutput(); err != nil { +- return fmt.Errorf("Running modprobe xfrm_algo failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err) +- } ++ // Those are automatically loaded when someone opens the socket anyway. + return nil + } + From cde08a5120b40e781bd07de6886f262dd02384d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 25 Mar 2019 22:57:32 +0100 Subject: [PATCH 142/411] gnu: guix: Update to f970946. * gnu/packages/package-management.scm (guix): Update to f970946. --- gnu/packages/package-management.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 0b70ae4cf4..62bed6bde8 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -110,8 +110,8 @@ (define-public guix ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "0.16.0") - (commit "2637cfd7a4894ef2a2a7da3bb46d8815c43d7e75") - (revision 10)) + (commit "f970946c1d3dc6d20bd48ec6f42c82a43bb7696f") + (revision 11)) (package (name "guix") @@ -127,7 +127,7 @@ (define-public guix (commit commit))) (sha256 (base32 - "1m734gm45x9czqspsagdfxfgw5wiiinyq1s6zc9gfv7d3b2w472k")) + "0v7qj2i9n52l1di8vk15nqdrlapfc22pcf5jl56fp4mqpq48ddrj")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments From 3191b5f6ba5ebbb59a7448facd999ad7f7aeae79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 25 Mar 2019 23:21:08 +0100 Subject: [PATCH 143/411] installer: Set the system's 'keyboard-layout' field. * gnu/installer/newt/keymap.scm (keyboard-layout->configuration): New procedure. * gnu/installer.scm (compute-keymap-step): Return RESULT. (installer-steps) <'keymap>: Add 'configuration-formatter' field. (installer-program): Use (gnu installer newt keymap). * gnu/installer/parted.scm (bootloader-configuration): Set 'keyboard-layout'. --- gnu/installer.scm | 9 +++++++-- gnu/installer/newt/keymap.scm | 13 ++++++++++++- gnu/installer/parted.scm | 6 +++++- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/gnu/installer.scm b/gnu/installer.scm index 479d940b4a..02f26eead3 100644 --- a/gnu/installer.scm +++ b/gnu/installer.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Mathieu Othacehe +;;; Copyright © 2019 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -156,7 +157,8 @@ (define* (compute-keymap-step) (lambda (models layouts) ((installer-keymap-page current-installer) layouts))))) - (#$apply-keymap result)))) + (#$apply-keymap result) + result))) (define (installer-steps) (let ((locale-step (compute-locale-step @@ -208,7 +210,8 @@ (define (installer-steps) (id 'keymap) (description (G_ "Keyboard mapping selection")) (compute (lambda _ - (#$keymap-step current-installer)))) + (#$keymap-step current-installer))) + (configuration-formatter keyboard-layout->configuration)) ;; Run a partitioning tool allowing the user to modify ;; partition tables, partitions and their mount points. @@ -313,6 +316,8 @@ (define installer-builder (gnu installer timezone) (gnu installer user) (gnu installer newt) + ((gnu installer newt keymap) + #:select (keyboard-layout->configuration)) (guix i18n) (guix build utils) (ice-9 match)) diff --git a/gnu/installer/newt/keymap.scm b/gnu/installer/newt/keymap.scm index 3e765bfdd4..948b54783c 100644 --- a/gnu/installer/newt/keymap.scm +++ b/gnu/installer/newt/keymap.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Mathieu Othacehe +;;; Copyright © 2019 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,7 +28,9 @@ (define-module (gnu installer newt keymap) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) - #:export (run-keymap-page)) + #:use-module (ice-9 match) + #:export (run-keymap-page + keyboard-layout->configuration)) (define (run-layout-page layouts layout->text) (let ((title (G_ "Layout"))) @@ -120,3 +123,11 @@ (define (format-result result) (list layout (or variant "")))) (format-result (run-installer-steps #:steps keymap-steps))) + +(define (keyboard-layout->configuration keymap) + "Return the operating system configuration snippet to install KEYMAP." + (match keymap + ((name "") + `((keyboard-layout (keyboard-layout ,name)))) + ((name variant) + `((keyboard-layout (keyboard-layout ,name ,variant)))))) diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scm index 642b8c6d8a..24d048c04c 100644 --- a/gnu/installer/parted.scm +++ b/gnu/installer/parted.scm @@ -1258,7 +1258,11 @@ (define (bootloader-configuration user-partitions) `((bootloader grub-efi-bootloader) (target ,(default-esp-mount-point))) `((bootloader grub-bootloader) - (target ,root-partition-disk))))))) + (target ,root-partition-disk))) + + ;; XXX: Assume we defined the 'keyboard-layout' field of + ;; right above. + (keyboard-layout keyboard-layout))))) (define (user-partitions->configuration user-partitions) "Return the configuration field for USER-PARTITIONS." From abd4d6b33dba4de228e90ad15a8efb456fcf7b6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 22 Mar 2019 14:02:00 +0100 Subject: [PATCH 144/411] records: Allow thunked fields to refer to 'this-record'. * guix/records.scm (this-record): New syntax parameter. (make-syntactic-constructor)[wrap-field-value]: When F is thunked, return a one-argument lambda instead of a thunk, and parameterize THIS-RECORD. (define-record-type*)[thunked-field-accessor-definition]: Pass X to (real-get X). * tests/records.scm ("define-record-type* & thunked & this-record") ("define-record-type* & thunked & default & this-record") ("define-record-type* & thunked & inherit & this-record"): New tests. --- guix/records.scm | 24 ++++++++++++++++++++++-- tests/records.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+), 2 deletions(-) diff --git a/guix/records.scm b/guix/records.scm index 0649c90ea3..244b124098 100644 --- a/guix/records.scm +++ b/guix/records.scm @@ -25,6 +25,8 @@ (define-module (guix records) #:use-module (ice-9 regex) #:use-module (ice-9 rdelim) #:export (define-record-type* + this-record + alist->record object->fields recutils->alist @@ -93,6 +95,17 @@ (define (report-duplicate-field-specifier name ctor) (() #t))))))) +(define-syntax-parameter this-record + (lambda (s) + "Return the record being defined. This macro may only be used in the +context of the definition of a thunked field." + (syntax-case s () + (id + (identifier? #'id) + (syntax-violation 'this-record + "cannot be used outside of a record instantiation" + #'id))))) + (define-syntax make-syntactic-constructor (syntax-rules () "Make the syntactic constructor NAME for TYPE, that calls CTOR, and @@ -148,7 +161,14 @@ (define (innate-field? f) (define (wrap-field-value f value) (cond ((thunked-field? f) - #`(lambda () #,value)) + #`(lambda (x) + (syntax-parameterize ((this-record + (lambda (s) + (syntax-case s () + (id + (identifier? #'id) + #'x))))) + #,value))) ((delayed-field? f) #`(delay #,value)) (else value))) @@ -308,7 +328,7 @@ (define (thunked-field-accessor-definition field) (with-syntax ((real-get (wrapped-field-accessor-name field))) #'(define-inlinable (get x) ;; The real value of that field is a thunk, so call it. - ((real-get x))))))) + ((real-get x) x)))))) (define (delayed-field-accessor-definition field) ;; Return the real accessor for FIELD, which is assumed to be a diff --git a/tests/records.scm b/tests/records.scm index d9469a78bd..45614093a0 100644 --- a/tests/records.scm +++ b/tests/records.scm @@ -170,6 +170,46 @@ (define-record-type* foo make-foo (parameterize ((mark (cons 'a 'b))) (eq? (foo-bar y) (mark))))))) +(test-assert "define-record-type* & thunked & this-record" + (begin + (define-record-type* foo make-foo + foo? + (bar foo-bar) + (baz foo-baz (thunked))) + + (let ((x (foo (bar 40) + (baz (+ (foo-bar this-record) 2))))) + (and (= 40 (foo-bar x)) + (= 42 (foo-baz x)))))) + +(test-assert "define-record-type* & thunked & default & this-record" + (begin + (define-record-type* foo make-foo + foo? + (bar foo-bar) + (baz foo-baz (thunked) + (default (+ (foo-bar this-record) 2)))) + + (let ((x (foo (bar 40)))) + (and (= 40 (foo-bar x)) + (= 42 (foo-baz x)))))) + +(test-assert "define-record-type* & thunked & inherit & this-record" + (begin + (define-record-type* foo make-foo + foo? + (bar foo-bar) + (baz foo-baz (thunked) + (default (+ (foo-bar this-record) 2)))) + + (let* ((x (foo (bar 40))) + (y (foo (inherit x) (bar -2))) + (z (foo (inherit x) (baz -2)))) + (and (= -2 (foo-bar y)) + (= 0 (foo-baz y)) + (= 40 (foo-bar z)) + (= -2 (foo-baz z)))))) + (test-assert "define-record-type* & delayed" (begin (define-record-type* foo make-foo From cf848cc0a17a3a58d600116896f6e7abfb0440d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 22 Mar 2019 14:06:54 +0100 Subject: [PATCH 145/411] accounts: Add default value for the 'home-directory' field of . * gnu/system/accounts.scm ()[home-directory]: Mark as thunked and add a default value. (default-home-directory): New procedure. * doc/guix.texi (User Accounts): Remove 'home-directory' from example. * gnu/system/examples/bare-bones.tmpl: Likewise. * gnu/system/examples/beaglebone-black.tmpl: Likewise. * gnu/system/examples/desktop.tmpl: Likewise. * gnu/system/examples/docker-image.tmpl: Likewise. * gnu/system/examples/lightweight-desktop.tmpl: Likewise. * gnu/system/install.scm (installation-os): Likewise. * gnu/tests.scm (%simple-os): Likewise. * gnu/tests/install.scm (%minimal-os, %minimal-os-on-vda): (%separate-home-os, %encrypted-root-os, %btrfs-root-os): Likewise. * tests/accounts.scm ("allocate-passwd") ("allocate-passwd with previous state"): Likewise. --- doc/guix.texi | 1 - gnu/system/accounts.scm | 7 ++++++- gnu/system/examples/bare-bones.tmpl | 3 +-- gnu/system/examples/beaglebone-black.tmpl | 3 +-- gnu/system/examples/desktop.tmpl | 3 +-- gnu/system/examples/docker-image.tmpl | 3 +-- gnu/system/examples/lightweight-desktop.tmpl | 3 +-- gnu/system/install.scm | 3 +-- gnu/tests.scm | 5 ++--- gnu/tests/install.scm | 14 ++++---------- tests/accounts.scm | 4 ---- 11 files changed, 18 insertions(+), 31 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 63405bcf49..37fef40522 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -10927,7 +10927,6 @@ this field must contain the encrypted password, as a string. You can use the @example (user-account (name "charlie") - (home-directory "/home/charlie") (group "users") ;; Specify a SHA-512-hashed initial password. diff --git a/gnu/system/accounts.scm b/gnu/system/accounts.scm index eb18fb5e43..586cff1842 100644 --- a/gnu/system/accounts.scm +++ b/gnu/system/accounts.scm @@ -67,7 +67,8 @@ (define-record-type* (supplementary-groups user-account-supplementary-groups (default '())) ; list of strings (comment user-account-comment (default "")) - (home-directory user-account-home-directory) + (home-directory user-account-home-directory (thunked) + (default (default-home-directory this-record))) (create-home-directory? user-account-create-home-directory? ;Boolean (default #t)) (shell user-account-shell ; gexp @@ -84,6 +85,10 @@ (define-record-type* (system? user-group-system? ; Boolean (default #f))) +(define (default-home-directory account) + "Return the default home directory for ACCOUNT." + (string-append "/home/" (user-account-name account))) + (define (sexp->user-group sexp) "Take SEXP, a tuple as returned by 'user-group->gexp', and turn it into a user-group record." diff --git a/gnu/system/examples/bare-bones.tmpl b/gnu/system/examples/bare-bones.tmpl index a88bab034f..4f30a5b756 100644 --- a/gnu/system/examples/bare-bones.tmpl +++ b/gnu/system/examples/bare-bones.tmpl @@ -35,8 +35,7 @@ ;; and "video" allows the user to play sound ;; and access the webcam. (supplementary-groups '("wheel" - "audio" "video")) - (home-directory "/home/alice")) + "audio" "video"))) %base-user-accounts)) ;; Globally-installed packages. diff --git a/gnu/system/examples/beaglebone-black.tmpl b/gnu/system/examples/beaglebone-black.tmpl index 11678063b2..def05e807d 100644 --- a/gnu/system/examples/beaglebone-black.tmpl +++ b/gnu/system/examples/beaglebone-black.tmpl @@ -38,8 +38,7 @@ ;; and "video" allows the user to play sound ;; and access the webcam. (supplementary-groups '("wheel" - "audio" "video")) - (home-directory "/home/alice")) + "audio" "video"))) %base-user-accounts)) ;; Globally-installed packages. diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index c59bf92681..bc5cbd6e6b 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -42,8 +42,7 @@ (comment "Alice's brother") (group "users") (supplementary-groups '("wheel" "netdev" - "audio" "video")) - (home-directory "/home/bob")) + "audio" "video"))) %base-user-accounts)) ;; This is where we specify system-wide packages. diff --git a/gnu/system/examples/docker-image.tmpl b/gnu/system/examples/docker-image.tmpl index 9690d651c1..ca633cc838 100644 --- a/gnu/system/examples/docker-image.tmpl +++ b/gnu/system/examples/docker-image.tmpl @@ -15,8 +15,7 @@ (comment "Bob's sister") (group "users") (supplementary-groups '("wheel" - "audio" "video")) - (home-directory "/home/alice")) + "audio" "video"))) %base-user-accounts)) ;; Globally-installed packages. diff --git a/gnu/system/examples/lightweight-desktop.tmpl b/gnu/system/examples/lightweight-desktop.tmpl index a234badd2b..45d9bf447f 100644 --- a/gnu/system/examples/lightweight-desktop.tmpl +++ b/gnu/system/examples/lightweight-desktop.tmpl @@ -35,8 +35,7 @@ (comment "Bob's sister") (group "users") (supplementary-groups '("wheel" "netdev" - "audio" "video")) - (home-directory "/home/alice")) + "audio" "video"))) %base-user-accounts)) ;; Add a bunch of window managers; we can choose one at diff --git a/gnu/system/install.scm b/gnu/system/install.scm index bad318d06b..aad1deb913 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -379,8 +379,7 @@ (define installation-os (group "users") (supplementary-groups '("wheel")) ; allow use of sudo (password "") - (comment "Guest of GNU") - (home-directory "/home/guest")))) + (comment "Guest of GNU")))) (issue %issue) (services %installation-services) diff --git a/gnu/tests.scm b/gnu/tests.scm index 9e8eed7d95..0871b4c6f7 100644 --- a/gnu/tests.scm +++ b/gnu/tests.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2017, 2018 Ludovic Courtès +;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès ;;; Copyright © 2017 Mathieu Othacehe ;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; @@ -219,8 +219,7 @@ (define %simple-os (name "alice") (comment "Bob's sister") (group "users") - (supplementary-groups '("wheel" "audio" "video")) - (home-directory "/home/alice")) + (supplementary-groups '("wheel" "audio" "video"))) %base-user-accounts)))) (define-syntax-rule (simple-operating-system user-services ...) diff --git a/gnu/tests/install.scm b/gnu/tests/install.scm index 277908cc49..c0debbd840 100644 --- a/gnu/tests/install.scm +++ b/gnu/tests/install.scm @@ -74,8 +74,7 @@ (define-os-with-source (%minimal-os %minimal-os-source) (name "alice") (comment "Bob's sister") (group "users") - (supplementary-groups '("wheel" "audio" "video")) - (home-directory "/home/alice")) + (supplementary-groups '("wheel" "audio" "video"))) %base-user-accounts)) (services (cons (service marionette-service-type (marionette-configuration @@ -357,8 +356,7 @@ (define-os-with-source (%minimal-os-on-vda %minimal-os-on-vda-source) (name "alice") (comment "Bob's sister") (group "users") - (supplementary-groups '("wheel" "audio" "video")) - (home-directory "/home/alice")) + (supplementary-groups '("wheel" "audio" "video"))) %base-user-accounts)) (services (cons (service marionette-service-type (marionette-configuration @@ -435,12 +433,10 @@ (define-os-with-source (%separate-home-os %separate-home-os-source) %base-file-systems)) (users (cons* (user-account (name "alice") - (group "users") - (home-directory "/home/alice")) + (group "users")) (user-account (name "charlie") - (group "users") - (home-directory "/home/charlie")) + (group "users")) %base-user-accounts)) (services (cons (service marionette-service-type (marionette-configuration @@ -655,7 +651,6 @@ (define-os-with-source (%encrypted-root-os %encrypted-root-os-source) (users (cons (user-account (name "charlie") (group "users") - (home-directory "/home/charlie") (supplementary-groups '("wheel" "audio" "video"))) %base-user-accounts)) (services (cons (service marionette-service-type @@ -776,7 +771,6 @@ (define-os-with-source (%btrfs-root-os %btrfs-root-os-source) (users (cons (user-account (name "charlie") (group "users") - (home-directory "/home/charlie") (supplementary-groups '("wheel" "audio" "video"))) %base-user-accounts)) (services (cons (service marionette-service-type diff --git a/tests/accounts.scm b/tests/accounts.scm index 127861042d..923ba7dc83 100644 --- a/tests/accounts.scm +++ b/tests/accounts.scm @@ -199,12 +199,10 @@ (define allocate-passwd (@@ (gnu build accounts) allocate-passwd)) (directory "/var/empty"))) (allocate-passwd (list (user-account (name "alice") (comment "Alice") - (home-directory "/home/alice") (shell "/bin/sh") (group "users")) (user-account (name "bob") (comment "Bob") - (home-directory "/home/bob") (shell "/bin/gash") (group "wheel")) (user-account (name "sshd") (system? #t) @@ -234,12 +232,10 @@ (define allocate-passwd (@@ (gnu build accounts) allocate-passwd)) (directory "/home/charlie"))) (allocate-passwd (list (user-account (name "alice") (comment "Alice") - (home-directory "/home/alice") (shell "/bin/sh") ;ignored (group "users")) (user-account (name "charlie") (comment "Charlie") - (home-directory "/home/charlie") (shell "/bin/sh") (group "users"))) (list (group-entry (name "users") (gid 1000))) From 69cae3d3356a69b7fe69481338f760545995485e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 22 Mar 2019 17:48:37 +0100 Subject: [PATCH 146/411] system: Add 'essential-services' field to . * gnu/system.scm ()[essential-services]: New field. (operating-system-directory-base-entries): Remove #:container? keyword and keep only the not-container branch. (essential-services): Likewise. (operating-system-services): Likewise, and call 'operating-system-essential-services' instead of 'essential-services'. (operating-system-activation-script): Remove #:container?. (operating-system-boot-script): Likewise. (operating-system-derivation): Likewise. * gnu/system/linux-container.scm (container-essential-services): New procedure. (containerized-operating-system): Use it and set the 'essential-services' field. (container-script): Remove call to 'operating-system-derivation'. * gnu/system/vm.scm (system-docker-image): Likewise. * doc/guix.texi (operating-system Reference): Document 'essential-services'. --- doc/guix.texi | 7 ++++ gnu/system.scm | 69 +++++++++++++++------------------- gnu/system/linux-container.scm | 69 +++++++++++++++++++++------------- gnu/system/vm.scm | 13 ++++--- 4 files changed, 88 insertions(+), 70 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 37fef40522..7d80c00530 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -10531,6 +10531,13 @@ details. @item @code{services} (default: @var{%base-services}) A list of service objects denoting system services. @xref{Services}. +@cindex essential services +@item @code{essential-services} (default: ...) +The list of ``essential services''---i.e., things like instances of +@code{system-service-type} and @code{host-name-service-type} (@pxref{Service +Reference}), which are derived from the operating system definition itself. +As a user you should @emph{never} need to touch this field. + @item @code{pam-services} (default: @code{(base-pam-services)}) @cindex PAM @cindex pluggable authentication modules diff --git a/gnu/system.scm b/gnu/system.scm index 035bbd82a1..9887d72c41 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -69,6 +69,7 @@ (define-module (gnu system) operating-system-bootloader operating-system-services + operating-system-essential-services operating-system-user-services operating-system-packages operating-system-host-name @@ -201,6 +202,9 @@ (define-record-type* operating-system (name-service-switch operating-system-name-service-switch ; (default %default-nss)) + (essential-services operating-system-essential-services ; list of services + (thunked) + (default (essential-services this-record))) (services operating-system-user-services ; list of services (default %base-services)) @@ -438,27 +442,22 @@ (define (operating-system-kernel-file os) (file-append (operating-system-kernel os) "/" (system-linux-image-file-name os))) -(define* (operating-system-directory-base-entries os #:key container?) +(define* (operating-system-directory-base-entries os) "Return the basic entries of the 'system' directory of OS for use as the value of the SYSTEM-SERVICE-TYPE service." (let ((locale (operating-system-locale-directory os))) - (with-monad %store-monad - (if container? - (return `(("locale" ,locale))) - (mlet %store-monad - ((kernel -> (operating-system-kernel os)) - (initrd -> (operating-system-initrd-file os)) - (params (operating-system-boot-parameters-file os))) - (return `(("kernel" ,kernel) - ("parameters" ,params) - ("initrd" ,initrd) - ("locale" ,locale)))))))) ;used by libc + (mlet %store-monad ((kernel -> (operating-system-kernel os)) + (initrd -> (operating-system-initrd-file os)) + (params (operating-system-boot-parameters-file os))) + (return `(("kernel" ,kernel) + ("parameters" ,params) + ("initrd" ,initrd) + ("locale" ,locale)))))) ;used by libc -(define* (essential-services os #:key container?) +(define* (essential-services os) "Return the list of essential services for OS. These are special services that implement part of what's declared in OS are responsible for low-level -bookkeeping. CONTAINER? determines whether to return the list of services for -a container or that of a \"bare metal\" system." +bookkeeping." (define known-fs (map file-system-mount-point (operating-system-file-systems os))) @@ -468,8 +467,7 @@ (define known-fs (swaps (swap-services os)) (procs (service user-processes-service-type)) (host-name (host-name-service (operating-system-host-name os))) - (entries (operating-system-directory-base-entries - os #:container? container?))) + (entries (operating-system-directory-base-entries os))) (cons* (service system-service-type entries) %boot-service @@ -497,20 +495,16 @@ (define known-fs other-fs (append mappings swaps - ;; Add the firmware service, unless we are building for a - ;; container. - (if container? - (list %containerized-shepherd-service) - (list %linux-bare-metal-service - (service firmware-service-type - (operating-system-firmware os)))))))) + ;; Add the firmware service. + (list %linux-bare-metal-service + (service firmware-service-type + (operating-system-firmware os))))))) -(define* (operating-system-services os #:key container?) - "Return all the services of OS, including \"internal\" services that do not -explicitly appear in OS." +(define* (operating-system-services os) + "Return all the services of OS, including \"essential\" services." (instantiate-missing-services (append (operating-system-user-services os) - (essential-services os #:container? container?)))) + (operating-system-essential-services os)))) ;;; @@ -808,20 +802,19 @@ (define %sudoers-specification root ALL=(ALL) ALL %wheel ALL=(ALL) ALL\n")) -(define* (operating-system-activation-script os #:key container?) +(define* (operating-system-activation-script os) "Return the activation script for OS---i.e., the code that \"activates\" the stateful part of OS, including user accounts and groups, special directories, etc." - (let* ((services (operating-system-services os #:container? container?)) + (let* ((services (operating-system-services os)) (activation (fold-services services #:target-type activation-service-type))) (activation-service->script activation))) -(define* (operating-system-boot-script os #:key container?) +(define* (operating-system-boot-script os) "Return the boot script for OS---i.e., the code started by the initrd once -we're running in the final root. When CONTAINER? is true, skip all -hardware-related operations as necessary when booting a Linux container." - (let* ((services (operating-system-services os #:container? container?)) +we're running in the final root." + (let* ((services (operating-system-services os)) (boot (fold-services services #:target-type boot-service-type))) (service-value boot))) @@ -841,17 +834,17 @@ (define (operating-system-shepherd-service-names os) #:target-type shepherd-root-service-type)))) -(define* (operating-system-derivation os #:key container?) +(define* (operating-system-derivation os) "Return a derivation that builds OS." - (let* ((services (operating-system-services os #:container? container?)) + (let* ((services (operating-system-services os)) (system (fold-services services))) ;; SYSTEM contains the derivation as a monadic value. (service-value system))) -(define* (operating-system-profile os #:key container?) +(define* (operating-system-profile os) "Return a derivation that builds the system profile of OS." (mlet* %store-monad - ((services -> (operating-system-services os #:container? container?)) + ((services -> (operating-system-services os)) (profile (fold-services services #:target-type profile-service-type))) (match profile diff --git a/gnu/system/linux-container.scm b/gnu/system/linux-container.scm index 3fe3482d7f..37a053cdc3 100644 --- a/gnu/system/linux-container.scm +++ b/gnu/system/linux-container.scm @@ -29,12 +29,31 @@ (define-module (gnu system linux-container) #:use-module (gnu build linux-container) #:use-module (gnu services) #:use-module (gnu services base) + #:use-module (gnu services shepherd) #:use-module (gnu system) #:use-module (gnu system file-systems) #:export (system-container containerized-operating-system container-script)) +(define (container-essential-services os) + "Return a list of essential services corresponding to OS, a +non-containerized OS. This procedure essentially strips essential services +from OS that are needed on the bare metal and not in a container." + (define base + (remove (lambda (service) + (memq (service-kind service) + (list (service-kind %linux-bare-metal-service) + firmware-service-type + system-service-type))) + (operating-system-essential-services os))) + + (cons (service system-service-type + (let ((locale (operating-system-locale-directory os))) + (with-monad %store-monad + (return `(("locale" ,locale)))))) + (append base (list %containerized-shepherd-service)))) + (define (containerized-operating-system os mappings) "Return an operating system based on OS for use in a Linux container environment. MAPPINGS is a list of to realize in the @@ -62,8 +81,10 @@ (define useless-services mingetty-service-type agetty-service-type)) - (operating-system (inherit os) + (operating-system + (inherit os) (swap-devices '()) ; disable swap + (essential-services (container-essential-services os)) (services (remove (lambda (service) (memq (service-kind service) useless-services)) @@ -81,30 +102,26 @@ (define* (container-script os #:key (mappings '())) (operating-system-file-systems os))) (specs (map file-system->spec file-systems))) - (mlet* %store-monad ((os-drv (operating-system-derivation - os - #:container? #t))) + (define script + (with-imported-modules (source-module-closure + '((guix build utils) + (gnu build linux-container))) + #~(begin + (use-modules (gnu build linux-container) + (gnu system file-systems) ;spec->file-system + (guix build utils)) - (define script - (with-imported-modules (source-module-closure - '((guix build utils) - (gnu build linux-container))) - #~(begin - (use-modules (gnu build linux-container) - (gnu system file-systems) ;spec->file-system - (guix build utils)) + (call-with-container (map spec->file-system '#$specs) + (lambda () + (setenv "HOME" "/root") + (setenv "TMPDIR" "/tmp") + (setenv "GUIX_NEW_SYSTEM" #$os) + (for-each mkdir-p '("/run" "/bin" "/etc" "/home" "/var")) + (primitive-load (string-append #$os "/boot"))) + ;; A range of 65536 uid/gids is used to cover 16 bits worth of + ;; users and groups, which is sufficient for most cases. + ;; + ;; See: http://www.freedesktop.org/software/systemd/man/systemd-nspawn.html#--private-users= + #:host-uids 65536)))) - (call-with-container (map spec->file-system '#$specs) - (lambda () - (setenv "HOME" "/root") - (setenv "TMPDIR" "/tmp") - (setenv "GUIX_NEW_SYSTEM" #$os-drv) - (for-each mkdir-p '("/run" "/bin" "/etc" "/home" "/var")) - (primitive-load (string-append #$os-drv "/boot"))) - ;; A range of 65536 uid/gids is used to cover 16 bits worth of - ;; users and groups, which is sufficient for most cases. - ;; - ;; See: http://www.freedesktop.org/software/systemd/man/systemd-nspawn.html#--private-users= - #:host-uids 65536)))) - - (gexp->script "run-container" script)))) + (gexp->script "run-container" script))) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 5068cb3068..667624621f 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -58,6 +58,7 @@ (define-module (gnu system vm) #:use-module (gnu bootloader grub) #:use-module (gnu system shadow) #:use-module (gnu system pam) + #:use-module (gnu system linux-container) #:use-module (gnu system linux-initrd) #:use-module (gnu bootloader) #:use-module (gnu system file-systems) @@ -473,9 +474,9 @@ (define schema (local-file (search-path %load-path "guix/store/schema.sql")))) - (mlet %store-monad ((os-drv (operating-system-derivation os #:container? #t)) - (name -> (string-append name ".tar.gz")) - (graph -> "system-graph")) + (let ((os (containerized-operating-system os '())) + (name (string-append name ".tar.gz")) + (graph "system-graph")) (define build (with-extensions (cons guile-json ;for (guix docker) gcrypt-sqlite3&co) ;for (guix store database) @@ -505,7 +506,7 @@ (define build (initialize (root-partition-initializer #:closures '(#$graph) #:register-closures? #$register-closures? - #:system-directory #$os-drv + #:system-directory #$os ;; De-duplication would fail due to ;; cross-device link errors, so don't do it. #:deduplicate? #f)) @@ -523,7 +524,7 @@ (define build (call-with-input-file (string-append "/xchg/" #$graph) read-reference-graph))) - #$os-drv + #$os #:compressor '(#+(file-append gzip "/bin/gzip") "-9n") #:creation-time (make-time time-utc 0 1) #:transformations `((,root-directory -> ""))) @@ -534,7 +535,7 @@ (define build name build #:make-disk-image? #f #:single-file-output? #t - #:references-graphs `((,graph ,os-drv))))) + #:references-graphs `((,graph ,os))))) ;;; From 6c177f6140cba250ad68c5a83c312f395b6e48b4 Mon Sep 17 00:00:00 2001 From: nee Date: Fri, 15 Mar 2019 23:53:52 +0100 Subject: [PATCH 147/411] gnu: gzdoom: Update to 3.7.2. * gnu/packages/games.scm (gzdoom): Update to 3.7.2. [source](uri): Update path. [source](snippet): Bundled libjpeg directory has been renamed. Signed-off-by: Kei Kebreau --- gnu/packages/games.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 98438808ec..6ae226d3e3 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5311,22 +5311,22 @@ (define-public colobot (define-public gzdoom (package (name "gzdoom") - (version "3.3.0") + (version "3.7.2") (source (origin (method url-fetch) (uri - (string-append "https://zdoom.org/files/gzdoom/src/gzdoom-g" + (string-append "https://zdoom.org/files/gzdoom/src/gzdoom-src-g" version ".zip")) (sha256 (base32 - "09a4kx3ry8pc9r578m7yprwa7zsdqxjpn10lyc92r5g9sx4l1m1a")) + "0182f160m8d0c3nywjw3dxvnz93xjs4cn8akx7137cha4s05wdq7")) (patches (search-patches "gzdoom-search-in-installed-share.patch")) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "bzip2") (delete-file-recursively "game-music-emu") - (delete-file-recursively "jpeg-6b") + (delete-file-recursively "jpeg") (delete-file-recursively "zlib") #t)))) (arguments From e6301fb76d0a8d931ece2e18d197e3c2cc53fc6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 26 Mar 2019 10:22:15 +0100 Subject: [PATCH 148/411] packages: Adjust to new calling convention for "thunked" fields. Fixes . This is a followup to abd4d6b33dba4de228e90ad15a8efb456fcf7b6e. * guix/packages.scm (package->bag): Adjust calls to INPUTS, PROPAGATED-INPUTS, NATIVE-INPUTS, and ARGS, passing them SELF as an argument. * gnu/packages/gnucash.scm (gnucash)[arguments]: Use (package-inputs this-record) intead of (inputs). * gnu/packages/version-control.scm (git)[arguments]: Likewise. --- gnu/packages/gnucash.scm | 5 +++-- gnu/packages/version-control.scm | 5 +++-- guix/packages.scm | 17 +++++++++-------- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm index 2207dd3fae..84b244cdd9 100644 --- a/gnu/packages/gnucash.scm +++ b/gnu/packages/gnucash.scm @@ -27,6 +27,7 @@ (define-module (gnu packages gnucash) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module ((guix records) #:select (this-record)) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages base) @@ -165,14 +166,14 @@ (define-public gnucash ,@(transitive-input-references 'inputs (map (lambda (l) - (assoc l (inputs))) + (assoc l (package-inputs this-record))) '("perl-finance-quote" "perl-date-manip")))) (list ,@(transitive-input-references 'inputs (map (lambda (l) - (assoc l (inputs))) + (assoc l (package-inputs this-record))) '("perl-finance-quote"))))))))) '("gnucash" "gnc-fq-check" diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 9a6f96ce14..fe9b64ba5c 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -51,6 +51,7 @@ (define-module (gnu packages version-control) #:use-module (guix build-system haskell) #:use-module (guix build-system python) #:use-module (guix build-system trivial) + #:use-module ((guix records) #:select (this-record)) #:use-module (gnu packages apr) #:use-module (gnu packages autotools) #:use-module (gnu packages documentation) @@ -408,7 +409,7 @@ (define-public git ,@(transitive-input-references 'inputs (map (lambda (l) - (assoc l (inputs))) + (assoc l (package-inputs this-record))) '("perl-authen-sasl" "perl-net-smtp-ssl" "perl-io-socket-ssl"))))))) @@ -421,7 +422,7 @@ (define-public git ,@(transitive-input-references 'inputs (map (lambda (l) - (assoc l (inputs))) + (assoc l (package-inputs this-record))) '("perl-cgi"))))))) ;; Tell 'git-submodule' where Perl is. diff --git a/guix/packages.scm b/guix/packages.scm index d20a2562c3..9d83de3d48 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -1025,9 +1025,10 @@ (define* (package->bag package #:optional (match (if graft? (or (package-replacement package) package) package) - (($ name version source build-system - args inputs propagated-inputs native-inputs - self-native-input? outputs) + ((and self + ($ name version source build-system + args inputs propagated-inputs native-inputs + self-native-input? outputs)) ;; Even though we prefer to use "@" to separate the package ;; name from the package version in various user-facing parts ;; of Guix, checkStoreName (in nix/libstore/store-api.cc) @@ -1036,15 +1037,15 @@ (define* (package->bag package #:optional #:system system #:target target #:source source - #:inputs (append (inputs) - (propagated-inputs)) + #:inputs (append (inputs self) + (propagated-inputs self)) #:outputs outputs #:native-inputs `(,@(if (and target self-native-input?) - `(("self" ,package)) + `(("self" ,self)) '()) - ,@(native-inputs)) - #:arguments (args)) + ,@(native-inputs self)) + #:arguments (args self)) (raise (if target (condition (&package-cross-build-system-error From 5e00dcc89e802a36cd648e77b4c17ae676562e02 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Tue, 26 Mar 2019 12:22:06 +0100 Subject: [PATCH 149/411] gnu: docker: Add comment. * gnu/packages/patches/docker-use-fewer-modprobes.patch: Add comment. --- gnu/packages/patches/docker-use-fewer-modprobes.patch | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/patches/docker-use-fewer-modprobes.patch b/gnu/packages/patches/docker-use-fewer-modprobes.patch index ebee83329c..742cd60633 100644 --- a/gnu/packages/patches/docker-use-fewer-modprobes.patch +++ b/gnu/packages/patches/docker-use-fewer-modprobes.patch @@ -1,5 +1,8 @@ This patch makes docker find out whether a filesystem type is supported by trying to mount a filesystem of that type rather than invoking "modprobe". + +See . + --- docker-18.09.0-checkout/daemon/graphdriver/overlay/overlay.go.orig 1970-01-01 01:00:00.000000000 +0100 +++ docker-18.09.0-checkout/daemon/graphdriver/overlay/overlay.go 2019-03-19 09:16:03.487087490 +0100 @@ -8,7 +8,6 @@ From ceab612374b3eb3f6013b017454443fe47f104ef Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Tue, 26 Mar 2019 12:22:47 +0100 Subject: [PATCH 150/411] gnu: docker: Use disjunct temp directories for probing. * gnu/packages/patches/docker-use-fewer-modprobes.patch: Use disjunct temp directories for probing. --- .../patches/docker-use-fewer-modprobes.patch | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/gnu/packages/patches/docker-use-fewer-modprobes.patch b/gnu/packages/patches/docker-use-fewer-modprobes.patch index 742cd60633..2779e1be5d 100644 --- a/gnu/packages/patches/docker-use-fewer-modprobes.patch +++ b/gnu/packages/patches/docker-use-fewer-modprobes.patch @@ -51,7 +51,7 @@ See . - // proc/filesystems for when overlay is supported - exec.Command("modprobe", "overlay").Run() + // Access overlay filesystem so that Linux loads it (if possible). -+ mountTarget, err := ioutil.TempDir("", "supportsOverlay") ++ mountTarget, err := ioutil.TempDir("", "supportsOverlay2") + if err != nil { + logrus.WithField("storage-driver", "overlay2").Error("Could not create temporary directory, so assuming that 'overlay' is not supported.") + return graphdriver.ErrNotSupported @@ -71,14 +71,14 @@ See . - // Check if kernel supports xfs filesystem or not. - exec.Command("modprobe", "xfs").Run() -+ mountTarget, err := ioutil.TempDir("", "supportsOverlay") -+ if err != nil { ++ mountTarget, err := ioutil.TempDir("", "supportsXFS") ++ if err != nil { + return errors.Wrapf(err, "error checking for xfs support") -+ } else { -+ /* The mounting will fail--after the module has been loaded.*/ -+ defer os.RemoveAll(mountTarget) -+ unix.Mount("none", mountTarget, "xfs", 0, "") -+ } ++ } else { ++ /* The mounting will fail--after the module has been loaded.*/ ++ defer os.RemoveAll(mountTarget) ++ unix.Mount("none", mountTarget, "xfs", 0, "") ++ } f, err := os.Open("/proc/filesystems") if err != nil { From df42e0f9c9e6a85803d2709d195a8eb29ec7ee5f Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:23:03 +0100 Subject: [PATCH 151/411] gnu: armagetronad: Rename package to armagetron-advanced. * gnu/packages/games.scm (armagetronad): Define in terms of 'deprecated-package'. (armagetron-advanced): New variable, formerly known as "armagetronad". --- gnu/packages/games.scm | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 6ae226d3e3..5a36d1d7f3 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -165,9 +165,9 @@ (define-module (gnu packages games) #:use-module ((srfi srfi-1) #:hide (zip)) #:use-module (srfi srfi-26)) -(define-public armagetronad +(define-public armagetron-advanced (package - (name "armagetronad") + (name "armagetron-advanced") (version "0.2.8.3.4") (source (origin (method url-fetch) @@ -186,14 +186,17 @@ (define-public armagetronad ("libjpeg-turbo" ,libjpeg-turbo))) (home-page "http://www.armagetronad.org") (synopsis "Tron clone in 3D") - (description "Armagetron is a multiplayer game in 3d that attempts to -emulate and expand on the lightcycle sequence from the movie Tron. It's -an old school arcade game slung into the 21st century. Highlights include -a customizable playing arena, HUD, unique graphics, and AI bots. For the -more advanced player there are new game modes and a wide variety of physics -settings to tweak as well.") + (description "Armagetron Advanced is a multiplayer game in 3d that +attempts to emulate and expand on the lightcycle sequence from the movie Tron. +It's an old school arcade game slung into the 21st century. Highlights +include a customizable playing arena, HUD, unique graphics, and AI bots. For +the more advanced player there are new game modes and a wide variety of +physics settings to tweak as well.") (license license:gpl2+))) +(define-public armagetronad + (deprecated-package "armagetronad" armagetron-advanced)) + (define-public bastet (package (name "bastet") From 973bd8a62c13bc5b2ca08585c367589d8c7197fe Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:33:40 +0100 Subject: [PATCH 152/411] gnu: cataclysm-dda: Rename package to cataclysm-dark-days-ahead. * gnu/packages/games.scm (cataclysm-dda): Define in terms of 'deprecated-package'. (cataclysm-dark-days-ahead): New variable, formerly known as "cataclysm-dda". --- gnu/packages/games.scm | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 5a36d1d7f3..41b1d8448d 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -261,7 +261,7 @@ (define-public bastet canyons and wait for the long I-shaped block to clear four rows at a time.") (license license:gpl3+))) -(define-public cataclysm-dda +(define-public cataclysm-dark-days-ahead (let ((commit "9c732a5de48928691ab863d3ab275ca7b0e522fc")) (package (name "cataclysm-dda") @@ -316,15 +316,19 @@ (define-public cataclysm-dda (home-page "http://en.cataclysmdda.com/") (synopsis "Survival horror roguelike video game") (description - "Cataclysm: Dark Days Ahead is a roguelike set in a post-apocalyptic -world. Struggle to survive in a harsh, persistent, procedurally generated -world. Scavenge the remnants of a dead civilization for food, equipment, or, -if you are lucky, a vehicle with a full tank of gas to get you out of Dodge. -Fight to defeat or escape from a wide variety of powerful monstrosities, from -zombies to giant insects to killer robots and things far stranger and deadlier, -and against the others like yourself, that want what you have.") + "Cataclysm: Dark Days Ahead (or \"DDA\" for short) is a roguelike set +in a post-apocalyptic world. Struggle to survive in a harsh, persistent, +procedurally generated world. Scavenge the remnants of a dead civilization +for food, equipment, or, if you are lucky, a vehicle with a full tank of gas +to get you out of Dodge. Fight to defeat or escape from a wide variety of +powerful monstrosities, from zombies to giant insects to killer robots and +things far stranger and deadlier, and against the others like yourself, that +want what you have.") (license license:cc-by-sa3.0)))) +(define-public cataclysm-dda + (deprecated-package "cataclysm-dda" cataclysm-dark-days-ahead)) + (define-public cowsay (package (name "cowsay") From c97e4d8bbe8bf12c09471573d3544d08a42d83f5 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:34:29 +0100 Subject: [PATCH 153/411] gnu: gnubg: Rename package to gnubackgammon. * gnu/packages/games.scm (gnubg): Define in terms of 'deprecated-package'. (gnubackgammon): New variable, formerly known as "gnubg". --- gnu/packages/games.scm | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 41b1d8448d..dcee2c2d00 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -662,9 +662,9 @@ (define-public knights ;; license. The whole package is released under GPLv3+. (license license:gpl3+))) -(define-public gnubg +(define-public gnubackgammon (package - (name "gnubg") + (name "gnubackgammon") (version "1.06.002") (source (origin @@ -687,13 +687,16 @@ (define-public gnubg ("pkg-config" ,pkg-config))) (home-page "http://gnubg.org") (synopsis "Backgammon game") - (description "The GNU backgammon application can be used for playing, -analyzing and teaching the game. It has an advanced evaluation engine based on -artificial neural networks suitable for both beginners and advanced players. In -addition to a command-line interface, it also features an attractive, 3D -representation of the playing board.") + (description "The GNU backgammon application (also known as \"gnubg\") can +be used for playing, analyzing and teaching the game. It has an advanced +evaluation engine based on artificial neural networks suitable for both +beginners and advanced players. In addition to a command-line interface, it +also features an attractive, 3D representation of the playing board.") (license license:gpl3+))) +(define-public gnubg + (deprecated-package "gnubg" gnubackgammon)) + (define-public gnubik (package (name "gnubik") From c91ed484d0b66d5639ba01f9ba301ff762d9170d Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:35:16 +0100 Subject: [PATCH 154/411] gnu: abbaye: Rename package to l-abbaye-des-morts. * gnu/packages/games.scm (abbaye): Define in terms of 'deprecated-package'. (l-abbaye-des-morts): New variable, formerly known as "abbaye". --- gnu/packages/games.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index dcee2c2d00..c09b9c6812 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1188,9 +1188,9 @@ (define-public xshogi ;; state "GNU General Public Licence" without specifying a version. (license license:gpl1+))) -(define-public abbaye +(define-public l-abbaye-des-morts (package - (name "abbaye") + (name "l-abbaye-des-morts") (version "2.0.1") (source (origin @@ -1242,6 +1242,9 @@ (define-public abbaye that beneath its ruins lay buried an ancient evil.") (license license:gpl3))) +(define-public abbaye + (deprecated-package "abbaye" l-abbaye-des-morts)) + (define-public angband (package (name "angband") From 375cb94130b222535ad7c7e0fa0d212483407351 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:37:07 +0100 Subject: [PATCH 155/411] gnu: wesnoth: Rename package to the-battle-for-wesnoth. * gnu/packages/games.scm (wesnoth): Define in terms of 'deprecated-package'. (the-battle-for-wesnoth): New variable, formerly known as "wesnoth". --- gnu/packages/games.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index c09b9c6812..1c89424efd 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2108,9 +2108,9 @@ (define-public gnujump falling, themeable graphics and sounds, and replays.") (license license:gpl3+))) -(define-public wesnoth +(define-public the-battle-for-wesnoth (package - (name "wesnoth") + (name "the-battle-for-wesnoth") (version "1.14.6") (source (origin (method url-fetch) @@ -2148,6 +2148,9 @@ (define-public wesnoth next campaign.") (license license:gpl2+))) +(define-public wesnoth + (deprecated-package "wesnoth" the-battle-for-wesnoth)) + (define-public wesnoth-server (package (inherit wesnoth) From ecdb1348ad9992f7d98ea5b1b5b6bc0bafc9b79c Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:37:38 +0100 Subject: [PATCH 156/411] gnu: wesnoth-server: Rename package to the-battle-for-wesnoth-server. * gnu/packages/games.scm (wesnoth-server): Define in terms of 'deprecated-package'. (the-battle-for-wesnoth-server): New variable, formerly known as "wesnoth-server". --- gnu/packages/games.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 1c89424efd..148f8498c7 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2151,10 +2151,10 @@ (define-public the-battle-for-wesnoth (define-public wesnoth (deprecated-package "wesnoth" the-battle-for-wesnoth)) -(define-public wesnoth-server +(define-public the-battle-for-wesnoth-server (package - (inherit wesnoth) - (name "wesnoth-server") + (inherit the-battle-for-wesnoth) + (name "the-battle-for-wesnoth-server") (inputs `(("boost" ,boost) ("icu4c" ,icu4c) @@ -2167,6 +2167,9 @@ (define-public wesnoth-server (description "This package contains a dedicated server for @emph{The Battle for Wesnoth}."))) +(define-public wesnoth-server + (deprecated-package "wesnoth-server" the-battle-for-wesnoth-server)) + (define-public gamine (package (name "gamine") From 184f5c8db199adbc91b4b108c1bf89e3727f0bce Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:38:39 +0100 Subject: [PATCH 157/411] gnu: starfighter: Rename package to project-starfighter. * gnu/packages/games.scm (starfighter): Define in terms of 'deprecated-package'. (project-starfighter): New variable, formerly known as "starfighter". --- gnu/packages/games.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 148f8498c7..09e1774996 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3186,9 +3186,9 @@ (define-public warzone2100 license:gpl2+ license:lgpl2.1+)))) -(define-public starfighter +(define-public project-starfighter (package - (name "starfighter") + (name "project-starfighter") (version "1.7") (source (origin (method url-fetch) @@ -3221,6 +3221,9 @@ (define-public starfighter license:cc0 license:public-domain)))) +(define-public starfighter + (deprecated-package "starfighter" project-starfighter)) + (define-public chromium-bsu (package (name "chromium-bsu") From 6639295f2f24ca8334d6b4d9d9cb63bd13388537 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:39:09 +0100 Subject: [PATCH 158/411] gnu: kiki: Rename package to kiki-the-nano-bot. * gnu/packages/games.scm (kiki): Define in terms of 'deprecated-package'. (kiki-the-nano-bot): New variable, formerly known as "kiki". --- gnu/packages/games.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 09e1774996..045b744ac8 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4045,9 +4045,9 @@ (define-public cdogs-sdl license:cc-by3.0 license:cc-by-sa3.0)))) -(define-public kiki +(define-public kiki-the-nano-bot (package - (name "kiki") + (name "kiki-the-nano-bot") (version "1.0.2") (source (origin (method url-fetch) @@ -4141,6 +4141,9 @@ (define-public kiki ;; for a statement from the author. (license license:public-domain))) +(define-public kiki + (deprecated-package "kiki" kiki-the-nano-bot)) + (define-public teeworlds (package (name "teeworlds") From 8b6e2bc15f0cbbe325f45fff9a7b5d3df143ca53 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:39:57 +0100 Subject: [PATCH 159/411] gnu: fillets-ng: Rename package to fish-fillets-ng. * gnu/packages/games.scm (fillets-ng): Define in terms of 'deprecated-package'. (fish-fillets-ng): New variable, formerly known as "fillets-ng". --- gnu/packages/games.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 045b744ac8..6b40ac68cf 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4364,9 +4364,9 @@ (define-public chroma becoming difficult enough to tax even the brightest of minds.") (license license:gpl2+))) -(define-public fillets-ng +(define-public fish-fillets-ng (package - (name "fillets-ng") + (name "fish-fillets-ng") (version "1.0.1") (source (origin (method url-fetch) @@ -4433,6 +4433,9 @@ (define-public fillets-ng fish. The whole game is accompanied by quiet, comforting music.") (license license:gpl2+))) +(define-public fillets-ng + (deprecated-package "fillets-ng" fish-fillets-ng)) + (define-public crawl (package (name "crawl") From 36a0b5b48c8f14e2ac5707dd6dfea99ee2304873 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:40:51 +0100 Subject: [PATCH 160/411] gnu: crawl: Rename package to dungeon-crawl-stone-soup. * gnu/packages/games.scm (crawl): Define in terms of 'deprecated-package'. (dungeon-crawl-stone-soup): New variable, formerly known as "crawl". --- gnu/packages/games.scm | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 6b40ac68cf..e328564c86 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4436,9 +4436,9 @@ (define-public fish-fillets-ng (define-public fillets-ng (deprecated-package "fillets-ng" fish-fillets-ng)) -(define-public crawl +(define-public dungeon-crawl-stone-soup (package - (name "crawl") + (name "dungeon-crawl-stone-soup") (version "0.23.1") (source (origin @@ -4504,9 +4504,9 @@ (define-public crawl ;; Force command line build for test cases. (append make-flags '("GAME=crawl" "TILES=")))))))) (synopsis "Roguelike dungeon crawler game") - (description "Dungeon Crawl Stone Soup is a roguelike adventure through -dungeons filled with dangerous monsters in a quest to find the mystifyingly -fabulous Orb of Zot.") + (description "Dungeon Crawl Stone Soup (also known as \"Crawl\" or DCSS +for short) is a roguelike adventure through dungeons filled with dangerous +monsters in a quest to find the mystifyingly fabulous Orb of Zot.") (home-page "https://crawl.develz.org") (license (list license:gpl2+ license:bsd-2 @@ -4516,6 +4516,9 @@ (define-public crawl license:zlib license:asl2.0)))) +(define-public crawl + (deprecated-package "crawl" dungeon-crawl-stone-soup)) + ;; The linter here claims that patch file names should start with the package ;; name. But, in this case, the patches are inherited from crawl with the ;; "crawl-" prefix instead of "crawl-tiles-". From 24a67aef2ae0f40f1b4af235f5fc054881dc4db1 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:42:44 +0100 Subject: [PATCH 161/411] gnu: crawl-tiles: Rename package to dungeon-crawl-stone-soup-tiles. * gnu/packages/games.scm (crawl-tiles): Define in terms of 'deprecated-package'. (dungeon-crawl-stone-soup-tiles): New variable, formerly known as "crawl-tiles". --- gnu/packages/games.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index e328564c86..28e4a51f6e 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4522,10 +4522,10 @@ (define-public crawl ;; The linter here claims that patch file names should start with the package ;; name. But, in this case, the patches are inherited from crawl with the ;; "crawl-" prefix instead of "crawl-tiles-". -(define-public crawl-tiles +(define-public dungeon-crawl-stone-soup-tiles (package - (inherit crawl) - (name "crawl-tiles") + (inherit dungeon-crawl-stone-soup) + (name "dungeon-crawl-stone-soup-tiles") (arguments (substitute-keyword-arguments (package-arguments crawl) @@ -4555,6 +4555,9 @@ (define-public crawl-tiles ("which" ,which))) (synopsis "Graphical roguelike dungeon crawler game"))) +(define-public crawl-tiles + (deprecated-package "crawl-tiles" dungeon-crawl-stone-soup-tiles)) + (define-public lugaru (package (name "lugaru") From f6a21d61deecc37f8c900f2d2acf01475b917d10 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:43:12 +0100 Subject: [PATCH 162/411] gnu: tome4: Rename package to tales-of-maj-eyal. * gnu/packages/games.scm (tome4): Define in terms of 'deprecated-package'. (tales-of-maj-eyal): New variable, formerly known as "tome4". --- gnu/packages/games.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 28e4a51f6e..c7cf618c0b 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4840,9 +4840,9 @@ (define-public open-adventure \"adventure 2.5\" and \"430-point adventure\".") (license license:bsd-2)))) -(define-public tome4 +(define-public tales-of-maj-eyal (package - (name "tome4") + (name "tales-of-maj-eyal") (version "1.5.10") (synopsis "Single-player, RPG roguelike game set in the world of Eyal") (source @@ -4963,6 +4963,9 @@ (define-public tome4 Tales of Maj’Eyal offers engaging roguelike gameplay for the 21st century.") (license license:gpl3+))) +(define-public tome4 + (deprecated-package "tome4" tales-of-maj-eyal)) + (define-public quakespasm (package (name "quakespasm") From b1aee9fce2d4177dc0eb41c8509d50a131a19655 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:43:35 +0100 Subject: [PATCH 163/411] gnu: btanks: Rename package to battle-tanks. * gnu/packages/games.scm (btanks): Define in terms of 'deprecated-package'. (battle-tanks): New variable, formerly known as "btanks". --- gnu/packages/games.scm | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index c7cf618c0b..c613b751a2 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6185,9 +6185,9 @@ (define-public stepmania (home-page "https://www.stepmania.com") (license license:expat))) -(define-public btanks +(define-public battle-tanks (package - (name "btanks") + (name "battle-tanks") (version "0.9.8083") (source (origin @@ -6261,15 +6261,19 @@ (define-public btanks ("zip" ,zip))) (home-page "http://btanks.sourceforge.net") (synopsis "Multiplayer tank battle game") - (description "Battle Tanks is a funny battle game, where you can choose -one of three vehicles and eliminate your enemy using the whole arsenal of -weapons. It has original cartoon-like graphics and cool music, it’s fun and -dynamic, it has several network modes for deathmatch and cooperative.") + (description "Battle Tanks (also known as \"btanks\") is a funny battle +game, where you can choose one of three vehicles and eliminate your enemy +using the whole arsenal of weapons. It has original cartoon-like graphics and +cool music, it’s fun and dynamic, it has several network modes for deathmatch +and cooperative.") ;; Some parts (e.g. mrt/b64.cpp) are LGPLv2.1+, but the whole package is ;; released under GPLv2 or later. It comes with extra exceptions for the ;; developers. (license (list license:gpl2+ license:lgpl2.1+)))) +(define-public btanks + (deprecated-package "btanks" battle-tanks)) + (define-public slingshot (package (name "slingshot") From f95e33a7ad9afe3f5087b4d8c80731d731b08839 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:43:47 +0100 Subject: [PATCH 164/411] gnu: edgar: Rename package to the-legend-of-edgar. * gnu/packages/games.scm (edgar): Define in terms of 'deprecated-package'. (the-legend-of-edgar): New variable, formerly known as "edgar". --- gnu/packages/games.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index c613b751a2..e24e3facaf 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6428,9 +6428,9 @@ (define-public arx-libertatis the desired spell.") (license license:gpl3+))) -(define-public edgar +(define-public the-legend-of-edgar (package - (name "edgar") + (name "the-legend-of-edgar") (version "1.30") (source (origin @@ -6474,3 +6474,6 @@ (define-public edgar a fortress beyond the forbidden swamp.") (home-page "https://www.parallelrealities.co.uk/games/edgar/") (license license:gpl2+))) + +(define-public edgar + (deprecated-package "edgar" the-legend-of-edgar)) From 6994e6743603ab73cc32d32786a55672f4fa46f0 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 26 Mar 2019 13:44:50 +0100 Subject: [PATCH 165/411] etc: Add "rename" snippet. * etc/snippets/text-mode/guix-commit-message-rename-package: New file. --- .../guix-commit-message-rename-package | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 etc/snippets/text-mode/guix-commit-message-rename-package diff --git a/etc/snippets/text-mode/guix-commit-message-rename-package b/etc/snippets/text-mode/guix-commit-message-rename-package new file mode 100644 index 0000000000..9695ca1b3d --- /dev/null +++ b/etc/snippets/text-mode/guix-commit-message-rename-package @@ -0,0 +1,20 @@ +# -*- mode: snippet -*- +# name: guix-commit-message-rename-package +# key: rename +# condition: git-commit-mode +# -- +gnu: ${1:`(with-temp-buffer + (magit-git-wash #'magit-diff-wash-diffs + "diff" "--staged") + (beginning-of-buffer) + (when (search-forward "-(define-public " nil 'noerror) + (thing-at-point 'sexp 'no-properties)))`}: Rename package to ${2:`(with-temp-buffer + (magit-git-wash #'magit-diff-wash-diffs + "diff" "--staged") + (beginning-of-buffer) + (when (search-forward "+(define-public " nil 'noerror) + (thing-at-point 'sexp 'no-properties)))`}. + +* `(car (magit-staged-files))` ($1): Define in terms of +'deprecated-package'. +($2): New variable, formerly known as "$1". \ No newline at end of file From 24d64989729b264ea0d8cd42149ec23b12229632 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 16:35:41 +0100 Subject: [PATCH 166/411] gnu: python-xopen: Update to 0.5.0. * gnu/packages/python-xyz.scm (python-xopen): Update to 0.5.0. --- gnu/packages/python-xyz.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 78453b2974..8a6c409ae4 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10836,16 +10836,17 @@ (define-public python2-argcomplete (define-public python-xopen (package (name "python-xopen") - (version "0.3.3") + (version "0.5.0") (source (origin (method url-fetch) (uri (pypi-uri "xopen" version)) (sha256 (base32 - "1a0wbil552wsmklwd89ssmgz3pjd86qa9i7jh8wqb9wslc8a2qjr")) - (file-name (string-append name "-" version ".tar.gz")))) + "17xbrgi23l87yg6h0qcknssp2q812miiy33qw6v45v5gx0jwv5xh")))) (build-system python-build-system) + (propagated-inputs + `(("python-setuptools-scm" ,python-setuptools-scm))) (home-page "https://github.com/marcelm/xopen/") (synopsis "Open compressed files transparently") (description "This module provides an @code{xopen} function that works like From 9ac17c62421ba6239ca2654fb5c4170e8cb4749e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 16:35:56 +0100 Subject: [PATCH 167/411] gnu: cutadapt: Update to 2.1. * gnu/packages/bioinformatics.scm (cutadapt): Update to 2.1. [source]: Fetch from pypi. [native-inputs]: Add python-setuptools-scm. --- gnu/packages/bioinformatics.scm | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 42c90ea949..87f15fc7f2 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -2325,23 +2325,21 @@ (define-public python-dnaio (define-public cutadapt (package (name "cutadapt") - (version "1.18") + (version "2.1") (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/marcelm/cutadapt.git") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) + (method url-fetch) + (uri (pypi-uri "cutadapt" version)) (sha256 (base32 - "08bbfwyc0kvcd95jf2s95xiv9s3cbsxm39ydl0qck3fw3cviwxpg")))) + "1vqmsfkm6llxzmsz9wcfcvzx9a9f8iabvwik2rbyn7nc4wm25z89")))) (build-system python-build-system) (inputs `(("python-dnaio" ,python-dnaio) ("python-xopen" ,python-xopen))) (native-inputs `(("python-cython" ,python-cython) - ("python-pytest" ,python-pytest))) + ("python-pytest" ,python-pytest) + ("python-setuptools-scm" ,python-setuptools-scm))) (home-page "https://cutadapt.readthedocs.io/en/stable/") (synopsis "Remove adapter sequences from nucleotide sequencing reads") (description From fdc316f3741e2f4174235e1828d62552da7559d4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 16:40:18 +0100 Subject: [PATCH 168/411] gnu: trim-galore: Update to 0.6.1. * gnu/packages/bioinformatics.scm (trim-galore): Update to 0.6.1. [arguments]: Adjust patching. --- gnu/packages/bioinformatics.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 87f15fc7f2..4e799f2fc4 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10880,17 +10880,17 @@ (define-public ritornello (define-public trim-galore (package (name "trim-galore") - (version "0.4.5") + (version "0.6.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/FelixKrueger/TrimGalore.git") (commit version))) - (file-name (string-append name "-" version "-checkout")) + (file-name (git-file-name name version)) (sha256 (base32 - "0x5892l48c816pf00wmnz5vq0zq6170d3xc8zrxncd4jcz7h1p71")))) + "1y31wbxwkm9xqzr5zv1pk5q418whnmlmgmfyxxpnl12h83m2i9iv")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no tests @@ -10905,10 +10905,10 @@ (define-public trim-galore (string-append "$path_to_cutadapt = '" (assoc-ref inputs "cutadapt") "/bin/cutadapt'")) - (("\\| gzip") - (string-append "| " + (("\\$compression_path = \"gzip\"") + (string-append "$compression_path = \"" (assoc-ref inputs "gzip") - "/bin/gzip")) + "/bin/gzip\"")) (("\"gunzip") (string-append "\"" (assoc-ref inputs "gzip") From 8c9372c1243cdb49f7bbf94ec3d001c02b736325 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 17:13:13 +0100 Subject: [PATCH 169/411] gnu: python-anndata: Update to 0.6.18. * gnu/packages/python-xyz.scm (python-anndata): Update to 0.6.18. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 8a6c409ae4..de546f2618 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -14595,14 +14595,14 @@ (define-public python-numba (define-public python-anndata (package (name "python-anndata") - (version "0.6.9") + (version "0.6.18") (source (origin (method url-fetch) (uri (pypi-uri "anndata" version)) (sha256 (base32 - "1fh461xyyc7pcrjfgd013bdc2alf53r46ss3gfw3431mbb1gappi")))) + "03x83yjaccbqszj7x4fwwmpil0ai59yx64d1zmf2691za3j03w73")))) (build-system python-build-system) (propagated-inputs `(("python-h5py" ,python-h5py) From 28d32817d82fb0d4da6bd274b9c5446ddb1d7f45 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 18:05:27 +0100 Subject: [PATCH 170/411] gnu: python-scanpy: Update to 1.4. * gnu/packages/bioinformatics.scm (python-scanpy): Update to 1.4. [source]: Fetch from git. [arguments]: Disable broken tests. [native-inputs]: Add python-pytest. [home-page]: Use HTTPS. --- gnu/packages/bioinformatics.scm | 38 ++++++++++++++++++++++++++++----- 1 file changed, 33 insertions(+), 5 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 4e799f2fc4..0001a82e4b 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -13266,15 +13266,41 @@ (define-public find-circ (define-public python-scanpy (package (name "python-scanpy") - (version "1.2.2") + (version "1.4") + ;; Fetch from git because the pypi tarball does not include tests. (source (origin - (method url-fetch) - (uri (pypi-uri "scanpy" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/theislab/scanpy.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1ak7bxms5a0yvf65prppq2g38clkv7c7jnjbnfpkh3xxv7q512jz")))) + "0zn6x6c0cnm1a20i6isigwb51g3pr9zpjk8r1minjqnxi5yc9pm4")))) (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key inputs #:allow-other-keys) + ;; These tests require Internet access. + (delete-file-recursively "scanpy/tests/notebooks") + (delete-file "scanpy/tests/test_clustering.py") + + ;; TODO: No module named 'louvain' + (delete-file "scanpy/tests/test_rank_genes_groups_logreg.py") + + ;; TODO: I can't get the plotting tests to work, even with Xvfb. + (delete-file "scanpy/tests/test_plotting.py") + (delete-file "scanpy/tests/test_preprocessing.py") + (delete-file "scanpy/tests/test_read_10x.py") + + (setenv "PYTHONPATH" + (string-append (getcwd) ":" + (getenv "PYTHONPATH"))) + (invoke "pytest") + #t))))) (propagated-inputs `(("python-anndata" ,python-anndata) ("python-igraph" ,python-igraph) @@ -13290,7 +13316,9 @@ (define-public python-scanpy ("python-seaborn" ,python-seaborn) ("python-h5py" ,python-h5py) ("python-tables" ,python-tables))) - (home-page "http://github.com/theislab/scanpy") + (native-inputs + `(("python-pytest" ,python-pytest))) + (home-page "https://github.com/theislab/scanpy") (synopsis "Single-Cell Analysis in Python.") (description "Scanpy is a scalable toolkit for analyzing single-cell gene expression data. It includes preprocessing, visualization, clustering, From 863519f660fdebefbbb7f7c18b4875ba9b05f74c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 26 Mar 2019 11:06:16 +0100 Subject: [PATCH 171/411] gnu: current-guix: Delay effectful bits. * gnu/packages/package-management.scm (current-guix): Delay 'repository-root'. --- gnu/packages/package-management.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 62bed6bde8..07a6c24bc8 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -410,10 +410,10 @@ (define-public current-guix-package (make-parameter #f)) (define-public current-guix - (let* ((repository-root (canonicalize-path - (string-append (current-source-directory) - "/../.."))) - (select? (delay (or (git-predicate repository-root) + (let* ((repository-root (delay (canonicalize-path + (string-append (current-source-directory) + "/../..")))) + (select? (delay (or (git-predicate (force repository-root)) source-file?)))) (lambda () "Return a package representing Guix built from the current source tree. @@ -423,7 +423,7 @@ (define-public current-guix (package (inherit guix) (version (string-append (package-version guix) "+")) - (source (local-file repository-root "guix-current" + (source (local-file (force repository-root) "guix-current" #:recursive? #t #:select? (force select?)))))))) From ec8bc4a34e99363f80b0156587892b5623709098 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 26 Mar 2019 11:36:33 +0100 Subject: [PATCH 172/411] build-self: Disable position recording. 'guix pull -n' goes roughly from 40s to 35s. * build-aux/build-self.scm (build-program): Add call to 'read-disable'. --- build-aux/build-self.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/build-aux/build-self.scm b/build-aux/build-self.scm index d18b4504cf..a8b05eb0ff 100644 --- a/build-aux/build-self.scm +++ b/build-aux/build-self.scm @@ -313,7 +313,11 @@ (define fake-git (cons (string-append #$guile-gcrypt "/lib/guile/" (effective-version) "/site-ccache") - %load-compiled-path))) + %load-compiled-path)) + + ;; Disable position recording to save time and space + ;; when loading the package modules. + (read-disable 'positions)) (use-modules (guix store) (guix self) From 8a9922bdee875b3b5e1d928fc8e2121ffa99663a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 26 Mar 2019 12:12:41 +0100 Subject: [PATCH 173/411] environment: Use (gnu build accounts) for /etc/passwd handling. * guix/scripts/environment.scm (launch-environment/container): Remove call to 'mock-passwd'; instantiate a instead. Call 'write-passwd' to write the pasword database instead of using custom code. (mock-passwd): Remove. * tests/guix-environment-container.sh: Test 'getpwuid'. --- guix/scripts/environment.scm | 54 +++++++---------------------- tests/guix-environment-container.sh | 6 ++++ 2 files changed, 19 insertions(+), 41 deletions(-) diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm index 63f6129279..597a5b4ab1 100644 --- a/guix/scripts/environment.scm +++ b/guix/scripts/environment.scm @@ -33,6 +33,7 @@ (define-module (guix scripts environment) #:use-module (guix scripts) #:use-module (guix scripts build) #:use-module (gnu build linux-container) + #:use-module (gnu build accounts) #:use-module (gnu system linux-container) #:use-module (gnu system file-systems) #:use-module (gnu packages) @@ -458,10 +459,17 @@ (define* (launch-environment/container #:key command bash user user-mappings (return (let* ((cwd (getcwd)) (home (getenv "HOME")) - (passwd (mock-passwd (getpwuid (getuid)) - user - bash)) - (home-dir (passwd:dir passwd)) + (passwd (let ((pwd (getpwuid (getuid)))) + (password-entry + (name (or user (passwd:name pwd))) + (real-name (if user + "" + (passwd:gecos pwd))) + (uid 0) (gid 0) (shell bash) + (directory (if user + (string-append "/home/" user) + (passwd:dir pwd)))))) + (home-dir (password-entry-directory passwd)) ;; Bind-mount all requisite store items, user-specified mappings, ;; /bin/sh, the current working directory, and possibly networking ;; configuration files within the container. @@ -519,17 +527,7 @@ (define* (launch-environment/container #:key command bash user user-mappings ;; to read it, such as 'git clone' over SSH, a valid use-case when ;; sharing the host's network namespace. (mkdir-p "/etc") - (call-with-output-file "/etc/passwd" - (lambda (port) - (display (string-join (list (passwd:name passwd) - "x" ; but there is no shadow - "0" "0" ; user is now root - (passwd:gecos passwd) - (passwd:dir passwd) - bash) - ":") - port) - (newline port))) + (write-passwd (list passwd)) ;; For convenience, start in the user's current working ;; directory rather than the root directory. @@ -543,32 +541,6 @@ (define* (launch-environment/container #:key command bash user user-mappings (delq 'net %namespaces) ; share host network %namespaces))))))) -(define (mock-passwd passwd user-override shell) - "Generate mock information for '/etc/passwd'. If USER-OVERRIDE is not '#f', -it is expected to be a string representing the mock username; it will produce -a user of that name, with a home directory of '/home/USER-OVERRIDE', and no -GECOS field. If USER-OVERRIDE is '#f', data will be inherited from PASSWD. -In either case, the shadow password and UID/GID are cleared, since the user -runs as root within the container. SHELL will always be used in place of the -shell in PASSWD. - -The resulting vector is suitable for use with Guile's POSIX user procedures. - -See passwd(5) for more information each of the fields." - (if user-override - (vector - user-override - "x" "0" "0" ;; no shadow, user is now root - "" ;; no personal information - (user-override-home user-override) - shell) - (vector - (passwd:name passwd) - "x" "0" "0" ;; no shadow, user is now root - (passwd:gecos passwd) - (passwd:dir passwd) - shell))) - (define (user-override-home user) "Return home directory for override user USER." (string-append "/home/" user)) diff --git a/tests/guix-environment-container.sh b/tests/guix-environment-container.sh index a2da9a0773..059c4d9213 100644 --- a/tests/guix-environment-container.sh +++ b/tests/guix-environment-container.sh @@ -44,6 +44,12 @@ else test $? = 42 fi +if test "x$USER" = "x"; then USER="`id -un`"; fi + +# Check whether /etc/passwd is valid. +guix environment -C --ad-hoc --bootstrap guile-bootstrap \ + -- guile -c "(exit (string=? \"$USER\" (passwd:name (getpwuid (getuid)))))" + # Make sure file-not-found errors in mounts are reported. if guix environment --container --ad-hoc --bootstrap guile-bootstrap \ --expose=/does-not-exist -- guile -c 1 2> "$tmpdir/error" From 952afb6f8c209692e52f9561965ee39e143e1d88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 26 Mar 2019 18:07:58 +0100 Subject: [PATCH 174/411] environment: Create /etc/group in containers. Reported by Pierre Neidhardt . * guix/scripts/environment.scm (launch-environment/container): Create GROUPS and call 'write-group'. * tests/guix-environment-container.sh: Test it. --- guix/scripts/environment.scm | 4 ++++ tests/guix-environment-container.sh | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm index 597a5b4ab1..c27edc7982 100644 --- a/guix/scripts/environment.scm +++ b/guix/scripts/environment.scm @@ -469,6 +469,9 @@ (define* (launch-environment/container #:key command bash user user-mappings (directory (if user (string-append "/home/" user) (passwd:dir pwd)))))) + (groups (list (group-entry (name "users") (gid 0)) + (group-entry (gid 65534) ;the overflow GID + (name "overflow")))) (home-dir (password-entry-directory passwd)) ;; Bind-mount all requisite store items, user-specified mappings, ;; /bin/sh, the current working directory, and possibly networking @@ -528,6 +531,7 @@ (define* (launch-environment/container #:key command bash user user-mappings ;; sharing the host's network namespace. (mkdir-p "/etc") (write-passwd (list passwd)) + (write-group groups) ;; For convenience, start in the user's current working ;; directory rather than the root directory. diff --git a/tests/guix-environment-container.sh b/tests/guix-environment-container.sh index 059c4d9213..f2221af95b 100644 --- a/tests/guix-environment-container.sh +++ b/tests/guix-environment-container.sh @@ -46,9 +46,15 @@ fi if test "x$USER" = "x"; then USER="`id -un`"; fi -# Check whether /etc/passwd is valid. +# Check whether /etc/passwd and /etc/group are valid. guix environment -C --ad-hoc --bootstrap guile-bootstrap \ -- guile -c "(exit (string=? \"$USER\" (passwd:name (getpwuid (getuid)))))" +guix environment -C --ad-hoc --bootstrap guile-bootstrap \ + -- guile -c '(exit (string? (group:name (getgrgid (getgid)))))' +guix environment -C --ad-hoc --bootstrap guile-bootstrap \ + -- guile -c '(use-modules (srfi srfi-1)) + (exit (every group:name + (map getgrgid (vector->list (getgroups)))))' # Make sure file-not-found errors in mounts are reported. if guix environment --container --ad-hoc --bootstrap guile-bootstrap \ From bd4b6f4164465a116c972dd5eea6cf02640f4d08 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 11 Jan 2019 18:56:32 +0100 Subject: [PATCH 175/411] gnu: Add pjproject. * gnu/packages/telephony.scm (pjproject): New variable. --- gnu/packages/telephony.scm | 96 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 559fb3d63f..6fff1ddfbd 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -8,7 +8,10 @@ ;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2017, 2018 Ricardo Wurmus ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2017 Adonay Felipe Nogueira ;;; Copyright © 2018 Jovany Leandro G.C +;;; Copyright © 2018 Tim Gesthuizen +;;; Copyright © 2019 Pierre Neidhardt ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,19 +32,31 @@ (define-module (gnu packages telephony) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) + #:use-module (gnu packages audio) + #:use-module (gnu packages base) #:use-module (gnu packages boost) #:use-module (gnu packages check) + #:use-module (gnu packages compression) + #:use-module (gnu packages crypto) #:use-module (gnu packages file) #:use-module (gnu packages protobuf) + #:use-module (gnu packages glib) #:use-module (gnu packages gnupg) #:use-module (gnu packages linux) #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) + #:use-module (gnu packages networking) + #:use-module (gnu packages pcre) + #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages python) #:use-module (gnu packages qt) + #:use-module (gnu packages serialization) #:use-module (gnu packages speech) #:use-module (gnu packages tls) + #:use-module (gnu packages upnp) + #:use-module (gnu packages video) #:use-module (gnu packages xiph) #:use-module (gnu packages xorg) #:use-module (gnu packages xml) @@ -529,3 +544,84 @@ (define-public twinkle phone to IP phone communication or in a network using a SIP proxy to route your calls and messages") (license license:gpl2+)))) + +(define-public pjproject + (package + (name "pjproject") + (version "2.7.2") + (source + (origin + (method url-fetch) + (uri (string-append + "http://www.pjsip.org/release/" ; + version "/" name "-" version ".tar.bz2")) + (modules '((guix build utils))) + (snippet + '(begin + (let ((third-party-directories + (list "BaseClasses" "bdsound" "bin" "g7221" "gsm" + "ilbc" "lib" "milenage" "mp3" "speex" "srtp" + "resample" + ;; Keep only resample, build and README.txt. + "build/baseclasses" "build/g7221" "build/gsm" + "build/ilbc" "build/milenage" "build/samplerate" + "build/speex" "build/srtp" + "build/resample" "build/yuv"))) + ;; Keep only Makefiles related to resample. + (for-each (lambda (file) + (delete-file-recursively + (string-append "third_party/" file))) + third-party-directories) + #t) + (let ((third-party-dirs + (list "gsm" "ilbc" "speex" "g7221" "srtp" + "portaudio" "resample"))) + (for-each + (lambda (dirs) + (substitute* "third_party/build/os-linux.mak" + (((string-append "DIRS += " dirs)) ""))) + third-party-dirs)))) + (sha256 + (base32 + "0wiph6g51wanzwjjrpwsz63amgvly8g08jz033gnwqmppa584b4w")))) + (build-system gnu-build-system) + (inputs + `(("portaudio" ,portaudio))) + (propagated-inputs + ;; These packages are referenced in the Libs field of the pkg-config + ;; file that will be installed by pjproject. + `(("speex" ,speex) + ("libsrtp" ,libsrtp) + ("gnutls" ,gnutls) + ("util-linux" ,util-linux))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config) + ("libtool" ,libtool))) + (arguments + `(;; FIXME make: No rule to make target + ;; 'pjlib-test-unknown-[something]-gnu'. + #:tests? #f + ;; #:test-target "selftest" + #:phases + (modify-phases %standard-phases + (add-before 'build 'build-dep + (lambda _ (invoke "make" "dep"))) + (add-before 'patch-source-shebangs 'autoconf + (lambda _ + (invoke "autoconf" "-vfi" "-o" + "aconfigure" "aconfigure.ac"))) + (add-before 'autoconf 'disable-some-tests + ;; Three of the six test programs fail due to missing network + ;; access. + (lambda _ + (substitute* "Makefile" + (("selftest: pjlib-test pjlib-util-test pjnath-test pjmedia-test pjsip-test pjsua-test") + "selftest: pjlib-test pjlib-util-test pjmedia-test")) + #t))))) + (home-page "https://www.pjsip.org") + (synopsis "Session Initiation Protocol (SIP) stack") + (description "PJProject provides an implementation of the Session +Initiation Protocol (SIP) and a multimedia framework.") + (license license:gpl2+))) From 915829e6622f274ec058fdf78acf87e7d31bf0d6 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 11 Jan 2019 18:56:44 +0100 Subject: [PATCH 176/411] gnu: Add pjproject-jami. * gnu/packages/telephony.scm (pjproject-jami): New variable. --- gnu/packages/telephony.scm | 103 +++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 6fff1ddfbd..9579362795 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -625,3 +625,106 @@ (define-public pjproject (description "PJProject provides an implementation of the Session Initiation Protocol (SIP) and a multimedia framework.") (license license:gpl2+))) + +(define %jami-version "20190319.4.a16a99f") + +(define* (jami-source #:key without-daemon) + (origin + (method url-fetch) + (uri (string-append "http://dl.jami.net/ring-release/tarballs/ring_" + %jami-version + ".tar.gz")) + (modules '((guix build utils))) + (snippet + (if without-daemon + '(begin + (delete-file-recursively "daemon/contrib")) + #f)) + (sha256 + (base32 + "1c6n6sm7skw83v25g33g4jzbragz9j4przbzaz7asxw54jy33dwl")))) + +(define-public pjproject-jami + (package + (inherit pjproject) + (name "pjproject-jami") + (native-inputs + `(("savoir-faire-linux-patches" ,(jami-source)) + ,@(package-native-inputs pjproject))) + (arguments + `(#:tests? #f + ;; See ring-project/daemon/contrib/src/pjproject/rules.mak. + #:configure-flags + (list "--disable-oss" + "--disable-sound" + "--disable-video" + "--enable-ext-sound" + "--disable-speex-aec" + "--disable-g711-codec" + "--disable-l16-codec" + "--disable-gsm-codec" + "--disable-g722-codec" + "--disable-g7221-codec" + "--disable-speex-codec" + "--disable-ilbc-codec" + "--disable-opencore-amr" + "--disable-silk" + "--disable-sdl" + "--disable-ffmpeg" + "--disable-v4l2" + "--disable-openh264" + "--disable-resample" + "--disable-libwebrtc" + ;; "-fPIC" is required for libring. Bug? + "CFLAGS=-fPIC -DPJ_ENABLE_EXTRA_CHECK=1 -DPJ_ICE_MAX_CAND=256 -DPJ_ICE_MAX_CHECKS=1024 -DPJ_ICE_COMP_BITS=2 -DPJ_ICE_MAX_STUN=3 -DPJSIP_MAX_PKT_LEN=8000 -DPJ_ICE_ST_MAX_CAND=32" + "CXXFLAGS=-fPIC -DPJ_ENABLE_EXTRA_CHECK=1 -DPJ_ICE_MAX_CAND=256 -DPJ_ICE_MAX_CHECKS=1024 -DPJ_ICE_COMP_BITS=2 -DPJ_ICE_MAX_STUN=3 -DPJSIP_MAX_PKT_LEN=8000 -DPJ_ICE_ST_MAX_CAND=32" + ;; Now deviating from the rules.mak file. + "--enable-ssl=gnutls" + "--with-external-srtp") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'apply-patches + (lambda* (#:key inputs #:allow-other-keys) + (let ((savoir-faire-linux-patches-directory "Savoir-faire Linux patches") + ;; Comes from + ;; "ring-project/daemon/contrib/src/pjproject/rules.mak". + ;; WARNING: These amount for huge changes in pjproject. + ;; Particularly, they add support for GnuTLS. + (savoir-faire-linux-patches + '("gnutls" + "rfc2466" + "ipv6" + "ice_config" + "multiple_listeners" + "pj_ice_sess" + "fix_turn_fallback" + "fix_ioqueue_ipv6_sendto" + "add_dtls_transport" + "rfc6062"))) + (mkdir-p savoir-faire-linux-patches-directory) + (invoke "tar" "-xvf" (assoc-ref inputs "savoir-faire-linux-patches") + "-C" savoir-faire-linux-patches-directory "--strip-components=5" "ring-project/daemon/contrib/src/pjproject") + (for-each + (lambda (file) + (invoke "patch" "--force" "-p1" "-i" + (string-append savoir-faire-linux-patches-directory "/" + file ".patch"))) + savoir-faire-linux-patches)) + #t)) + ;; TODO: We could use substitute-keyword-arguments instead of + ;; repeating the phases from pjproject, but somehow it does + ;; not work. + (add-before 'build 'build-dep + (lambda _ (invoke "make" "dep"))) + (add-before 'patch-source-shebangs 'autoconf + (lambda _ + (invoke "autoconf" "-v" "-f" "-i" "-o" + "aconfigure" "aconfigure.ac"))) + (add-before 'autoconf 'disable-some-tests + ;; Three of the six test programs fail due to missing network + ;; access. + (lambda _ + (substitute* "Makefile" + (("selftest: pjlib-test pjlib-util-test pjnath-test pjmedia-test pjsip-test pjsua-test") + "selftest: pjlib-test pjlib-util-test pjmedia-test")) + #t))))))) From 1bfcb19bc3009f8619476f83a84ea3945878798a Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 11 Jan 2019 18:58:31 +0100 Subject: [PATCH 177/411] gnu: Add libring. * gnu/packages/telephony.scm (libring): New variable. --- gnu/packages/telephony.scm | 74 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 9579362795..5e11217e3f 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -728,3 +728,77 @@ (define-public pjproject-jami (("selftest: pjlib-test pjlib-util-test pjnath-test pjmedia-test pjsip-test pjsua-test") "selftest: pjlib-test pjlib-util-test pjmedia-test")) #t))))))) + +(define-public libring + (package + (name "libring") + (version %jami-version) + (source (jami-source #:without-daemon #t)) + (build-system gnu-build-system) + (inputs + ;; Missing (optional?) dep: libnatpmp. + `(("alsa-lib" ,alsa-lib) + ("boost" ,boost) + ("dbus-c++" ,dbus-c++) + ("eudev" ,eudev) + ("ffmpeg" ,ffmpeg) + ("flac" ,flac) + ("gmp" ,gmp) + ("gsm" ,gsm) + ("jack" ,jack-1) + ("jsoncpp" ,jsoncpp) + ("libogg" ,libogg) + ("libva" ,libva) + ("opendht" ,opendht) + ("opus" ,opus) + ("pcre" ,pcre) + ("pulseaudio" ,pulseaudio) + ("libsamplerate" ,libsamplerate) + ("libsndfile" ,libsndfile) + ("speex" ,speex) + ("speexdsp" ,speexdsp) + ("libupnp" ,libupnp) + ("libvorbis" ,libvorbis) + ("libx264" ,libx264) + ("libvdpau" ,libvdpau) + ("yaml-cpp" ,yaml-cpp) + ("zlib" ,zlib) + ("openssl" ,openssl) + ("libsecp256k1" ,libsecp256k1) + ("python" ,python) + ("python-wrapper" ,python-wrapper) + ("restbed" ,restbed) + ("libx11" ,libx11) + ;; TODO: Upstream seems to rely on a custom pjproject (a.k.a. pjsip) version. + ;; See https://git.jami.net/savoirfairelinux/ring-daemon/issues/24. + ("pjproject" ,pjproject-jami))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("which" ,which) + ("cppunit" ,cppunit) + ("perl" ,perl))) ; Needed for documentation. + (arguments + `(#:tests? #f ; The tests fail to compile due to missing headers. + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'change-directory + (lambda _ + (chdir "daemon") + #t)) + (add-before 'build 'add-lib-dir + (lambda _ + (mkdir-p "src/lib") + #t))))) + (synopsis "Distributed multimedia communications platform") + (description "Jami (formerly GNU Ring) is a secure and distributed voice, +video and chat communication platform that requires no centralized server and +leaves the power of privacy in the hands of the user. It supports the SIP and +IAX protocols, as well as decentralized calling using P2P-DHT. + +This package provides a library and daemon implementing the Jami core +functionality.") + (home-page "https://jami.net/") + (license license:gpl3+))) From b630967247daaba4949a1b69f83344e1ad13e660 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 11 Jan 2019 19:09:47 +0100 Subject: [PATCH 178/411] gnu: Add libringclient. * gnu/packages/telephony.scm (libringclient): New variable. --- gnu/packages/telephony.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 5e11217e3f..29ba0f01ee 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -802,3 +802,39 @@ (define-public libring functionality.") (home-page "https://jami.net/") (license license:gpl3+))) + +(define-public libringclient + (package + (inherit libring) + (name "libringclient") + (build-system cmake-build-system) + (propagated-inputs + `(("libring" ,libring) ; For 'dring'. + ("qtbase" ,qtbase) ; Qt is included in several installed headers. + ("qttools" ,qttools))) + (arguments + `(#:tests? #f ; There is no testsuite. + #:configure-flags + (list (string-append "-DRING_BUILD_DIR=" + (assoc-ref %build-inputs "libring") "/include")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'change-directory + (lambda _ + (chdir "lrc") + #t)) + (add-before 'configure 'fix-dbus-interfaces-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_PREFIX\\}(/share/dbus-1/interfaces)" _ dbus-interfaces-path-suffix) + (string-append (assoc-ref inputs "libring") + dbus-interfaces-path-suffix)))))))) + (synopsis "Distributed multimedia communications platform") + (description "Jami (formerly GNU Ring) is a secure and distributed voice, +video and chat communication platform that requires no centralized server and +leaves the power of privacy in the hands of the user. It supports the SIP and +IAX protocols, as well as decentralized calling using P2P-DHT. + +This package provides a library common to all Jami clients.") + (home-page "https://jami.net") + (license license:gpl3+))) From c771b799bdd4c3895469867e5413ec1079f97ab8 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 11 Jan 2019 19:37:02 +0100 Subject: [PATCH 179/411] gnu: Add jami-client-gnome. * gnu/packages/telephony.scm (jami-client-gnome): New variable. --- gnu/packages/telephony.scm | 68 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 29ba0f01ee..b5c14143a8 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -30,6 +30,7 @@ (define-module (gnu packages telephony) #:use-module (gnu packages) + #:use-module (gnu packages aidc) #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) #:use-module (gnu packages audio) @@ -38,10 +39,15 @@ (define-module (gnu packages telephony) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages crypto) + #:use-module (gnu packages documentation) #:use-module (gnu packages file) #:use-module (gnu packages protobuf) + #:use-module (gnu packages gettext) #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) + #:use-module (gnu packages gtk) + #:use-module (gnu packages libcanberra) #:use-module (gnu packages linux) #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) @@ -54,9 +60,11 @@ (define-module (gnu packages telephony) #:use-module (gnu packages qt) #:use-module (gnu packages serialization) #:use-module (gnu packages speech) + #:use-module (gnu packages sqlite) #:use-module (gnu packages tls) #:use-module (gnu packages upnp) #:use-module (gnu packages video) + #:use-module (gnu packages webkit) #:use-module (gnu packages xiph) #:use-module (gnu packages xorg) #:use-module (gnu packages xml) @@ -838,3 +846,63 @@ (define-public libringclient This package provides a library common to all Jami clients.") (home-page "https://jami.net") (license license:gpl3+))) + +(define-public jami-client-gnome + (package + (inherit libring) + (name "jami-client-gnome") + (build-system cmake-build-system) + (inputs + `(("libringclient" ,libringclient) + ("gtk+" ,gtk+) + ("qrencode" ,qrencode) + ("libnotify" ,libnotify) + ("clutter" ,clutter) + ("clutter-gtk" ,clutter-gtk) + ("gettext" ,gnu-gettext) + ("libcanberra" ,libcanberra) + ("webkitgtk" ,webkitgtk) + ;; TODO: We must wrap ring-client-gnome to force using the + ;; `sqlite-with-column-metadata' package instead of `sqlite' or else it + ;; fails with: + ;; + ;; /gnu/store/...-qtbase-5.11.2/lib/qt5/plugins/sqldrivers/libqsqlite.so: + ;; undefined symbol: sqlite3_column_table_name16 + ;; + ;; qtbase is built against sqlite-with-column-metadata but somehow + ;; jami-client-gnome ends up with both `sqlite' and + ;; `sqlite-with-column-metadata' as inputs and it seems that + ;; libqsqlite.so gets confused. + ("sqlite" ,sqlite-with-column-metadata))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("glib:bin" ,glib "bin") + ("doxygen" ,doxygen))) + (propagated-inputs + `(("libring" ,libring) ; Contains `dring', the daemon, which is automatically by d-bus. + ("adwaita-icon-theme" ,adwaita-icon-theme) + ("evolution-data-server" ,evolution-data-server))) + (arguments + `(#:tests? #f ; There is no testsuite. + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'change-directory + (lambda _ + (chdir "client-gnome") + #t)) + (add-after 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (path (string-append (assoc-ref inputs "sqlite") "/lib"))) + (wrap-program (string-append out "/bin/gnome-ring") + `("LD_LIBRARY_PATH" ":" prefix (,path)))) + #t))))) + (synopsis "Distributed multimedia communications platform") + (description "Jami (formerly GNU Ring) is a secure and distributed voice, +video and chat communication platform that requires no centralized server and +leaves the power of privacy in the hands of the user. It supports the SIP and +IAX protocols, as well as decentralized calling using P2P-DHT. + +This package provides the Jami client for the GNOME desktop.") + (home-page "https://jami.net") + (license license:gpl3+))) From 7b67bb1fabfedc8f1542923054e40c49099ec013 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 20:21:04 +0100 Subject: [PATCH 180/411] gnu: 0ad: Use INVOKE. * gnu/packages/games.scm (0ad)[arguments]: Use INVOKE. --- gnu/packages/games.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index e24e3facaf..3a80ba72c6 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4716,11 +4716,11 @@ (define-public 0ad (setenv "JOBS" (string-append "-j" jobs)) (setenv "CC" "gcc") (with-directory-excursion "build/workspaces" - (zero? (system* "./update-workspaces.sh" - (string-append "--libdir=" lib) - (string-append "--datadir=" data) - ;; TODO: "--with-system-nvtt" - "--with-system-mozjs38")))))) + (invoke "./update-workspaces.sh" + (string-append "--libdir=" lib) + (string-append "--datadir=" data) + ;; TODO: "--with-system-nvtt" + "--with-system-mozjs38"))))) (delete 'check) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) @@ -4754,7 +4754,7 @@ (define-public 0ad (add-after 'install 'check (lambda _ (with-directory-excursion "system" - (zero? (system* "./test")))))))) + (invoke "./test"))))))) (home-page "https://play0ad.com") (synopsis "3D real-time strategy game of ancient warfare") (description "0 A.D. is a real-time strategy (RTS) game of ancient From 27cd31e6a5f3cdc30741c837eb751707ff249d77 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 20:21:40 +0100 Subject: [PATCH 181/411] gnu: open-adventure: Use INVOKE. * gnu/packages/games.scm (open-adventure)[arguments]: Use INVOKE. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 3a80ba72c6..3466748c6e 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4816,7 +4816,7 @@ (define-public open-adventure (substitute* "Makefile" ((".adoc.6:" line) (string-append line " advent.adoc"))) - (zero? (system* "make" ".adoc.6")))) + (invoke "make" ".adoc.6"))) ;; There is no install target (replace 'install (lambda* (#:key outputs #:allow-other-keys) From 4b81d5c4bc442a12c681586f6c25a4ca0af44056 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 21:31:07 +0100 Subject: [PATCH 182/411] gnu: ldc-bootstrap: Use INVOKE. * gnu/packages/dlang.scm (ldc-bootstrap)[arguments]: Use INVOKE and unconditionally return #T from build phase. --- gnu/packages/dlang.scm | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm index 2530b8a3c7..ddd747a156 100644 --- a/gnu/packages/dlang.scm +++ b/gnu/packages/dlang.scm @@ -103,12 +103,13 @@ (define-public ldc-bootstrap (lambda* (#:key inputs #:allow-other-keys) (let ((unpack (lambda (source target) (with-directory-excursion target - (zero? (system* "tar" "xvf" - (assoc-ref inputs source) - "--strip-components=1")))))) - (and (unpack "phobos-src" "runtime/phobos") - (unpack "druntime-src" "runtime/druntime") - (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite"))))) + (invoke "tar" "xvf" + (assoc-ref inputs source) + "--strip-components=1"))))) + (unpack "phobos-src" "runtime/phobos") + (unpack "druntime-src" "runtime/druntime") + (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite") + #t))) (add-after 'unpack-submodule-sources 'patch-dmd2 (lambda* (#:key inputs #:allow-other-keys) (substitute* "dmd2/root/port.c" From 68631e037bd79039b5b14150e01f64cd8f81eabb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 21:35:46 +0100 Subject: [PATCH 183/411] gnu: ldc: Use INVOKE. * gnu/packages/dlang.scm (ldc)[arguments]: Use INVOKE. --- gnu/packages/dlang.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm index ddd747a156..c164ed849a 100644 --- a/gnu/packages/dlang.scm +++ b/gnu/packages/dlang.scm @@ -211,12 +211,12 @@ (define-public ldc (lambda* (#:key inputs #:allow-other-keys) (let ((unpack (lambda (source target) (with-directory-excursion target - (zero? (system* "tar" "xvf" - (assoc-ref inputs source) - "--strip-components=1")))))) - (and (unpack "phobos-src" "runtime/phobos") - (unpack "druntime-src" "runtime/druntime") - (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite"))))) + (invoke "tar" "xvf" + (assoc-ref inputs source) + "--strip-components=1"))))) + (unpack "phobos-src" "runtime/phobos") + (unpack "druntime-src" "runtime/druntime") + (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite")))) (add-after 'unpack-submodule-sources 'patch-phobos (lambda* (#:key inputs #:allow-other-keys) (substitute* '("runtime/phobos/std/process.d" From 7cdc7e579b4cbfc70f3fb6fcf31d77b14901db07 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 26 Mar 2019 23:58:33 +0100 Subject: [PATCH 184/411] gnu: fritzing: Update to 0.9.3b. * gnu/packages/engineering.scm (fritzing): Update to 0.9.3b. [source]: Fetch from git. [arguments]: Use INVOKE and adjust configure phase. [inputs]: Add libgit2; fetch fritzing-parts-db via git. --- gnu/packages/engineering.scm | 59 +++++++++++++++++++++++++----------- 1 file changed, 41 insertions(+), 18 deletions(-) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 4ac76e35b0..a90ceab0d2 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -85,6 +85,7 @@ (define-module (gnu packages engineering) #:use-module (gnu packages texinfo) #:use-module (gnu packages tls) #:use-module (gnu packages tex) + #:use-module (gnu packages version-control) #:use-module (gnu packages wxwidgets) #:use-module (gnu packages xorg)) @@ -554,43 +555,65 @@ (define-public fasthenry (define-public fritzing (package (name "fritzing") - (version "0.9.2b") + (version "0.9.3b") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/fritzing/" - "fritzing-app/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/fritzing/fritzing-app.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "15rwjp4xdj9w1z9f709rz9p0k2mi9k9idma9hvzkj5j8p04mg7yd")))) + "0hpyc550xfhr6gmnc85nq60w00rm0ljm0y744dp0z88ikl04f4s3")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) - (and (zero? (system* "tar" - "-xvf" (assoc-ref inputs "fritzing-parts-db") - "-C" "parts")) - (zero? (system* "qmake" - (string-append "PREFIX=" - (assoc-ref outputs "out")) - "phoenix.pro")))))))) + (copy-recursively (assoc-ref inputs "fritzing-parts-db") + "parts") + ;; Make compatible with libgit2 > 0.24 + (substitute* "src/version/partschecker.cpp" + (("error = git_remote_connect\\(remote, GIT_DIRECTION_FETCH, &callbacks\\)") + "error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL, NULL)")) + + ;; Use system libgit2 and boost. + (substitute* "phoenix.pro" + (("^LIBGIT2INCLUDE =.*") + (string-append "LIBGIT2INCLUDE=" + (assoc-ref inputs "libgit2") "/include\n")) + (("^ LIBGIT2LIB =.*") + (string-append " LIBGIT2LIB=" + (assoc-ref inputs "libgit2") "/lib\n"))) + ;; This file checks for old versions of Boost, insisting on + ;; having us download the boost sources and placing them in the + ;; build directory. + (substitute* "pri/utils.pri" + (("error\\(") "message(")) + + (let ((out (assoc-ref outputs "out"))) + (invoke "qmake" + (string-append "QMAKE_LFLAGS_RPATH=-Wl,-rpath," out "/lib") + (string-append "PREFIX=" out) + "phoenix.pro"))))))) (inputs `(("qtbase" ,qtbase) ("qtserialport" ,qtserialport) ("qtsvg" ,qtsvg) + ("libgit2" ,libgit2) ("boost" ,boost) ("zlib" ,zlib) ("fritzing-parts-db" ,(origin - (method url-fetch) - (uri (string-append "https://github.com/fritzing/" - "fritzing-parts/archive/" version ".tar.gz")) - (file-name (string-append "fritzing-parts-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/fritzing/fritzing-parts.git") + (commit version))) + (file-name (git-file-name "fritzing-parts" version)) (sha256 (base32 - "0jqr8yjg7177f3pk1fcns584r0qavwpr280nggsi2ff3pwk5wpsz")))))) + "1d2v8k7p176j0lczx4vx9n9gbg3vw09n2c4b6w0wj5wqmifywhc1")))))) (home-page "http://fritzing.org") (synopsis "Electronic circuit design") (description From de6be0237933cd5b807f33a56a9b0bc3b5beda80 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 00:03:31 +0100 Subject: [PATCH 185/411] gnu: python-django-contact-form: Use INVOKE. * gnu/packages/django.scm (python-django-contact-form)[arguments]: Use INVOKE. --- gnu/packages/django.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 8fd29d533a..99eeb66e9c 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -519,9 +519,9 @@ (define-public python-django-contact-form (replace 'check (lambda _ ;; the next version will need "make test" - (and (zero? (system* "flake8" "contact_form")) - (zero? (system* "coverage" "run" "contact_form/runtests.py")) - (zero? (system* "coverage" "report" "-m" "--fail-under" "0")))))))) + (invoke "flake8" "contact_form") + (invoke "coverage" "run" "contact_form/runtests.py") + (invoke "coverage" "report" "-m" "--fail-under" "0")))))) (native-inputs `(("python-coverage" ,python-coverage) ("python-flake8" ,python-flake8))) From dd2f0cdba13e291946637c5e5ef2fefd5027d88d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 00:04:07 +0100 Subject: [PATCH 186/411] gnu: python-django-overextends: Use INVOKE. * gnu/packages/django.scm (python-django-overextends)[arguments]: Use INVOKE. --- gnu/packages/django.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 99eeb66e9c..8ea9dca16a 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -577,8 +577,7 @@ (define-public python-django-overextends `(#:phases (modify-phases %standard-phases (replace 'check - (lambda _ - (zero? (system* "./test_project/manage.py" "test"))))))) + (lambda _ (invoke "./test_project/manage.py" "test")))))) (propagated-inputs `(("python-django" ,python-django))) (native-inputs From 4dcf221c8502e4f69f3ed9807936f64c3d1a44e8 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Tue, 26 Mar 2019 22:54:08 +0000 Subject: [PATCH 187/411] gnu: qjackctl: Re-enable xunique. Version 0.5.6 of qjackctl appears to have fixed the xunique bug that was causing X hanging when using tiling window managers. See https://github.com/rncbc/qjackctl/blob/d54a1da43fa197da04d676a110f36a1d4c062252/ChangeLog#L9 * gnu/packages/audio.scm (qjackctl)[arguments]: Remove "--disable-xunique" from configure-flags. Signed-off-by: Ricardo Wurmus --- gnu/packages/audio.scm | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index a38e77c996..aa99382f79 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -2130,11 +2130,7 @@ (define-public qjackctl "0wlmbb9m7cf3wr7c2h2hji18592x2b119m7mx85wksjs6rjaq2mj")))) (build-system gnu-build-system) (arguments - '(#:tests? #f ; no check target - ;; Disable xunique to prevent X hanging when starting qjackctl in - ;; tiling window managers such as StumpWM or i3 - ;; (see https://github.com/rncbc/qjackctl/issues/13). - #:configure-flags '("--disable-xunique"))) + '(#:tests? #f)) ; no check target (inputs `(("jack" ,jack-1) ("alsa-lib" ,alsa-lib) From 4fee5ec049807cc7a7070d31e5eb28d5c6109e02 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Tue, 19 Mar 2019 11:39:50 -0400 Subject: [PATCH 188/411] gnu: Add adanaxis-mush and adanaxisgpl. * gnu/packages/games.scm (adanaxis-mush, adanaxisgpl): New variables. --- gnu/packages/games.scm | 76 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 75 insertions(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 3466748c6e..23dbbca4f7 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -17,7 +17,7 @@ ;;; Copyright © 2016, 2017 Rodger Fox ;;; Copyright © 2016, 2017, 2018 ng0 ;;; Copyright © 2016 Albin Söderqvist -;;; Copyright © 2016, 2017, 2018 Kei Kebreau +;;; Copyright © 2016, 2017, 2018, 2019 Kei Kebreau ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner ;;; Copyright © 2016 Jan Nieuwenhuizen @@ -165,6 +165,80 @@ (define-module (gnu packages games) #:use-module ((srfi srfi-1) #:hide (zip)) #:use-module (srfi srfi-26)) +;; Data package for adanaxisgpl. +(define adanaxis-mush + (let ((version "1.1.0")) + (origin + (method url-fetch) + (uri (string-append "http://www.mushware.com/files/adanaxis-mush-" + version ".tar.gz")) + (sha256 + (base32 "0mk9ibis5nkdcalcg1lkgnsdxxbw4g5w2i3icjzy667hqirsng03"))))) + +(define-public adanaxisgpl + (package + (name "adanaxisgpl") + (version "1.2.5") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.mushware.com/files/adanaxisgpl-" + version ".tar.gz")) + (sha256 + (base32 "0jkn637jaabvlhd6hpvzb57vvjph94l6fbf7qxbjlw9zpr19dw1f")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Necessary for building with gcc >=4.7. + (substitute* "src/Mushcore/MushcoreSingleton.h" + (("SingletonPtrSet\\(new SingletonType\\);") + "MushcoreSingleton::SingletonPtrSet(new SingletonType);")) + ;; Avoid an "invalid conversion from const char* to char*" error. + (substitute* "src/Platform/X11/PlatformMiscUtils.cpp" + (("char \\*end, \\*result;") + (string-append "const char *end;" + "\n" + "char *result;"))) + #t)))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no check target + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-data + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((data (assoc-ref inputs "adanaxis-mush")) + (share (string-append (assoc-ref outputs "out") + "/share/" ,name "-" ,version))) + (mkdir-p share) + (invoke "tar" "xvf" data "-C" share))))))) + (native-inputs + `(("adanaxis-mush" ,adanaxis-mush))) ; game data + (inputs + `(("expat" ,expat) + ("freeglut" ,freeglut) + ("glu" ,glu) + ("libjpeg" ,libjpeg) + ("libogg" ,libogg) + ("libtiff" ,libtiff) + ("libvorbis" ,libvorbis) + ("libx11" ,libx11) + ("libxext" ,libxext) + ("pcre" ,pcre) + ("sdl" ,sdl) + ("sdl-mixer" ,sdl-mixer))) + (home-page "https://www.mushware.com") + (synopsis "Action game in four spatial dimensions") + (description + "Adanaxis is a fast-moving first person shooter set in deep space, where +the fundamentals of space itself are changed. By adding another dimension to +space this game provides an environment with movement in four directions and +six planes of rotation. Initially the game explains the 4D control system via +a graphical sequence, before moving on to 30 levels of gameplay with numerous +enemy, ally, weapon and mission types. Features include simulated 4D texturing, +mouse and joystick control, and original music.") + (license license:gpl2))) + (define-public armagetron-advanced (package (name "armagetron-advanced") From fc64504f2d7ea5be1d4a7d3073dd849797b2db6b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 09:27:02 +0100 Subject: [PATCH 189/411] gnu: grantlee: Delete broken tests. * gnu/packages/qt.scm (grantlee)[arguments]: Add phase "delete-broken-tests". --- gnu/packages/qt.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 87d92765f4..5b463f510f 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -96,6 +96,18 @@ (define-public grantlee (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'delete-broken-tests + (lambda _ + ;; TODO: Two date tests (for date01 and date02) fail for unknown + ;; reasons. + ;; Actual (result): "" + ;; Expected (output): "01" + ;; Actual (result): "" + ;; Expected (output): "Jan. 1, 2008" + (delete-file "templates/tests/testfilters.cpp") + (substitute* "templates/tests/CMakeLists.txt" + (("testfilters") "")) + #t)) (add-before 'check 'check-setup (lambda _ ;; make Qt render "offscreen", required for tests From 733b3c59da7042ae6913ba4776a5c0d13a83f1f1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 09:32:38 +0100 Subject: [PATCH 190/411] gnu: r-gtable: Update to 0.3.0. * gnu/packages/statistics.scm (r-gtable): Update to 0.3.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 735c30da94..414b8c176f 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2709,13 +2709,13 @@ (define-public r-rmarkdown (define-public r-gtable (package (name "r-gtable") - (version "0.2.0") + (version "0.3.0") (source (origin (method url-fetch) (uri (cran-uri "gtable" version)) (sha256 (base32 - "0vz7073m0a2q12qzzihrfh5c2kx5jqi5l7z470fxmwqghdllh7l0")))) + "1lyncxf2dqdjgw1071cn9c8zwzkz6sldnd5cgmicf70bc726qf7x")))) (properties `((upstream-name . "gtable"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/gtable") From a7332d1a2fe28b04b4312621819c0c21b5a0ad9c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 09:32:47 +0100 Subject: [PATCH 191/411] gnu: r-caret: Update to 6.0-82. * gnu/packages/statistics.scm (r-caret): Update to 6.0-82. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 414b8c176f..66165cd5ef 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -5283,14 +5283,14 @@ (define-public r-car (define-public r-caret (package (name "r-caret") - (version "6.0-81") + (version "6.0-82") (source (origin (method url-fetch) (uri (cran-uri "caret" version)) (sha256 (base32 - "1fibrskjzq2f06b8gbrfp3263svfc5s5apsjwaqdg9qzs7sy7fpc")))) + "0zgkmiiarl7ll2ffyciikah61jyps41fin5pjb5l8ja2b26lgrdg")))) (build-system r-build-system) (propagated-inputs `(("r-foreach" ,r-foreach) From a12c527d3cc012956c54010362ec38393306d214 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 09:32:53 +0100 Subject: [PATCH 192/411] gnu: r-hdf5r: Update to 1.1.1. * gnu/packages/cran.scm (r-hdf5r): Update to 1.1.1. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 8b8c0a4132..557c166d37 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -5490,14 +5490,14 @@ (define-public r-nbclust (define-public r-hdf5r (package (name "r-hdf5r") - (version "1.0.1") + (version "1.1.1") (source (origin (method url-fetch) (uri (cran-uri "hdf5r" version)) (sha256 (base32 - "0h222q80li8rs3cv4c5lvv3g91ygd51w43ay6fwyk9q9d315vwrj")))) + "1cq4rdfd0rqvy29ml3x1iid142ljnscs8f4d2y1na13hlvkl3k05")))) (build-system r-build-system) (inputs `(("hdf5" ,hdf5) From 3b6c77445becb6e3a1297b64f5f722af450bb1de Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 09:33:04 +0100 Subject: [PATCH 193/411] gnu: r-genomicfeatures: Update to 1.34.7. * gnu/packages/bioinformatics.scm (r-genomicfeatures): Update to 1.34.7. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 0001a82e4b..06c3d6bb41 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7916,13 +7916,13 @@ (define-public r-rtracklayer (define-public r-genomicfeatures (package (name "r-genomicfeatures") - (version "1.34.6") + (version "1.34.7") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFeatures" version)) (sha256 (base32 - "1cz7qx324dmsrkzyhm956cfgr08gpily5rpym7hc8zz5kbl6i3ra")))) + "100y8cx9xfglbn36k25y09y0qfwm0qpb4b01qhk367832rqz5dhz")))) (properties `((upstream-name . "GenomicFeatures"))) (build-system r-build-system) From dfe420ee463aa7e87a979bb494917d562f155257 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 09:33:09 +0100 Subject: [PATCH 194/411] gnu: r-rhdf5lib: Update to 1.4.3. * gnu/packages/bioinformatics.scm (r-rhdf5lib): Update to 1.4.3. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 06c3d6bb41..1f2991418a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10430,14 +10430,14 @@ (define-public r-hdf5array (define-public r-rhdf5lib (package (name "r-rhdf5lib") - (version "1.4.2") + (version "1.4.3") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhdf5lib" version)) (sha256 (base32 - "06bxd3wz8lrvh2hzvmjpdv4lvzj5lz9353bw5b3zb98cb8w9r2j5")) + "0hjhjvg2kss71fkmxlbgnyyy1agwzgq57rxkgkm4riw82x2rvw7q")) (modules '((guix build utils))) (snippet '(begin From 9286c0f7e83f9145ff98146a54edc4aaa803fb4b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 10:12:57 +0100 Subject: [PATCH 195/411] gnu: hdf-java: Use INVOKE. * gnu/packages/maths.scm (hdf-java)[arguments]: Unconditionally return #T from build phases. --- gnu/packages/maths.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index ddb4672ff9..6dbb702929 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -937,7 +937,7 @@ (define-public hdf-java #:phases (modify-phases %standard-phases (add-before 'configure 'chdir-to-source - (lambda _ (chdir ,(string-append "hdfjava-" version)))) + (lambda _ (chdir ,(string-append "hdfjava-" version)) #t)) (add-before 'configure 'patch-build (lambda* (#:key inputs outputs #:allow-other-keys) (substitute* "configure" @@ -986,8 +986,8 @@ (define-public hdf-java #t)) (add-before 'check 'build-examples (lambda _ - (zero? (apply system* `("javac" - ,@(find-files "examples" ".*\\.java"))))))) + (apply invoke `("javac" + ,@(find-files "examples" ".*\\.java")))))) #:parallel-build? #f From 64dc8b0bfd1cd2ab473ef23c06dde02dd4353cf5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 10:13:46 +0100 Subject: [PATCH 196/411] gnu: hdf-java: Fix build. * gnu/packages/maths.scm (hdf-java)[arguments]: Fix copying from automake; substitute embedded hdf5 version number. --- gnu/packages/maths.scm | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 6dbb702929..6ebc82a200 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -953,10 +953,19 @@ (define-public hdf-java ;; Replace outdated config.sub and config.guess: (with-directory-excursion "config" (for-each (lambda (file) - (copy-file + (install-file (string-append (assoc-ref inputs "automake") - "/share/automake-1.15/" file) file)) + "/share/automake-" + ,(version-major+minor (package-version automake)) + "/" file) ".")) '("config.sub" "config.guess"))) + + ;; Fix embedded version number + (let ((hdf5version (list ,@(string-split (package-version hdf5) #\.)))) + (substitute* "hdf/hdf5lib/H5.java" + (("1, 8, 19") + (string-join hdf5version ", ")))) + (mkdir-p (string-append (assoc-ref outputs "out"))) ;; Set classpath for tests (let* ((build-dir (getcwd)) From 2a509880d4c543013c49fc45bbc63dd49b8d4a81 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 10:47:34 +0100 Subject: [PATCH 197/411] gnu: hdf-java: Adjust indentation. * gnu/packages/maths.scm (hdf-java): Adjust indentation. --- gnu/packages/maths.scm | 228 ++++++++++++++++++++--------------------- 1 file changed, 114 insertions(+), 114 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 6ebc82a200..a27633f30d 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -886,130 +886,130 @@ (define-public hdf5-1.10 (define-public hdf-java (package - (name "hdf-java") - (version "3.3.2") - (source - (origin - (method url-fetch) - (uri (string-append - "http://www.hdfgroup.org/ftp/HDF5/releases/HDF-JAVA/hdfjni-" - version "/src/CMake-hdfjava-" version ".tar.gz")) - (sha256 - (base32 "0m1gp2aspcblqzmpqbdpfp6giskws85ds6p5gz8sx7asyp7wznpr")) - (modules '((guix build utils))) - (snippet ; Make sure we don't use the bundled sources and binaries. - `(begin - (for-each delete-file - (list "SZip.tar.gz" "ZLib.tar.gz" "JPEG8d.tar.gz" - "HDF4.tar.gz" "HDF5.tar.gz")) - (delete-file-recursively ,(string-append "hdfjava-" version "/lib")) - #t)))) - (build-system gnu-build-system) - (native-inputs - `(("jdk" ,icedtea "jdk") - ("automake" ,automake) ; For up to date 'config.guess' and 'config.sub'. - ;; For tests: - ("hamcrest-core" ,java-hamcrest-core) - ("junit" ,java-junit) - ("slf4j-simple" ,java-slf4j-simple))) - (inputs - `(("hdf4" ,hdf4) - ("hdf5" ,hdf5) - ("zlib" ,zlib) - ("libjpeg" ,libjpeg) - ("slf4j-api" ,java-slf4j-api))) - (arguments - `(#:configure-flags - (list (string-append "--target=" ,(or (%current-target-system) (%current-system))) - (string-append "--with-jdk=" (assoc-ref %build-inputs "jdk") "/include," - (assoc-ref %build-inputs "jdk") "/lib" ) - (string-append "--with-hdf4=" (assoc-ref %build-inputs "hdf4") "/lib") - (string-append "--with-hdf5=" (assoc-ref %build-inputs "hdf5") "/lib")) + (name "hdf-java") + (version "3.3.2") + (source + (origin + (method url-fetch) + (uri (string-append + "http://www.hdfgroup.org/ftp/HDF5/releases/HDF-JAVA/hdfjni-" + version "/src/CMake-hdfjava-" version ".tar.gz")) + (sha256 + (base32 "0m1gp2aspcblqzmpqbdpfp6giskws85ds6p5gz8sx7asyp7wznpr")) + (modules '((guix build utils))) + (snippet ; Make sure we don't use the bundled sources and binaries. + `(begin + (for-each delete-file + (list "SZip.tar.gz" "ZLib.tar.gz" "JPEG8d.tar.gz" + "HDF4.tar.gz" "HDF5.tar.gz")) + (delete-file-recursively ,(string-append "hdfjava-" version "/lib")) + #t)))) + (build-system gnu-build-system) + (native-inputs + `(("jdk" ,icedtea "jdk") + ("automake" ,automake) ; For up to date 'config.guess' and 'config.sub'. + ;; For tests: + ("hamcrest-core" ,java-hamcrest-core) + ("junit" ,java-junit) + ("slf4j-simple" ,java-slf4j-simple))) + (inputs + `(("hdf4" ,hdf4) + ("hdf5" ,hdf5) + ("zlib" ,zlib) + ("libjpeg" ,libjpeg) + ("slf4j-api" ,java-slf4j-api))) + (arguments + `(#:configure-flags + (list (string-append "--target=" ,(or (%current-target-system) (%current-system))) + (string-append "--with-jdk=" (assoc-ref %build-inputs "jdk") "/include," + (assoc-ref %build-inputs "jdk") "/lib" ) + (string-append "--with-hdf4=" (assoc-ref %build-inputs "hdf4") "/lib") + (string-append "--with-hdf5=" (assoc-ref %build-inputs "hdf5") "/lib")) - #:make-flags - (list (string-append "HDFLIB=" (assoc-ref %build-inputs "hdf4") "/lib") - (string-append "HDF5LIB=" (assoc-ref %build-inputs "hdf5") "/lib") - (string-append "ZLIB=" (assoc-ref %build-inputs "zlib") "/lib/libz.so") - (string-append "JPEGLIB=" - (assoc-ref %build-inputs "libjpeg") "/lib/libjpeg.so") - "LLEXT=so") + #:make-flags + (list (string-append "HDFLIB=" (assoc-ref %build-inputs "hdf4") "/lib") + (string-append "HDF5LIB=" (assoc-ref %build-inputs "hdf5") "/lib") + (string-append "ZLIB=" (assoc-ref %build-inputs "zlib") "/lib/libz.so") + (string-append "JPEGLIB=" + (assoc-ref %build-inputs "libjpeg") "/lib/libjpeg.so") + "LLEXT=so") - #:phases - (modify-phases %standard-phases - (add-before 'configure 'chdir-to-source - (lambda _ (chdir ,(string-append "hdfjava-" version)) #t)) - (add-before 'configure 'patch-build - (lambda* (#:key inputs outputs #:allow-other-keys) - (substitute* "configure" - (("COPT=\"") "COPT=\"-O2 ") ; CFLAGS is ignored in Makefiles - (("/bin/cat") (which "cat"))) - ;; Set classpath for compilation - (substitute* '("hdf/hdf5lib/Makefile.in" - "hdf/hdf5lib/exceptions/Makefile.in" - "hdf/hdflib/Makefile.in") - (("\\$\\(TOP\\)/lib/slf4j-api-1\\.7\\.5\\.jar") - (string-append (assoc-ref inputs "slf4j-api") - "/share/java/slf4j-api.jar"))) - ;; Replace outdated config.sub and config.guess: - (with-directory-excursion "config" - (for-each (lambda (file) - (install-file - (string-append (assoc-ref inputs "automake") - "/share/automake-" - ,(version-major+minor (package-version automake)) - "/" file) ".")) - '("config.sub" "config.guess"))) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir-to-source + (lambda _ (chdir ,(string-append "hdfjava-" version)) #t)) + (add-before 'configure 'patch-build + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "configure" + (("COPT=\"") "COPT=\"-O2 ") ; CFLAGS is ignored in Makefiles + (("/bin/cat") (which "cat"))) + ;; Set classpath for compilation + (substitute* '("hdf/hdf5lib/Makefile.in" + "hdf/hdf5lib/exceptions/Makefile.in" + "hdf/hdflib/Makefile.in") + (("\\$\\(TOP\\)/lib/slf4j-api-1\\.7\\.5\\.jar") + (string-append (assoc-ref inputs "slf4j-api") + "/share/java/slf4j-api.jar"))) + ;; Replace outdated config.sub and config.guess: + (with-directory-excursion "config" + (for-each (lambda (file) + (install-file + (string-append (assoc-ref inputs "automake") + "/share/automake-" + ,(version-major+minor (package-version automake)) + "/" file) ".")) + '("config.sub" "config.guess"))) - ;; Fix embedded version number - (let ((hdf5version (list ,@(string-split (package-version hdf5) #\.)))) - (substitute* "hdf/hdf5lib/H5.java" - (("1, 8, 19") - (string-join hdf5version ", ")))) + ;; Fix embedded version number + (let ((hdf5version (list ,@(string-split (package-version hdf5) #\.)))) + (substitute* "hdf/hdf5lib/H5.java" + (("1, 8, 19") + (string-join hdf5version ", ")))) - (mkdir-p (string-append (assoc-ref outputs "out"))) - ;; Set classpath for tests - (let* ((build-dir (getcwd)) - (lib (string-append build-dir "/lib")) - (jhdf (string-append lib "/jhdf.jar")) - (jhdf5 (string-append lib "/jhdf5.jar")) - (testjars - (map (lambda (i) - (string-append (assoc-ref inputs i) - "/share/java/" i ".jar")) - '("junit" "hamcrest-core" "slf4j-api" "slf4j-simple"))) - (class-path - (string-join `("." ,build-dir ,jhdf ,jhdf5 ,@testjars) ":"))) + (mkdir-p (string-append (assoc-ref outputs "out"))) + ;; Set classpath for tests + (let* ((build-dir (getcwd)) + (lib (string-append build-dir "/lib")) + (jhdf (string-append lib "/jhdf.jar")) + (jhdf5 (string-append lib "/jhdf5.jar")) + (testjars + (map (lambda (i) + (string-append (assoc-ref inputs i) + "/share/java/" i ".jar")) + '("junit" "hamcrest-core" "slf4j-api" "slf4j-simple"))) + (class-path + (string-join `("." ,build-dir ,jhdf ,jhdf5 ,@testjars) ":"))) - (substitute* '("test/hdf5lib/Makefile.in" - "test/hdf5lib/junit.sh.in" - "examples/runExample.sh.in") - (("/usr/bin/test") - (string-append (assoc-ref inputs "coreutils") - "/bin/test")) - (("/usr/bin/uname") - (string-append (assoc-ref inputs "coreutils") - "/bin/uname")) - (("CLASSPATH=[^\n]*") - (string-append "CLASSPATH=" class-path))) - (setenv "CLASSPATH" class-path)) - #t)) - (add-before 'check 'build-examples - (lambda _ - (apply invoke `("javac" - ,@(find-files "examples" ".*\\.java")))))) + (substitute* '("test/hdf5lib/Makefile.in" + "test/hdf5lib/junit.sh.in" + "examples/runExample.sh.in") + (("/usr/bin/test") + (string-append (assoc-ref inputs "coreutils") + "/bin/test")) + (("/usr/bin/uname") + (string-append (assoc-ref inputs "coreutils") + "/bin/uname")) + (("CLASSPATH=[^\n]*") + (string-append "CLASSPATH=" class-path))) + (setenv "CLASSPATH" class-path)) + #t)) + (add-before 'check 'build-examples + (lambda _ + (apply invoke `("javac" + ,@(find-files "examples" ".*\\.java")))))) - #:parallel-build? #f + #:parallel-build? #f - #:parallel-tests? #f )) - (home-page "https://support.hdfgroup.org/products/java") - (synopsis "Java interface for the HDF4 and HDF5 libraries") - (description "Java HDF Interface (JHI) and Java HDF5 Interface (JHI5) use + #:parallel-tests? #f )) + (home-page "https://support.hdfgroup.org/products/java") + (synopsis "Java interface for the HDF4 and HDF5 libraries") + (description "Java HDF Interface (JHI) and Java HDF5 Interface (JHI5) use the Java Native Interface to wrap the HDF4 and HDF5 libraries, which are implemented in C.") - ;; BSD-style license: - (license (license:x11-style - "https://support.hdfgroup.org/ftp/HDF5/hdf-java\ + ;; BSD-style license: + (license (license:x11-style + "https://support.hdfgroup.org/ftp/HDF5/hdf-java\ /current/src/unpacked/COPYING")))) (define-public hdf-eos2 From 5f1e31094d390a85bb91e8df1efbcb2dd2e39cf4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 11:28:38 +0100 Subject: [PATCH 198/411] gnu: trim-galore: Fix test for Python. * gnu/packages/bioinformatics.scm (trim-galore)[arguments]: Replace "configure" phase to skip ill-advised test for Python. --- gnu/packages/bioinformatics.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 1f2991418a..3f94ef54cd 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10896,7 +10896,15 @@ (define-public trim-galore `(#:tests? #f ; no tests #:phases (modify-phases %standard-phases - (delete 'configure) + (replace 'configure + (lambda _ + ;; Trim Galore tries to figure out what version of Python + ;; cutadapt is using by looking at the shebang. Of course that + ;; doesn't work, because cutadapt is wrapped in a shell script. + (substitute* "trim_galore" + (("my \\$python_return.*") + "my $python_return = \"Python 3.999\";\n")) + #t)) (delete 'build) (add-after 'unpack 'hardcode-tool-references (lambda* (#:key inputs #:allow-other-keys) From 58d8225ddba23245421bdc0cc9d8b138bc23b0ea Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 11:32:08 +0100 Subject: [PATCH 199/411] gnu: trim-galore: Add pigz. * gnu/packages/bioinformatics.scm (trim-galore)[inputs]: Add pigz. [arguments]: Embed reference to pigz. --- gnu/packages/bioinformatics.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3f94ef54cd..a0b44e5bbb 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10920,7 +10920,11 @@ (define-public trim-galore (("\"gunzip") (string-append "\"" (assoc-ref inputs "gzip") - "/bin/gunzip"))) + "/bin/gunzip")) + (("\"pigz") + (string-append "\"" + (assoc-ref inputs "pigz") + "/bin/pigz"))) #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) @@ -10932,6 +10936,7 @@ (define-public trim-galore (inputs `(("gzip" ,gzip) ("perl" ,perl) + ("pigz" ,pigz) ("cutadapt" ,cutadapt))) (native-inputs `(("unzip" ,unzip))) From 37099f58442419ebd847616ffe21b19c4b655a41 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Wed, 27 Mar 2019 11:32:39 +0100 Subject: [PATCH 200/411] gnu: Add emacs-webfeeder. * gnu/packages/emacs-xyz.scm (emacs-webfeeder): New variable. --- gnu/packages/emacs-xyz.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 442bc3849c..69cfdd954a 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -14055,3 +14055,26 @@ (define-public emacs-helm-wikipedia "This package provides an Emacs Helm interface for search suggestions and article extracts for Wikipedia.") (license license:gpl3+)))) + +(define-public emacs-webfeeder + (package + (name "emacs-webfeeder") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://elpa.gnu.org/packages/webfeeder-" + version + ".tar")) + (sha256 + (base32 + "06y5vxw9m6pmbrzb8v2i3w9dnhgqxz06vyx1knmgi9cczlrj4a64")))) + (build-system emacs-build-system) + (home-page "https://gitlab.com/Ambrevar/emacs-webfeeder") + (synopsis "Build RSS and Atom webfeeds from HTML files") + (description + "Webfeeder is an Emacs library to generate RSS and Atom feeds from HTML +files. The various elements of the HTML input are parsed with customizable +functions (e.g. @code{webfeeder-title-function}).") + (license license:gpl3+))) From 54043bf23f9b1a012f26082f57286862c5029865 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 26 Mar 2019 21:58:41 +0100 Subject: [PATCH 201/411] installer: Emit 'bootloader' field before 'swap-devices'. * gnu/installer/parted.scm (user-partitions->configuration): Move 'bootloader' section above 'swap-devices'. --- gnu/installer/parted.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scm index 24d048c04c..b9eaa79458 100644 --- a/gnu/installer/parted.scm +++ b/gnu/installer/parted.scm @@ -1270,10 +1270,10 @@ (define (user-partitions->configuration user-partitions) (swap-devices (map user-partition-file-name swap-user-partitions)) (encrypted-partitions (filter user-partition-crypt-label user-partitions))) - `(,@(if (null? swap-devices) + `((bootloader ,@(bootloader-configuration user-partitions)) + ,@(if (null? swap-devices) '() `((swap-devices (list ,@swap-devices)))) - (bootloader ,@(bootloader-configuration user-partitions)) ,@(if (null? encrypted-partitions) '() `((mapped-devices From 50247be5f4633a4c3446cddbd3515d027853ec0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 26 Mar 2019 23:06:51 +0100 Subject: [PATCH 202/411] installer: Produce an 'initrd-modules' field if needed. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/installer/parted.scm (root-user-partition?): New procedure. (bootloader-configuration): Use it. (user-partition-missing-modules, initrd-configuration): New procedures. (user-partitions->configuration): Call 'initrd-configuration'.o * gnu/installer.scm (not-config?): Rename to... (module-to-import?): ... this. Add cases to exclude non-installer and non-build (gnu …) modules. (installer-program)[installer-builder]: Add GUIX to the extension list. --- gnu/installer.scm | 20 +++++++++++------- gnu/installer/parted.scm | 45 +++++++++++++++++++++++++++++++++------- 2 files changed, 51 insertions(+), 14 deletions(-) diff --git a/gnu/installer.scm b/gnu/installer.scm index 02f26eead3..584ca3842f 100644 --- a/gnu/installer.scm +++ b/gnu/installer.scm @@ -43,13 +43,17 @@ (define-module (gnu installer) #:use-module (srfi srfi-1) #:export (installer-program)) -(define not-config? - ;; Select (guix …) and (gnu …) modules, except (guix config). +(define module-to-import? + ;; Return true for modules that should be imported. For (gnu system …) and + ;; (gnu packages …) modules, we simply add the whole 'guix' package via + ;; 'with-extensions' (to avoid having to rebuild it all), which is why these + ;; modules are excluded here. (match-lambda (('guix 'config) #f) - (('guix rest ...) #t) - (('gnu rest ...) #t) - (rest #f))) + (('gnu 'installer _ ...) #t) + (('gnu 'build _ ...) #t) + (('guix 'build _ ...) #t) + (_ #f))) (define* (build-compiled-file name locale-builder) "Return a file-like object that evalutes the gexp LOCALE-BUILDER and store @@ -296,13 +300,15 @@ (define modules "gnu/installer")) (define installer-builder + ;; Note: Include GUIX as an extension to get all the (gnu system …), (gnu + ;; packages …), etc. modules. (with-extensions (list guile-gcrypt guile-newt guile-parted guile-bytestructures - guile-json) + guile-json guile-git guix) (with-imported-modules `(,@(source-module-closure `(,@modules (guix build utils)) - #:select? not-config?) + #:select? module-to-import?) ((guix config) => ,(make-config.scm))) #~(begin (use-modules (gnu installer record) diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scm index b9eaa79458..7cc2217cbe 100644 --- a/gnu/installer/parted.scm +++ b/gnu/installer/parted.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018, 2019 Mathieu Othacehe +;;; Copyright © 2019 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +25,10 @@ (define-module (gnu installer parted) #:use-module ((gnu build file-systems) #:select (read-partition-uuid read-luks-partition-uuid)) + #:use-module ((gnu build linux-modules) + #:select (missing-modules)) + #:use-module ((gnu system linux-initrd) + #:select (%base-initrd-modules)) #:use-module (guix build syscalls) #:use-module (guix build utils) #:use-module (guix records) @@ -1243,15 +1248,16 @@ (define (user-partition->mapped-device user-partition) (target ,label) (type luks-device-mapping)))) +(define (root-user-partition? partition) + "Return true if PARTITION is the root partition." + (let ((mount-point (user-partition-mount-point partition))) + (and mount-point + (string=? mount-point "/")))) + (define (bootloader-configuration user-partitions) "Return the bootloader configuration field for USER-PARTITIONS." - (let* ((root-partition - (find (lambda (user-partition) - (let ((mount-point - (user-partition-mount-point user-partition))) - (and mount-point - (string=? mount-point "/")))) - user-partitions)) + (let* ((root-partition (find root-user-partition? + user-partitions)) (root-partition-disk (user-partition-disk-file-name root-partition))) `((bootloader-configuration ,@(if (efi-installation?) @@ -1264,6 +1270,30 @@ (define (bootloader-configuration user-partitions) ;; right above. (keyboard-layout keyboard-layout))))) +(define (user-partition-missing-modules user-partitions) + "Return the list of kernel modules missing from the default set of kernel +modules to access USER-PARTITIONS." + (let ((devices (filter user-partition-crypt-label user-partitions)) + (root (find root-user-partition? user-partitions))) + (delete-duplicates + (append-map (lambda (device) + (catch 'system-error + (lambda () + (missing-modules device %base-initrd-modules)) + (const '()))) + (delete-duplicates + (map user-partition-file-name + (cons root devices))))))) + +(define (initrd-configuration user-partitions) + "Return an 'initrd-modules' field with everything needed for +USER-PARTITIONS, or return nothing." + (match (user-partition-missing-modules user-partitions) + (() + '()) + ((modules ...) + `((initrd-modules ',modules))))) + (define (user-partitions->configuration user-partitions) "Return the configuration field for USER-PARTITIONS." (let* ((swap-user-partitions (find-swap-user-partitions user-partitions)) @@ -1271,6 +1301,7 @@ (define (user-partitions->configuration user-partitions) (encrypted-partitions (filter user-partition-crypt-label user-partitions))) `((bootloader ,@(bootloader-configuration user-partitions)) + ,@(initrd-configuration user-partitions) ,@(if (null? swap-devices) '() `((swap-devices (list ,@swap-devices)))) From c73e554c3fe609ee2d66628f7f09cf7fa6c8d4a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 27 Mar 2019 09:50:24 +0100 Subject: [PATCH 203/411] installer: Ask for confirmation before formatting partitions. * gnu/installer/newt/page.scm (run-confirmation-page): New procedure. * gnu/installer/newt/partition.scm (draw-formatting-page): Call it. --- gnu/installer/newt/page.scm | 38 ++++++++++++++++++++++++++++++++ gnu/installer/newt/partition.scm | 8 ++++++- 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/gnu/installer/newt/page.scm b/gnu/installer/newt/page.scm index 23fbfcce76..8b3fd488e9 100644 --- a/gnu/installer/newt/page.scm +++ b/gnu/installer/newt/page.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Mathieu Othacehe +;;; Copyright © 2019 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +30,7 @@ (define-module (gnu installer newt page) draw-connecting-page run-input-page run-error-page + run-confirmation-page run-listbox-selection-page run-scale-page run-checkbox-tree-page @@ -141,6 +143,42 @@ (define (run-error-page text title) (newt-set-color COLORSET-ROOT "white" "blue") (destroy-form-and-pop form))) +(define* (run-confirmation-page text title + #:key (exit-button-procedure (const #f))) + "Run a page to inform the user of an error. The page contains the given TEXT +to explain the error and an \"OK\" button to acknowledge the error. The title +of the page is set to TITLE." + (let* ((text-box + (make-reflowed-textbox -1 -1 text 40 + #:flags FLAG-BORDER)) + (ok-button (make-button -1 -1 (G_ "Continue"))) + (exit-button (make-button -1 -1 (G_ "Exit"))) + (grid (vertically-stacked-grid + GRID-ELEMENT-COMPONENT text-box + GRID-ELEMENT-SUBGRID + (horizontal-stacked-grid + GRID-ELEMENT-COMPONENT ok-button + GRID-ELEMENT-COMPONENT exit-button))) + (form (make-form))) + + (add-form-to-grid grid form #t) + (make-wrapped-grid-window grid title) + + (receive (exit-reason argument) + (run-form form) + (dynamic-wind + (const #t) + (lambda () + (case exit-reason + ((exit-component) + (cond + ((components=? argument ok-button) + #t) + ((components=? argument exit-button) + (exit-button-procedure)))))) + (lambda () + (destroy-form-and-pop form)))))) + (define* (run-listbox-selection-page #:key info-text title diff --git a/gnu/installer/newt/partition.scm b/gnu/installer/newt/partition.scm index d4c91edc66..373aedd24c 100644 --- a/gnu/installer/newt/partition.scm +++ b/gnu/installer/newt/partition.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Mathieu Othacehe +;;; Copyright © 2019 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,7 +54,12 @@ (define (run-scheme-page) (car result))) (define (draw-formatting-page) - "Draw a page to indicate partitions are being formated." + "Draw a page asking for confirmation, and then indicating that partitions +are being formatted." + (run-confirmation-page (G_ "We are about to format your hard disk. All \ +its data will be lost. Do you wish to continue?") + (G_ "Format disk?") + #:exit-button-procedure button-exit-action) (draw-info-page (format #f (G_ "Partition formatting is in progress, please wait.")) (G_ "Preparing partitions"))) From 1c155ec76ba36b3df9879cecc3b120e38cb745e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 27 Mar 2019 10:09:59 +0100 Subject: [PATCH 204/411] =?UTF-8?q?installer:=20Use=20the=20(service=20?= =?UTF-8?q?=E2=80=A6)=20form=20for=20MATE.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/installer/services.scm (%desktop-environments): Use 'mate-desktop-service-type' for MATE. --- gnu/installer/services.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/installer/services.scm b/gnu/installer/services.scm index ed44b87682..f263ecc84f 100644 --- a/gnu/installer/services.scm +++ b/gnu/installer/services.scm @@ -44,7 +44,7 @@ (define %desktop-environments (snippet '(xfce-desktop-service))) (desktop-environment (name "MATE") - (snippet '(mate-desktop-service))) + (snippet '(service mate-desktop-service-type))) (desktop-environment (name "Enlightenment") (snippet '(service enlightenment-desktop-service-type))))) From ee05cc7fe353c1c9b45062343746ac215a29fed5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 27 Mar 2019 10:14:11 +0100 Subject: [PATCH 205/411] services: Deprecate 'gnome-desktop-service'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/services/desktop.scm (gnome-desktop-service-type)[default-value]: New field. (gnome-desktop-service): Deprecate. * gnu/installer/services.scm (%desktop-environments): Use the (service …) form for GNOME. * gnu/system/examples/desktop.tmpl: Likewise. * doc/guix.texi (Desktop Services): Adjust accordingly. --- doc/guix.texi | 28 ++++++++++++++++++++-------- gnu/installer/services.scm | 2 +- gnu/services/desktop.scm | 5 ++++- gnu/system/examples/desktop.tmpl | 2 +- 4 files changed, 26 insertions(+), 11 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 7d80c00530..d99b7fd933 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -14420,7 +14420,7 @@ The @var{%desktop-services} variable can be used as the @code{services} field of an @code{operating-system} declaration (@pxref{operating-system Reference, @code{services}}). -Additionally, the @code{gnome-desktop-service}, +Additionally, the @code{gnome-desktop-service-type}, @code{xfce-desktop-service}, @code{mate-desktop-service-type} and @code{enlightenment-desktop-service-type} procedures can add GNOME, XFCE, MATE and/or Enlightenment to a system. To ``add GNOME'' means that system-level @@ -14428,7 +14428,7 @@ services like the backlight adjustment helpers and the power management utilities are added to the system, extending @code{polkit} and @code{dbus} appropriately, allowing GNOME to operate with elevated privileges on a limited number of special-purpose system interfaces. Additionally, -adding a service made by @code{gnome-desktop-service} adds the GNOME +adding a service made by @code{gnome-desktop-service-type} adds the GNOME metapackage to the system profile. Likewise, adding the XFCE service not only adds the @code{xfce} metapackage to the system profile, but it also gives the Thunar file manager the ability to open a ``root-mode'' @@ -14452,11 +14452,23 @@ also try starting GNOME on Wayland manually from a TTY with the command ``XDG_SESSION_TYPE=wayland exec dbus-run-session gnome-session``. Currently only GNOME has support for Wayland. -@deffn {Scheme Procedure} gnome-desktop-service -Return a service that adds the @code{gnome} package to the system -profile, and extends polkit with the actions from -@code{gnome-settings-daemon}. -@end deffn +@defvr {Scheme Variable} gnome-desktop-service-type +This is the type of the service that adds the @uref{https://www.gnome.org, +GNOME} desktop environment. Its value is a @code{gnome-desktop-configuration} +object (see below.) + +This service adds the @code{gnome} package to the system profile, and extends +polkit with the actions from @code{gnome-settings-daemon}. +@end defvr + +@deftp {Data Type} gnome-desktop-configuration +Configuration record for the GNOME desktop environment. + +@table @asis +@item @code{gnome} (default @code{gnome}) +The GNOME package to use. +@end table +@end deftp @deffn {Scheme Procedure} xfce-desktop-service Return a service that adds the @code{xfce} package to the system profile, @@ -14508,7 +14520,7 @@ them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto (operating-system ... ;; cons* adds items to the list given as its last argument. - (services (cons* (gnome-desktop-service) + (services (cons* (service gnome-desktop-service-type) (xfce-desktop-service) %desktop-services)) ...) diff --git a/gnu/installer/services.scm b/gnu/installer/services.scm index f263ecc84f..e719da083d 100644 --- a/gnu/installer/services.scm +++ b/gnu/installer/services.scm @@ -38,7 +38,7 @@ (define %desktop-environments (list (desktop-environment (name "GNOME") - (snippet '(gnome-desktop-service))) + (snippet '(service gnome-desktop-service-type))) (desktop-environment (name "Xfce") (snippet '(xfce-desktop-service))) diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index b912c208cc..9c9472e1a2 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -884,9 +884,12 @@ (define gnome-desktop-service-type (service-extension profile-service-type (compose list gnome-package)))) + (default-value (gnome-desktop-configuration)) (description "Run the GNOME desktop environment."))) -(define* (gnome-desktop-service #:key (config (gnome-desktop-configuration))) +(define-deprecated (gnome-desktop-service #:key (config + (gnome-desktop-configuration))) + gnome-desktop-service-type "Return a service that adds the @code{gnome} package to the system profile, and extends polkit with the actions from @code{gnome-settings-daemon}." (service gnome-desktop-service-type config)) diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index bc5cbd6e6b..fe32bc58b5 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -57,7 +57,7 @@ ;; screen with F1. Use the "desktop" services, which ;; include the X11 log-in service, networking with ;; NetworkManager, and more. - (services (append (list (gnome-desktop-service) + (services (append (list (service gnome-desktop-service-type) (xfce-desktop-service)) %desktop-services)) From 391e0d65d7129d53c025963d2758724e75626eb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 27 Mar 2019 10:41:14 +0100 Subject: [PATCH 206/411] services: Deprecate 'xfce-desktop-service'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/services/desktop.scm (xfce-desktop-service-type)[default-value] [description]: New fields. (xfce-desktop-service): Deprecate. * gnu/system/examples/desktop.tmpl: Use the (service …) form. * gnu/installer/services.scm (%desktop-environments): Add TODO comment. * doc/guix.texi (Desktop Services): Adjust accordingly, and fix spelling of "Xfce" throughout. --- doc/guix.texi | 37 +++++++++++++++++++++----------- gnu/installer/services.scm | 2 ++ gnu/services/desktop.scm | 9 +++++--- gnu/system/examples/desktop.tmpl | 2 +- 4 files changed, 34 insertions(+), 16 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index d99b7fd933..1bbed7a72d 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -14395,7 +14395,7 @@ The @code{(gnu services desktop)} module provides services that are usually useful in the context of a ``desktop'' setup---that is, on a machine running a graphical display server, possibly with graphical user interfaces, etc. It also defines services that provide specific desktop -environments like GNOME, XFCE or MATE. +environments like GNOME, Xfce or MATE. To simplify things, the module defines a variable containing the set of services that users typically expect on a machine with a graphical @@ -14422,14 +14422,14 @@ Reference, @code{services}}). Additionally, the @code{gnome-desktop-service-type}, @code{xfce-desktop-service}, @code{mate-desktop-service-type} and -@code{enlightenment-desktop-service-type} procedures can add GNOME, XFCE, MATE +@code{enlightenment-desktop-service-type} procedures can add GNOME, Xfce, MATE and/or Enlightenment to a system. To ``add GNOME'' means that system-level services like the backlight adjustment helpers and the power management utilities are added to the system, extending @code{polkit} and @code{dbus} appropriately, allowing GNOME to operate with elevated privileges on a limited number of special-purpose system interfaces. Additionally, adding a service made by @code{gnome-desktop-service-type} adds the GNOME -metapackage to the system profile. Likewise, adding the XFCE service +metapackage to the system profile. Likewise, adding the Xfce service not only adds the @code{xfce} metapackage to the system profile, but it also gives the Thunar file manager the ability to open a ``root-mode'' file management window, if the user authenticates using the @@ -14470,12 +14470,25 @@ The GNOME package to use. @end table @end deftp -@deffn {Scheme Procedure} xfce-desktop-service -Return a service that adds the @code{xfce} package to the system profile, -and extends polkit with the ability for @code{thunar} to manipulate the -file system as root from within a user session, after the user has -authenticated with the administrator's password. -@end deffn +@defvr {Scheme Variable} xfce-desktop-service-type +This is the type of a service to run the @uref{Xfce, https://xfce.org/} +desktop environment. Its value is an @code{xfce-desktop-configuration} object +(see below.) + +This service that adds the @code{xfce} package to the system profile, and +extends polkit with the ability for @code{thunar} to manipulate the file +system as root from within a user session, after the user has authenticated +with the administrator's password. +@end defvr + +@deftp {Data Type} xfce-desktop-configuration +Configuration record for the Xfce desktop environment. + +@table @asis +@item @code{xfce} (default @code{xfce}) +The Xfce package to use. +@end table +@end deftp @deffn {Scheme Variable} mate-desktop-service-type This is the type of the service that runs the @uref{https://mate-desktop.org/, @@ -14508,9 +14521,9 @@ The enlightenment package to use. @end table @end deftp -Because the GNOME, XFCE and MATE desktop services pull in so many packages, +Because the GNOME, Xfce and MATE desktop services pull in so many packages, the default @code{%desktop-services} variable doesn't include any of -them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto +them by default. To add GNOME, Xfce or MATE, just @code{cons} them onto @code{%desktop-services} in the @code{services} field of your @code{operating-system}: @@ -14521,7 +14534,7 @@ them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto ... ;; cons* adds items to the list given as its last argument. (services (cons* (service gnome-desktop-service-type) - (xfce-desktop-service) + (service xfce-desktop-service) %desktop-services)) ...) @end example diff --git a/gnu/installer/services.scm b/gnu/installer/services.scm index e719da083d..2b6625f6af 100644 --- a/gnu/installer/services.scm +++ b/gnu/installer/services.scm @@ -41,6 +41,8 @@ (define %desktop-environments (snippet '(service gnome-desktop-service-type))) (desktop-environment (name "Xfce") + ;; TODO: Use 'xfce-desktop-service-type' when the 'guix' package provides + ;; it with a default value. (snippet '(xfce-desktop-service))) (desktop-environment (name "MATE") diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 9c9472e1a2..da6291036f 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -945,10 +945,13 @@ (define xfce-desktop-service-type "thunar") xfce-package)) (service-extension profile-service-type - (compose list - xfce-package)))))) + (compose list xfce-package)))) + (default-value (xfce-desktop-configuration)) + (description "Run the Xfce desktop environment."))) -(define* (xfce-desktop-service #:key (config (xfce-desktop-configuration))) +(define-deprecated (xfce-desktop-service #:key (config + (xfce-desktop-configuration))) + xfce-desktop-service-type "Return a service that adds the @code{xfce} package to the system profile, and extends polkit with the ability for @code{thunar} to manipulate the file system as root from within a user session, after the user has authenticated diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index fe32bc58b5..d0e3ff56e8 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -58,7 +58,7 @@ ;; include the X11 log-in service, networking with ;; NetworkManager, and more. (services (append (list (service gnome-desktop-service-type) - (xfce-desktop-service)) + (service xfce-desktop-service)) %desktop-services)) ;; Allow resolution of '.local' host names with mDNS. From 45c0d1d790f01ebc020fc4b2787a6abcdaa3f383 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 27 Mar 2019 11:51:18 +0100 Subject: [PATCH 207/411] vm: Ask QEMU for more RAM in the VM that makes ISO9660 images. * gnu/system/vm.scm (iso9660-image): Pass #:memory-size to 'expression->derivation-in-linux-vm'. --- gnu/system/vm.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 667624621f..db9b1707d7 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -321,7 +321,10 @@ (define schema #:make-disk-image? #f #:single-file-output? #t - #:references-graphs inputs)) + #:references-graphs inputs + + ;; Xorriso seems to be quite memory-hungry, so increase the VM's RAM size. + #:memory-size 512)) (define* (qemu-image #:key (name "qemu-image") From 9e5f2060ad9204def8d1eb249f053f1fd0bbf212 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 27 Mar 2019 11:52:47 +0100 Subject: [PATCH 208/411] scripts: Skip 'guix pull' suggestion when running code from a checkout. * guix/scripts.scm (warn-about-old-distro): Do not warn when GUIX_UNINSTALLED is set. --- guix/scripts.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/guix/scripts.scm b/guix/scripts.scm index 75d801a466..e4b11d295d 100644 --- a/guix/scripts.scm +++ b/guix/scripts.scm @@ -173,7 +173,8 @@ (define age "Your Guix installation is ~a days old.\n" (seconds->days age)) (seconds->days age))) - (when (or (not age) (>= age old)) + (when (and (or (not age) (>= age old)) + (not (getenv "GUIX_UNINSTALLED"))) (warning (G_ "Consider running 'guix pull' followed by '~a' to get up-to-date packages and security updates.\n") suggested-command) From 18c51cf3d3dff9d6657049356c96e56eacdc8275 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 14:43:08 +0100 Subject: [PATCH 209/411] gnu: Add r-xyz. * gnu/packages/cran.scm (r-xyz): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 557c166d37..31f3d3f721 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12943,3 +12943,28 @@ (define-public r-svmisc path for temporary variables you do not want to @code{save()} or @code{load()}; test the current platform; showing progress bars, etc.") (license license:gpl2))) + +(define-public r-xyz + (package + (name "r-xyz") + (version "0.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "xyz" version)) + (sha256 + (base32 + "13w4sb4pvgciwr8wsz785dafj2k2kpx7znz46r5d32wx88vkycp4")))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcpp" ,r-rcpp))) + (home-page "https://cran.r-project.org/web/packages/xyz/") + (synopsis "Algorithm for fast interaction search in high-dimensional data") + (description + "High dimensional interaction search by brute force requires a quadratic +computational cost in the number of variables. The xyz algorithm provably +finds strong interactions in almost linear time. For details of the algorithm +see: G. Thanei, N. Meinshausen and R. Shah (2016). The xyz algorithm for fast +interaction search in high-dimensional data.") + ;; Any version of the GPL. + (license license:gpl2+))) From 1ee3d2dcb8892b2ed1a0212fdd6ac2c47f2c8da2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 27 Mar 2019 14:42:07 +0100 Subject: [PATCH 210/411] upstream: 'package-update' returns the object. Fixes a regression introduced in abd4d6b33dba4de228e90ad15a8efb456fcf7b6e, where CHANGES would no longer be a thunk. Reported by Ricardo Wurmus. * guix/upstream.scm (package-update/url-fetch): Return SOURCE as the third value instead of CHANGES. * guix/scripts/refresh.scm (update-package): Adjust accordingly. --- guix/scripts/refresh.scm | 4 ++-- guix/upstream.scm | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/guix/scripts/refresh.scm b/guix/scripts/refresh.scm index 5b0f345cde..6d77e2642b 100644 --- a/guix/scripts/refresh.scm +++ b/guix/scripts/refresh.scm @@ -297,7 +297,7 @@ (define* (update-package store package updaters values: 'interactive' (default), 'always', and 'never'. When WARN? is true, warn about packages that have no matching updater." (if (lookup-updater package updaters) - (let-values (((version tarball changes) + (let-values (((version tarball source) (package-update store package updaters #:key-download key-download)) ((loc) @@ -330,7 +330,7 @@ (define* (update-package store package updaters (G_ "~a: consider removing this propagated input: ~a~%"))) (package-name package) (upstream-input-change-name change))) - (changes)) + (upstream-source-input-changes source)) (let ((hash (call-with-input-file tarball port-sha256))) (update-package-source package version hash))) diff --git a/guix/upstream.scm b/guix/upstream.scm index 55683dd9b7..2c70b3422d 100644 --- a/guix/upstream.scm +++ b/guix/upstream.scm @@ -344,10 +344,10 @@ (define (find2 pred lst1 lst2) (define* (package-update/url-fetch store package source #:key key-download) - "Return the version, tarball, and input changes needed to update PACKAGE to + "Return the version, tarball, and SOURCE, to update PACKAGE to SOURCE, an ." (match source - (($ _ version urls signature-urls changes) + (($ _ version urls signature-urls) (let*-values (((archive-type) (match (and=> (package-source package) origin-uri) ((? string? uri) @@ -371,7 +371,7 @@ (define* (package-update/url-fetch store package source (or signature-urls (circular-list #f))))) (let ((tarball (download-tarball store url signature-url #:key-download key-download))) - (values version tarball changes)))))) + (values version tarball source)))))) (define %method-updates ;; Mapping of origin methods to source update procedures. From 42314ffa072f31cc1cb44df38b1f8fcca19d9d3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 27 Mar 2019 14:56:23 +0100 Subject: [PATCH 211/411] refresh: Update the source code URL. Reported by Tobias Geerinckx-Rice in . * guix/upstream.scm (update-package-source): Take 'source' instead of 'version' as the second argument. [update-expression]: Change to take 'replacements', a list of replacement pairs. Compute OLD-URL and NEW-URL and replace the dirname of the OLD-URL with that of NEW-URL. * guix/scripts/refresh.scm (update-package): Adjust call to 'update-package-source' accordingly. --- guix/scripts/refresh.scm | 2 +- guix/upstream.scm | 62 +++++++++++++++++++++++++++------------- 2 files changed, 43 insertions(+), 21 deletions(-) diff --git a/guix/scripts/refresh.scm b/guix/scripts/refresh.scm index 6d77e2642b..dd7026a6a4 100644 --- a/guix/scripts/refresh.scm +++ b/guix/scripts/refresh.scm @@ -333,7 +333,7 @@ (define* (update-package store package updaters (upstream-source-input-changes source)) (let ((hash (call-with-input-file tarball port-sha256))) - (update-package-source package version hash))) + (update-package-source package source hash))) (warning (G_ "~a: version ~a could not be \ downloaded and authenticated; not updating~%") (package-name package) version)))) diff --git a/guix/upstream.scm b/guix/upstream.scm index 2c70b3422d..1326b3db95 100644 --- a/guix/upstream.scm +++ b/guix/upstream.scm @@ -39,6 +39,7 @@ (define-module (guix upstream) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) + #:use-module (rnrs bytevectors) #:use-module (ice-9 match) #:use-module (ice-9 regex) #:export (upstream-source @@ -404,36 +405,57 @@ (define* (package-update store package updaters (#f (values #f #f #f)))) -(define (update-package-source package version hash) - "Modify the source file that defines PACKAGE to refer to VERSION, -whose tarball has SHA256 HASH (a bytevector). Return the new version string -if an update was made, and #f otherwise." - (define (update-expression expr old-version version old-hash hash) - ;; Update package expression EXPR, replacing occurrences OLD-VERSION by - ;; VERSION and occurrences of OLD-HASH by HASH (base32 representation - ;; thereof). - (let ((old-hash (bytevector->nix-base32-string old-hash)) - (hash (bytevector->nix-base32-string hash))) - (string-replace-substring - (string-replace-substring expr old-hash hash) - old-version version))) +(define* (update-package-source package source hash) + "Modify the source file that defines PACKAGE to refer to SOURCE, an + whose tarball has SHA256 HASH (a bytevector). Return the +new version string if an update was made, and #f otherwise." + (define (update-expression expr replacements) + ;; Apply REPLACEMENTS to package expression EXPR, a string. REPLACEMENTS + ;; must be a list of replacement pairs, either bytevectors or strings. + (fold (lambda (replacement str) + (match replacement + (((? bytevector? old-bv) . (? bytevector? new-bv)) + (string-replace-substring + str + (bytevector->nix-base32-string old-bv) + (bytevector->nix-base32-string new-bv))) + ((old . new) + (string-replace-substring str old new)))) + expr + replacements)) (let ((name (package-name package)) + (version (upstream-source-version source)) (version-loc (package-field-location package 'version))) (if version-loc (let* ((loc (package-location package)) (old-version (package-version package)) (old-hash (origin-sha256 (package-source package))) + (old-url (match (origin-uri (package-source package)) + ((? string? url) url) + (_ #f))) + (new-url (match (upstream-source-urls source) + ((first _ ...) first))) (file (and=> (location-file loc) (cut search-path %load-path <>)))) (if file - (and (edit-expression - ;; Be sure to use absolute filename. - (assq-set! (location->source-properties loc) - 'filename file) - (cut update-expression <> - old-version version old-hash hash)) - version) + ;; Be sure to use absolute filename. Replace the URL directory + ;; when OLD-URL is available; this is useful notably for + ;; mirror://cpan/ URLs where the directory may change as a + ;; function of the person who uploads the package. Note that + ;; package definitions usually concatenate fragments of the URL, + ;; which is why we only attempt to replace a subset of the URL. + (let ((properties (assq-set! (location->source-properties loc) + 'filename file)) + (replacements `((,old-version . ,version) + (,old-hash . ,hash) + ,@(if (and old-url new-url) + `((,(dirname old-url) . + ,(dirname new-url))) + '())))) + (and (edit-expression properties + (cut update-expression <> replacements)) + version)) (begin (warning (G_ "~a: could not locate source file") (location-file loc)) From 06013a45aab44a6d3febc81f333f8b12c9cab9e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 27 Mar 2019 14:58:59 +0100 Subject: [PATCH 212/411] gnu: emacs-debbugs: Update to 0.17. * gnu/packages/emacs-xyz.scm (emacs-debbugs): Update to 0.17. --- gnu/packages/emacs-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 69cfdd954a..2ce9e7526b 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -2622,14 +2622,14 @@ (define-public emacs-ob-ipython (define-public emacs-debbugs (package (name "emacs-debbugs") - (version "0.16") + (version "0.17") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/debbugs-" version ".tar")) (sha256 (base32 - "0y3bq803c7820h15g66d1648skxfhlfa2v6vincj6xk5ssp44s9p")))) + "0zclh2nxj5p10n214sxyxy3ca07l5s9p5spk0xp1smr6nzn0w7gb")))) (build-system emacs-build-system) (arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$"))) (propagated-inputs From 81df4e1e98a1a2eabc23951775f42bcdac9ceeaa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:20:12 +0100 Subject: [PATCH 213/411] gnu: Add r-rttf2pt1. * gnu/packages/cran.scm (r-rttf2pt1): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 31f3d3f721..88ec491f02 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12968,3 +12968,27 @@ (define-public r-xyz interaction search in high-dimensional data.") ;; Any version of the GPL. (license license:gpl2+))) + +(define-public r-rttf2pt1 + (package + (name "r-rttf2pt1") + (version "1.3.7") + (source + (origin + (method url-fetch) + (uri (cran-uri "Rttf2pt1" version)) + (sha256 + (base32 + "12hf9r3mhjr9sawdvf7qhjf1zph2q64f77i81jwvy7awidbm0kja")))) + (properties `((upstream-name . "Rttf2pt1"))) + (build-system r-build-system) + (home-page "https://github.com/wch/Rttf2pt1") + (synopsis "Font conversion utility") + (description + "This package contains the program @code{ttf2pt1}, for use with the +@code{extrafont} package.") + ;; Most of the files are covered under the Expat license. Some files are + ;; covered under BSD-3. Deviations for individual files are recorded in + ;; the LICENSE file. + (license (list license:bsd-3 license:expat + (license:non-copyleft "file://LICENSE"))))) From b6933ea634f5522e64a61c83771fa28b78948acd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:20:23 +0100 Subject: [PATCH 214/411] gnu: Add r-extrafontdb. * gnu/packages/cran.scm (r-extrafontdb): New variable. --- gnu/packages/cran.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 88ec491f02..2eacf24610 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12992,3 +12992,21 @@ (define-public r-rttf2pt1 ;; the LICENSE file. (license (list license:bsd-3 license:expat (license:non-copyleft "file://LICENSE"))))) + +(define-public r-extrafontdb + (package + (name "r-extrafontdb") + (version "1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "extrafontdb" version)) + (sha256 + (base32 + "115n42hfvv5h4nn4cfkfmkmn968py4lpy8zd0d6w5yylwpzbm8gs")))) + (build-system r-build-system) + (home-page "https://github.com/wch/extrafontdb") + (synopsis "Database for the extrafont package") + (description + "This package holds the database for the @code{extrafont} package.") + (license license:gpl2))) From 2331bf2a64f06fac24e1ce9fb0b5614ffb98c160 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:20:32 +0100 Subject: [PATCH 215/411] gnu: Add r-extrafont. * gnu/packages/cran.scm (r-extrafont): New variable. --- gnu/packages/cran.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 2eacf24610..00b6734b80 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13010,3 +13010,36 @@ (define-public r-extrafontdb (description "This package holds the database for the @code{extrafont} package.") (license license:gpl2))) + +(define-public r-extrafont + (package + (name "r-extrafont") + (version "0.17") + (source + (origin + (method url-fetch) + (uri (cran-uri "extrafont" version)) + (sha256 + (base32 + "0b9k2n9sk23bh45hjgnkxpjyvpdrz1hx7kmxvmb4nhlhm1wpsv9g")))) + (build-system r-build-system) + (propagated-inputs + `(("r-extrafontdb" ,r-extrafontdb) + ("r-rttf2pt1" ,r-rttf2pt1))) + (home-page "https://github.com/wch/extrafont") + (synopsis "Tools for using fonts in R") + (description + "The extrafont package makes it easier to use fonts other than the basic +PostScript fonts that R uses. Fonts that are imported into extrafont can be +used with PDF or PostScript output files. There are two hurdles for using +fonts in PDF (or Postscript) output files: + +@enumerate +@item Making R aware of the font and the dimensions of the characters. +@item Embedding the fonts in the PDF file so that the PDF can be displayed + properly on a device that doesn't have the font. This is usually needed if + you want to print the PDF file or share it with others. +@end enumerate + +The extrafont package makes both of these things easier.") + (license license:gpl2))) From 2d704608924baf2a206c997e462ae07c516e4391 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:20:42 +0100 Subject: [PATCH 216/411] gnu: Add r-xkcd. * gnu/packages/cran.scm (r-xkcd): New variable. --- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 00b6734b80..29af7ff2b6 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13043,3 +13043,26 @@ (define-public r-extrafont The extrafont package makes both of these things easier.") (license license:gpl2))) + +(define-public r-xkcd + (package + (name "r-xkcd") + (version "0.0.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "xkcd" version)) + (sha256 + (base32 + "1z2y0ihn68ppay7xkglhw7djki5654g6z4bbpyy41if57z9q554f")))) + (build-system r-build-system) + (propagated-inputs + `(("r-extrafont" ,r-extrafont) + ("r-ggplot2" ,r-ggplot2) + ("r-hmisc" ,r-hmisc))) + (home-page "https://cran.r-project.org/web/packages/xkcd/") + (synopsis "Plot ggplot2 graphics in the XKCD style") + (description + "This package provides the means to plot ggplot2 graphs in the style of +the XKCD web comic.") + (license license:gpl3))) From 0d50d0df0866430814d3b55cb305c352e796cd55 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:20:48 +0100 Subject: [PATCH 217/411] gnu: Add r-msigdbr. * gnu/packages/cran.scm (r-msigdbr): New variable. --- gnu/packages/cran.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 29af7ff2b6..4e6604ac83 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13066,3 +13066,34 @@ (define-public r-xkcd "This package provides the means to plot ggplot2 graphs in the style of the XKCD web comic.") (license license:gpl3))) + +(define-public r-msigdbr + (package + (name "r-msigdbr") + (version "6.2.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "msigdbr" version)) + (sha256 + (base32 + "1264j1hs74kq7hyh68vfynadfi6mdpq46qm1hnwzkzzhmbzpb9cg")))) + (build-system r-build-system) + (propagated-inputs + `(("r-dplyr" ,r-dplyr) + ("r-magrittr" ,r-magrittr) + ("r-rlang" ,r-rlang) + ("r-tibble" ,r-tibble))) + (home-page "https://github.com/igordot/msigdbr") + (synopsis "MSigDB gene sets for multiple organisms") + (description + "This package provides the @dfn{Molecular Signatures Database} (MSigDB) +gene sets typically used with the @dfn{Gene Set Enrichment Analysis} (GSEA) +software in a standard R data frame with key-value pairs. Included are the +original human gene symbols and Entrez IDs as well as the equivalents for +various frequently studied model organisms such as mouse, rat, pig, fly, and +yeast.") + ;; The package is covered under the Expat license, but the upstream MSigDB + ;; files are made available under the Creative Commons Attribution 4.0 + ;; International license. + (license (list license:expat license:cc-by4.0)))) From af26c7ae7010d72c8f4759f3f4e2421cd9a2183b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:24:14 +0100 Subject: [PATCH 218/411] gnu: Add r-fgsea. * gnu/packages/bioconductor.scm (r-fgsea): New variable. --- gnu/packages/bioconductor.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 59ca93dde8..3f5e61f6f5 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2724,3 +2724,32 @@ (define-public r-sigpathway specified group of genes for a pathway has a coordinated association with a phenotype of interest.") (license license:gpl2))) + +(define-public r-fgsea + (package + (name "r-fgsea") + (version "1.8.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "fgsea" version)) + (sha256 + (base32 + "0cxxvlmg340l5l5fz4abbwppiri0ibg4navvq5k3wg511mz8ma2q")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocparallel" ,r-biocparallel) + ("r-data-table" ,r-data-table) + ("r-fastmatch" ,r-fastmatch) + ("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra) + ("r-matrix" ,r-matrix) + ("r-rcpp" ,r-rcpp))) + (home-page "https://github.com/ctlab/fgsea/") + (synopsis "Fast gene set enrichment analysis") + (description + "The package implements an algorithm for fast gene set enrichment +analysis. Using the fast algorithm allows to make more permutations and get +more fine grained p-values, which allows to use accurate stantard approaches +to multiple hypothesis correction.") + (license license:expat))) From f8a5af4653077502a3818b4c71ad7bf1be67389a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:43:37 +0100 Subject: [PATCH 219/411] gnu: Add r-do-db. * gnu/packages/bioconductor.scm (r-do-db): New variable. --- gnu/packages/bioconductor.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 3f5e61f6f5..86c15c08ea 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -708,6 +708,32 @@ (define-public r-illuminahumanmethylationepicmanifest "This is a manifest package for Illumina's EPIC methylation arrays.") (license license:artistic2.0))) +(define-public r-do-db + (package + (name "r-do-db") + (version "2.9") + (source (origin + (method url-fetch) + ;; We cannot use bioconductor-uri here because this tarball is + ;; located under "data/annotation/" instead of "bioc/". + (uri (string-append "https://www.bioconductor.org/packages/" + "release/data/annotation/src/contrib/" + "DO.db_" version ".tar.gz")) + (sha256 + (base32 + "10bqqa124l61ivzy4mdd3z3ar9a6537qbxw23pc4y9w8a6dwnavn")))) + (properties + `((upstream-name . "DO.db"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi))) + (home-page "https://www.bioconductor.org/packages/DO.db/") + (synopsis "Annotation maps describing the entire Disease Ontology") + (description + "This package provides a set of annotation maps describing the entire +Disease Ontology.") + (license license:artistic2.0))) + ;;; Experiment data From 585d5ae0fb7f8092d1d07f765108574001d1a3b2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:43:49 +0100 Subject: [PATCH 220/411] gnu: Add r-gridgraphics. * gnu/packages/cran.scm (r-gridgraphics): New variable. --- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 4e6604ac83..5f1dd03983 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13097,3 +13097,26 @@ (define-public r-msigdbr ;; files are made available under the Creative Commons Attribution 4.0 ;; International license. (license (list license:expat license:cc-by4.0)))) + +(define-public r-gridgraphics + (package + (name "r-gridgraphics") + (version "0.3-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "gridGraphics" version)) + (sha256 + (base32 + "1p94flvq5h3x817pl1m0aj3sim87x6zdbpv9xrgdnqw3rxfzwgqs")))) + (properties `((upstream-name . "gridGraphics"))) + (build-system r-build-system) + (home-page "https://github.com/pmur002/gridgraphics") + (synopsis "Redraw base graphics using @code{grid} graphics") + (description + "This package provides functions to convert a page of plots drawn with +the @code{graphics} package into identical output drawn with the @code{grid} +package. The result looks like the original @code{graphics}-based plot, but +consists of @code{grid} grobs and viewports that can then be manipulated with +@code{grid} functions (e.g., edit grobs and revisit viewports).") + (license license:gpl2+))) From 1c59ec707e3a6f4496af411d4e2f46fbd4628ce4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:44:00 +0100 Subject: [PATCH 221/411] gnu: Add r-farver. * gnu/packages/cran.scm (r-farver): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 5f1dd03983..c943efe507 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13120,3 +13120,28 @@ (define-public r-gridgraphics consists of @code{grid} grobs and viewports that can then be manipulated with @code{grid} functions (e.g., edit grobs and revisit viewports).") (license license:gpl2+))) + +(define-public r-farver + (package + (name "r-farver") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "farver" version)) + (sha256 + (base32 + "1dllgx121al374gyp9pjv1m8ip4imm8zhbgyh1970dsz2c4z71i0")))) + (build-system r-build-system) + (propagated-inputs `(("r-rcpp" ,r-rcpp))) + (home-page "https://github.com/thomasp85/farver") + (synopsis "Vectorized color conversion and comparison") + (description + "The encoding of color can be handled in many different ways, using +different color spaces. As different color spaces have different uses, +efficient conversion between these representations are important. This +package provides a set of functions that gives access to very fast color space +conversion and comparisons implemented in C++, and offers 100-fold speed +improvements over the @code{convertColor} function in the @code{grDevices} +package.") + (license license:expat))) From e25828839d81b097f59d9c217aa3386d232766c3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:44:08 +0100 Subject: [PATCH 222/411] gnu: Add r-ggplotify. * gnu/packages/cran.scm (r-ggplotify): New variable. --- gnu/packages/cran.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c943efe507..5ca6be6767 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13145,3 +13145,30 @@ (define-public r-farver improvements over the @code{convertColor} function in the @code{grDevices} package.") (license license:expat))) + +(define-public r-ggplotify + (package + (name "r-ggplotify") + (version "0.0.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggplotify" version)) + (sha256 + (base32 + "14hqlpvnaq5psz1ljcpw9isa06827rg3fm5c1dx159rsjfi56yby")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-gridgraphics" ,r-gridgraphics) + ("r-rvcheck" ,r-rvcheck))) + (home-page "https://github.com/GuangchuangYu/ggplotify") + (synopsis "Convert plots to @code{grob} or @code{ggplot} object") + (description + "This package provides tools to convert plot function calls (using +expression or formula) to @code{grob} or @code{ggplot} objects that are +compatible with the @code{grid} and @code{ggplot2} environment. With this +package, we are able to e.g. use @code{cowplot} to align plots produced by +@code{base} graphics, @code{grid}, @code{lattice}, @code{vcd} etc. by +converting them to @code{ggplot} objects.") + (license license:artistic2.0))) From 85431ca3a8c125965477de17f2b165299b98266f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:44:16 +0100 Subject: [PATCH 223/411] gnu: Add r-triebeard. * gnu/packages/cran.scm (r-triebeard): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 5ca6be6767..102a223c6f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13172,3 +13172,25 @@ (define-public r-ggplotify @code{base} graphics, @code{grid}, @code{lattice}, @code{vcd} etc. by converting them to @code{ggplot} objects.") (license license:artistic2.0))) + +(define-public r-triebeard + (package + (name "r-triebeard") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "triebeard" version)) + (sha256 + (base32 + "1hqyz57gph02c9fdc07lxz113bbklif3g18sw8jan6pakhhdc7dz")))) + (build-system r-build-system) + (propagated-inputs `(("r-rcpp" ,r-rcpp))) + (home-page "https://github.com/Ironholds/triebeard/") + (synopsis "Radix trees in Rcpp") + (description + "Radix trees, or tries, are key-value data structures optimized for +efficient lookups, similar in purpose to hash tables. This package provides +an implementation of radix trees for use in R programming and in developing +packages with Rcpp.") + (license license:expat))) From 91e06bedf8ae43722c8c8b50816fa4e90593932e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:44:25 +0100 Subject: [PATCH 224/411] gnu: Add r-tweenr. * gnu/packages/cran.scm (r-tweenr): New variable. --- gnu/packages/cran.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 102a223c6f..b0fb5ec86a 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13194,3 +13194,30 @@ (define-public r-triebeard an implementation of radix trees for use in R programming and in developing packages with Rcpp.") (license license:expat))) + +(define-public r-tweenr + (package + (name "r-tweenr") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "tweenr" version)) + (sha256 + (base32 + "0sq90pbln6lkc2q3zflhkxxwpqdw5dd7igrxhdnlynkdrmi83mpg")))) + (build-system r-build-system) + (propagated-inputs + `(("r-farver" ,r-farver) + ("r-magrittr" ,r-magrittr) + ("r-rcpp" ,r-rcpp) + ("r-rlang" ,r-rlang))) + (home-page "https://github.com/thomasp85/tweenr") + (synopsis "Interpolate data for smooth animations") + (description + "In order to create smooth animation between states of data, tweening is +necessary. This package provides a range of functions for creating tweened +data that can be used as basis for animation. Furthermore it adds a number of +vectorized interpolaters for common R data types such as numeric, date and +color.") + (license license:expat))) From 09dde7fb01b3685f1549661d50aeecb18696bc05 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:44:32 +0100 Subject: [PATCH 225/411] gnu: Add r-polyclip. * gnu/packages/cran.scm (r-polyclip): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b0fb5ec86a..1690320879 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13221,3 +13221,28 @@ (define-public r-tweenr vectorized interpolaters for common R data types such as numeric, date and color.") (license license:expat))) + +(define-public r-polyclip + (package + (name "r-polyclip") + (version "1.10-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "polyclip" version)) + (sha256 + (base32 + "0jyk4maqiblvj095jd59dr76kbniyli3v3xvy0a72ljszq6vrnkl")))) + (build-system r-build-system) + (native-inputs `(("pkg-config" ,pkg-config))) + (home-page "http://www.angusj.com/delphi/clipper.php") + (synopsis "Polygon clipping") + (description + "This package provides an R port of the library Clipper. It performs +polygon clipping operations (intersection, union, set minus, set difference) +for polygonal regions of arbitrary complexity, including holes. It computes +offset polygons (spatial buffer zones, morphological dilations, Minkowski +dilations) for polygonal regions and polygonal lines. It computes the +Minkowski Sum of general polygons. There is a function for removing +self-intersections from polygon data.") + (license license:boost1.0))) From d4ff09af0d2b9883982f5aec331fe698bf25cd0c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:44:43 +0100 Subject: [PATCH 226/411] gnu: Add r-urltools. * gnu/packages/cran.scm (r-urltools): New variable. --- gnu/packages/cran.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 1690320879..8d1a78b2cb 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13246,3 +13246,29 @@ (define-public r-polyclip Minkowski Sum of general polygons. There is a function for removing self-intersections from polygon data.") (license license:boost1.0))) + +(define-public r-urltools + (package + (name "r-urltools") + (version "1.7.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "urltools" version)) + (sha256 + (base32 + "18lp66f2l504b8q3j4xy8j9pyzzlljw9f112sn6qii1cg83072wm")))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcpp" ,r-rcpp) + ("r-triebeard" ,r-triebeard))) + (home-page "https://github.com/Ironholds/urltools/") + (synopsis "Vectorized tools for URL handling and parsing") + (description + "This package provides a toolkit for all URL-handling needs, including +encoding and decoding, parsing, parameter extraction and modification. All +functions are designed to be both fast and entirely vectorized. It is +intended to be useful for people dealing with web-related datasets, such as +server-side logs, although may be useful for other situations involving large +sets of URLs.") + (license license:expat))) From 83f43284c31f0cb83afb6210c3e07cc4954c1545 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:44:51 +0100 Subject: [PATCH 227/411] gnu: Add r-ggforce. * gnu/packages/cran.scm (r-ggforce): New variable. --- gnu/packages/cran.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 8d1a78b2cb..43b738c377 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13272,3 +13272,34 @@ (define-public r-urltools server-side logs, although may be useful for other situations involving large sets of URLs.") (license license:expat))) + +(define-public r-ggforce + (package + (name "r-ggforce") + (version "0.2.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggforce" version)) + (sha256 + (base32 + "04rh9z58q288lbi933472lgl26wwbw58rfhpgfyijmw9ccz7i93m")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-gtable" ,r-gtable) + ("r-mass" ,r-mass) + ("r-polyclip" ,r-polyclip) + ("r-rcpp" ,r-rcpp) + ("r-rcppeigen" ,r-rcppeigen) + ("r-rlang" ,r-rlang) + ("r-scales" ,r-scales) + ("r-tweenr" ,r-tweenr))) + (home-page "https://ggforce.data-imaginist.com") + (synopsis "Accelerating ggplot2") + (description + "The aim of the ggplot2 package is to aid in visual data investigations. +This focus has led to a lack of facilities for composing specialized plots. +Thi package aims to be a collection of mainly new statistics and geometries +that fills this gap.") + (license license:expat))) From b5b0a2ff493ba1a6a401522b7a34c73fa7c05134 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:45:00 +0100 Subject: [PATCH 228/411] gnu: Add r-europepmc. * gnu/packages/cran.scm (r-europepmc): New variable. --- gnu/packages/cran.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 43b738c377..92f9513de4 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13303,3 +13303,38 @@ (define-public r-ggforce Thi package aims to be a collection of mainly new statistics and geometries that fills this gap.") (license license:expat))) + +(define-public r-europepmc + (package + (name "r-europepmc") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "europepmc" version)) + (sha256 + (base32 + "1ngqs1sqzkbwv98dd5z4cxj8bnz41wyd0g060a2vpqi3s99s4i2h")))) + (build-system r-build-system) + (propagated-inputs + `(("r-dplyr" ,r-dplyr) + ("r-httr" ,r-httr) + ("r-jsonlite" ,r-jsonlite) + ("r-plyr" ,r-plyr) + ("r-progress" ,r-progress) + ("r-purrr" ,r-purrr) + ("r-urltools" ,r-urltools) + ("r-xml2" ,r-xml2))) + (home-page "https://github.com/ropensci/europepmc/") + (synopsis "R Interface to the Europe PubMed Central RESTful Web Service") + (description + "This package provides an R Client for the +@url{https://europepmc.org/RestfulWebService,Europe PubMed Central RESTful Web +Service}. It gives access to both metadata on life science literature and +open access full texts. Europe PMC indexes all PubMed content and other +literature sources including Agricola, a bibliographic database of citations +to the agricultural literature, or Biological Patents. In addition to +bibliographic metadata, the client allows users to fetch citations and +reference lists. Links between life-science literature and other EBI +databases, including ENA, PDB or ChEMBL are also accessible.") + (license license:gpl3))) From 11f226e124e51de8a7ca873c699badbb74be057c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:45:07 +0100 Subject: [PATCH 229/411] gnu: Add r-ggraph. * gnu/packages/cran.scm (r-ggraph): New variable. --- gnu/packages/cran.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 92f9513de4..f89f30338c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13338,3 +13338,38 @@ (define-public r-europepmc reference lists. Links between life-science literature and other EBI databases, including ENA, PDB or ChEMBL are also accessible.") (license license:gpl3))) + +(define-public r-ggraph + (package + (name "r-ggraph") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggraph" version)) + (sha256 + (base32 + "0fpmp326mryd1k1qvacjadksrnhbla8h960i18lmrimzrag7692c")))) + (build-system r-build-system) + (propagated-inputs + `(("r-digest" ,r-digest) + ("r-dplyr" ,r-dplyr) + ("r-ggforce" ,r-ggforce) + ("r-ggplot2" ,r-ggplot2) + ("r-ggrepel" ,r-ggrepel) + ("r-gtable" ,r-gtable) + ("r-igraph" ,r-igraph) + ("r-mass" ,r-mass) + ("r-plyr" ,r-plyr) + ("r-rcpp" ,r-rcpp) + ("r-scales" ,r-scales) + ("r-viridis" ,r-viridis))) + (home-page "https://cran.r-project.org/web/packages/ggraph/") + (synopsis "Implementation of grammar of graphics for graphs and networks") + (description + "The grammar of graphics as implemented in ggplot2 is a poor fit for +graph and network visualizations due to its reliance on tabular data input. +The ggraph package is an extension of the ggplot2 API tailored to graph +visualizations and provides the same flexible approach to building up plots +layer by layer.") + (license license:gpl3))) From 305050b56d5df003f986cbca5fedb4b9b5cd45bb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:45:20 +0100 Subject: [PATCH 230/411] gnu: Add r-dose. * gnu/packages/bioconductor.scm (r-dose): New variable. --- gnu/packages/bioconductor.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 86c15c08ea..0c7be1c7d5 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2779,3 +2779,37 @@ (define-public r-fgsea more fine grained p-values, which allows to use accurate stantard approaches to multiple hypothesis correction.") (license license:expat))) + +(define-public r-dose + (package + (name "r-dose") + (version "3.8.2") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "DOSE" version)) + (sha256 + (base32 + "1gh7dhvfc71kawxcfx8xqlir7mwvg5mmz4lqrdrvw5knvi2h3mfa")))) + (properties `((upstream-name . "DOSE"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biocparallel" ,r-biocparallel) + ("r-do-db" ,r-do-db) + ("r-fgsea" ,r-fgsea) + ("r-ggplot2" ,r-ggplot2) + ("r-gosemsim" ,r-gosemsim) + ("r-qvalue" ,r-qvalue) + ("r-reshape2" ,r-reshape2) + ("r-s4vectors" ,r-s4vectors))) + (home-page "https://guangchuangyu.github.io/software/DOSE/") + (synopsis "Disease ontology semantic and enrichment analysis") + (description + "This package implements five methods proposed by Resnik, Schlicker, +Jiang, Lin and Wang, respectively, for measuring semantic similarities among +@dfn{Disease ontology} (DO) terms and gene products. Enrichment analyses +including hypergeometric model and gene set enrichment analysis are also +implemented for discovering disease associations of high-throughput biological +data.") + (license license:artistic2.0))) From 9c30cf65d2b2f1f529f9e7dc4ea58e14b3035f9e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:45:30 +0100 Subject: [PATCH 231/411] gnu: Add r-enrichplot. * gnu/packages/bioconductor.scm (r-enrichplot): New variable. --- gnu/packages/bioconductor.scm | 36 +++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 0c7be1c7d5..098cee8100 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2813,3 +2813,39 @@ (define-public r-dose implemented for discovering disease associations of high-throughput biological data.") (license license:artistic2.0))) + +(define-public r-enrichplot + (package + (name "r-enrichplot") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "enrichplot" version)) + (sha256 + (base32 + "0cxqfpy6py4k3z3lnlkiwx89r4ymfpdc4hm25dfpazqgjflz5is7")))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-cowplot" ,r-cowplot) + ("r-dose" ,r-dose) + ("r-europepmc" ,r-europepmc) + ("r-ggplot2" ,r-ggplot2) + ("r-ggplotify" ,r-ggplotify) + ("r-ggraph" ,r-ggraph) + ("r-ggridges" ,r-ggridges) + ("r-gosemsim" ,r-gosemsim) + ("r-gridextra" ,r-gridextra) + ("r-igraph" ,r-igraph) + ("r-purrr" ,r-purrr) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-reshape2" ,r-reshape2) + ("r-upsetr" ,r-upsetr))) + (home-page "https://github.com/GuangchuangYu/enrichplot") + (synopsis "Visualization of functional enrichment result") + (description + "The enrichplot package implements several visualization methods for +interpreting functional enrichment results obtained from ORA or GSEA analyses. +All the visualization methods are developed based on ggplot2 graphics.") + (license license:artistic2.0))) From f8295ee6dea95eec54196c967f034a1597e45e70 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 15:45:35 +0100 Subject: [PATCH 232/411] gnu: Add r-clusterprofiler. * gnu/packages/bioconductor.scm (r-clusterprofiler): New variable. --- gnu/packages/bioconductor.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 098cee8100..46d1880ccb 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2849,3 +2849,36 @@ (define-public r-enrichplot interpreting functional enrichment results obtained from ORA or GSEA analyses. All the visualization methods are developed based on ggplot2 graphics.") (license license:artistic2.0))) + +(define-public r-clusterprofiler + (package + (name "r-clusterprofiler") + (version "3.10.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "clusterProfiler" version)) + (sha256 + (base32 + "1v4fh8ll7zk8yhbaa0nq9xvqrb05kyvbpwkqpnjf07s873805rxm")))) + (properties + `((upstream-name . "clusterProfiler"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-dose" ,r-dose) + ("r-enrichplot" ,r-enrichplot) + ("r-ggplot2" ,r-ggplot2) + ("r-go-db" ,r-go-db) + ("r-gosemsim" ,r-gosemsim) + ("r-magrittr" ,r-magrittr) + ("r-plyr" ,r-plyr) + ("r-qvalue" ,r-qvalue) + ("r-rvcheck" ,r-rvcheck) + ("r-tidyr" ,r-tidyr))) + (home-page "https://guangchuangyu.github.io/software/clusterProfiler/") + (synopsis "Analysis and visualization of functional profiles for gene clusters") + (description + "This package implements methods to analyze and visualize functional +profiles (GO and KEGG) of gene and gene clusters.") + (license license:artistic2.0))) From c881ed8698517a2c2007c2fdc3a7aeec52ff109c Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Fri, 15 Mar 2019 01:20:28 +0100 Subject: [PATCH 233/411] gnu: Add emacs-zones. * gnu/packages/emacs-xyz.scm (emacs-zones): New variable. Signed-off-by: Oleg Pykhalov --- gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 2ce9e7526b..03182a9c3f 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -5953,6 +5953,32 @@ (define-public emacs-alert customizable by the user.") (license license:gpl2+))) +(define-public emacs-zones + (let ((commit "353fc38a6544eb59887bee045e373406f1d038a5") + (revision "1")) + (package + (name "emacs-zones") + (version (git-version "0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacsmirror/zones.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0gwnw2giii2a14nlh62xp45f47cw6ikqphhzpmcw6c7mn9x5z2ar")))) + (build-system emacs-build-system) + (home-page "https://www.emacswiki.org/emacs/Zones") + (synopsis "Define and act on multiple zones of buffer text") + (description "Library @file{zones.el} lets you easily define and +subsequently act on multiple zones of buffer text. You can think of this as +enlarging the notion of region. In effect, it can remove the requirement of +target text being a contiguous sequence of characters. A set of buffer zones +is, in effect, a (typically) noncontiguous set of text.") + (license license:gpl3+)))) + (define-public emacs-mu4e-alert (package (name "emacs-mu4e-alert") From 24540c310f4404431b4f28fc83afbb49a3c50b2f Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 27 Mar 2019 16:22:08 +0100 Subject: [PATCH 234/411] gnu: Add emacs-relint. * gnu/packages/emacs-xyz.scm (emacs-relint): New variable. --- gnu/packages/emacs-xyz.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 03182a9c3f..7dd3c079b2 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -777,6 +777,29 @@ (define-public emacs-xr @code{skip-chars-backward}.") (license license:gpl3+))) +(define-public emacs-relint + (package + (name "emacs-relint") + (version "1.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://elpa.gnu.org/packages/relint-" version ".el")) + (sha256 + (base32 + "0y7lki2vndpkmzg4k0yh2722hp01qr77vm337xnm8wp3bmwn8s1f")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-xr" ,emacs-xr))) + (home-page "https://github.com/mattiase/relint") + (synopsis "Elisp regexp mistake finder") + (description + "Relint (regular expression lint) scans Elisp files for mistakes in +regexps, including deprecated syntax and bad practice. It also checks the +regexp-like arguments to @code{skip-chars-forward} and +@code{skip-chars-backward}.") + (license license:gpl3+))) + ;;; ;;; Web browsing. From 1d7022f7060370a549e0afdc821fe80cb3bac9d0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 20:58:15 +0100 Subject: [PATCH 235/411] gnu: r-feather: Update to 0.3.3. * gnu/packages/cran.scm (r-feather): Update to 0.3.3. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index f89f30338c..24ddbf76d2 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -895,14 +895,14 @@ (define-public r-miniui (define-public r-feather (package (name "r-feather") - (version "0.3.2") + (version "0.3.3") (source (origin (method url-fetch) (uri (cran-uri "feather" version)) (sha256 (base32 - "138vnlwhkwayyim4rbx6rnf91kzhfij6v2f91ppx2174ky5611h6")))) + "0ls8lmygyjq60467s88h66d7fczjp1d3a2106rfq4dx9lyfvdfsa")))) (build-system r-build-system) (propagated-inputs `(("r-hms" ,r-hms) From 3d17dc5d8f92b8312c5ca7fa8022a02cb29b66f1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 20:58:31 +0100 Subject: [PATCH 236/411] gnu: r-geometry: Update to 0.4.1. * gnu/packages/cran.scm (r-geometry): Update to 0.4.1. [propagated-inputs]: Fix typo. --- gnu/packages/cran.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 24ddbf76d2..d15516ba0d 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -2482,20 +2482,20 @@ (define-public r-rpostgresql (define-public r-geometry (package (name "r-geometry") - (version "0.4.0") + (version "0.4.1") (source (origin (method url-fetch) (uri (cran-uri "geometry" version)) (sha256 (base32 - "0lpih1a93jz021krdv78zf6fq95g8i0xw4r9aj5gq36a0vzc3i0y")))) + "0v3ivaw8vbjyxg08dd573qk3kqfyknj5hli9503dza6p6xz0dzmm")))) (build-system r-build-system) (propagated-inputs `(("r-magic" ,r-magic) ("r-lpsolve" ,r-lpsolve) ("r-rcpp" ,r-rcpp) - ("r-cppprogress" ,r-rcppprogress))) + ("r-rcppprogress" ,r-rcppprogress))) (home-page "http://geometry.r-forge.r-project.org/") (synopsis "Mesh generation and surface tesselation") (description From 8f4dccf75ddf9bd760371dcc4b2c90c1c0900738 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 21:57:58 +0200 Subject: [PATCH 237/411] gnu: font-adobe-source-han-sans: Don't use unstable tarball. * gnu/packages/fonts.scm (font-adobe-source-han-sans)[source]: Download using git-fetch. [native-inputs]: Remove gzip, tar. [arguments]: Adjust build accordingly. --- gnu/packages/fonts.scm | 27 ++++++++------------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 6988443e94..362f92b4ff 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -384,14 +384,14 @@ (define-public font-adobe-source-han-sans (name "font-adobe-source-han-sans") (version "1.004") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/adobe-fonts/source-han-sans/archive/" - version "R.tar.gz")) - (file-name (string-append "source-han-sans-" version "R.tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/adobe-fonts/source-han-sans.git") + (commit (string-append version "R")))) + (file-name (git-file-name name version)) (sha256 (base32 - "1ssx0fw90sy6mj8fv8fv4dgzszpqwbmwpjnlx16g4pvaqzdmybbz")))) + "0zm884d8fp5gvirq324050kqv7am9khyqhs9kk4r4rr3jzn61jpk")))) (outputs '("out" ; OpenType/CFF Collection (OTC), 121 MiB. "cn" "jp" "kr" "tw")) ; Region-specific Subset OpenType/CFF. (build-system trivial-build-system) @@ -400,20 +400,12 @@ (define-public font-adobe-source-han-sans #:builder (begin (use-modules (guix build utils)) - (let ((tar (string-append (assoc-ref %build-inputs - "tar") - "/bin/tar")) - (PATH (string-append (assoc-ref %build-inputs - "gzip") - "/bin")) - (install-opentype-fonts + (let ((install-opentype-fonts (lambda (fonts-dir out) (copy-recursively fonts-dir (string-append (assoc-ref %outputs out) "/share/fonts/opentype"))))) - (setenv "PATH" PATH) - (invoke tar "xvf" (assoc-ref %build-inputs "source")) - (chdir (string-append "source-han-sans-" ,version "R")) + (chdir (assoc-ref %build-inputs "source")) (install-opentype-fonts "OTC" "out") (install-opentype-fonts "SubsetOTF/CN" "cn") (install-opentype-fonts "SubsetOTF/JP" "jp") @@ -421,9 +413,6 @@ (define-public font-adobe-source-han-sans (install-opentype-fonts "SubsetOTF/TW" "tw") (for-each delete-file (find-files %output "\\.zip$")) #t)))) - (native-inputs - `(("gzip" ,gzip) - ("tar" ,tar))) (home-page "https://github.com/adobe-fonts/source-han-sans") (synopsis "Pan-CJK fonts") (description From c2426dbddc060e364c2c67eae2b40b2a11ad286b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:05:59 +0200 Subject: [PATCH 238/411] gnu: font-fira-sans: Don't use unstable tarball. * gnu/packages/fonts.scm (font-fira-sans)[source]: Download using git-fetch. --- gnu/packages/fonts.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 362f92b4ff..47a3c6c44d 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -922,13 +922,14 @@ (define-public font-fira-sans (name "font-fira-sans") (version "4.202") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/mozilla/Fira/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/mozilla/Fira.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1r6zdnqqp4bgq5nmgqbj0vvj7x1h9w912851ggbl9wc7fdjnjqnq")))) + "116j26gdj5g1r124b4669372f7490vfjqw7apiwp2ggl0am5xd0w")))) (build-system font-build-system) (home-page "https://mozilla.github.io/Fira/") (synopsis "Mozilla's Fira Sans Font") From 1f07550c86e6d9acbe49bbf15decc94e87339a95 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:13:39 +0200 Subject: [PATCH 239/411] gnu: font-tamzen: Don't use unstable tarball. * gnu/packages/fonts.scm (font-tamzen)[source]: Download using git-fetch. [native-inputs]: Remove gzip, tar. [arguments]: Adjust build accordingly. --- gnu/packages/fonts.scm | 34 ++++++++++++---------------------- 1 file changed, 12 insertions(+), 22 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 47a3c6c44d..ce26abca79 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -987,13 +987,14 @@ (define-public font-tamzen (version "1.11.4") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/sunaku/tamzen-font/archive/" - "Tamzen-" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/sunaku/tamzen-font.git") + (commit (string-append "Tamzen-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1ryd7gp6qiwaqw73jqbmh4kwlriyd8xykh4j7z90z8xp9fm7lrys")))) + "17kgmvg6q32mqhx9g44hjvzv0si0mnpprga4z7na930g2zdd8846")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) @@ -1001,30 +1002,19 @@ (define-public font-tamzen (begin (use-modules (guix build utils)) - (let ((tar (string-append (assoc-ref %build-inputs "tar") - "/bin/tar")) - (PATH (string-append (assoc-ref %build-inputs "gzip") - "/bin")) - (font-dir (string-append %output "/share/fonts/misc")) - (psf-dir (string-append %output "/share/kbd/consolefonts")) - (src-pcf-dir (string-append "tamzen-font-Tamzen-" - ,version "/pcf"))) - (setenv "PATH" PATH) - (invoke tar "xvf" (assoc-ref %build-inputs "source")) + (let* ((out (assoc-ref %outputs "out")) + (font-dir (string-append out "/share/fonts/misc")) + (psf-dir (string-append out "/share/kbd/consolefonts"))) + (chdir (assoc-ref %build-inputs "source")) (mkdir-p font-dir) (mkdir-p psf-dir) - (chdir src-pcf-dir) (for-each (lambda (pcf) (install-file pcf font-dir)) - (find-files "." "\\.pcf$")) - (chdir "../psf") + (find-files "pcf" "\\.pcf$")) (for-each (lambda (psf) (install-file psf psf-dir)) - (find-files "." "\\.psf$")) + (find-files "psf" "\\.psf$")) #t)))) - (native-inputs - `(("tar" ,tar) - ("gzip" ,gzip))) (home-page "https://github.com/sunaku/tamzen-font") (synopsis "Monospaced bitmap font for console and X11") (description From 1e90e4b0d9821170eca9183d123cbde08d18fb5c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:21:14 +0200 Subject: [PATCH 240/411] gnu: font-google-material-design-icons: Don't use unstable tarball. * gnu/packages/fonts.scm (font-google-material-design-icons)[source]: Download using git-fetch. --- gnu/packages/fonts.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index ce26abca79..27f4a4ae8c 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -1142,14 +1142,14 @@ (define-public font-google-material-design-icons (name "font-google-material-design-icons") (version "3.0.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/google/material-design-icons/archive/" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/google/material-design-icons.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "018i3za9r6kf6svci33z09lc5pr5yz4164m8gzzwjzzqcrng0p5j")) - (file-name (string-append name "-" version ".tar.gz")))) + "17q5brcqyyc8gbjdgpv38p89s60cwxjlwy2ljnrvas5cj0s62np0")))) (build-system font-build-system) (home-page "http://google.github.io/material-design-icons") (synopsis "Icon font of Google Material Design icons") From c6abe9047830e905bd748eec4b7ee45d71b8244d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:23:57 +0200 Subject: [PATCH 241/411] gnu: font-open-dyslexic: Don't use unstable tarball. * gnu/packages/fonts.scm (font-open-dyslexic)[source]: Download using git-fetch. --- gnu/packages/fonts.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 27f4a4ae8c..5e45349128 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -1168,13 +1168,14 @@ (define-public font-open-dyslexic (version "20160623") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/antijingoist/open-dyslexic/" - "archive/" version "-Stable.tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/antijingoist/open-dyslexic.git") + (commit (string-append version "-Stable")))) + (file-name (git-file-name name version)) (sha256 (base32 - "0al0j9kb32kfavcpq1kigsd36yzvf5yhzqhds0jkh7ngbxyxwkx4")))) + "0nr7s92nk1kbr459154idnib977ixc70z6g9mbra3lp73nyrmyvz")))) (build-system font-build-system) (home-page "https://opendyslexic.org") (synopsis "Font for dyslexics and high readability") From 3cf9a85ba7c1ae5d2ef6f8b05972262f7a620cf3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:30:27 +0200 Subject: [PATCH 242/411] gnu: emacs-ag: Don't use unstable tarball. * gnu/packages/emacs-xyz.scm (emacs-ag)[source]: Download using git-fetch. --- gnu/packages/emacs-xyz.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 7dd3c079b2..439bd58d6b 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1186,14 +1186,14 @@ (define-public emacs-ag (name "emacs-ag") (version "0.47") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/Wilfred/ag.el/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/Wilfred/ag.el.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1rlmp6wnyhqfg86dbz17r914msp58favn4kd4yrdwyia265a4lar")))) + "15kp99vwyi7hb1jkq3lwvqzw3v62ycixsq6y4pd1x0nn2v5p5m5r")))) (build-system emacs-build-system) (arguments `(#:phases From b4f96f3b3b2b4ba59299480ca29eb997a4ee994d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:33:36 +0200 Subject: [PATCH 243/411] gnu: emacs-autothemer: Don't use unstable tarball. * gnu/packages/emacs-xyz.scm (emacs-autothemer)[source]: Download using git-fetch. --- gnu/packages/emacs-xyz.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 439bd58d6b..bc419cb516 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1285,13 +1285,14 @@ (define-public emacs-autothemer (version "0.2.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/sebastiansturm/autothemer/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/sebastiansturm/autothemer.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0rd28r9wfrbll212am4ih9hrvypx785aff76va2cbfxdwm9kixsa")))) + "0cd2pqh6k32sjidkcd8682y4l6mx52xw4a05f38kk8nsrk28m74k")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-dash" ,emacs-dash))) From 39a46a1f1067ddde0be7e442c821645f5aac45e1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:41:22 +0200 Subject: [PATCH 244/411] gnu: emacs-calfw: Don't use unstable tarball. * gnu/packages/emacs-xyz.scm (emacs-calfw)[source]: Download using git-fetch. --- gnu/packages/emacs-xyz.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index bc419cb516..b2f7b02bb3 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1346,14 +1346,14 @@ (define-public emacs-calfw (version "1.6") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/kiwanami/emacs-calfw/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/kiwanami/emacs-calfw.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1zr91xr0f1xfcv78yxka8vs5ximmq2ixmqf2pkb57kwwnxlypq4i")))) + "0r42cagvmvvib76kd15nd9ix55ys6i549vxnls4z16s864695zpa")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-howm" ,emacs-howm))) From 2c19ff18e27a5425155057eaf098d424f1c38766 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:46:53 +0200 Subject: [PATCH 245/411] gnu: emacs-direnv: Don't use unstable tarball. * gnu/packages/emacs-xyz.scm (emacs-direnv)[source]: Download using git-fetch. --- gnu/packages/emacs-xyz.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index b2f7b02bb3..cb4c4dd627 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1370,14 +1370,14 @@ (define-public emacs-direnv (version "1.2.0") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/wbolster/emacs-direnv/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/wbolster/emacs-direnv.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0m9nxawklhiiysyibzzhh2zkxgq1fskqvaqb06f7r8dnhabfy9fr")))) + "172jyl8v4zy9bbha8nndq63x8svn9xqkafkj3q17z289na8iaylh")))) (build-system emacs-build-system) (propagated-inputs `(("dash" ,emacs-dash) From 49464d2b160cd496a14278f4da0dd89168023a67 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:49:32 +0200 Subject: [PATCH 246/411] gnu: emacs-google-maps: Don't use unstable tarball. * gnu/packages/emacs-xyz.scm (emacs-google-maps)[source]: Download using git-fetch. --- gnu/packages/emacs-xyz.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index cb4c4dd627..dc9c3cd4d9 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1485,13 +1485,14 @@ (define-public emacs-google-maps (name "emacs-google-maps") (version "1.0.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/jd/google-maps.el/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/jd/google-maps.el.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "014bxapm4d8vjxbzrfjdpsavxyfx981mlcb10aq5rmigr6il8ybs")))) + "183igr5lp20zcqi7rc01fk76sfxdhksd74i11v16gdsifdkjimd0")))) (build-system emacs-build-system) (home-page "https://github.com/jd/google-maps.el") (synopsis "Access Google Maps from Emacs") From 8cd07b72e911c47206a11084c921eaec454b6a76 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:53:47 +0200 Subject: [PATCH 247/411] gnu: emacs-mmm-mode: Don't use unstable tarball. * gnu/packages/emacs-xyz.scm (emacs-mmm-mode)[source]: Don't use unstable tarball. --- gnu/packages/emacs-xyz.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index dc9c3cd4d9..64d475fbc2 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1555,14 +1555,14 @@ (define-public emacs-mmm-mode (version "0.5.5") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/purcell/mmm-mode/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/purcell/mmm-mode.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0c5ing3hcr74k78hqhrfwiv6m3n8hqfrw89j2x34vf60f4iyqzqc")))) + "1nrrccsy9qhjvjrlrjkzkmaa4mfzxv8ahnipqg4szz4n0hxnb1aa")))) (build-system gnu-build-system) (arguments '(#:phases From d3f6617b26ed5b8833ee48c9d8828e08417009a9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:54:53 +0200 Subject: [PATCH 248/411] gnu: emacs-mmm-mode: Remove unnecessary phase. * gnu/packages/emacs-xyz.scm (emacs-mmm-mode)[arguments]: Remove unnecessary 'autogen phase. --- gnu/packages/emacs-xyz.scm | 6 ------ 1 file changed, 6 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 64d475fbc2..353ba4cac0 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1564,12 +1564,6 @@ (define-public emacs-mmm-mode (base32 "1nrrccsy9qhjvjrlrjkzkmaa4mfzxv8ahnipqg4szz4n0hxnb1aa")))) (build-system gnu-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autogen - (lambda _ - (invoke "sh" "autogen.sh")))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) From b762dde9978215e7b9b771df24bf22d328c204cd Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 22:57:25 +0200 Subject: [PATCH 249/411] gnu: emacs-mmm-mode: Update to 0.5.7. * gnu/packages/emacs-xyz.scm (emacs-mmm-mode): Update to 0.5.7. --- gnu/packages/emacs-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 353ba4cac0..99c39405b9 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1552,7 +1552,7 @@ (define-public emacs-graphviz-dot-mode (define-public emacs-mmm-mode (package (name "emacs-mmm-mode") - (version "0.5.5") + (version "0.5.7") (source (origin (method git-fetch) @@ -1562,7 +1562,7 @@ (define-public emacs-mmm-mode (file-name (git-file-name name version)) (sha256 (base32 - "1nrrccsy9qhjvjrlrjkzkmaa4mfzxv8ahnipqg4szz4n0hxnb1aa")))) + "0lxd55yhz0ag7v1ydff55bg4h8snq5lbk8cjwxqpyq6gh4v7md1h")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) From 0f8ff5551393c6293547201f0ef3e61cf920d707 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 23:00:01 +0200 Subject: [PATCH 250/411] gnu: emacs-tablist: Don't use unstable tarball. * gnu/packages/emacs-xyz.scm (emacs-tablist)[source]: Download using git-fetch. --- gnu/packages/emacs-xyz.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 99c39405b9..879456a1a4 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1581,14 +1581,14 @@ (define-public emacs-tablist (name "emacs-tablist") (version "0.70") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/politza/tablist/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/politza/tablist.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "177d6s7ym1mwz1nhnl09r14z3n093g9a2szm97xsaig0c204xz9c")))) + "0gy9hxm7bca0l1hfy2pzn86avpifrz3bs8xzpicj4kxw5wi4ygns")))) (build-system emacs-build-system) (home-page "https://github.com/politza/tablist") (synopsis "Extension for @code{tabulated-list-mode}") From d8de2c01ff63cd140fe98969a1544c7c6427c4a2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 27 Mar 2019 23:01:49 +0200 Subject: [PATCH 251/411] gnu: emacs-emmet-mode: Don't use unstable tarball. * gnu/packages/emacs-xyz.scm (emacs-emmet-mode)[source]: Download using git-fetch. --- gnu/packages/emacs-xyz.scm | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 879456a1a4..7554b02599 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -8729,13 +8729,14 @@ (define-public emacs-emmet-mode (name "emacs-emmet-mode") (version "1.0.8") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/smihica/emmet-mode" - "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "0g3p22yabfcp98cfv9dgl9il2m2pd53isq2q11vb3s7qyn31f7zj")))) + (method git-fetch) + (uri (git-reference + (url "https://github.com/smihica/emmet-mode.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dsa85bk33j90h1ypaz1ylqh9yp2xvlga237h3kwa5y3sb0d5ydi")))) (build-system emacs-build-system) (home-page "https://github.com/smihica/emmet-mode") (synopsis "Unofficial Emmet's support for Emacs") From d98fb5603bd6fe9a7a7079aa143397465cb5d923 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 27 Mar 2019 22:18:46 +0100 Subject: [PATCH 252/411] gnu: hpcguix-web: Fix indentation. * gnu/packages/web.scm (hpcguix-web): Fix indentation. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 8d0487e3bd..c215c1928f 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -6424,9 +6424,9 @@ (define-public hpcguix-web `(("guile" ,guile-2.2) ("guile-commonmark" ,guile-commonmark) ("guile-json" ,guile-json))) - (home-page "https://github.com/UMCUGenetics/hpcguix-web") + (home-page "https://github.com/UMCUGenetics/hpcguix-web") (synopsis "Web interface for cluster deployments of Guix") (description "Hpcguix-web provides a web interface to the list of packages provided by Guix. The list of packages is searchable and provides instructions on how to use Guix in a shared HPC environment.") - (license l:agpl3+)))) + (license l:agpl3+)))) From d5640c587f141ff60127848dc95528ca1a4f1b14 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 28 Mar 2019 09:33:34 +0100 Subject: [PATCH 253/411] gnu: googletest: Don't use unstable tarball. * gnu/packages/check.scm (googletest)[source]: Download using git-fetch. * gnu/packages/crypto.scm (encfs)[arguments]: Adjust accordingly. * gnu/packages/gnucash.scm (gnucash)[arguments]: Same. * gnu/packages/terminals.scm (eternalterminal)[arguments]: Same. * gnu/packages/graphics.scm (ogre)[arguments]: Same. Remove now unnecessary custom 'pre-build phase. --- gnu/packages/check.scm | 11 ++++++----- gnu/packages/crypto.scm | 6 +++--- gnu/packages/gnucash.scm | 3 +-- gnu/packages/graphics.scm | 17 +++-------------- gnu/packages/terminals.scm | 4 ++-- 5 files changed, 15 insertions(+), 26 deletions(-) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 9a88a8d873..a38abf0b5b 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -485,13 +485,14 @@ (define-public googletest (version "1.8.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/google/googletest/archive/" - "release-" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/google/googletest.git") + (commit (string-append "release-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1n5p1m2m3fjrjdj752lf92f9wq3pl5cbsfrb49jqbg52ghkz99jq")))) + "0bjlljmbf8glnd9qjabx73w6pd7ibv43yiyngqvmvgxsabzr8399")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DBUILD_SHARED_LIBS=ON"))) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 038db8f488..2f7ea3ba8b 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -208,9 +208,9 @@ (define-public encfs (add-after 'unpack 'unpack-googletest (lambda* (#:key inputs #:allow-other-keys) (mkdir-p "vendor/github.com/google/googletest") - (invoke "tar" "xvf" (assoc-ref inputs "googletest-source") - "-C" "vendor/github.com/google/googletest" - "--strip-components=1"))) + (copy-recursively (assoc-ref inputs "googletest-source") + "vendor/github.com/google/googletest") + #t)) (add-before 'check 'make-unittests (lambda _ (invoke "make" "unittests")))))) diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm index 84b244cdd9..342df650aa 100644 --- a/gnu/packages/gnucash.scm +++ b/gnu/packages/gnucash.scm @@ -105,8 +105,7 @@ (define-public gnucash (add-after 'unpack 'unpack-gmock (lambda* (#:key inputs #:allow-other-keys) (mkdir "gmock") - (invoke "tar" "xf" (assoc-ref inputs "googlemock") - "-C" "gmock" "--strip-components=1") + (copy-recursively (assoc-ref inputs "googlemock") "gmock") (setenv "GMOCK_ROOT" (string-append (getcwd) "/gmock/googlemock")) #t)) (add-after 'unpack 'set-env-vars diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 11158bdfd1..e4a6ee8476 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -366,21 +366,10 @@ (define-public ogre '(#:phases (modify-phases %standard-phases (add-before 'configure 'pre-configure - (lambda _ - ;; It expects googletest source to be downloaded and - ;; be in a specific place. - (substitute* "Tests/CMakeLists.txt" - (("URL(.*)$" _ suffix) - (string-append "URL " suffix - "\t\tURL_HASH " - "MD5=16877098823401d1bf2ed7891d7dce36\n"))) - #t)) - (add-before 'build 'pre-build (lambda* (#:key inputs #:allow-other-keys) - (copy-file (assoc-ref inputs "googletest-source") - (string-append (getcwd) - "/Tests/googletest-prefix/src/" - "release-1.8.0.tar.gz")) + (substitute* "Tests/CMakeLists.txt" + (("URL(.*)$") + (string-append "URL " (assoc-ref inputs "googletest-source")))) #t))) #:configure-flags (list "-DOGRE_BUILD_TESTS=TRUE" diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 3839aa1b52..2d46585865 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -1042,8 +1042,8 @@ (define-public eternalterminal (add-after 'unpack 'insert-googletests (lambda* (#:key inputs #:allow-other-keys) (let ((tests (assoc-ref inputs "googletest"))) - (invoke "tar" "xvf" tests "-C" "external/googletest" - "--strip-components=1")))) + (copy-recursively tests "external/googletest")) + #t)) (add-after 'install 'dont-provide-gtest-libraries (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) From 1aa662b3094172c9f34a220d15c6ba53b9280b79 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 28 Mar 2019 11:07:40 +0100 Subject: [PATCH 254/411] gnu: ogre: Don't use unstable tarball. * gnu/packages/graphics.scm (ogre)[source]: Download using git-fetch. --- gnu/packages/graphics.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index e4a6ee8476..25c9e0b476 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -354,13 +354,14 @@ (define-public ogre (version "1.10.11") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/OGRECave/" name - "/archive/v" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/OGRECave/ogre.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "13bdh9v4026qf8w8rbfln2rmwf0rby1a8fz55zpdvpy105i6cbpz")) - (file-name (string-append name "-" version ".tar.gz")))) + "072rzw9mxymbiypgkrbkk9h10rgly6gczik4dlmssk6xkpqckaqr")))) (build-system cmake-build-system) (arguments '(#:phases From 1c0c4b544deb9cd9435da5d7ace5931d2eef986b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:05:13 +0100 Subject: [PATCH 255/411] gnu: Add r-varselrf. * gnu/packages/cran.scm (r-varselrf): New variable. --- gnu/packages/cran.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d15516ba0d..2106b0caf9 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13373,3 +13373,30 @@ (define-public r-ggraph visualizations and provides the same flexible approach to building up plots layer by layer.") (license license:gpl3))) + +(define-public r-varselrf + (package + (name "r-varselrf") + (version "0.7-8") + (source + (origin + (method url-fetch) + (uri (cran-uri "varSelRF" version)) + (sha256 + (base32 + "0h49rl1j13yfh97rsfsyh9s2c4wajny4rzms2qw77d0cavxqg53i")))) + (properties `((upstream-name . "varSelRF"))) + (build-system r-build-system) + (propagated-inputs + `(("r-randomforest" ,r-randomforest))) + (home-page "http://ligarto.org/rdiaz/Software/Software.html") + (synopsis "Variable selection using random forests") + (description + "This package provides tools for the variable selection from random +forests using both backwards variable elimination (for the selection of small +sets of non-redundant variables) and selection based on the importance +spectrum (somewhat similar to scree plots; for the selection of large, +potentially highly-correlated variables). The main applications are in +high-dimensional data (e.g., microarray data, and other genomics and +proteomics applications).") + (license license:gpl2+))) From aae0b86d35b4ead8bdd9c8adc69972ab2a486a2e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:08:55 +0100 Subject: [PATCH 256/411] gnu: Add r-pamr. * gnu/packages/cran.scm (r-pamr): New variable. --- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 2106b0caf9..6a61fbe69f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13400,3 +13400,26 @@ (define-public r-varselrf high-dimensional data (e.g., microarray data, and other genomics and proteomics applications).") (license license:gpl2+))) + +(define-public r-pamr + (package + (name "r-pamr") + (version "1.56") + (source + (origin + (method url-fetch) + (uri (cran-uri "pamr" version)) + (sha256 + (base32 + "03h1m5fkw76jjln1psdb7x913a499ghf7n48rcd8damr5vdyf961")))) + (build-system r-build-system) + (propagated-inputs + `(("r-cluster" ,r-cluster) + ("r-survival" ,r-survival))) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "https://cran.r-project.org/web/packages/pamr/") + (synopsis "Prediction Analysis for Microarrays") + (description + "This package provides some functions for sample classification in +microarrays.") + (license license:gpl2))) From fe3fb4e7ef253d990c4a734fb5460f8c5aaf5f46 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:10:45 +0100 Subject: [PATCH 257/411] gnu: Add r-rda. * gnu/packages/cran.scm (r-rda): New variable. --- gnu/packages/cran.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 6a61fbe69f..f68579da0d 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13423,3 +13423,22 @@ (define-public r-pamr "This package provides some functions for sample classification in microarrays.") (license license:gpl2))) + +(define-public r-rda + (package + (name "r-rda") + (version "1.0.2-2.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "rda" version)) + (sha256 + (base32 + "1y4fawslr3i6crjaxhsdb47kfsqkyszdx6avq3r5far5a4pvc639")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/rda/") + (synopsis "Shrunken centroids regularized discriminant analysis") + (description + "This package provides tools for shrunken centroids regularized +discriminant analysis for the purpose of classifying high dimensional data.") + (license license:gpl2+))) From 8473597f805a33f79a7977ccdc98addeea8bc0c9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:10:53 +0100 Subject: [PATCH 258/411] gnu: Add r-ggvis. * gnu/packages/cran.scm (r-ggvis): New variable. --- gnu/packages/cran.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index f68579da0d..202fba63a0 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13442,3 +13442,32 @@ (define-public r-rda "This package provides tools for shrunken centroids regularized discriminant analysis for the purpose of classifying high dimensional data.") (license license:gpl2+))) + +(define-public r-ggvis + (package + (name "r-ggvis") + (version "0.4.4") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggvis" version)) + (sha256 + (base32 + "1bxggjr2313kfy895j0fvrv4bg7yh2z87907lk48i1kn5c9flchk")))) + (build-system r-build-system) + (propagated-inputs + `(("r-assertthat" ,r-assertthat) + ("r-dplyr" ,r-dplyr) + ("r-htmltools" ,r-htmltools) + ("r-jsonlite" ,r-jsonlite) + ("r-lazyeval" ,r-lazyeval) + ("r-magrittr" ,r-magrittr) + ("r-shiny" ,r-shiny))) + (home-page "https://ggvis.rstudio.com/") + (synopsis "Interactive grammar of graphics") + (description + "This package is a data visualization package for R providing an +implementation of an interactive grammar of graphics, taking the best parts of +ggplot2, combining them with the reactive framework of Shiny and drawing web +graphics using Vega.") + (license license:gpl2))) From d59df3340b0caf28b8b3841bd55459bc67fb0048 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:11:03 +0100 Subject: [PATCH 259/411] gnu: Add r-gbm. * gnu/packages/cran.scm (r-gbm): New variable. --- gnu/packages/cran.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 202fba63a0..ff52d433d5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13471,3 +13471,30 @@ (define-public r-ggvis ggplot2, combining them with the reactive framework of Shiny and drawing web graphics using Vega.") (license license:gpl2))) + +(define-public r-gbm + (package + (name "r-gbm") + (version "2.1.5") + (source + (origin + (method url-fetch) + (uri (cran-uri "gbm" version)) + (sha256 + (base32 + "0vs6ljaqhwwpgr8wlbhmm4v147rd82kl16rpaijqiylxcc8dxyq6")))) + (build-system r-build-system) + (propagated-inputs + `(("r-gridextra" ,r-gridextra) + ("r-lattice" ,r-lattice) + ("r-survival" ,r-survival))) + (home-page "https://github.com/gbm-developers/gbm") + (synopsis "Generalized boosted regression models") + (description + "This package is an implementation of extensions to Freund and Schapire's +AdaBoost algorithm and Friedman's gradient boosting machine. It includes +regression methods for least squares, absolute loss, t-distribution loss, +quantile regression, logistic, multinomial logistic, Poisson, Cox proportional +hazards partial likelihood, AdaBoost exponential loss, Huberized hinge loss, +and Learning to Rank measures (LambdaMart).") + (license license:gpl2+))) From efba56139ad754139d8a551ce38c6ccffb3f9a7a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:11:16 +0100 Subject: [PATCH 260/411] gnu: Add r-threejs. * gnu/packages/cran.scm (r-threejs): New variable. --- gnu/packages/cran.scm | 68 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index ff52d433d5..d709bfc594 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13498,3 +13498,71 @@ (define-public r-gbm hazards partial likelihood, AdaBoost exponential loss, Huberized hinge loss, and Learning to Rank measures (LambdaMart).") (license license:gpl2+))) + +(define-public r-threejs + (package + (name "r-threejs") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "threejs" version)) + (sha256 + (base32 + "1s3rdlzy7man6177ycayg6xsh6k8y1r9rdj9yzn3b93j2rs0nxbi")))) + (build-system r-build-system) + (arguments + `(#:modules ((guix build utils) + (guix build r-build-system) + (srfi srfi-1) + (ice-9 popen)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'process-javascript + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "inst" + (call-with-values + (lambda () + (unzip2 + `((,(assoc-ref inputs "js-jquery") + "htmlwidgets/lib/jquery/jquery.min.js") + (,(assoc-ref inputs "js-threejs-85") + "htmlwidgets/lib/threejs-85/three.min.js")))) + (lambda (sources targets) + (for-each (lambda (source target) + (format #t "Processing ~a --> ~a~%" + source target) + (delete-file target) + (let ((minified (open-pipe* OPEN_READ "uglify-js" source))) + (call-with-output-file target + (lambda (port) + (dump-port minified port))))) + sources targets)))) + #t))))) + (propagated-inputs + `(("r-base64enc" ,r-base64enc) + ("r-crosstalk" ,r-crosstalk) + ("r-htmlwidgets" ,r-htmlwidgets) + ("r-igraph" ,r-igraph))) + (native-inputs + `(("uglify-js" ,uglify-js) + ("js-jquery" + ,(origin + (method url-fetch) + (uri "https://code.jquery.com/jquery-3.3.1.js") + (sha256 + (base32 + "1b8zxrp6xwzpw25apn8j4qws0f6sr7qr7h2va5h1mjyfqvn29anq")))) + ("js-threejs-85" + ,(origin + (method url-fetch) + (uri "https://raw.githubusercontent.com/mrdoob/three.js/r85/build/three.js") + (sha256 + (base32 + "17khh3dmijdjw4qb9qih1rqhxgrmm3pc6w8lzdx6rf6a3mrc9xnl")))))) + (home-page "https://bwlewis.github.io/rthreejs") + (synopsis "Interactive 3D scatter plots, networks and globes") + (description + "Create interactive 3D scatter plots, network plots, and globes in R +using the three.js visualization library.") + (license license:expat))) From 74cada8ef1dc56b1af7427807d359115dd07c91b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:11:25 +0100 Subject: [PATCH 261/411] gnu: Add r-mlbench. * gnu/packages/cran.scm (r-mlbench): New variable. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d709bfc594..04c0f79230 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13566,3 +13566,23 @@ (define-public r-threejs "Create interactive 3D scatter plots, network plots, and globes in R using the three.js visualization library.") (license license:expat))) + +(define-public r-mlbench + (package + (name "r-mlbench") + (version "2.1-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "mlbench" version)) + (sha256 + (base32 + "1rp035qxfgh5ail92zjh9jh57dj0b8babw3wsg29v8ricpal30bl")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/mlbench/") + (synopsis "Machine learning benchmark problems") + (description + "This package provides a collection of artificial and real-world machine +learning benchmark problems, including, e.g., several data sets from the UCI +repository.") + (license license:gpl2))) From 409a13fe76621567e128ba519c8c92fc517cdc94 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:11:31 +0100 Subject: [PATCH 262/411] gnu: Add r-mpm. * gnu/packages/cran.scm (r-mpm): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 04c0f79230..599fd6b584 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13586,3 +13586,27 @@ (define-public r-mlbench learning benchmark problems, including, e.g., several data sets from the UCI repository.") (license license:gpl2))) + +(define-public r-mpm + (package + (name "r-mpm") + (version "1.0-22") + (source + (origin + (method url-fetch) + (uri (cran-uri "mpm" version)) + (sha256 + (base32 + "0wijw8v0wmbfrda5564cmnp788qmlkk21yn5cp5qk8aprm9l1fnk")))) + (build-system r-build-system) + (propagated-inputs + `(("r-kernsmooth" ,r-kernsmooth) + ("r-mass" ,r-mass))) + (home-page "http://mpm.r-forge.r-project.org") + (synopsis "Multivariate projection methods") + (description + "This is a package for exploratory graphical analysis of multivariate +data, specifically gene expression data with different projection methods: +principal component analysis, correspondence analysis, spectral map +analysis.") + (license license:gpl2+))) From ce77562a9e8cf2280a87b5462c33affc06c98de6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:21:59 +0100 Subject: [PATCH 263/411] gnu: Add r-mlinterfaces. * gnu/packages/bioconductor.scm (r-mlinterfaces): New variable. --- gnu/packages/bioconductor.scm | 41 +++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 46d1880ccb..26ebb0930b 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2882,3 +2882,44 @@ (define-public r-clusterprofiler "This package implements methods to analyze and visualize functional profiles (GO and KEGG) of gene and gene clusters.") (license license:artistic2.0))) + +(define-public r-mlinterfaces + (package + (name "r-mlinterfaces") + (version "1.62.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "MLInterfaces" version)) + (sha256 + (base32 + "12bgplyzfh0hkwmdp5w4cs5zw3ygdhzmiqzm8vhjyni6m9nrxwy8")))) + (properties `((upstream-name . "MLInterfaces"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotate" ,r-annotate) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-cluster" ,r-cluster) + ("r-fpc" ,r-fpc) + ("r-gbm" ,r-gbm) + ("r-gdata" ,r-gdata) + ("r-genefilter" ,r-genefilter) + ("r-ggvis" ,r-ggvis) + ("r-hwriter" ,r-hwriter) + ("r-mass" ,r-mass) + ("r-mlbench" ,r-mlbench) + ("r-pls" ,r-pls) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-rda" ,r-rda) + ("r-rpart" ,r-rpart) + ("r-sfsmisc" ,r-sfsmisc) + ("r-shiny" ,r-shiny) + ("r-threejs" ,r-threejs))) + (home-page "https://bioconductor.org/packages/MLInterfaces/") + (synopsis "Interfaces to R machine learning procedures") + (description + "This package provides uniform interfaces to machine learning code for +data in R and Bioconductor containers.") + ;; Any version of the LGPL. + (license license:lgpl2.1+))) From a793e88c5ed84f78fded2051649c06e1ac9a3efc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:22:15 +0100 Subject: [PATCH 264/411] gnu: Add r-annaffy. * gnu/packages/bioconductor.scm (r-annaffy): New variable. --- gnu/packages/bioconductor.scm | 36 +++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 26ebb0930b..4cc9887d33 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2923,3 +2923,39 @@ (define-public r-mlinterfaces data in R and Bioconductor containers.") ;; Any version of the LGPL. (license license:lgpl2.1+))) + +(define-public r-annaffy + (package + (name "r-annaffy") + (version "1.54.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "annaffy" version)) + (sha256 + (base32 + "16c6allp4vlx0g3nffanrm0mkkf8s2n31dccw4bflnx2pr81bmd5")))) + (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-reference-to-non-free-data + (lambda _ + (substitute* "DESCRIPTION" + ((", KEGG.db") "")) + #t))))) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-dbi" ,r-dbi) + ("r-go-db" ,r-go-db))) + (home-page "https://bioconductor.org/packages/annaffy/") + (synopsis "Annotation tools for Affymetrix biological metadata") + (description + "This package provides functions for handling data from Bioconductor +Affymetrix annotation data packages. It produces compact HTML and text +reports including experimental data and URL links to many online databases. +It allows searching of biological metadata using various criteria.") + ;; Any version of the LGPL according to the DESCRIPTION file. A copy of + ;; the LGPL 2.1 is included. + (license license:lgpl2.1+))) From 0ec0a5ecc973d4f33260e00fa5448cc54a7c3a20 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:22:24 +0100 Subject: [PATCH 265/411] gnu: Add r-a4core. * gnu/packages/bioconductor.scm (r-a4core): New variable. --- gnu/packages/bioconductor.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 4cc9887d33..4dffe978e9 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2959,3 +2959,26 @@ (define-public r-annaffy ;; Any version of the LGPL according to the DESCRIPTION file. A copy of ;; the LGPL 2.1 is included. (license license:lgpl2.1+))) + +(define-public r-a4core + (package + (name "r-a4core") + (version "1.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "a4Core" version)) + (sha256 + (base32 + "1d62afxkfp9zbp59ijcn4wd1gdynygw013av41wq8bfm3cx6f9zr")))) + (properties `((upstream-name . "a4Core"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-glmnet" ,r-glmnet))) + (home-page "https://bioconductor.org/packages/a4Core") + (synopsis "Automated Affymetrix array analysis core package") + (description + "This is the core package for the automated analysis of Affymetrix +arrays.") + (license license:gpl3))) From 9ae37581e095c03b62a6b4231c3c26cca0e8fad6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:22:32 +0100 Subject: [PATCH 266/411] gnu: Add r-a4classif. * gnu/packages/bioconductor.scm (r-a4classif): New variable. --- gnu/packages/bioconductor.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 4dffe978e9..db691bcd88 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2982,3 +2982,31 @@ (define-public r-a4core "This is the core package for the automated analysis of Affymetrix arrays.") (license license:gpl3))) + +(define-public r-a4classif + (package + (name "r-a4classif") + (version "1.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "a4Classif" version)) + (sha256 + (base32 + "02l77a59865ly3bydv74ff2l2wfb0x5s283g1nx6g1qrw3ly982j")))) + (properties `((upstream-name . "a4Classif"))) + (build-system r-build-system) + (propagated-inputs + `(("r-a4core" ,r-a4core) + ("r-a4preproc" ,r-a4preproc) + ("r-glmnet" ,r-glmnet) + ("r-mlinterfaces" ,r-mlinterfaces) + ("r-pamr" ,r-pamr) + ("r-rocr" ,r-rocr) + ("r-varselrf" ,r-varselrf))) + (home-page "https://bioconductor.org/packages/a4Classif/") + (synopsis "Automated Affymetrix array analysis classification package") + (description + "This is the classification package for the automated analysis of +Affymetrix arrays.") + (license license:gpl3))) From b8d13e2c0ee082b16f43930385cc34ce09ae4ef3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:22:41 +0100 Subject: [PATCH 267/411] gnu: Add r-a4preproc. * gnu/packages/bioconductor.scm (r-a4preproc): New variable. --- gnu/packages/bioconductor.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index db691bcd88..f7191d2d4e 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3010,3 +3010,25 @@ (define-public r-a4classif "This is the classification package for the automated analysis of Affymetrix arrays.") (license license:gpl3))) + +(define-public r-a4preproc + (package + (name "r-a4preproc") + (version "1.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "a4Preproc" version)) + (sha256 + (base32 + "1dd3fqcc7nr2zbi46k0mnqkh42mfxk894ixfpqg7i9np2523p5gp")))) + (properties `((upstream-name . "a4Preproc"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi))) + (home-page "https://bioconductor.org/packages/a4Preproc/") + (synopsis "Automated Affymetrix array analysis preprocessing package") + (description + "This is a package for the automated analysis of Affymetrix arrays. It +is used for preprocessing the arrays.") + (license license:gpl3))) From 8e15f861399333ac8346458eba34ab3d94c69a27 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:22:50 +0100 Subject: [PATCH 268/411] gnu: Add r-a4reporting. * gnu/packages/bioconductor.scm (r-a4reporting): New variable. --- gnu/packages/bioconductor.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index f7191d2d4e..bdf8938488 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3032,3 +3032,26 @@ (define-public r-a4preproc "This is a package for the automated analysis of Affymetrix arrays. It is used for preprocessing the arrays.") (license license:gpl3))) + +(define-public r-a4reporting + (package + (name "r-a4reporting") + (version "1.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "a4Reporting" version)) + (sha256 + (base32 + "124774z3bfdjgxx2ad40795h92aam21yfx0rw0n01nk2wf6k7xc4")))) + (properties `((upstream-name . "a4Reporting"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annaffy" ,r-annaffy) + ("r-xtable" ,r-xtable))) + (home-page "https://bioconductor.org/packages/a4Reporting/") + (synopsis "Automated Affymetrix array analysis reporting package") + (description + "This is a package for the automated analysis of Affymetrix arrays. It +provides reporting features.") + (license license:gpl3))) From dbfe33758627782302ff7c9bfa11640fb0900476 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:22:57 +0100 Subject: [PATCH 269/411] gnu: Add r-a4base. * gnu/packages/bioconductor.scm (r-a4base): New variable. --- gnu/packages/bioconductor.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index bdf8938488..7b849a0718 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3055,3 +3055,35 @@ (define-public r-a4reporting "This is a package for the automated analysis of Affymetrix arrays. It provides reporting features.") (license license:gpl3))) + +(define-public r-a4base + (package + (name "r-a4base") + (version "1.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "a4Base" version)) + (sha256 + (base32 + "0k9k3bv99msbwf2y416cz316ssaha2dxvmaddbl7z9037p8mjr70")))) + (properties `((upstream-name . "a4Base"))) + (build-system r-build-system) + (propagated-inputs + `(("r-a4core" ,r-a4core) + ("r-a4preproc" ,r-a4preproc) + ("r-annaffy" ,r-annaffy) + ("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-genefilter" ,r-genefilter) + ("r-glmnet" ,r-glmnet) + ("r-gplots" ,r-gplots) + ("r-limma" ,r-limma) + ("r-mpm" ,r-mpm) + ("r-multtest" ,r-multtest))) + (home-page "https://bioconductor.org/packages/a4Base/") + (synopsis "Automated Affymetrix array analysis base package") + (description + "This package provides basic features for the automated analysis of +Affymetrix arrays.") + (license license:gpl3))) From 84ad024e2d0dff61aa6e1333886f314c72e250ed Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 18:23:02 +0100 Subject: [PATCH 270/411] gnu: Add r-a4. * gnu/packages/bioconductor.scm (r-a4): New variable. --- gnu/packages/bioconductor.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 7b849a0718..7facbc1957 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3087,3 +3087,28 @@ (define-public r-a4base "This package provides basic features for the automated analysis of Affymetrix arrays.") (license license:gpl3))) + +(define-public r-a4 + (package + (name "r-a4") + (version "1.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "a4" version)) + (sha256 + (base32 + "1iqjy35rqx3m2y0dm2bk4cnzdm1qvbi608bfmrid88w6wmwz3qlk")))) + (build-system r-build-system) + (propagated-inputs + `(("r-a4base" ,r-a4base) + ("r-a4classif" ,r-a4classif) + ("r-a4core" ,r-a4core) + ("r-a4preproc" ,r-a4preproc) + ("r-a4reporting" ,r-a4reporting))) + (home-page "https://bioconductor.org/packages/a4/") + (synopsis "Automated Affymetrix array analysis umbrella package") + (description + "This package provides a software suite for the automated analysis of +Affymetrix arrays.") + (license license:gpl3))) From 642b195a70157bf6380622f8ed1e228f73db9cdb Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 28 Mar 2019 19:58:16 +0200 Subject: [PATCH 271/411] gnu: gzdoom: Limit supported architectures. * gnu/packages/games.scm (gzdoom)[supported-systems]: New field. --- gnu/packages/games.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 23dbbca4f7..f1bfd4ea09 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5501,6 +5501,8 @@ (define-public gzdoom and the new ZScript language. In addition to Doom, it supports Heretic, Hexen, Strife, Chex Quest, and fan-created games like Harmony, Hacx and Freedoom.") (home-page "https://zdoom.org/index") + ;; The source uses x86 assembly + (supported-systems '("x86_64-linux" "i686-linux")) (license (list license:gpl3+ ; gzdoom game license:lgpl3+ ; gzdoom renderer license:expat ; gdtoa From 29e3fd3424f0f2e30e8ef3dba20e87f5f2d01b20 Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Thu, 28 Mar 2019 03:59:34 +0100 Subject: [PATCH 272/411] gnu: emacs-dired-hacks: Update to 0.0.1-1.2c12345. * gnu/packages/emacs-xyz.scm (emacs-dired-hacks): Update to 0.0.1-1.2c12345. Signed-off-by: Oleg Pykhalov --- gnu/packages/emacs-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 7554b02599..79b0c6d75d 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -7460,7 +7460,7 @@ (define-public emacs-eimp (license license:gpl2+)))) (define-public emacs-dired-hacks - (let ((commit "eda68006ce73bbf6b9b995bfd70d08bec8cade36") + (let ((commit "2c1234592aee91dcd9401bcd67213e6a4a464fd9") (revision "1")) (package (name "emacs-dired-hacks") @@ -7474,7 +7474,7 @@ (define-public emacs-dired-hacks (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1w7ssl9zssn5rcha6apf4h8drkd02k4xgvs203bdbqyqp9wz9brx")))) + "1g7mky41cahpryzj6frdgzdymknpqq7pidzfjj9304887kijmhj3")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-dash" ,emacs-dash) From 6da31b3c7bfcd8f012695574e91d7da32f202280 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 28 Mar 2019 13:39:12 +0100 Subject: [PATCH 273/411] gnu: dvdisaster: Use archived source and home page. * gnu/packages/cdrom.scm (dvdisaster)[source, home-page]: Use archive.org mirror. --- gnu/packages/cdrom.scm | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm index ae982cef8a..f16f4ca4f8 100644 --- a/gnu/packages/cdrom.scm +++ b/gnu/packages/cdrom.scm @@ -336,13 +336,15 @@ (define-public dvdisaster (package (name "dvdisaster") (version "0.79.5") - (source (origin - (method url-fetch) - (uri (string-append "http://dvdisaster.net/downloads/dvdisaster-" - version ".tar.bz2")) - (sha256 - (base32 - "0f8gjnia2fxcbmhl8b3qkr5b7idl8m855dw7xw2fnmbqwvcm6k4w")))) + (source + (origin + (method url-fetch) + ;; Update this (and update HOME-PAGE) when/if one reappears. + (uri (string-append "https://web.archive.org/web/20180428070843/" + "http://dvdisaster.net/downloads/dvdisaster-" + version ".tar.bz2")) + (sha256 + (base32 "0f8gjnia2fxcbmhl8b3qkr5b7idl8m855dw7xw2fnmbqwvcm6k4w")))) (build-system gnu-build-system) (inputs `(("gtk+" ,gtk+-2))) @@ -384,7 +386,8 @@ (define-public dvdisaster (copy-file "contrib/dvdisaster48.xpm" (string-append datadir "/pixmaps/dvdisaster.xpm")) #t)))))) - (home-page "http://dvdisaster.net/en/index.html") + (home-page (string-append "https://web.archive.org/web/20180428070843/" + "http://dvdisaster.net/en/index.html")) (synopsis "Error correcting codes for optical media images") (description "Optical media (CD,DVD,BD) keep their data only for a finite time (typically for many years). After that time, data loss develops From 01307bba9c00ada07f8a39bd8de7031beef12afd Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 28 Mar 2019 14:01:46 +0100 Subject: [PATCH 274/411] gnu: reptyr: Update to 0.7.0. * gnu/packages/screen.scm (reptyr): Update to 0.7.0. [source]: Remove patch. [arguments]: Add bash completion directory name. * gnu/packages/patches/reptyr-fix-gcc-7.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/patches/reptyr-fix-gcc-7.patch | 38 --------------------- gnu/packages/screen.scm | 22 ++++++------ 3 files changed, 12 insertions(+), 49 deletions(-) delete mode 100644 gnu/packages/patches/reptyr-fix-gcc-7.patch diff --git a/gnu/local.mk b/gnu/local.mk index 42d8f1ce18..833944bfbd 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1218,7 +1218,6 @@ dist_patch_DATA = \ %D%/packages/patches/readline-6.2-CVE-2014-2524.patch \ %D%/packages/patches/red-eclipse-remove-gamma-name-hack.patch \ %D%/packages/patches/reposurgeon-add-missing-docbook-files.patch \ - %D%/packages/patches/reptyr-fix-gcc-7.patch \ %D%/packages/patches/ripperx-missing-file.patch \ %D%/packages/patches/rpcbind-CVE-2017-8779.patch \ %D%/packages/patches/rtags-separate-rct.patch \ diff --git a/gnu/packages/patches/reptyr-fix-gcc-7.patch b/gnu/packages/patches/reptyr-fix-gcc-7.patch deleted file mode 100644 index 5e0e581218..0000000000 --- a/gnu/packages/patches/reptyr-fix-gcc-7.patch +++ /dev/null @@ -1,38 +0,0 @@ -This patch allows reptyr to build with gcc 7. It is taken from reptyr mainline patches -fa0d63f and b45fd92. - -https://github.com/nelhage/reptyr/commit/fa0d63ff8c488be15976e5353580b565e85586a1 -https://github.com/nelhage/reptyr/commit/b45fd9238958fcf2d8f3d6fc23e6d491febea2ac - -Patch by Nelson Elhage . - -diff --git a/attach.c b/attach.c -index bd8ef8c..8d9cbf8 100644 ---- a/attach.c -+++ b/attach.c -@@ -389,8 +389,11 @@ int setup_steal_socket(struct steal_pty_state *steal) { - return errno; - - steal->addr_un.sun_family = AF_UNIX; -- snprintf(steal->addr_un.sun_path, sizeof(steal->addr_un.sun_path), -- "%s/reptyr.sock", steal->tmpdir); -+ if (snprintf(steal->addr_un.sun_path, sizeof(steal->addr_un.sun_path), -+ "%s/reptyr.sock", steal->tmpdir) >= sizeof(steal->addr_un.sun_path)) { -+ error("tmpdir path too long!"); -+ return ENAMETOOLONG; -+ } - - if ((steal->sockfd = socket(AF_UNIX, SOCK_DGRAM, 0)) < 0) - return errno; -diff --git a/platform/linux/linux.h b/platform/linux/linux.h -index 9e6b78a..3ec5a99 100644 ---- a/platform/linux/linux.h -+++ b/platform/linux/linux.h -@@ -40,6 +40,7 @@ - #include - #include - #include -+#include - #include - #include - #include diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm index 38df2594f2..eb4c477a89 100644 --- a/gnu/packages/screen.scm +++ b/gnu/packages/screen.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2017 Mathieu Othacehe -;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -153,23 +153,25 @@ (define-public byobu (define-public reptyr (package (name "reptyr") - (version "0.6.2") + (version "0.7.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/nelhage/reptyr/archive" "/reptyr-" version ".tar.gz")) - ;; XXX: To be removed on next reptyr release. - (patches (search-patches "reptyr-fix-gcc-7.patch")) (sha256 - (base32 - "07pfl0rkgm8m3f3jy8r9l2yvnhf8lgllpsk3mh57mhzdxq8fagf7")))) + (base32 "10s9blv8xljzfdn4xly5y2q66kd0ldj3wnflymsxb5g6r3s3kidi")))) (build-system gnu-build-system) (arguments - '(#:tests? #f ; no tests - #:make-flags (list "CC=gcc" - (string-append "PREFIX=" %output)) - #:phases (modify-phases %standard-phases (delete 'configure)))) + '(#:tests? #f ; no tests + #:make-flags + (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out")) + (string-append "BASHCOMPDIR=" (assoc-ref %outputs "out") + "/etc/bash_completion.d")) + #:phases + (modify-phases %standard-phases + (delete 'configure)))) ; no configure script (home-page "https://github.com/nelhage/reptyr") (synopsis "Tool for reparenting a running program to a new terminal") (description From cf9ab49e97f6b9b263b5f919574f78ef3c84cc45 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 28 Mar 2019 20:04:03 +0100 Subject: [PATCH 275/411] gnu: dropbear: Update to 2019.78. * gnu/packages/ssh.scm (dropbear): Update to 2019.78. --- gnu/packages/ssh.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index bd26149872..1ea8634021 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -451,7 +451,7 @@ (define-public et (define-public dropbear (package (name "dropbear") - (version "2019.77") + (version "2019.78") (source (origin (method url-fetch) @@ -459,7 +459,7 @@ (define-public dropbear "https://matt.ucc.asn.au/dropbear/releases/" "dropbear-" version ".tar.bz2")) (sha256 - (base32 "13a55fcy2mx2pvsfj6dh9107k4wnbd9ybdyi3w3ivgikwvmph7yr")))) + (base32 "19242qlr40pbqfqd0gg6h8qpj38q6lgv03ja6sahj9vj2abnanaj")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; there is no "make check" or anything similar ;; TODO: Investigate unbundling libtommath and libtomcrypt or at least From 40d59c4e22c217e1f9215056b8b5977a6352239c Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 28 Mar 2019 20:14:36 +0100 Subject: [PATCH 276/411] gnu: dropbear: Don't use unstable tarball. * gnu/packages/screen.scm (dropbear)[source]: Use GIT-FETCH and GIT-FILE-NAME. --- gnu/packages/screen.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm index eb4c477a89..671c8e57a8 100644 --- a/gnu/packages/screen.scm +++ b/gnu/packages/screen.scm @@ -27,6 +27,7 @@ (define-module (gnu packages screen) #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages ncurses) @@ -156,11 +157,13 @@ (define-public reptyr (version "0.7.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/nelhage/reptyr/archive" - "/reptyr-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/nelhage/reptyr.git") + (commit (string-append "reptyr-" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "10s9blv8xljzfdn4xly5y2q66kd0ldj3wnflymsxb5g6r3s3kidi")))) + (base32 "1hnijfz1ab34j2h2cxc3f43rmbclyihgn9x9wxa7jqqgb2xm71hj")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no tests From d2df92e47c758ddc3518db618b5c55c7df21bd0a Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Thu, 28 Mar 2019 03:27:53 +0100 Subject: [PATCH 277/411] gnu: Add emacs-link-hint. * gnu/packages/emacs-xyz.scm (emacs-link-hint): New variable. Signed-off-by: Oleg Pykhalov --- gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 79b0c6d75d..51444d5687 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1181,6 +1181,32 @@ (define-public emacs-aggressive-indent than @code{electric-indent-mode}.") (license license:gpl2+))) +(define-public emacs-link-hint + ;; Last release was in 2015. + (let ((commit "d74a483652486260c052941fedeadddb1ea71f88") + (revision "1")) + (package + (name "emacs-link-hint") + (version (git-version "0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/noctuid/link-hint.el") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0dghxd165fbds6czy9bfwpid3i4irgp3q08n9mg57sfifi0cmij0")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-avy" ,emacs-avy))) + (home-page "https://github.com/noctuid/link-hint.el") + (synopsis "Vimperator-style link-hinting in Emacs") + (description "This package provides commands for visiting and acting on +links.") + (license license:gpl3+)))) + (define-public emacs-ag (package (name "emacs-ag") From 241885347a1471212d86d3b181498a0e292ca16a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 28 Mar 2019 21:41:33 +0200 Subject: [PATCH 278/411] gnu: reptyr: Enable support for aarch64-linux. * gnu/packages/screen.scm (reptyr)[supported-systems]: Mark aarch64-linux as supported. --- gnu/packages/screen.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm index 671c8e57a8..7763354158 100644 --- a/gnu/packages/screen.scm +++ b/gnu/packages/screen.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013 Cyril Roelandt ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2015, 2017 Eric Bavier -;;; Copyright © 2016, 2017 Efraim Flashner +;;; Copyright © 2016, 2017, 2019 Efraim Flashner ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2017 Mathieu Othacehe ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice @@ -23,7 +23,6 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages screen) - #:use-module (srfi srfi-1) #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) @@ -182,7 +181,6 @@ (define-public reptyr it to a new terminal. Started a long-running process over @code{ssh}, but have to leave and don't want to interrupt it? Just start a @code{screen}, use reptyr to grab it, and then kill the @code{ssh} session and head on home.") - ;; Reptyr currently does not support mips or aarch64. - (supported-systems (fold delete %supported-systems - '("mips64el-linux" "aarch64-linux"))) + ;; Reptyr currently does not support mips. + (supported-systems (delete "mips64el-linux" %supported-systems)) (license expat))) From e8cfce439afed945e352ad28f73f0a5f7840f503 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Thu, 28 Mar 2019 22:55:17 +0100 Subject: [PATCH 279/411] gnu: php: Disable failing tests on armhf. * gnu/packages/php.scm (php)[arguments]: Disable failing tests on armhf. --- gnu/packages/php.scm | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index 8d96e54c90..ffb81da5fc 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -86,7 +86,7 @@ (define-public php #t)))) (build-system gnu-build-system) (arguments - '(#:configure-flags + `(#:configure-flags (let-syntax ((with (syntax-rules () ((_ option input) (string-append option "=" @@ -182,6 +182,17 @@ (define-public php (substitute* "ext/standard/tests/streams/bug60602.phpt" (("'ls'") (string-append "'" (which "ls") "'"))) + ,@(if (string-prefix? "armhf" (or (%current-system) + (%current-target-system))) + ;; Drop tests known to fail on armhf. + '((for-each delete-file + (list + "ext/calendar/tests/unixtojd_error1.phpt" + ;; arm can be a lot slower, so a time-related test fails + "ext/fileinfo/tests/cve-2014-3538-nojit.phpt" + "ext/pcre/tests/bug76514.phpt" + "ext/pcre/tests/preg_match_error3.phpt")))) + ;; Drop tests that are known to fail. (for-each delete-file '("ext/posix/tests/posix_getgrgid.phpt" ; Requires /etc/group. From f2bf0407de70e7ae29518400d66ef968134f5169 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 28 Mar 2019 15:46:18 +0100 Subject: [PATCH 280/411] packages: Reintroduce 'find-newest-available-packages'. This is a followup to e2a903c807ccacec5925f197ce26f626060e1953. * gnu/packages.scm (find-newest-available-packages): New procedure. --- gnu/packages.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages.scm b/gnu/packages.scm index 9f211ae23c..48390575ba 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm @@ -32,6 +32,7 @@ (define-module (gnu packages) mkdir-p)) #:autoload (guix profiles) (packages->manifest) #:use-module (guix describe) + #:use-module (guix deprecation) #:use-module (ice-9 vlist) #:use-module (ice-9 match) #:autoload (ice-9 binary-ports) (put-bytevector) @@ -55,6 +56,7 @@ (define-module (gnu packages) fold-packages fold-available-packages + find-newest-available-packages find-packages-by-name find-package-locations find-best-packages-by-name @@ -186,6 +188,29 @@ (define %patch-path directory)) %load-path))) +;; This procedure is used by Emacs-Guix up to 0.5.1.1, so keep it for now. +;; See . +(define-deprecated find-newest-available-packages + find-packages-by-name + (mlambda () + "Return a vhash keyed by package names, and with +associated values of the form + + (newest-version newest-package ...) + +where the preferred package is listed first." + (fold-packages (lambda (p r) + (let ((name (package-name p)) + (version (package-version p))) + (match (vhash-assoc name r) + ((_ newest-so-far . pkgs) + (case (version-compare version newest-so-far) + ((>) (vhash-cons name `(,version ,p) r)) + ((=) (vhash-cons name `(,version ,p ,@pkgs) r)) + ((<) r))) + (#f (vhash-cons name `(,version ,p) r))))) + vlist-null))) + (define (fold-available-packages proc init) "Fold PROC over the list of available packages. For each available package, PROC is called along these lines: From 9f4169f6c8014206ea389e1ded88622fa6cfbe4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 28 Mar 2019 15:55:47 +0100 Subject: [PATCH 281/411] pull: Factorize pretty-printing for new/upgraded package lists. * guix/scripts/pull.scm (display-new/upgraded-packages)[pretty]: New procedure. Use it. --- guix/scripts/pull.scm | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm index 730b6a0bf2..e06ec2f291 100644 --- a/guix/scripts/pull.scm +++ b/guix/scripts/pull.scm @@ -382,6 +382,11 @@ (define* (display-new/upgraded-packages alist1 alist2 "Given the two package name/version alists ALIST1 and ALIST2, display the list of new and upgraded packages going from ALIST1 to ALIST2. When ALIST1 and ALIST2 differ, display HEADING upfront." + (define (pretty str column) + (indented-string (fill-paragraph str (- (%text-width) 4) + column) + 4)) + (let-values (((new upgraded) (new/upgraded-packages alist1 alist2))) (unless (and (null? new) (null? upgraded)) (display heading)) @@ -392,21 +397,17 @@ (define* (display-new/upgraded-packages alist1 alist2 (format #t (N_ " ~h new package: ~a~%" " ~h new packages: ~a~%" count) count - (indented-string - (fill-paragraph (string-join (sort (map first new) string Date: Thu, 28 Mar 2019 16:17:11 +0100 Subject: [PATCH 282/411] pull: Truncate the list of packages displayed on completion. Previously, if you'd run 'guix pull' after a couple of weeks, it would fill your screen with package names, which is unhelpful. * guix/scripts/pull.scm (ellipsis): New procedure. (display-new/upgraded-packages): Add #:concise?. [list->enumeration]: New procedure. Use it instead of 'string-join'. (display-profile-news): Pass #:concise? #t. --- guix/scripts/pull.scm | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm index e06ec2f291..2aaf1cc44a 100644 --- a/guix/scripts/pull.scm +++ b/guix/scripts/pull.scm @@ -181,6 +181,7 @@ (define (display-profile-news profile) (new (profile-package-alist (generation-file-name profile current)))) (display-new/upgraded-packages old new + #:concise? #t #:heading (G_ "New in this revision:\n")))) (_ #t))) @@ -377,16 +378,33 @@ (define (new/upgraded-packages alist1 alist2) alist2))) (values new upgraded))) +(define* (ellipsis #:optional (port (current-output-port))) + "Return HORIZONTAL ELLIPSIS three dots if PORT's encoding cannot represent +it." + (match (port-encoding port) + ("UTF-8" "…") + (_ "..."))) + (define* (display-new/upgraded-packages alist1 alist2 - #:key (heading "")) + #:key (heading "") concise?) "Given the two package name/version alists ALIST1 and ALIST2, display the list of new and upgraded packages going from ALIST1 to ALIST2. When ALIST1 -and ALIST2 differ, display HEADING upfront." +and ALIST2 differ, display HEADING upfront. When CONCISE? is true, do not +display long package lists that would fill the user's screen." (define (pretty str column) (indented-string (fill-paragraph str (- (%text-width) 4) column) 4)) + (define list->enumeration + (if concise? + (lambda* (lst #:optional (max 12)) + (if (> (length lst) max) + (string-append (string-join (take lst max) ", ") + ", " (ellipsis)) + (string-join lst ", "))) + (cut string-join <> ", "))) + (let-values (((new upgraded) (new/upgraded-packages alist1 alist2))) (unless (and (null? new) (null? upgraded)) (display heading)) @@ -397,8 +415,7 @@ (define (pretty str column) (format #t (N_ " ~h new package: ~a~%" " ~h new packages: ~a~%" count) count - (pretty (string-join (sort (map first new) stringenumeration (sort (map first new) stringenumeration (sort upgraded string Date: Thu, 28 Mar 2019 22:44:08 +0100 Subject: [PATCH 283/411] gnu: ratpoison: Provide a .desktop file with an absolute file name. This allows GDM to start ratpoison. Without that GDM crashes with an assertion failure when trying to start a ratpoison session. * gnu/packages/ratpoison.scm (ratpoison.desktop): Remove. (ratpoison.desktop)[arguments]: Add #:modules. Rewrite 'install-xsession' phase such that .desktop file contains an absolute file name. --- gnu/packages/ratpoison.scm | 45 +++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 23 deletions(-) diff --git a/gnu/packages/ratpoison.scm b/gnu/packages/ratpoison.scm index fefde982bc..42e17b63d9 100644 --- a/gnu/packages/ratpoison.scm +++ b/gnu/packages/ratpoison.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014 Ludovic Courtès +;;; Copyright © 2013, 2014, 2019 Ludovic Courtès ;;; Copyright © 2015 Mathieu Lirzin ;;; Copyright © 2017 Mathieu Othacehe ;;; @@ -30,17 +30,6 @@ (define-module (gnu packages ratpoison) #:use-module (gnu packages pkg-config) #:use-module (gnu packages fontutils)) -(define ratpoison.desktop - (origin - (method url-fetch) - (uri (string-append "https://sources.gentoo.org/cgi-bin/viewvc.cgi/" - "gentoo-x86/x11-wm/ratpoison/files/ratpoison.desktop" - "?revision=1.1")) - (file-name "ratpoison.desktop") - (sha256 - (base32 - "1rh3f4c3rhn6q2hmkraam0831xqcqyj3qkqf019ahaxsxaan3553")))) - (define-public ratpoison (package (name "ratpoison") @@ -55,17 +44,28 @@ (define-public ratpoison (patches (search-patches "ratpoison-shell.patch")))) (build-system gnu-build-system) (arguments - '(#:phases + `(#:modules ((ice-9 format) + ,@%gnu-build-system-modules) + #:phases (modify-phases %standard-phases (add-after 'install 'install-xsession - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((rpd "ratpoison.desktop") - (dst (string-append (assoc-ref outputs "out") - "/share/xsessions/"))) - (mkdir-p dst) - (copy-file (assoc-ref inputs rpd) - (string-append dst rpd)) - #t)))))) + (lambda* (#:key outputs #:allow-other-keys) + ;; Add a .desktop file to xsessions. + (let* ((output (assoc-ref outputs "out")) + (xsessions (string-append output "/share/xsessions"))) + (mkdir-p xsessions) + (call-with-output-file (string-append xsessions + "/ratpoison.desktop") + (lambda (port) + (format port + "[Desktop Entry]~@ + Name=ratpoison~@ + Comment=Tiling window manager: say goodbye to the rodent!~@ + Exec=~a/bin/ratpoison~@ + TryExec=~@*~a/bin/ratpoison~@ + Type=Application~%" + output))) + #t)))))) (inputs `(("fontconfig" ,fontconfig) ("freetype" ,freetype) @@ -80,8 +80,7 @@ (define-public ratpoison ("xorgproto" ,xorgproto))) (native-inputs `(("perl" ,perl) - ("pkg-config" ,pkg-config) - ("ratpoison.desktop" ,ratpoison.desktop))) + ("pkg-config" ,pkg-config))) (home-page "https://www.nongnu.org/ratpoison/") (synopsis "Simple mouse-free tiling window manager") (description From 971e6560eb7b852ccc30d0891c2b7d26e5d0971a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 28 Mar 2019 22:46:58 +0100 Subject: [PATCH 284/411] system: Fix typo in desktop example. The typo was introduced in 391e0d65d7129d53c025963d2758724e75626eb4. * gnu/system/examples/desktop.tmpl: Use XFCE-DESKTOP-SERVICE-TYPE, not XFCE-DESKTOP-SERVICE. --- gnu/system/examples/desktop.tmpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index d0e3ff56e8..ff4c12b24a 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -58,7 +58,7 @@ ;; include the X11 log-in service, networking with ;; NetworkManager, and more. (services (append (list (service gnome-desktop-service-type) - (service xfce-desktop-service)) + (service xfce-desktop-service-type)) %desktop-services)) ;; Allow resolution of '.local' host names with mDNS. From 357b287b8f083e8b078da4a3246e0bad4ef199ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 28 Mar 2019 23:03:11 +0100 Subject: [PATCH 285/411] services: desktop: Switch to GDM. * gnu/services/desktop.scm (%desktop-services): Replace SLIM-SERVICE-TYPE instance with an instance of GDM-SERVICE-TYPE. * doc/guix.texi (Keyboard Layout): Change example to mention GDM-SERVICE-TYPE. (X Window): Mention GDM. (Desktop Services): Adjust references to SLiM. --- doc/guix.texi | 18 ++++++++++++------ gnu/services/desktop.scm | 2 +- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 1bbed7a72d..525b8f424f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -11090,8 +11090,8 @@ configuration would look like: (target "/boot/efi") (keyboard-layout keyboard-layout))) ;for GRUB (services (modify-services %desktop-services - (slim-service-type config => - (slim-configuration + (gdm-service-type config => + (gdm-configuration (inherit config) (xorg-configuration (xorg-configuration ;for Xorg @@ -13294,7 +13294,13 @@ Package object of the Open vSwitch. Support for the X Window graphical display system---specifically Xorg---is provided by the @code{(gnu services xorg)} module. Note that there is no @code{xorg-service} procedure. Instead, the X server is -started by the @dfn{login manager}, by default SLiM. +started by the @dfn{login manager}, by default the GNOME Display Manager (GDM). + +@cindex GDM +@cindex GNOME, login manager +GDM of course allows users to log in into window managers and desktop +environments other than GNOME; for those using GNOME, GDM is required for +features such as automatic screen locking. @cindex window manager To use X11, you must install at least one @dfn{window manager}---for @@ -14406,7 +14412,7 @@ This is a list of services that builds upon @var{%base-services} and adds or adjusts services for a typical ``desktop'' setup. In particular, it adds a graphical login manager (@pxref{X Window, -@code{slim-service}}), screen lockers, a network management tool +@code{gdm-service-type}}), screen lockers, a network management tool (@pxref{Networking Services, @code{network-manager-service-type}}), energy and color management services, the @code{elogind} login and seat manager, the Polkit privilege service, the GeoClue location service, the @@ -14445,8 +14451,8 @@ functionality to work as expetected. The desktop environments in Guix use the Xorg display server by default. If you'd like to use the newer display server protocol -called Wayland, you need to use the @code{sddm-service} instead of the -@code{slim-service} for the graphical login manager. You should then +called Wayland, you need to use the @code{sddm-service} instead of +GDM as the graphical login manager. You should then select the ``GNOME (Wayland)'' session in SDDM. Alternatively you can also try starting GNOME on Wayland manually from a TTY with the command ``XDG_SESSION_TYPE=wayland exec dbus-run-session diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index da6291036f..dcab950822 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -1078,7 +1078,7 @@ (define inputattach-service-type (define %desktop-services ;; List of services typically useful for a "desktop" use case. - (cons* (service slim-service-type) + (cons* (service gdm-service-type) ;; Screen lockers are a pretty useful thing and these are small. (screen-locker-service slock) From 69a0717c667bc8c72eb28d5d23e675a2c1993be4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:26:27 +0100 Subject: [PATCH 286/411] gnu: project-starfighter: Don't use NAME in source URI. * gnu/packages/games.scm (project-starfighter)[source]: Hard-code NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index f1bfd4ea09..d9718b3a0e 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3269,7 +3269,7 @@ (define-public project-starfighter (uri (string-append "mirror://savannah/starfighter/" (version-major+minor version) "/" - name "-" version "-src.tar.gz")) + "starfighter-" version "-src.tar.gz")) (sha256 (base32 "1646hpjq8bz2fkfkja1dah511hn7zd2r7da4w9c9blhad3p5732v")))) From c0c099502b0085a7c2dc1a9f02af9b0a9b0a737b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:28:49 +0100 Subject: [PATCH 287/411] gnu: armagetron-advanced: Don't use NAME in source URI. * gnu/packages/games.scm (armagetron-advanced)[source]: Hard-code NAME. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index d9718b3a0e..f67c3a6781 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -245,8 +245,8 @@ (define-public armagetron-advanced (version "0.2.8.3.4") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/" name "/stable/" - version "/" name "-" version ".src.tar.gz")) + (uri (string-append "mirror://sourceforge/armagetronad/stable/" + version "/armagetronad-" version ".src.tar.gz")) (sha256 (base32 "1pgy0r80z702qdv94aw3ywdn4ynnr4cdi86ml558pljfc5ygasj4")))) From 0922354d6a9db1544a85dd55b3237de87efb39fd Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:29:44 +0100 Subject: [PATCH 288/411] gnu: cowsay: Don't use NAME in source URI. * gnu/packages/games.scm (cowsay)[source]: Hard-code NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index f67c3a6781..dcc2a266e2 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -411,7 +411,7 @@ (define-public cowsay (method url-fetch) (uri (string-append "https://github.com/tnalpgge/" "rank-amateur-cowsay/archive/" - name "-" version ".tar.gz")) + "cowsay-" version ".tar.gz")) (sha256 (base32 "12w7apbf6a9qffk92r32b16w22na2fjcqbl32rn0n7zw5hrp3f6q")))) From 7c8ed745169adb7e63a47181a2c79936393e759f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:39:58 +0100 Subject: [PATCH 289/411] gnu: freedoom: Don't use unstable tarball. * gnu/packages/games.scm (freedoom)[source]: Use GIT-FETCH and GIT-FILE-NAME. --- gnu/packages/games.scm | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index dcc2a266e2..842d2bc4f5 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -446,14 +446,15 @@ (define-public freedoom (package (name "freedoom") (version "0.11.3") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/" name "/" name - "/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1bjijdfqhpazyifx1qda7scj7dry1azhjrnl8h8zn2vqfgdmlh0q")))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/freedoom/freedoom.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0k4dlgr82qk6i7dchp3nybq6awlfag2ivy3zzl1v6vhcrnbvssgl")))) (build-system gnu-build-system) (arguments '(#:make-flags `(,(string-append "prefix=" (assoc-ref %outputs "out"))) From 9303b09a7883275639189565e7ac85037e441768 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:42:08 +0100 Subject: [PATCH 290/411] gnu: freedoom: Re-indent. * gnu/packages/games.scm (freedoom): Re-indent expression. --- gnu/packages/games.scm | 143 +++++++++++++++++++++-------------------- 1 file changed, 72 insertions(+), 71 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 842d2bc4f5..e4ce528927 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -444,81 +444,82 @@ (define-public cowsay (define-public freedoom (package - (name "freedoom") - (version "0.11.3") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/freedoom/freedoom.git") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0k4dlgr82qk6i7dchp3nybq6awlfag2ivy3zzl1v6vhcrnbvssgl")))) - (build-system gnu-build-system) - (arguments - '(#:make-flags `(,(string-append "prefix=" (assoc-ref %outputs "out"))) - #:parallel-build? #f - #:tests? #f ; no check target - #:phases - (modify-phases %standard-phases - (delete 'bootstrap) - (replace 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((dejavu (assoc-ref inputs "font-dejavu")) - (freedoom (assoc-ref outputs "out")) - (wad-dir (string-append freedoom "/share/games/doom"))) - ;; Replace the font-searching function in a shell - ;; script with a direct path to the required font. - ;; This is necessary because ImageMagick can only find the - ;; most basic fonts while in the build environment. - (substitute* "graphics/titlepic/create_caption" - (("font=\\$\\(find_font.*$") - (string-append - "font=" dejavu - "/share/fonts/truetype/DejaVuSansCondensed-Bold.ttf\n"))) - ;; Make icon creation reproducible. - (substitute* "dist/Makefile" - (("freedm.png") - "-define png:exclude-chunks=date freedm.png") - (("freedoom1.png") - "-define png:exclude-chunks=date freedoom1.png") - (("freedoom2.png") - "-define png:exclude-chunks=date freedoom2.png")) - ;; Make sure that the install scripts know where to find - ;; the appropriate WAD files. - (substitute* "dist/freedoom" - (("IWAD=freedm.wad") - (string-append "IWAD=" wad-dir "/freedm.wad")) - (("IWAD=freedoom1.wad") - (string-append "IWAD=" wad-dir "/freedoom1.wad")) - (("IWAD=freedoom2.wad") - (string-append "IWAD=" wad-dir "/freedoom2.wad"))) - #t)))))) - (native-inputs - `(("asciidoc" ,asciidoc) - ("deutex" ,deutex) - ("font-dejavu" ,font-dejavu) - ("imagemagick" ,imagemagick) - ("python" ,python-2))) - (inputs - `(("prboom-plus" ,prboom-plus))) - (home-page "https://freedoom.github.io/") - (synopsis "Free content game based on the Doom engine") - (native-search-paths - (list (search-path-specification - (variable "DOOMWADDIR") - (files '("share/games/doom"))) - (search-path-specification - (variable "DOOMWADPATH") - (files '("share/games/doom"))))) - (description - "The Freedoom project aims to create a complete free content first person + (name "freedoom") + (version "0.11.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/freedoom/freedoom.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0k4dlgr82qk6i7dchp3nybq6awlfag2ivy3zzl1v6vhcrnbvssgl")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags + (list (string-append "prefix=" (assoc-ref %outputs "out"))) + #:parallel-build? #f + #:tests? #f ; no check target + #:phases + (modify-phases %standard-phases + (delete 'bootstrap) + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((dejavu (assoc-ref inputs "font-dejavu")) + (freedoom (assoc-ref outputs "out")) + (wad-dir (string-append freedoom "/share/games/doom"))) + ;; Replace the font-searching function in a shell + ;; script with a direct path to the required font. + ;; This is necessary because ImageMagick can only find the + ;; most basic fonts while in the build environment. + (substitute* "graphics/titlepic/create_caption" + (("font=\\$\\(find_font.*$") + (string-append + "font=" dejavu + "/share/fonts/truetype/DejaVuSansCondensed-Bold.ttf\n"))) + ;; Make icon creation reproducible. + (substitute* "dist/Makefile" + (("freedm.png") + "-define png:exclude-chunks=date freedm.png") + (("freedoom1.png") + "-define png:exclude-chunks=date freedoom1.png") + (("freedoom2.png") + "-define png:exclude-chunks=date freedoom2.png")) + ;; Make sure that the install scripts know where to find + ;; the appropriate WAD files. + (substitute* "dist/freedoom" + (("IWAD=freedm.wad") + (string-append "IWAD=" wad-dir "/freedm.wad")) + (("IWAD=freedoom1.wad") + (string-append "IWAD=" wad-dir "/freedoom1.wad")) + (("IWAD=freedoom2.wad") + (string-append "IWAD=" wad-dir "/freedoom2.wad"))) + #t)))))) + (native-inputs + `(("asciidoc" ,asciidoc) + ("deutex" ,deutex) + ("font-dejavu" ,font-dejavu) + ("imagemagick" ,imagemagick) + ("python" ,python-2))) + (inputs + `(("prboom-plus" ,prboom-plus))) + (home-page "https://freedoom.github.io/") + (synopsis "Free content game based on the Doom engine") + (native-search-paths + (list (search-path-specification + (variable "DOOMWADDIR") + (files '("share/games/doom"))) + (search-path-specification + (variable "DOOMWADPATH") + (files '("share/games/doom"))))) + (description + "The Freedoom project aims to create a complete free content first person shooter game. Freedoom by itself is just the raw material for a game: it must be paired with a compatible game engine (such as @code{prboom-plus}) to be played. Freedoom complements the Doom engine with free levels, artwork, sound effects and music to make a completely free game.") - (license license:bsd-3))) + (license license:bsd-3))) (define-public freedroidrpg (package From dd0369f4268aaa96c2d747ebce807cfc15652b94 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:43:05 +0100 Subject: [PATCH 291/411] gnu: ltris: Don't use NAME in source URI. * gnu/packages/games.scm (ltris)[source]: Hard-code NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index e4ce528927..b04c3814d8 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -832,7 +832,7 @@ (define-public ltris (origin (method url-fetch) (uri (string-append "http://prdownloads.sourceforge.net/lgames/" - name "-" version ".tar.gz")) + "ltris-" version ".tar.gz")) (sha256 (base32 "1895wv1fqklrj4apkz47rnkcfhfav7zjknskw6p0886j35vrwslg")))) From a544817e800859cea57f070336ed307d78a3e399 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:46:33 +0100 Subject: [PATCH 292/411] gnu: nethack: Don't use NAME in source URI. * gnu/packages/games.scm (nethack)[source]: Hard-code NAME, not VERSION. --- gnu/packages/games.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index b04c3814d8..7f23711123 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -872,8 +872,9 @@ (define-public nethack (source (origin (method url-fetch) - (uri (string-append "https://www.nethack.org/download/" - version "/" name "-361-src.tgz")) + (uri + (string-append "https://www.nethack.org/download/" version "/nethack-" + (string-join (string-split version #\.) "") "-src.tgz")) (sha256 (base32 "1dha0ijvxhx7c9hr0452h93x81iiqsll8bc9msdnp7xdqcfbz32b")))) (inputs From 96848ecc16589282681208c56fcb4e5d077ced52 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:47:55 +0100 Subject: [PATCH 293/411] gnu: pipewalker: Don't use NAME in source URI. * gnu/packages/games.scm (pipewalker)[source]: Hard-code NAME. --- gnu/packages/games.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 7f23711123..7ca223a0a6 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -999,10 +999,9 @@ (define-public pipewalker (origin (method url-fetch) (uri (string-append "http://downloads.sourceforge.net/pipewalker/" - name "-" version ".tar.gz")) + "pipewalker-" version ".tar.gz")) (sha256 - (base32 - "1x46wgk0s55562pd96cxagxkn6wpgglq779f9b64ff1k3xzp3myn")))) + (base32 "1x46wgk0s55562pd96cxagxkn6wpgglq779f9b64ff1k3xzp3myn")))) (build-system gnu-build-system) (arguments `(#:configure-flags From a8a96bbead267946e29554de13490b93fe01ec5c Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:50:36 +0100 Subject: [PATCH 294/411] gnu: prboom-plus: Don't use NAME in source URI. * gnu/packages/games.scm (prboom-plus)[source]: Hard-code NAME. --- gnu/packages/games.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 7ca223a0a6..10aa1da972 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1036,11 +1036,10 @@ (define-public prboom-plus (version "2.5.1.4") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/" name "/" name "/" - version "/" name "-" version ".tar.gz")) + (uri (string-append "mirror://sourceforge/prboom-plus/prboom-plus/" + version "/prboom-plus-" version ".tar.gz")) (sha256 - (base32 - "151v6nign86m1a2vqz27krsccpc9m4d1jax4y43v2fa82wfj9qp0")) + (base32 "151v6nign86m1a2vqz27krsccpc9m4d1jax4y43v2fa82wfj9qp0")) (modules '((guix build utils))) (snippet '(begin From feb50ac6dc34ea88f33958b08c967ed99234868e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 00:54:44 +0100 Subject: [PATCH 295/411] gnu: l-abbaye-des-morts: Don't use unstable tarball. This also fixes a build failure due to the use of NAME. * gnu/packages/games.scm (l-abbaye-des-morts)[source]: Use GIT-FETCH and GIT-FILE-NAME. --- gnu/packages/games.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 10aa1da972..4b3cedb936 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1269,13 +1269,13 @@ (define-public l-abbaye-des-morts (version "2.0.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/nevat/abbayedesmorts-gpl/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/nevat/abbayedesmorts-gpl.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 - "1a67b0hq6271dd7pvwndjq29cwn2n8gawwz17xafa3k1hrhf8vw3")) + (base32 "1pwqf7r9bqb2p3xrw9i7y8pgr1401fy3mnnqpb1qkhmdl3gqi9hb")) (modules '((guix build utils))) (snippet ;; Unbundle fonts. From aa5a425c8f8f8513e24c1a4e1dd16141442f22bd Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 28 Mar 2019 19:32:56 -0400 Subject: [PATCH 296/411] gnu: linux-libre@4.9: Update to 4.9.166. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.166. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 404cd63dbb..6130d95b0e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -453,8 +453,8 @@ (define-public linux-libre-4.14 #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.165" - "0za56qgs57381xl2a1qkqlhgg4mjvqvlc5hy064ldxwma9q59xfm" + (make-linux-libre "4.9.166" + "1gijzvhky3x0nl0dm9ksg113z7jc1mc1n30qbr6r1dd78lfd050p" '("x86_64-linux" "i686-linux") #:configuration-file kernel-config)) From 8ea1d2b5bdb74d9c47f16ec2fbd785d0ae812045 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 28 Mar 2019 19:33:41 -0400 Subject: [PATCH 297/411] gnu: linux-libre@4.14: Update to 4.14.109. * gnu/packages/linux.scm (%linux-libre-4.14-version): Update to 4.14.109. (%linux-libre-4.14-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 6130d95b0e..a50f246166 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -443,8 +443,8 @@ (define-public linux-libre-4.19 #:patches %linux-libre-4.19-patches #:configuration-file kernel-config)) -(define %linux-libre-4.14-version "4.14.108") -(define %linux-libre-4.14-hash "1ydp1dzfcv6caahcdlx2l2q13bnhwgin5wwkgrc10f2d96acyr47") +(define %linux-libre-4.14-version "4.14.109") +(define %linux-libre-4.14-hash "05xnnyfiypg4sdcnh42wvg7h72ar8xx98dik12sgwysnfldi0gk9") (define-public linux-libre-4.14 (make-linux-libre %linux-libre-4.14-version From 4bdf98f62f1472ec18a9b663f36d460dffc342fd Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 28 Mar 2019 19:34:28 -0400 Subject: [PATCH 298/411] gnu: linux-libre@4.19: Update to 4.19.32. * gnu/packages/linux.scm (%linux-libre-4.19-version): Update to 4.19.32. (%linux-libre-4.19-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a50f246166..02ebc95f1e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -429,8 +429,8 @@ (define-public linux-libre #:patches %linux-libre-5.0-patches #:configuration-file kernel-config)) -(define %linux-libre-4.19-version "4.19.31") -(define %linux-libre-4.19-hash "0s0j5mnl83rg23shqfyhk352m3jhq1h7bksyz0sd8sz3q3pwj2ii") +(define %linux-libre-4.19-version "4.19.32") +(define %linux-libre-4.19-hash "19bryl8nmnnnrfh91pc8q9yiayh5ca2nb6b32qyx6riahc5dy0i9") (define %linux-libre-4.19-patches (list %boot-logo-patch From fa3c2aad6581d219ec557c1ee87309ff19085785 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 28 Mar 2019 19:35:11 -0400 Subject: [PATCH 299/411] gnu: linux-libre: Update to 5.0.5. * gnu/packages/linux.scm (%linux-libre-version): Update to 5.0.5. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 02ebc95f1e..b4a80bb2a0 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -415,8 +415,8 @@ (define* (make-linux-libre version hash supported-systems It has been modified to remove all non-free binary blobs.") (license license:gpl2))) -(define %linux-libre-version "5.0.4") -(define %linux-libre-hash "1j369x19kqryhf7w5p14rah0p3lglrhr5kac9ysqigx92as7kq50") +(define %linux-libre-version "5.0.5") +(define %linux-libre-hash "1yivxqprxfzhzid4qv9hpnb5i38kijrj2g2pyzz7niliya1c58li") (define %linux-libre-5.0-patches (list %boot-logo-patch From 00a82e838579177bb2edcf369875d783cac23bba Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 01:09:59 +0100 Subject: [PATCH 300/411] gnu: mars: Use GIT-FILE-NAME. * gnu/packages/games.scm (mars)[source]: Use GIT-FILE-NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 4b3cedb936..6e2f9c1091 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1755,7 +1755,7 @@ (define-public mars (uri (git-reference (url "https://github.com/thelaui/M.A.R.S..git") (commit commit))) - (file-name (string-append name "-" version)) + (file-name (git-file-name name version)) (sha256 (base32 "1r4c5gap1z2zsv4yjd34qriqkxaq4lb4rykapyzkkdf4g36lc3nh")) From 071782762a34a0714a66b935406ffa879b9836dc Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 01:22:49 +0100 Subject: [PATCH 301/411] gnu: fizmo: Don't use NAME in source URI. * gnu/packages/games.scm (fizmo)[source]: Hard-code NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 6e2f9c1091..5a40ae349a 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1980,7 +1980,7 @@ (define-public fizmo (source (origin (method url-fetch) (uri (string-append "https://fizmo.spellbreaker.org/source/" - name "-" version ".tar.gz")) + "fizmo-" version ".tar.gz")) (sha256 (base32 "1amyc4n41jf08kxmdgkk30bzzx54miaxa97w28f417qwn8lrl98w")))) From 2e5a0690bb5585d0f240bff1df09db1c46a3d000 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 01:42:31 +0100 Subject: [PATCH 302/411] gnu: openrct2: Don't use unstable tarball. * gnu/packages/games.scm (openrct2)[source]: Use GIT-FETCH and GIT-FILE-NAME. --- gnu/packages/games.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 5a40ae349a..35e4e07875 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2693,12 +2693,13 @@ (define-public openrct2 (version "0.2.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/OpenRCT2/OpenRCT2/archive/v" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/OpenRCT2/OpenRCT2.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "0yxaphgfq85piaacnnfy6lrvmnqmfj1891rxlkl5ndngq0zh0ysb")) - (file-name (string-append name "-" version ".tar.gz")))) + (base32 "1bfqmb6cbmsjcvj77vppy5lw1m4lkvxd1w3f218ah4788xnkysq2")))) (build-system cmake-build-system) (arguments `(#:configure-flags (list "-DDOWNLOAD_OBJECTS=OFF" From 1d6c047937203e03c9626fe14aafba503748dd14 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 01:43:24 +0100 Subject: [PATCH 303/411] gnu: powwow: Remove redundant FILE-NAME. * gnu/packages/games.scm (powwow)[source]: Remove FILE-NAME. --- gnu/packages/games.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 35e4e07875..aaa8c68f9c 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2880,7 +2880,6 @@ (define-public powwow (uri (string-append "https://www.hoopajoo.net/static/projects/powwow-" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "1gf0jc1vfv05lxij51n3c1dqn3aiiy2kj1v6q14an3wm7yl7cllp")))) From 339c1365fd090795154bf6086f0102d7c9079c95 Mon Sep 17 00:00:00 2001 From: Ivan Petkov Date: Fri, 29 Mar 2019 00:38:02 +0100 Subject: [PATCH 304/411] gnu: rust: Refactor in order to prepare for newer Rust versions. * gnu/packages/rust.scm (rust-source): Rename to... (rust-source-pre-1.32): ...this. Add PATCH-FLAGS. (rust-bootstrapped-package): Rename to... (rust-bootstrapped-package-pre-1.32): ...this. (rust-source): New procedure. (rust-bootstrapped-package): New procedure. (mrustc): Use rust-bootstrapped-package-pre-1.32. (rust-1.19): Use rust-bootstrapped-package-pre-1.32. (rust-1.20): Use rust-bootstrapped-package-pre-1.32. (rust-1.21): Use rust-bootstrapped-package-pre-1.32. (rust-1.22): Use rust-bootstrapped-package-pre-1.32. (rust-1.23): Use rust-bootstrapped-package-pre-1.32. (rust-1.24): Use rust-bootstrapped-package-pre-1.32. (rust-1.25): Use rust-bootstrapped-package-pre-1.32. (rust-1.26): Use rust-bootstrapped-package-pre-1.32. (rust-1.27): Use rust-bootstrapped-package-pre-1.32. (rust-1.28): Use rust-bootstrapped-package-pre-1.32. (rust-1.29): Use rust-bootstrapped-package-pre-1.32. (rust-1.30): Use rust-bootstrapped-package-pre-1.32. (rust): Use rust-bootstrapped-package-pre-1.32. Signed-off-by: Danny Milosavljevic --- gnu/packages/rust.scm | 133 ++++++++++++++++++++++++++---------------- 1 file changed, 84 insertions(+), 49 deletions(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 074d9b0655..bdb8d5fa2a 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -70,7 +70,10 @@ (define* (nix-system->gnu-triplet-for-rust (_ (nix-system->gnu-triplet system)))) -(define* (rust-source version hash #:key (patches '())) +(define* (rust-source-pre-1.32 version hash + #:key + (patches '()) + (patch-flags '("-p1"))) (origin (method url-fetch) (uri (string-append "https://static.rust-lang.org/dist/" @@ -78,16 +81,51 @@ (define* (rust-source version hash #:key (patches '())) (sha256 (base32 hash)) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "src/llvm") #t)) - (patches (map search-patch patches)))) + (patches (map search-patch patches)) + (patch-flags patch-flags))) + +(define* (rust-bootstrapped-package-pre-1.32 base-rust version checksum + #:key + (patches '()) + (patch-flags '("-p1"))) + "Bootstrap rust VERSION with source checksum CHECKSUM patched with PATCHES using BASE-RUST. +Specific to rust versions before 1.32." + (package + (inherit base-rust) + (version version) + (source + (rust-source-pre-1.32 version checksum #:patches patches #:patch-flags patch-flags)) + (native-inputs + (alist-replace "cargo-bootstrap" (list base-rust "cargo") + (alist-replace "rustc-bootstrap" (list base-rust) + (package-native-inputs base-rust)))))) + +(define* (rust-source version hash + #:key + (patches '()) + (patch-flags '("-p1"))) + (origin + (method url-fetch) + (uri (string-append "https://static.rust-lang.org/dist/" + "rustc-" version "-src.tar.gz")) + (sha256 (base32 hash)) + (modules '((guix build utils))) + (snippet '(begin (delete-file-recursively "src/llvm") + (delete-file-recursively "vendor/jemalloc-sys/jemalloc") + #t)) + (patches (map search-patch patches)) + (patch-flags patch-flags))) (define* (rust-bootstrapped-package base-rust version checksum - #:key (patches '())) + #:key + (patches '()) + (patch-flags '("-p1"))) "Bootstrap rust VERSION with source checksum CHECKSUM patched with PATCHES using BASE-RUST." (package (inherit base-rust) (version version) (source - (rust-source version checksum #:patches patches)) + (rust-source version checksum #:patches patches #:patch-flags patch-flags)) (native-inputs (alist-replace "cargo-bootstrap" (list base-rust "cargo") (alist-replace "rustc-bootstrap" (list base-rust) @@ -116,7 +154,7 @@ (define-public mrustc ("flex" ,flex) ;; Required for the libstd sources. ("rustc" - ,(rust-source "1.19.0" "0l8c14qsf42rmkqy92ahij4vf356dbyspxcips1aswpvad81y8qm")))) + ,(rust-source-pre-1.32 "1.19.0" "0l8c14qsf42rmkqy92ahij4vf356dbyspxcips1aswpvad81y8qm")))) (arguments `(#:test-target "local_tests" #:make-flags (list (string-append "LLVM_CONFIG=" @@ -189,7 +227,7 @@ (define rust-1.19 (package (name "rust") (version "1.19.0") - (source (rust-source version "0l8c14qsf42rmkqy92ahij4vf356dbyspxcips1aswpvad81y8qm" + (source (rust-source-pre-1.32 version "0l8c14qsf42rmkqy92ahij4vf356dbyspxcips1aswpvad81y8qm" #:patches '("rust-1.19-mrustc.patch"))) (outputs '("out" "cargo")) (properties '((timeout . 72000) ;20 hours @@ -425,7 +463,7 @@ (define rust-1.19 (define-public rust-1.20 (let ((base-rust - (rust-bootstrapped-package rust-1.19 "1.20.0" + (rust-bootstrapped-package-pre-1.32 rust-1.19 "1.20.0" "0542y4rnzlsrricai130mqyxl8r6rd991frb4qsnwb27yigqg91a"))) (package (inherit base-rust) @@ -570,7 +608,7 @@ (define-public rust-1.20 #t)))))))))) (define-public rust-1.21 - (let ((base-rust (rust-bootstrapped-package rust-1.20 "1.21.0" + (let ((base-rust (rust-bootstrapped-package-pre-1.32 rust-1.20 "1.21.0" "1yj8lnxybjrybp00fqhxw8fpr641dh8wcn9mk44xjnsb4i1c21qp"))) (package (inherit base-rust) @@ -586,7 +624,7 @@ (define-public rust-1.21 #t))))))))) (define-public rust-1.22 - (let ((base-rust (rust-bootstrapped-package rust-1.21 "1.22.1" + (let ((base-rust (rust-bootstrapped-package-pre-1.32 rust-1.21 "1.22.1" "1lrzzp0nh7s61wgfs2h6ilaqi6iq89f1pd1yaf65l87bssyl4ylb"))) (package (inherit base-rust) @@ -602,7 +640,7 @@ (define-public rust-1.22 #t))))))))) (define-public rust-1.23 - (let ((base-rust (rust-bootstrapped-package rust-1.22 "1.23.0" + (let ((base-rust (rust-bootstrapped-package-pre-1.32 rust-1.22 "1.23.0" "14fb8vhjzsxlbi6yrn1r6fl5dlbdd1m92dn5zj5gmzfwf4w9ar3l"))) (package (inherit base-rust) @@ -621,8 +659,8 @@ (define-public rust-1.23 (define-public rust-1.24 (let ((base-rust - (rust-bootstrapped-package rust-1.23 "1.24.1" - "1vv10x2h9kq7fxh2v01damdq8pvlp5acyh1kzcda9sfjx12kv99y"))) + (rust-bootstrapped-package-pre-1.32 rust-1.23 "1.24.1" + "1vv10x2h9kq7fxh2v01damdq8pvlp5acyh1kzcda9sfjx12kv99y"))) (package (inherit base-rust) (arguments @@ -643,7 +681,7 @@ (define-public rust-1.24 ;;; Keep using llvm 3.9.1 until builds become determenistic (define-public rust-1.25 (let ((base-rust - (rust-bootstrapped-package rust-1.24 "1.25.0" + (rust-bootstrapped-package-pre-1.32 rust-1.24 "1.25.0" "0baxjr99311lvwdq0s38bipbnj72pn6fgbk6lcq7j555xq53mxpf" #:patches '("rust-1.25-accept-more-detailed-gdb-lines.patch")))) (package @@ -674,7 +712,7 @@ (define-public rust-1.25 (define-public rust-1.26 (let ((base-rust - (rust-bootstrapped-package rust-1.25 "1.26.2" + (rust-bootstrapped-package-pre-1.32 rust-1.25 "1.26.2" "0047ais0fvmqvngqkdsxgrzhb0kljg8wy85b01kbbjc88hqcz7pv" #:patches '("rust-coresimd-doctest.patch" "rust-1.25-accept-more-detailed-gdb-lines.patch")))) @@ -729,13 +767,13 @@ (define-public rust-1.26 (define-public rust-1.27 (let ((base-rust - (rust-bootstrapped-package rust-1.26 "1.27.2" - "0pg1s37bhx9zqbynxyydq5j6q7kij9vxkcv8maz0m25prm88r0cs" - #:patches - '("rust-coresimd-doctest.patch" - "rust-bootstrap-stage0-test.patch" - "rust-1.25-accept-more-detailed-gdb-lines.patch" - "rust-reproducible-builds.patch")))) + (rust-bootstrapped-package-pre-1.32 rust-1.26 "1.27.2" + "0pg1s37bhx9zqbynxyydq5j6q7kij9vxkcv8maz0m25prm88r0cs" + #:patches + '("rust-coresimd-doctest.patch" + "rust-bootstrap-stage0-test.patch" + "rust-1.25-accept-more-detailed-gdb-lines.patch" + "rust-reproducible-builds.patch")))) (package (inherit base-rust) (arguments @@ -758,13 +796,13 @@ (define-public rust-1.27 (define-public rust-1.28 (let ((base-rust - (rust-bootstrapped-package rust-1.27 "1.28.0" - "11k4rn77bca2rikykkk9fmprrgjswd4x4kaq7fia08vgkir82nhx" - #:patches - '("rust-coresimd-doctest.patch" - "rust-bootstrap-stage0-test.patch" - "rust-1.25-accept-more-detailed-gdb-lines.patch" - "rust-reproducible-builds.patch")))) + (rust-bootstrapped-package-pre-1.32 rust-1.27 "1.28.0" + "11k4rn77bca2rikykkk9fmprrgjswd4x4kaq7fia08vgkir82nhx" + #:patches + '("rust-coresimd-doctest.patch" + "rust-bootstrap-stage0-test.patch" + "rust-1.25-accept-more-detailed-gdb-lines.patch" + "rust-reproducible-builds.patch")))) (package (inherit base-rust) (inputs @@ -792,22 +830,22 @@ (define-public rust-1.28 (define-public rust-1.29 (let ((base-rust - (rust-bootstrapped-package rust-1.28 "1.29.2" - "1jb787080z754caa2w3w1amsygs4qlzj9rs1vy64firfmabfg22h" - #:patches - '("rust-1.25-accept-more-detailed-gdb-lines.patch" - "rust-reproducible-builds.patch")))) + (rust-bootstrapped-package-pre-1.32 rust-1.28 "1.29.2" + "1jb787080z754caa2w3w1amsygs4qlzj9rs1vy64firfmabfg22h" + #:patches + '("rust-1.25-accept-more-detailed-gdb-lines.patch" + "rust-reproducible-builds.patch")))) (package (inherit base-rust)))) (define-public rust-1.30 (let ((base-rust - (rust-bootstrapped-package rust-1.29 "1.30.1" - "0aavdc1lqv0cjzbqwl5n59yd0bqdlhn0zas61ljf38yrvc18k8rn" - #:patches - '("rust-1.25-accept-more-detailed-gdb-lines.patch" - "rust-1.30-gdb-llvm.patch" - "rust-reproducible-builds.patch")))) + (rust-bootstrapped-package-pre-1.32 rust-1.29 "1.30.1" + "0aavdc1lqv0cjzbqwl5n59yd0bqdlhn0zas61ljf38yrvc18k8rn" + #:patches + '("rust-1.25-accept-more-detailed-gdb-lines.patch" + "rust-1.30-gdb-llvm.patch" + "rust-reproducible-builds.patch")))) (package (inherit base-rust) (inputs @@ -839,19 +877,16 @@ (define-public rust-1.30 ;; these for now (("fn include") "#[ignore]\nfn include") (("fn exclude") "#[ignore]\nfn exclude")) - #t)) - ;; Appears that this test isn't currently running and has been - ;; moved elsewhere, so the patch doesn't apply. - (delete 'disable-amd64-avx-test)))))))) + #t))))))))) (define-public rust (let ((base-rust - (rust-bootstrapped-package rust-1.30 "1.31.1" - "0sk84ff0cklybcp0jbbxcw7lk7mrm6kb6km5nzd6m64dy0igrlli" - #:patches - '("rust-1.25-accept-more-detailed-gdb-lines.patch" - "rust-1.30-gdb-llvm.patch" - "rust-reproducible-builds.patch")))) + (rust-bootstrapped-package-pre-1.32 rust-1.30 "1.31.1" + "0sk84ff0cklybcp0jbbxcw7lk7mrm6kb6km5nzd6m64dy0igrlli" + #:patches + '("rust-1.25-accept-more-detailed-gdb-lines.patch" + "rust-1.30-gdb-llvm.patch" + "rust-reproducible-builds.patch")))) (package (inherit base-rust) (arguments From 586d30caa2fb6372ab991f4284e92b19ebf15878 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 29 Mar 2019 00:43:10 +0100 Subject: [PATCH 305/411] gnu: rust: Fix test setup. * gnu/packages/rust.scm (rust-1.30)[arguments]<#:phases> [disable-amd64-avx-test]: Replace. (rust)[arguments]<#:phases>[disable-amd64-avx-test]: Replace. --- gnu/packages/rust.scm | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index bdb8d5fa2a..5151cacd42 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -877,7 +877,13 @@ (define-public rust-1.30 ;; these for now (("fn include") "#[ignore]\nfn include") (("fn exclude") "#[ignore]\nfn exclude")) - #t))))))))) + #t)) + ;; The test has been moved elsewhere. + (replace 'disable-amd64-avx-test + (lambda _ + (substitute* "src/test/ui/run-pass/issues/issue-44056.rs" + (("only-x86_64") "ignore-test")) + #t))))))))) (define-public rust (let ((base-rust @@ -908,6 +914,12 @@ (define-public rust ((" Command::new\\(\"echo\"\\)") (string-append "\nCommand::new(\"" coreutils "/bin/echo\")\n"))) #t))) + ;; The test has been moved elsewhere. + (replace 'disable-amd64-avx-test + (lambda _ + (substitute* "src/test/ui/issues/issue-44056.rs" + (("only-x86_64") "ignore-test")) + #t)) (add-after 'patch-tests 'patch-process-docs-rev-cmd (lambda* _ ;; Disable some doc tests which depend on the "rev" command From bb7c071b94ea88fdd2bda5ec78bbc08290d56b7b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 02:23:12 +0100 Subject: [PATCH 306/411] gnu: red-eclipse: Don't use unstable tarball. * gnu/packages/games.scm (red-eclipse)[source]: Use GIT-FETCH and GIT-FILE-NAME. --- gnu/packages/games.scm | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index aaa8c68f9c..01270fc5f4 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2941,16 +2941,17 @@ (define-public red-eclipse release (string-append release "-" (number->string revision)))) - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/red-eclipse/base" - "/archive/v" release ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1vs9k6f5fgsiy1n72imlqm8khjwm8cryc08zwd4gr7yxlxv45bs0")) - (patches - (search-patches "red-eclipse-remove-gamma-name-hack.patch")))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/red-eclipse/base.git") + (commit (string-append "v" release)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0qy9kmq21wc4bdhwifasxc5dv1y5c53sn7dfmyc5y3zyz8wjyij4")) + (patches + (search-patches "red-eclipse-remove-gamma-name-hack.patch")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target From c41b2ffbf2ca235e94ae96bdac99222f55df5858 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 02:26:31 +0100 Subject: [PATCH 307/411] gnu: grue-hunter: Don't use NAME in source URI. * gnu/packages/games.scm (grue-hunter)[source]: Hard-code NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 01270fc5f4..6513c609cf 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3086,7 +3086,7 @@ (define-public grue-hunter (version "1.0") (source (origin (method url-fetch) - (uri (string-append "https://jxself.org/" name ".tar.gz")) + (uri (string-append "https://jxself.org/grue-hunter.tar.gz")) (sha256 (base32 "1hjcpy5439qs3v2zykis7hsi0i17zjs62gks3zd8mnfw9ni4i2h3")))) From d8f4aefed9b687dd2282d76c0e75e31a8895934b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 02:37:25 +0100 Subject: [PATCH 308/411] gnu: warzone2100: Update source URI. * gnu/packages/games.scm (warzone2100)[source]: Update URI and don't hard-code NAME. --- gnu/packages/games.scm | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 6513c609cf..a831f41839 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3203,14 +3203,15 @@ (define-public warzone2100 (package (name "warzone2100") (version "3.2.3") - (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/" name - "/releases/" version "/" name "-" version - ".tar.xz")) - (sha256 - (base32 - "10kmpr4cby95zwqsl1zwx95d9achli6khq7flv6xmrq30a39xazw")))) + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/warzone2100/archives/" + "unsupported/Warzone2100-" + (version-major+minor version) "/" version + "/warzone2100-" version ".tar.xz")) + (sha256 + (base32 "10kmpr4cby95zwqsl1zwx95d9achli6khq7flv6xmrq30a39xazw")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-distributor=Guix") From e464bd607afb3ca4eebbf2bac26930c3492575d8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 02:55:32 +0100 Subject: [PATCH 309/411] gnu: chromium-bsu: Don't use NAME in source URI. * gnu/packages/games.scm (chromium-bsu)[source]: Hard-code NAME. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index a831f41839..d75c0955d8 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3307,9 +3307,9 @@ (define-public chromium-bsu (version "0.9.16.1") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/" name + (uri (string-append "mirror://sourceforge/chromium-bsu" "/Chromium B.S.U. source code/" - name "-" version ".tar.gz")) + "chromium-bsu-" version ".tar.gz")) (sha256 (base32 "0jk2w5b6s6nkzri585bbz16cif2fhqcnl5l1mq3rd98r9nil3hd1")))) From 631b20f90b7562807bd527a5eb028beb2229951a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 04:22:17 +0100 Subject: [PATCH 310/411] gnu: red-eclipse: Use GIT-FETCH for data sources. * gnu/packages/games.scm (red-eclipse): Update DATA-SOURCE hashes. [arguments]: COPY-RECURSIVELY instead of extracting tarballs. [inputs]: Use GIT-FETCH and GIT-FILE-NAME for all DATA-SOURCES. --- gnu/packages/games.scm | 101 ++++++++++++++++++++--------------------- 1 file changed, 49 insertions(+), 52 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index d75c0955d8..c9286f8346 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2899,42 +2899,42 @@ (define-public red-eclipse (let ((release "1.6.0") (revision 0) (data-sources - '(("acerspyro" "07mzgdahnr3w3w7kf8nmy20r199rimfx9ryqxjdr793sw0vawqd3") - ("actors" "1hkgscfhg0kmwgym0mw56fhcckzbb2hh3nsvd45v4mdfyk0xnrm7") - ("appleflap" "1q4xs3x904mrrbxzv6lpr3lywm8p6i8339ijzy9j091s2wdl51ka") - ("blendbrush" "004md2haysr9w8fj6l7bj9wcfjqrq9wx1rrjf9dv16k5sbrkqza9") - ("caustics" "1qmmv8ds70j1ixy4rvli309vbcyjq1l5j1wri6nbnjay10f9fcgq") - ("crosshairs" "0q1vadg5cai9i6igl6y08774fd05gav0kinbgb2757n47ig50bns") - ("dziq" "1s9248ky2qqy24z9c2vgpisz500dvsaj249pv1fkrxgsypjm1z6v") - ("elyvisions" "15synpms05996v4c4kdl0h899spl4z7si9kl8c4m7rvc2yvin1ga") - ("fonts" "1l4727ai8mphi7n3wcjp2lh3p47nh6w82s5dpqbbjpqr9gilb69j") - ("freezurbern" "0hcdbzs02mvpsfhmahhqjv6pd8lbsag1bm6rpy61ns5qwmhg96ys") - ("john" "1whyvlx87mb83kfb7jhhnwz9s7lry4li8l3xar61vmlqgmsnz33d") - ("jojo" "02wxa93f5al4rlnsdjpd0hlnca0ympnj8481lgdxx70hny8zi3qi") - ("jwin" "1gb4l7lbhr150hml1y0wbyx7266q5nslh6n494wwrrsvp11s2qk8") - ("luckystrike" "0wy2spvhx5k233fsl283250ym5bqvkk8i6i19sw3zvzyxp2p4yq9") - ("maps" "1dmvp9mskval606z5srjd909jpm6qz4fdcpaszkkhfr5ajbj30vq") - ("mayhem" "0hkzzx0rxda70ixw9lfh9v1dpsbn2dj86jrr3zxjgasbgaxw37ax") - ("mikeplus64" "144fxhp4qjqjw3gvhf7ym6rnfxvxc0zvd3f54jg1jgnccc1hfyah") - ("misc" "0bpvibyc6vjhbzsf67xxn85yq2h97xs96icbskwzs2wsd860kq8c") - ("nieb" "0d72wsibk9sg9nhin3fwzz9zljiccyln0fn42y2q2xbd4my23b1k") - ("nobiax" "19lr36ys98cmpp739svjar1j942fbxz6r062gi7ygh89zh9yrgfy") - ("particles" "02pnq8ksl7f6kqxss3aza98jssdq2s41rhkhki71ynavp2a5akar") - ("philipk" "1xkrb7wa1pyhbs4xxx7vnnzsxrqzswk7gjbdac7i7rj0lwnfaij2") - ("projectiles" "1hra0f1ifiddh16fv4pqcr2amf046lf445v0653zkyri43zgrj5f") - ("props" "0ff6a8pz62f4nsk4c9cr50kirw108a661y5j6fvlsjickw3xjmyv") - ("skyboxes" "1lq58dhrdiivq7llkiyqwpi3bwa89r8hbi98p7zjhw7wdn34i6n2") - ("snipergoth" "0d5qf01bxd4dlffgxf8i91zq6mbyjmfd00dpyligpfj6fdbz87gc") - ("sounds" "0z6jmxsr3w735hrdnxypdb0gi399pwkaycv9grjpiqy43j3ic7gj") - ("textures" "0k5a47g2z99xn17vw7bqbp0w726gxmk33g5gwmqvfhxxxzzwimvi") - ("torley" "12x23l8xcv9ard5v76lb210lvp66whsns2p3k3xkd1sabp5ixbd5") - ("trak" "03kmwj47yb3dqzb6k9kilna9ja8c6jcnblvbs72x15767fl496pb") - ("ulukai" "0vvd016a7x981ixif6dnlg45s0ak7i89pgyrgwy2fpd94nl2am15") - ("unnamed" "18sxvdha41njp6g8wn56mjy6w9x778c793gh8fr0h9cnysb5gfmi") - ("vanities" "1p38mc2566bmb4vdyr9n9s6fkwmynp2xlpdq2a97gzgi4nmm0232") - ("vegetation" "0pf3qvqzabdcri5za61z6m89b5hq7sd3q0idkazmx88a62mcclkb") - ("weapons" "1jr05y9qhhx53plvir35srvv3cmn6wa065p3bskx6h1x6dcbx3c6") - ("wicked" "14b9f92h8hccp7a015z6rqgbs8236sdyxnwsq991ylnap7cbwvam")))) + '(("acerspyro" "12b0bngl7hlxw4iwdbn99jp081yl6z1ic0s788nm349drbr2pck8") + ("actors" "0x7qqx67679q6ark9zz02skwhzgabid69kwi6zmhfpfgicn4927r") + ("appleflap" "08xslwqfqz3j4m03pv5ry2gdzj5k2ns51z8n6sln3sa94i9x8qkm") + ("blendbrush" "18zf5i2ax4p14x4c9nhk9fq6l1xgbxw62gm72vx59vbfdpjrw3cg") + ("caustics" "172fxwx7kbz5nmbjq98kr52ips505wb99fibgnpg8cj02syrya8k") + ("crosshairs" "14w8ysqzdsx9bzpfbl700jzngbh14rdghhjdf6zd6jlkvrl6754r") + ("dziq" "056imqszvp90j7cgz52ly0f31px64gsrmvm9k2c78ldbx87jnhc3") + ("elyvisions" "1bsgr0gr7njydj8fqclh0a27lrsyic3xfd5a4vwggw7g54azpgk2") + ("fonts" "00ibisza1qci0ghf2rynyf28l6r3nqhfzjf80k6gg76q4v7p1myx") + ("freezurbern" "07l9ldk9b82f12c13wcg5xxdf15bw0yjxk3vvk8v3ygrl2mwksyr") + ("john" "1jdmwkrdi5b9pivkm22rxhmkk1db9dx6l54wzcc23cvdz04ij93k") + ("jojo" "0f7kjy43fbk9kw8fip6bbw4gn3pryh0fndlahjfkaysrx98krdj3") + ("jwin" "0nc8dndnpqk2ad6316a8k6kgzsrkpwvk8s4gyh7aqfi4axfclril") + ("luckystrike" "04jiipqahphmvz5cd74dygr62dlvv6l4iglb8hzh4pp8frhls8bq") + ("maps" "0an46ipjvw4h0nxvb6qvnzp1cdkzlkiinqz4zh9lmxy1ds0gclim") + ("mayhem" "15k10imm2wr6c6fq35n4r99k7kz7n9zdnjlw6dmdq6fba67i6sbc") + ("mikeplus64" "0v4wiiivm3829j4phlavy22n4c6k6ib9ixxpdz7r6ysg5cdkaw33") + ("misc" "13rfgwrlfhflz6inbkg3fypyf8im0m49sw112b17qrw2zgp8i1rz") + ("nieb" "0z0h9jdn2gkkjil3vsvwidb1p2k09pi5n3wjxza12hhvqmcs7q8f") + ("nobiax" "08bfp4q6gbfis18bp1h4d0hqssk79jc4fhyjxnv21dbam4v4mnkn") + ("particles" "1vsx3fgg19xggxfhz3vlrh6nqhmw7kl9kmxrvb2j84blp00vd6z2") + ("philipk" "14irscg80607i5k5l2ci0n9nwibvda2f3xsykgv96d0vldrp5n5a") + ("projectiles" "09bnfsrywirwgjm6d7ff5nicx6w6b7w9568x9pb5q0ncaps3l85s") + ("props" "1dlabbprlkif8af3daf9nbgcwgxiymvj0yiphqhlri8ylfy2vpz4") + ("skyboxes" "14bi3md5y47cvb9ybipdvksz40gqsqw2r0lh3zzqb4acq367w18y") + ("snipergoth" "0m8rvvy5n8n9pm0b5cqvzsxsw51mqk8m7s1h3qc849b38isliwq2") + ("sounds" "0ivf3w5bphz5pzzx6kwcb67vbly1l19cgv3s0cyp8n87afiqj5rd") + ("textures" "0qdmgx7zbcqnb9rrga2izr93p5inirczhddfxs504rsnv0v8vyxm") + ("torley" "05ppyhghq859cbbxzj3dnl9fcx3ghy04ds1pylypwg2hsxzbjwcd") + ("trak" "0g3vq86q91a3syli38lwc8ca4ychfwsmmqf85kqzfzyd627ybclm") + ("ulukai" "0asa5fz400impklcg6dy2f7jiaqfc1sn1c36fpg8jd01gw66lw93") + ("unnamed" "0rz5683j7sfwkcycfypbv4b0ihp0qwn9rzskfsabwc1s5g324917") + ("vanities" "13f18783rc8cjf22p61zr8m5g1migzlx05fzl8xnbjdkqq4cdyix") + ("vegetation" "1y5d97nfmvax7y4fr0y5v0c8zb1ajkqwx76kjd4qc9n4spdsi5sc") + ("weapons" "103g1dhxv5ffz4ddg2xcbshbgv9606chsbas3pzk6h9ybqsyjrqh") + ("wicked" "1884rk34a2dj83gz82rc4zh3ch0dyj5221hvsr0a5h60578i7yj6")))) (package (name "red-eclipse") (version (if (zero? revision) @@ -2966,15 +2966,10 @@ (define-public red-eclipse (lambda* (#:key inputs #:allow-other-keys) (delete-file-recursively "data") (mkdir "data") - (for-each (lambda (name) - (invoke "tar" "-xvf" - (assoc-ref inputs name) - "-Cdata" - "--transform" - (string-append "s/" - name "-" ,release "/" - name "/"))) - (list ,@(map car data-sources))) + (with-directory-excursion "data" + (for-each (lambda (name) + (copy-recursively (assoc-ref inputs name) name)) + (list ,@(map car data-sources)))) #t)) (add-after 'unpack-data 'add-store-data-package-path-as-default (lambda* (#:key outputs #:allow-other-keys) @@ -3046,7 +3041,8 @@ (define-public red-eclipse (chmod "redeclipse_linux" #o555) (chmod "redeclipse_server_linux" #o555))) #t))))) - (native-inputs `(("pkg-config" ,pkg-config))) + (native-inputs + `(("pkg-config" ,pkg-config))) (inputs `(("curl" ,curl) ("glu" ,glu) @@ -3058,13 +3054,14 @@ (define-public red-eclipse ((name hash) (list name (origin - (method url-fetch) - (uri (string-append - "https://github.com/red-eclipse/" - name "/archive/v" release ".tar.gz")) + (method git-fetch) + (uri + (git-reference + (url (string-append "https://github.com/" + "red-eclipse/" name ".git")) + (commit (string-append "v" release)))) (sha256 (base32 hash)) - (file-name (string-append name "-" version - ".tar.gz")))))) + (file-name (git-file-name name version)))))) data-sources))) (home-page "http://redeclipse.net/") (synopsis "Arena shooter derived from the Cube 2 engine") From 3e4031877200b454a89263d6a51afe127738644b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 22:00:43 +0100 Subject: [PATCH 311/411] gnu: Add faiss. * gnu/packages/graph.scm (faiss): New variable. --- gnu/packages/graph.scm | 83 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index 7ed13d37c7..b3723d4069 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -22,6 +22,7 @@ (define-module (gnu packages graph) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix packages) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (guix build-system r) @@ -30,6 +31,7 @@ (define-module (gnu packages graph) #:use-module (gnu packages gcc) #:use-module (gnu packages bioconductor) #:use-module (gnu packages bioinformatics) + #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cran) #:use-module (gnu packages graphviz) @@ -239,3 +241,84 @@ (define-public python-plotly (define-public python2-plotly (package-with-python2 python-plotly)) + +(define-public faiss + (package + (name "faiss") + (version "1.5.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/facebookresearch/faiss.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0pk15jfa775cy2pqmzq62nhd6zfjxmpvz5h731197c28aq3zw39w")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list "-DBUILD_WITH_GPU=OFF" ; thanks, but no thanks, CUDA. + "-DBUILD_TUTORIAL=OFF") ; we don't need those + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'prepare-build + (lambda _ + (let ((features (list ,@(let ((system (or (%current-target-system) + (%current-system)))) + (cond + ((string-prefix? "x86_64" system) + '("-mavx" "-msse2")) + ((string-prefix? "i686" system) + '("-msse2")) + (else + '())))))) + (substitute* "CMakeLists.txt" + (("-msse4") + (string-append + (string-join features) + " -I" (getcwd))) + ;; Build also the shared library + (("ARCHIVE DESTINATION lib") + "LIBRARY DESTINATION lib") + (("add_library.*" m) + "\ +add_library(objlib OBJECT ${faiss_cpu_headers} ${faiss_cpu_cpp}) +set_property(TARGET objlib PROPERTY POSITION_INDEPENDENT_CODE 1) +add_library(${faiss_lib}_static STATIC $) +add_library(${faiss_lib} SHARED $) +install(TARGETS ${faiss_lib}_static ARCHIVE DESTINATION lib) +\n"))) + + ;; See https://github.com/facebookresearch/faiss/issues/520 + (substitute* "IndexScalarQuantizer.cpp" + (("#define USE_AVX") "")) + + ;; Make header files available for compiling tests. + (mkdir-p "faiss") + (for-each (lambda (file) + (mkdir-p (string-append "faiss/" (dirname file))) + (copy-file file (string-append "faiss/" file))) + (find-files "." "\\.h$")) + #t)) + (replace 'check + (lambda _ + (invoke "make" "-C" "tests" + (format #f "-j~a" (parallel-job-count))))) + (add-after 'install 'remove-tests + (lambda* (#:key outputs #:allow-other-keys) + (delete-file-recursively + (string-append (assoc-ref outputs "out") + "/test")) + #t))))) + (inputs + `(("openblas" ,openblas))) + (native-inputs + `(("googletest" ,googletest))) + (home-page "https://github.com/facebookresearch/faiss") + (synopsis "Efficient similarity search and clustering of dense vectors") + (description "Faiss is a library for efficient similarity search and +clustering of dense vectors. It contains algorithms that search in sets of +vectors of any size, up to ones that possibly do not fit in RAM. It also +contains supporting code for evaluation and parameter tuning.") + (license license:bsd-3))) From 51a9971ccb631e56d67f2cf71c2d8defae73955c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 28 Mar 2019 23:50:33 +0100 Subject: [PATCH 312/411] gnu: Add python-faiss. * gnu/packages/graph.scm (python-faiss): New variable. --- gnu/packages/graph.scm | 50 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index b3723d4069..2e8f7c1331 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -22,6 +22,7 @@ (define-module (gnu packages graph) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix packages) + #:use-module (guix utils) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) @@ -42,6 +43,7 @@ (define-module (gnu packages graph) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages statistics) + #:use-module (gnu packages swig) #:use-module (gnu packages time) #:use-module (gnu packages xml)) @@ -322,3 +324,51 @@ (define-public faiss vectors of any size, up to ones that possibly do not fit in RAM. It also contains supporting code for evaluation and parameter tuning.") (license license:bsd-3))) + +(define-public python-faiss + (package (inherit faiss) + (name "python-faiss") + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ (chdir "python") #t)) + (add-after 'chdir 'build-swig + (lambda* (#:key inputs #:allow-other-keys) + (with-output-to-file "../makefile.inc" + (lambda () + (let ((python-version ,(version-major+minor (package-version python)))) + (format #t "\ +PYTHONCFLAGS =-I~a/include/python~am/ -I~a/lib/python~a/site-packages/numpy/core/include +LIBS = -lpython~am -lfaiss +SHAREDFLAGS = -shared -fopenmp +CXXFLAGS = -fpermissive -std=c++11 -fopenmp -fPIC +CPUFLAGS = ~{~a ~}~%" + (assoc-ref inputs "python*") python-version + (assoc-ref inputs "python-numpy") python-version + python-version + (cons "-mpopcnt" + (list ,@(let ((system (or (%current-target-system) + (%current-system)))) + (cond + ((string-prefix? "x86_64" system) + '("-mavx" "-msse2")) + ((string-prefix? "i686" system) + '("-msse2")) + (else + '()))))))))) + (substitute* "Makefile" + (("../libfaiss.a") "")) + (invoke "make" "cpu")))))) + (inputs + `(("faiss" ,faiss) + ("openblas" ,openblas) + ("python*" ,python) + ("swig" ,swig))) + (propagated-inputs + `(("python-matplotlib" ,python-matplotlib) + ("python-numpy" ,python-numpy))) + (description "Faiss is a library for efficient similarity search and +clustering of dense vectors. This package provides Python bindings to the +Faiss library."))) From c91ecf2db4c24159a2db1c153541f55642315892 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 03:51:37 +0100 Subject: [PATCH 313/411] gnu: Add python-annoy. * gnu/packages/python-xyz.scm (python-annoy): New variable. --- gnu/packages/python-xyz.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index de546f2618..f392b52235 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -15275,3 +15275,26 @@ (define-public python-toolshed (description "This is a collection of well-tested, simple modules and functions that aim to reduce boilerplate when working with data.") (license license:bsd-2))) + +(define-public python-annoy + (package + (name "python-annoy") + (version "1.15.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "annoy" version)) + (sha256 + (base32 + "1rxn6snn0r32r07g45hdjhh8aa1xzx6fjrm8g62d8vzp46z7rzrp")))) + (build-system python-build-system) + (native-inputs + `(("python-nose" ,python-nose))) + (home-page "https://github.com/spotify/annoy/") + (synopsis "Approximate nearest neighbors library") + (description + "Annoy is a C++ library with Python bindings to search for points in +space that are close to a given query point. It also creates large read-only +file-based data structures that are @code{mmap}ped into memory so that many +processes may share the same data.") + (license license:asl2.0))) From e9d4409bab594b3c28f7e74cfdcace7d1a7538c6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 03:54:46 +0100 Subject: [PATCH 314/411] gnu: Add python-bbknn. * gnu/packages/bioinformatics.scm (python-bbknn): New variable. --- gnu/packages/bioinformatics.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a0b44e5bbb..c647d48aec 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -13340,6 +13340,38 @@ (define-public python-scanpy million cells.") (license license:bsd-3))) +(define-public python-bbknn + (package + (name "python-bbknn") + (version "1.3.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "bbknn" version)) + (sha256 + (base32 + "1qgdganvj3lyxj84v7alm23b9vqhwpn8z0115qndpnpy90qxynwz")))) + (build-system python-build-system) + (propagated-inputs + `(("python-annoy" ,python-annoy) + ("python-cython" ,python-cython) + ("python-faiss" ,python-faiss) + ("python-numpy" ,python-numpy) + ("python-scanpy" ,python-scanpy))) + (home-page "https://github.com/Teichlab/bbknn") + (synopsis "Batch balanced KNN") + (description "BBKNN is a batch effect removal tool that can be directly +used in the Scanpy workflow. It serves as an alternative to +@code{scanpy.api.pp.neighbors()}, with both functions creating a neighbour +graph for subsequent use in clustering, pseudotime and UMAP visualisation. If +technical artifacts are present in the data, they will make it challenging to +link corresponding cell types across different batches. BBKNN actively +combats this effect by splitting your data into batches and finding a smaller +number of neighbours for each cell within each of the groups. This helps +create connections between analogous cells in different batches without +altering the counts or PCA space.") + (license license:expat))) + (define-public gffcompare (let ((commit "be56ef4349ea3966c12c6397f85e49e047361c41") (revision "1")) From 22da44e8c2e09815b83960960a808daf92cd8ec6 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 04:25:23 +0100 Subject: [PATCH 315/411] gnu: laby: Don't use NAME in source URI. * gnu/packages/games.scm (laby)[source]: Hard-code NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index c9286f8346..2940c94c48 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3577,7 +3577,7 @@ (define-public laby (origin (method url-fetch) (uri (string-append "https://github.com/sgimenez/laby/archive/" - name "-" version ".tar.gz")) + "laby-" version ".tar.gz")) (sha256 (base32 "0gyrfa95l1qka7gbjf7l6mk7mbfvph00l0c995ia272qdw7rjhyf")) From ed9bcf50d369c93d065f1ecff1ae822179545d73 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 04:29:06 +0100 Subject: [PATCH 316/411] gnu: mrrescue: Don't use NAME in source URI. * gnu/packages/games.scm (mrrescue)[source]: Hard-code NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 2940c94c48..e64cdd75ff 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3660,7 +3660,7 @@ (define-public mrrescue (method url-fetch) (uri (string-append "https://github.com/SimonLarsen/mrrescue/releases/" - "download/" version "/" name version ".love")) + "download/" version "/mrrescue" version ".love")) (file-name (string-append name "-" version ".love")) (sha256 (base32 From a01aea7d6614d31a1aca2d1acc127f3b2f8d37de Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 04:30:10 +0100 Subject: [PATCH 317/411] gnu: hyperrogue: Don't use NAME in source URI. * gnu/packages/games.scm (hyperrogue)[source]: Hard-code NAME. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index e64cdd75ff..ddf88f384b 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3729,8 +3729,8 @@ (define-public hyperrogue (source (origin (method url-fetch) (uri (string-append - "https://www.roguetemple.com/z/hyper/" - name (string-join (string-split version #\.) "") + "https://www.roguetemple.com/z/hyper/hyperrogue" + (string-join (string-split version #\.) "") "-src.tgz")) (sha256 (base32 From 146a4459db42e1fbda127e6f7a8db36253113b5e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 03:46:58 +0100 Subject: [PATCH 318/411] gnu: no-more-secrets: Don't use unstable tarball. * gnu/packages/games.scm (no-more-secrets)[source]: Use GIT-FETCH and GIT-FILE-NAME. --- gnu/packages/games.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index ddf88f384b..c1a0ee699f 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3914,13 +3914,13 @@ (define-public no-more-secrets (version "0.3.3") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/bartobri/no-more-secrets/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/bartobri/no-more-secrets.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 - "1kpx1rirc3i7fb4lymp0hx5rqr0s2ay4za261rw3bcy6d23l1kyg")))) + (base32 "1zfv4qabikf8w9winsr4brxrdvs3f0d7xvydksyx8bydadsm2v2h")))) (build-system gnu-build-system) (arguments `(#:tests? #f From 30b8b2013b7153b6742ac5a8f39b010ed1742e25 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 03:48:15 +0100 Subject: [PATCH 319/411] gnu: lugaru: Don't use NAME in source URI. * gnu/packages/games.scm (lugaru)[source]: Hard-code NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index c1a0ee699f..7ae10f3f3f 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4639,7 +4639,7 @@ (define-public lugaru (source (origin (method url-fetch) (uri (string-append "https://bitbucket.org/osslugaru/lugaru/downloads/" - name "-" version ".tar.xz")) + "lugaru-" version ".tar.xz")) (sha256 (base32 "15zgcshy22q51rm72zi6y9z7qlgnz5iw3gczjdlir4bqmxy4gspk")))) From a6ac8e0b31fbe2445823ff224b595e5f4debf327 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 03:49:31 +0100 Subject: [PATCH 320/411] gnu: fortune-mod: Don't use NAME in source COMMIT. * gnu/packages/games.scm (fortune-mod)[source]: Hard-code NAME. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 7ae10f3f3f..9d4d64a3da 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5547,7 +5547,7 @@ (define-public fortune-mod (method git-fetch) (uri (git-reference (url "https://github.com/shlomif/fortune-mod") - (commit (string-append name "-" version)))) + (commit (string-append "fortune-mod-" version)))) (file-name (git-file-name name version)) (sha256 (base32 From e2c9f9de9fc20058bc2475d6274f9300e53e5911 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 03:54:33 +0100 Subject: [PATCH 321/411] gnu: frotz: Don't use NAME in source URI. * gnu/packages/games.scm (frotz)[source]: Hard-code NAME. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 9d4d64a3da..1c7a406637 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5856,10 +5856,10 @@ (define-public frotz (method url-fetch) (uri (list (string-append "http://www.ifarchive.org/if-archive/infocom/interpreters/" - name "/" name "-" version ".tar.gz") + "frotz/frotz-" version ".tar.gz") (string-append "ftp://ftp.ifarchive.org/if-archive/infocom/interpreters/" - name "/" name "-" version ".tar.gz"))) + "frotz/frotz-" version ".tar.gz"))) (sha256 (base32 "1v735xr3blznac8fnwa27s1vhllx4jpz7kw7qdw1bsfj6kq21v3k")))) From 98e27db5bbd853ab885d349f1126c67a90d3b2f4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 03:54:40 +0100 Subject: [PATCH 322/411] gnu: frotz-dumb-terminal: Merge strings in URI. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/games.scm (frotz-dumb-terminal)[source]: Merge separate string components, probably from a naive ’s/name/"name"/’ substitution. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 1c7a406637..8f3b641aaa 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5905,10 +5905,10 @@ (define-public frotz-dumb-terminal (method url-fetch) (uri (list (string-append "http://www.ifarchive.org/if-archive/infocom/interpreters/" - "frotz" "/" "frotz" "-" version ".tar.gz") + "frotz/frotz-" version ".tar.gz") (string-append "ftp://ftp.ifarchive.org/if-archive/infocom/interpreters/" - "frotz" "/" "frotz" "-" version ".tar.gz"))) + "frotz/frotz-" version ".tar.gz"))) (sha256 (base32 "1v735xr3blznac8fnwa27s1vhllx4jpz7kw7qdw1bsfj6kq21v3k")))) From 5b35bdaaa5402e8bad524f791031be6c449092b8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 03:55:02 +0100 Subject: [PATCH 323/411] gnu: libmanette: Don't use NAME in source URI. * gnu/packages/games.scm (libmanette)[source]: Hard-code NAME. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 8f3b641aaa..4171bdd273 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6010,9 +6010,9 @@ (define-public libmanette (version "0.2.2") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" + (uri (string-append "mirror://gnome/sources/libmanette/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "libmanette-" version ".tar.xz")) (sha256 (base32 "1lpprk2qz1lsqf9xj6kj2ciyc1zmjhj5lwd584qkh7jgz2x9y6wb")))) From 4959856443b477c9905d80b1a82abc35636b14e5 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 03:56:06 +0100 Subject: [PATCH 324/411] gnu: quadrapassel: Don't use NAME in source URI. * gnu/packages/games.scm (quadrapassel)[source]: Hard-code NAME. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 4171bdd273..1c0b1daa18 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6039,9 +6039,9 @@ (define-public quadrapassel (version "3.31.3") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" + (uri (string-append "mirror://gnome/sources/quadrapassel/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "quadrapassel-" version ".tar.xz")) (sha256 (base32 "08i01nsgfb502xzzrrcxxbs7awb0j1h4c08vmj0j18ipa1sz8vb8")))) From 07de94d6a4c7f9845b5f90beea37031a8334a7b8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 04:07:18 +0100 Subject: [PATCH 325/411] gnu: hyperrogue: Don't use NAME in hyperrogue-data. * gnu/packages/games.scm (hyperrogue)[native-inputs]: Hard code NAME in hyperrogue-data source URI. --- gnu/packages/games.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 1c0b1daa18..cba6c3f7f5 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3806,7 +3806,7 @@ (define-public hyperrogue (method url-fetch) (uri (string-append - "https://www.roguetemple.com/z/hyper/" name + "https://www.roguetemple.com/z/hyper/hyperrogue" (string-join (string-split version #\.) "") "-win.zip")) (sha256 From e040413e0ad4677da0a1301eec273a810a144449 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 04:13:54 +0100 Subject: [PATCH 326/411] gnu: r-cairo: Update to 1.5-10. * gnu/packages/statistics.scm (r-cairo): Update to 1.5-10. [inputs]: Add zlib. --- gnu/packages/statistics.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 66165cd5ef..d473c7c06d 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -5473,19 +5473,20 @@ (define-public r-tsne (define-public r-cairo (package (name "r-cairo") - (version "1.5-9") + (version "1.5-10") (source (origin (method url-fetch) (uri (cran-uri "Cairo" version)) (sha256 (base32 - "1x1q99r3r978rlkkm5gixkv03p0mcr6k7ydcqdmisrwnmrn7p1ia")))) + "1mdmd5zmjkh1b0x928zizgzh42x8swbajffb88rvnjfdhk1z0dvq")))) (properties `((upstream-name . "Cairo"))) (build-system r-build-system) (inputs `(("cairo" ,cairo) - ("libxt" ,libxt))) + ("libxt" ,libxt) + ("zlib" ,zlib))) (native-inputs `(("pkg-config" ,pkg-config))) (home-page "http://www.rforge.net/Cairo/") From 4e43e3175e181c422bef62b9962f4dfd78b7f77f Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 29 Mar 2019 01:26:07 +0100 Subject: [PATCH 327/411] gnu: Add openclonk. * gnu/packages/games.scm (openclonk): New variable. Co-authored-by: Ricardo Wurmus Signed-off-by: Ricardo Wurmus --- gnu/packages/games.scm | 88 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index cba6c3f7f5..a5ea5cd39a 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6553,3 +6553,91 @@ (define-public the-legend-of-edgar (define-public edgar (deprecated-package "edgar" the-legend-of-edgar)) + +(define-public openclonk + (package + (name "openclonk") + (version "8.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://www.openclonk.org/builds/release/" version "/" + "openclonk-" version "-src.tar.bz2")) + (sha256 + (base32 + "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags '("-DAudio_TK=OpenAL") + #:test-target "tests" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'prepare-gmock + (lambda* (#:key inputs #:allow-other-keys) + (mkdir "gmock") + (copy-recursively (assoc-ref inputs "googlemock") "gmock") + (substitute* "tests/CMakeLists.txt" + (("/usr/src/gmock") + (string-append (getcwd) "/gmock/googlemock")) + (("/usr/src/gtest") + (string-append (getcwd) "/gmock/googletest")) + (("PATH_SUFFIXES \"src\" \"gtest\"") + "PATH_SUFFIXES \"src\"")) + #t)) + (add-after 'unpack 'add-libiberty + ;; Build fails upon linking executables without this. + (lambda _ + (substitute* "thirdparty/backward-cpp/BackwardConfig.cmake" + (("set\\(LIBBFD_LIBRARIES (.*?)\\)" _ libraries) + (string-append "set(LIBBFD_LIBRARIES " libraries " iberty)"))) + #t)) + (add-after 'add-libiberty 'lax-freealut-requirement + ;; TODO: We provide freealut 1.1.0, but pkg-config somehow detects + ;; it as 1.0.1. Force minimal version. + (lambda _ + (substitute* "cmake/FindAudio.cmake" + (("freealut>=1.1.0") "freealut>=1.0.1")) + #t)) + (add-after 'lax-freealut-requirement 'fix-directories + ;; Prefer "$out/share/openclonk" over + ;; "$out/share/games/openclonk". Also install "openclonk" + ;; binary in "bin/", not "games/". + (lambda _ + (substitute* "CMakeLists.txt" + (("share/games/openclonk") "share/openclonk") + (("TARGETS openclonk DESTINATION games") + "TARGETS openclonk DESTINATION bin")) + #t))))) + (native-inputs + `(("googlemock" ,(package-source googletest)) + ("googletest" ,googletest) + ("pkg-config" ,pkg-config))) + (inputs + `(("freealut" ,freealut) + ("freetype" ,freetype) + ("glew" ,glew) + ("libiberty" ,libiberty) + ("libjpeg" ,libjpeg-turbo) + ("libogg" ,libogg) + ("libpng" ,libpng) + ("libvorbis" ,libvorbis) + ("libxrandr" ,libxrandr) + ("mesa" ,mesa) + ("miniupnpc" ,miniupnpc) + ("openal" ,openal) + ("qtbase" ,qtbase) + ("readline" ,readline) + ("sdl" ,sdl2) + ("tinyxml" ,tinyxml) + ("zlib" ,zlib))) + (home-page "https://www.openclonk.org/") + (synopsis + "Multiplayer action game where you control small and nimble humanoids") + (description "OpenClonk is a multiplayer action/tactics/skill game. It is +often referred to as a mixture of The Settlers and Worms. In a simple 2D +antfarm-style landscape, the player controls his crew of Clonks, small but +robust humanoid beings. The game encourages free play but the normal goal is +to either exploit valuable resources from the earth by building a mine or +fight each other on an arena-like map.") + ;; Software as a whole is licensed under ISC, artwork under CC-BY. + (license (list license:isc license:cc-by3.0)))) From d8a28332c59cc5230ecd974e759d15a95ac2b2d6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 05:39:35 +0100 Subject: [PATCH 328/411] gnu: Add r-ggcorrplot. * gnu/packages/cran.scm (r-ggcorrplot): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 599fd6b584..44419d9bcf 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13610,3 +13610,27 @@ (define-public r-mpm principal component analysis, correspondence analysis, spectral map analysis.") (license license:gpl2+))) + +(define-public r-ggcorrplot + (package + (name "r-ggcorrplot") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggcorrplot" version)) + (sha256 + (base32 + "12sxvd9kjgszpbk35m7fj1wv7x40bp79c0g0by1xax70r3495h93")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-reshape2" ,r-reshape2))) + (home-page "http://www.sthda.com/english/wiki/ggcorrplot") + (synopsis "Visualization of a correlation matrix using ggplot2") + (description + "The ggcorrplot package can be used to visualize easily a correlation +matrix using ggplot2. It provides a solution for reordering the correlation +matrix and displays the significance level on the plot. It also includes a +function for computing a matrix of correlation p-values.") + (license license:gpl2))) From d2aa2d245183e44d63a447d06e7d86de1e85ce5c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 06:34:39 +0100 Subject: [PATCH 329/411] gnu: r-png: Move to (gnu packages cran). * gnu/packages/image.scm (r-png): Move from here... * gnu/packages/cran.scm (r-png): ...to here. --- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ gnu/packages/image.scm | 23 ----------------------- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 44419d9bcf..426866e6c3 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13611,6 +13611,29 @@ (define-public r-mpm analysis.") (license license:gpl2+))) +(define-public r-png + (package + (name "r-png") + (version "0.1-7") + (source (origin + (method url-fetch) + (uri (cran-uri "png" version)) + (sha256 + (base32 + "0g2mcp55lvvpx4kd3mn225mpbxqcq73wy5qx8b4lyf04iybgysg2")))) + (build-system r-build-system) + (inputs + `(("libpng" ,libpng) + ("zlib" ,zlib))) + (home-page "http://www.rforge.net/png/") + (synopsis "Read and write PNG images") + (description + "This package provides an easy and simple way to read, write and display +bitmap images stored in the PNG format. It can read and write both files and +in-memory raw vectors.") + ;; Any of these GPL versions. + (license (list license:gpl2 license:gpl3)))) + (define-public r-ggcorrplot (package (name "r-ggcorrplot") diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index b52b6025ae..d363c445b7 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -198,29 +198,6 @@ (define-public libpng-1.2 (base32 "1izw9ybm27llk8531w6h4jp4rk2rxy2s9vil16nwik5dp0amyqxl")))))) -(define-public r-png - (package - (name "r-png") - (version "0.1-7") - (source (origin - (method url-fetch) - (uri (cran-uri "png" version)) - (sha256 - (base32 - "0g2mcp55lvvpx4kd3mn225mpbxqcq73wy5qx8b4lyf04iybgysg2")))) - (build-system r-build-system) - (inputs - `(("libpng" ,libpng) - ("zlib" ,zlib))) - (home-page "http://www.rforge.net/png/") - (synopsis "Read and write PNG images") - (description - "This package provides an easy and simple way to read, write and display -bitmap images stored in the PNG format. It can read and write both files and -in-memory raw vectors.") - ;; Any of these GPL versions. - (license (list license:gpl2 license:gpl3)))) - (define-public pngcrush (package (name "pngcrush") From f084e41e2cd6e960860ad0b1f0afb89ad5fa8453 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 06:35:48 +0100 Subject: [PATCH 330/411] gnu: Add r-flexdashboard. * gnu/packages/cran.scm (r-flexdashboard): New variable. --- gnu/packages/cran.scm | 112 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 426866e6c3..6a8fda01db 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13657,3 +13657,115 @@ (define-public r-ggcorrplot matrix and displays the significance level on the plot. It also includes a function for computing a matrix of correlation p-values.") (license license:gpl2))) + +(define-public r-flexdashboard + (package + (name "r-flexdashboard") + (version "0.5.1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "flexdashboard" version)) + (sha256 + (base32 + "0fy3nbrr67zqgd44r2mc850s5sp0hzfcw3zqs15m8kxzj1aw067x")))) + (build-system r-build-system) + (arguments + `(#:modules ((guix build utils) + (guix build r-build-system) + (srfi srfi-1) + (srfi srfi-26) + (ice-9 popen) + (ice-9 textual-ports)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'process-javascript + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "inst" + ;; Concatenate all components of prism.js + (let ((contents (string-join + (map (lambda (name) + (call-with-input-file + (assoc-ref inputs name) + get-string-all)) + (list "js-prism" + "js-prism-r" + "js-prism-line-numbers")) + "\n"))) + (call-with-output-file "prism-src.js" + (cut display contents <>))) + (call-with-values + (lambda () + (unzip2 + `(("www/stickytableheaders/jquery.stickytableheaders.js" + "www/stickytableheaders/jquery.stickytableheaders.min.js") + ("www/sly/sly.js" + "www/sly/sly.min.js") + ("prism-src.js" + "www/prism/prism.js") + (,(assoc-ref inputs "js-raphael") + "htmlwidgets/lib/raphael/raphael-2.1.4.min.js") + (,(assoc-ref inputs "js-featherlight") + "www/featherlight/featherlight.min.js")))) + (lambda (sources targets) + (for-each (lambda (source target) + (format #t "Processing ~a --> ~a~%" + source target) + (delete-file target) + (let ((minified (open-pipe* OPEN_READ "uglify-js" source))) + (call-with-output-file target + (lambda (port) + (dump-port minified port))))) + sources targets)))) + #t))))) + (propagated-inputs + `(("r-htmltools" ,r-htmltools) + ("r-htmlwidgets" ,r-htmlwidgets) + ("r-jsonlite" ,r-jsonlite) + ("r-knitr" ,r-knitr) + ("r-rmarkdown" ,r-rmarkdown) + ("r-shiny" ,r-shiny))) + (native-inputs + `(("uglify-js" ,uglify-js) + ("js-raphael" + ,(origin + (method url-fetch) + (uri "https://raw.githubusercontent.com/DmitryBaranovskiy/raphael/v2.1.4/raphael.js") + (sha256 + (base32 + "1h4c4akrgcj7wra9j1z1rv2406j0yf68y9c0wg8v7w9ibw2iwf1x")))) + ("js-prism" + ,(origin + (method url-fetch) + (uri "https://raw.githubusercontent.com/PrismJS/prism/v1.16.0/prism.js") + (sha256 + (base32 + "0gqa9irbp9k8p5r3d98cszajzhjnssnl43nrsc5aiy7ki52z500c")))) + ("js-prism-r" + ,(origin + (method url-fetch) + (uri "https://raw.githubusercontent.com/PrismJS/prism/v1.16.0/components/prism-r.js") + (sha256 + (base32 + "1x31glci7wdgr2305njy0bm2lncb0jyn0j1s2g72rqi29xid9aki")))) + ("js-prism-line-numbers" + ,(origin + (method url-fetch) + (uri "https://raw.githubusercontent.com/PrismJS/prism/v1.16.0/plugins/line-numbers/prism-line-numbers.js") + (sha256 + (base32 + "1543wgf3iynrilyb27jq8px3h5gvfz5xmdib5ik2ki400c1sl991")))) + ("js-featherlight" + ,(origin + (method url-fetch) + (uri "https://raw.githubusercontent.com/noelboss/featherlight/1.3.4/src/featherlight.js") + (sha256 + (base32 + "14kkhwzvp8rxq2mrck5i0xcm8v5rqwqhwnmncbng8h4qq42zx3sb")))))) + (home-page "https://rmarkdown.rstudio.com/flexdashboard") + (synopsis "R Markdown format for flexible dashboards") + (description + "This package provides an R Markdown format for converting an R Markdown +document to a grid-oriented dashboard. The dashboard flexibly adapts the size +of its components to the containing web page.") + (license license:expat))) From 59d331f16a9bdc8c2cbc42534ca0871907c21319 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 06:35:57 +0100 Subject: [PATCH 331/411] gnu: Add r-abseqr. * gnu/packages/bioconductor.scm (r-abseqr): New variable. --- gnu/packages/bioconductor.scm | 47 +++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 7facbc1957..2bb0e8509c 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -29,6 +29,7 @@ (define-module (gnu packages bioconductor) #:use-module (gnu packages compression) #:use-module (gnu packages gcc) #:use-module (gnu packages graph) + #:use-module (gnu packages haskell) #:use-module (gnu packages maths) #:use-module (gnu packages pkg-config) #:use-module (gnu packages statistics) @@ -3112,3 +3113,49 @@ (define-public r-a4 "This package provides a software suite for the automated analysis of Affymetrix arrays.") (license license:gpl3))) + +(define-public r-abseqr + (package + (name "r-abseqr") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "abseqR" version)) + (sha256 + (base32 + "0w0ngxnilcrxlixsz7ls3zm99gyabxwn7w1r3r45n96d4aj075ry")))) + (properties `((upstream-name . "abseqR"))) + (build-system r-build-system) + (inputs + `(("pandoc" ,ghc-pandoc))) + (propagated-inputs + `(("r-biocparallel" ,r-biocparallel) + ("r-biocstyle" ,r-biocstyle) + ("r-circlize" ,r-circlize) + ("r-flexdashboard" ,r-flexdashboard) + ("r-ggcorrplot" ,r-ggcorrplot) + ("r-ggdendro" ,r-ggdendro) + ("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra) + ("r-knitr" ,r-knitr) + ("r-plotly" ,r-plotly) + ("r-plyr" ,r-plyr) + ("r-png" ,r-png) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-reshape2" ,r-reshape2) + ("r-rmarkdown" ,r-rmarkdown) + ("r-stringr" ,r-stringr) + ("r-vegan" ,r-vegan) + ("r-venndiagram" ,r-venndiagram))) + (home-page "https://github.com/malhamdoosh/abseqR") + (synopsis "Reporting and data analysis for Rep-Seq datasets of antibody libraries") + (description + "AbSeq is a comprehensive bioinformatic pipeline for the analysis of +sequencing datasets generated from antibody libraries and abseqR is one of its +packages. AbseqR empowers the users of abseqPy with plotting and reporting +capabilities and allows them to generate interactive HTML reports for the +convenience of viewing and sharing with other researchers. Additionally, +abseqR extends abseqPy to compare multiple repertoire analyses and perform +further downstream analysis on its output.") + (license license:gpl3))) From d656aea0ef4d96ff530b6e4529f7fb288349c674 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 06:48:13 +0100 Subject: [PATCH 332/411] gnu: zynaddsubfx: Update to 3.0.4. * gnu/packages/music.scm (zynaddsubfx): Update to 3.0.4. --- gnu/packages/music.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 5a2358f19a..442796bc1d 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2002,7 +2002,7 @@ (define-public drumstick (define-public zynaddsubfx (package (name "zynaddsubfx") - (version "3.0.3") + (version "3.0.4") (source (origin (method url-fetch) (uri (string-append @@ -2010,7 +2010,7 @@ (define-public zynaddsubfx version "/zynaddsubfx-" version ".tar.bz2")) (sha256 (base32 - "1hfpiqdm337gl4ynkmmp2qss2m5z8mzqzjrbiyg6w1v4js7l9phi")))) + "18m4ax0x06y1hx4g2g3gf02v0bldkrrb5m7fsr5jlfp1kvjd2j1x")))) (build-system cmake-build-system) (arguments `(#:phases From 45aba232abe50b6642abfaa06030985c7febbe07 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 07:14:17 +0100 Subject: [PATCH 333/411] gnu: stepmania: Fix loading of gtk module. Fixes . Suggested by Nicolas Goaziou. * gnu/packages/games.scm (stepmania)[arguments]: Add phase "ensure-gtk-module-can-be-found". --- gnu/packages/games.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index a5ea5cd39a..c7e08f8d98 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6182,6 +6182,13 @@ (define-public stepmania "/lib/glib-2.0/include")) #:phases (modify-phases %standard-phases + (add-after 'unpack 'ensure-gtk-module-can-be-found + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "src/arch/LoadingWindow/LoadingWindow_Gtk.cpp" + (("RageFileManagerUtil::sDirOfExecutable \\+ \"/\" \\+ \"GtkModule.so\"") + (string-append "\"" (assoc-ref outputs "out") + "/share/stepmania/GtkModule.so\""))) + #t)) (add-after 'unpack 'fix-install-subdir ;; Installation would be done in "%out/stepmania-X.Y", but we ;; prefer the more common layout "%out/share/stepmania". From 47131ebbc9fcabcbaa81d0aaf9fd499d65593a19 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 29 Mar 2019 02:36:32 -0400 Subject: [PATCH 334/411] gnu: Stellarium: Update to 0.19.0. * gnu/packages/astronomy.scm (stellarium): Update to 0.19.0. [arguments]: Remove obsolete 'patch-tests' phase. --- gnu/packages/astronomy.scm | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 2813062e95..6025af8323 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -131,7 +131,7 @@ (define-public gnuastro (define-public stellarium (package (name "stellarium") - (version "0.18.3") + (version "0.19.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/Stellarium/" name @@ -139,7 +139,7 @@ (define-public stellarium "/" name "-" version ".tar.gz")) (sha256 (base32 - "1mm8rjcb8j56m3kfigpix5vxviw1616kvl9ws2s3s5gdyngljrc3")))) + "1mjjqcpgm5a1022x0mpqj3v6qkvpm9wqm1hqyg0mlypc5681va8a")))) (build-system cmake-build-system) (inputs `(("qtbase" ,qtbase) @@ -161,13 +161,6 @@ (define-public stellarium (assoc-ref %build-inputs "qtserialport") "/include/qt5")) #:phases (modify-phases %standard-phases - ;; Skip a test that assumes Stellarium is "installed": - ;; https://bugs.gentoo.org/674472 - (add-after 'unpack 'patch-tests - (lambda _ - (substitute* "src/tests/testEphemeris.cpp" - (("ifndef Q_OS_WIN") "if 0")) - #t)) (add-before 'check 'set-offscreen-display (lambda _ ;; make Qt render "offscreen", required for tests From 4774677228689df7c56efedc55c6ee06cd1e172d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 14:14:19 +0100 Subject: [PATCH 335/411] gnu: stepmania: Fix all instances of accessing application data. This is a follow-up to commit 45aba232abe50b6642abfaa06030985c7febbe07. * gnu/packages/games.scm (stepmania)[arguments]: Rename phase ensure-gtk-module-can-be-found to ensure-application-files-can-be-found and fix remaining instances of application data access. --- gnu/packages/games.scm | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index c7e08f8d98..5340ae5d5b 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6182,12 +6182,21 @@ (define-public stepmania "/lib/glib-2.0/include")) #:phases (modify-phases %standard-phases - (add-after 'unpack 'ensure-gtk-module-can-be-found + (add-after 'unpack 'ensure-application-files-can-be-found (lambda* (#:key outputs #:allow-other-keys) - (substitute* "src/arch/LoadingWindow/LoadingWindow_Gtk.cpp" - (("RageFileManagerUtil::sDirOfExecutable \\+ \"/\" \\+ \"GtkModule.so\"") - (string-append "\"" (assoc-ref outputs "out") - "/share/stepmania/GtkModule.so\""))) + (let ((out (assoc-ref outputs "out"))) + (substitute* "src/arch/LoadingWindow/LoadingWindow_Gtk.cpp" + (("RageFileManagerUtil::sDirOfExecutable \\+ \"/\" \\+ \"GtkModule.so\"") + (string-append "\"" out + "/share/stepmania/GtkModule.so\""))) + (substitute* "src/arch/ArchHooks/ArchHooks_Unix.cpp" + (("Root = sDirOfExecutable") + (string-append "Root = \"" out "/share/stepmania/\"")) + (("sDirOfExecutable \\+ \"/(Packages|Songs)\"" _ dir) + (string-append "\"" out "/share/stepmania/" dir "\""))) + (substitute* "src/RageFileManager.cpp" + (("RageFileManagerUtil::sDirOfExecutable \\+ \"/\"") + (string-append "\"" out "/share/stepmania/\"")))) #t)) (add-after 'unpack 'fix-install-subdir ;; Installation would be done in "%out/stepmania-X.Y", but we From 3776dc094cdcf3836501ac8c783092461e7f1e66 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 29 Mar 2019 17:06:00 +0300 Subject: [PATCH 336/411] gnu: faiss: Fix building on non-Intel architectures. * gnu/packages/graph.scm (faiss)[source]: Add snippet to wrap Intel specific headers. [arguments]: Adjust custom 'prepare-build phase to adjust compile flags for different architectures. --- gnu/packages/graph.scm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index 2e8f7c1331..216b48195d 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus ;;; Copyright © 2018 Joshua Sierles, Nextjournal ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2019 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -256,7 +257,14 @@ (define-public faiss (file-name (git-file-name name version)) (sha256 (base32 - "0pk15jfa775cy2pqmzq62nhd6zfjxmpvz5h731197c28aq3zw39w")))) + "0pk15jfa775cy2pqmzq62nhd6zfjxmpvz5h731197c28aq3zw39w")) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* "utils.cpp" + (("#include ") + "#ifdef __SSE__\n#include \n#endif")) + #t)))) (build-system cmake-build-system) (arguments `(#:configure-flags @@ -270,12 +278,14 @@ (define-public faiss (%current-system)))) (cond ((string-prefix? "x86_64" system) - '("-mavx" "-msse2")) + '("-mavx" "-msse2" "-mpopcnt")) ((string-prefix? "i686" system) - '("-msse2")) + '("-msse2" "-mpopcnt")) (else '())))))) (substitute* "CMakeLists.txt" + (("-m64") "") + (("-mpopcnt") "") ; only some architectures (("-msse4") (string-append (string-join features) From 8339ccac5fc294fb3d0a0f62fe91c9dfaf0ba28f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 29 Mar 2019 17:06:58 +0300 Subject: [PATCH 337/411] gnu: python-faiss: Fix building on non-Intel architectures. * gnu/packages/graph.scm (python-faiss)[arguments]: Adjust custom 'build-swig phase to change build flags for different archictures. --- gnu/packages/graph.scm | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index 216b48195d..9dca2be98e 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -358,16 +358,15 @@ (define-public python-faiss (assoc-ref inputs "python*") python-version (assoc-ref inputs "python-numpy") python-version python-version - (cons "-mpopcnt" - (list ,@(let ((system (or (%current-target-system) - (%current-system)))) - (cond - ((string-prefix? "x86_64" system) - '("-mavx" "-msse2")) - ((string-prefix? "i686" system) - '("-msse2")) - (else - '()))))))))) + (list ,@(let ((system (or (%current-target-system) + (%current-system)))) + (cond + ((string-prefix? "x86_64" system) + '("-mavx" "-msse2" "-mpopcnt")) + ((string-prefix? "i686" system) + '("-msse2" "-mpopcnt")) + (else + '())))))))) (substitute* "Makefile" (("../libfaiss.a") "")) (invoke "make" "cpu")))))) From 46fc7cafcf7dcaaa252591df387541d43df05bb9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 29 Mar 2019 15:34:12 +0100 Subject: [PATCH 338/411] doc: Fix invalid uses of @ref. * doc/guix.texi (Invoking guix pull): Use @xref instead of @ref at the beginning of sentences. --- doc/guix.texi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 525b8f424f..d6dda9904c 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -3621,7 +3621,7 @@ Generation 3 Jun 13 2018 23:31:07 (current) 69 packages upgraded: borg@@1.1.6, cheese@@3.28.0, @dots{} @end example -@ref{Invoking guix describe, @command{guix describe}}, for other ways to +@xref{Invoking guix describe, @command{guix describe}}, for other ways to describe the current status of Guix. This @code{~/.config/guix/current} profile works like any other profile @@ -3666,7 +3666,7 @@ is provided, the subset of generations that match @var{pattern}. The syntax of @var{pattern} is the same as with @code{guix package --list-generations} (@pxref{Invoking guix package}). -@ref{Invoking guix describe}, for a way to display information about the +@xref{Invoking guix describe}, for a way to display information about the current generation only. @item --profile=@var{profile} From 9398152ad1f4e130ad895c8bb756de8a33e91f7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 29 Mar 2019 15:34:37 +0100 Subject: [PATCH 339/411] gnu: php: Fix typo. Regression introduced in e8cfce439afed945e352ad28f73f0a5f7840f503. * gnu/packages/php.scm (php)[arguments]: Add missing 'else' branch of the 'if'. Change first argument to 'string-prefix?' to match GNU triplets as well. --- gnu/packages/php.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index ffb81da5fc..ea002f8c59 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -182,8 +182,8 @@ (define-public php (substitute* "ext/standard/tests/streams/bug60602.phpt" (("'ls'") (string-append "'" (which "ls") "'"))) - ,@(if (string-prefix? "armhf" (or (%current-system) - (%current-target-system))) + ,@(if (string-prefix? "arm" (or (%current-system) + (%current-target-system))) ;; Drop tests known to fail on armhf. '((for-each delete-file (list @@ -191,7 +191,8 @@ (define-public php ;; arm can be a lot slower, so a time-related test fails "ext/fileinfo/tests/cve-2014-3538-nojit.phpt" "ext/pcre/tests/bug76514.phpt" - "ext/pcre/tests/preg_match_error3.phpt")))) + "ext/pcre/tests/preg_match_error3.phpt"))) + '()) ;; Drop tests that are known to fail. (for-each delete-file From 41aab7d186d36876c3ad8202e4d78313235998d3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 14:57:23 +0100 Subject: [PATCH 340/411] gnu: Add r-bacon. * gnu/packages/bioconductor.scm (r-bacon): New variable. --- gnu/packages/bioconductor.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 2bb0e8509c..48c6009864 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3159,3 +3159,28 @@ (define-public r-abseqr abseqR extends abseqPy to compare multiple repertoire analyses and perform further downstream analysis on its output.") (license license:gpl3))) + +(define-public r-bacon + (package + (name "r-bacon") + (version "1.10.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "bacon" version)) + (sha256 + (base32 + "1pd3p1cfggiy08458vplsy3s1zm5jqqcwrv4fks8ra2kf97j38df")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocparallel" ,r-biocparallel) + ("r-ellipse" ,r-ellipse) + ("r-ggplot2" ,r-ggplot2))) + (home-page "https://bioconductor.org/packages/bacon/") + (synopsis "Controlling bias and inflation in association studies") + (description + "Bacon can be used to remove inflation and bias often observed in +epigenome- and transcriptome-wide association studies. To this end bacon +constructs an empirical null distribution using a Gibbs Sampling algorithm by +fitting a three-component normal mixture on z-scores.") + (license license:gpl2+))) From c54ab337bcda46f4f9b0c9b4798a853e4d5a85b9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 14:58:44 +0100 Subject: [PATCH 341/411] gnu: Add r-preseqr. * gnu/packages/cran.scm (r-preseqr): New variable. --- gnu/packages/cran.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 6a8fda01db..0d498758c5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13769,3 +13769,29 @@ (define-public r-flexdashboard document to a grid-oriented dashboard. The dashboard flexibly adapts the size of its components to the containing web page.") (license license:expat))) + +(define-public r-preseqr + (package + (name "r-preseqr") + (version "4.0.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "preseqR" version)) + (sha256 + (base32 + "1g2rnnmi45649vpy6z45v5i3wxm54s138ajqrzwi3a5r7x3xnhq1")))) + (properties `((upstream-name . "preseqR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-polynom" ,r-polynom))) + (home-page "https://cran.r-project.org/web/packages/preseqR/") + (synopsis "Predicting species accumulation curves") + (description + "This package can be used to predict the r-species accumulation +curve (r-SAC), which is the number of species represented at least r times as +a function of the sampling effort. When r = 1, the curve is known as the +species accumulation curve, or the library complexity curve in high-throughput +genomic sequencing. The package includes both parametric and nonparametric +methods, as described by Deng C, et al. (2018).") + (license license:gpl3))) From 051e8e1a5bec01952012cf7f1903cd72add0e25c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 14:59:12 +0100 Subject: [PATCH 342/411] gnu: Add r-rgadem. * gnu/packages/bioconductor.scm (r-rgadem): New variable. --- gnu/packages/bioconductor.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 48c6009864..6df46ef379 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3184,3 +3184,28 @@ (define-public r-bacon constructs an empirical null distribution using a Gibbs Sampling algorithm by fitting a three-component normal mixture on z-scores.") (license license:gpl2+))) + +(define-public r-rgadem + (package + (name "r-rgadem") + (version "2.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "rGADEM" version)) + (sha256 + (base32 + "1a3mvxabp7yb275cv1wr0rzyvjhnsaysk2hnmll4z4cci171z2j2")))) + (properties `((upstream-name . "rGADEM"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biostrings" ,r-biostrings) + ("r-bsgenome" ,r-bsgenome) + ("r-iranges" ,r-iranges) + ("r-seqlogo" ,r-seqlogo))) + (home-page "https://bioconductor.org/packages/rGADEM/") + (synopsis "De novo sequence motif discovery") + (description + "rGADEM is an efficient de novo motif discovery tool for large-scale +genomic sequence data.") + (license license:artistic2.0))) From 229f97c37aef0f50d144524275315fd36cd5973a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 14:59:23 +0100 Subject: [PATCH 343/411] gnu: Add r-motiv. * gnu/packages/bioconductor.scm (r-motiv): New variable. --- gnu/packages/bioconductor.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 6df46ef379..63a1c9923c 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3209,3 +3209,34 @@ (define-public r-rgadem "rGADEM is an efficient de novo motif discovery tool for large-scale genomic sequence data.") (license license:artistic2.0))) + +(define-public r-motiv + (package + (name "r-motiv") + (version "1.38.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "MotIV" version)) + (sha256 + (base32 + "1qrpydwc5bn8f0843qkyhw6920xk8kvq452ird0ij96g6faiv9a8")))) + (properties `((upstream-name . "MotIV"))) + (build-system r-build-system) + (inputs + `(("gsl" ,gsl))) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-iranges" ,r-iranges) + ("r-lattice" ,r-lattice) + ("r-rgadem" ,r-rgadem) + ("r-s4vectors" ,r-s4vectors))) + (home-page "https://bioconductor.org/packages/MotIV/") + (synopsis "Motif identification and validation") + (description + "This package is used for the identification and validation of sequence +motifs. It makes use of STAMP for comparing a set of motifs to a given +database (e.g. JASPAR). It can also be used to visualize motifs, motif +distributions, modules and filter motifs.") + (license license:gpl2))) From 2a72ef561b53b69210df2c1562f9d8ced35adabd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 15:39:55 +0100 Subject: [PATCH 344/411] gnu: Add r-motifstack. * gnu/packages/bioconductor.scm (r-motifstack): New variable. --- gnu/packages/bioconductor.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 63a1c9923c..af2d7ce335 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3240,3 +3240,34 @@ (define-public r-motiv database (e.g. JASPAR). It can also be used to visualize motifs, motif distributions, modules and filter motifs.") (license license:gpl2))) + +(define-public r-motifstack + (package + (name "r-motifstack") + (version "1.26.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "motifStack" version)) + (sha256 + (base32 + "1c4w39ilc4ca4wgi1b6iypadkbxvqjw7k2br0d7q03niw9qjkhxf")))) + (properties `((upstream-name . "motifStack"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ade4" ,r-ade4) + ("r-biostrings" ,r-biostrings) + ("r-grimport" ,r-grimport) + ("r-htmlwidgets" ,r-htmlwidgets) + ("r-motiv" ,r-motiv) + ("r-scales" ,r-scales) + ("r-xml" ,r-xml))) + (home-page "https://bioconductor.org/packages/motifStack/") + (synopsis "Plot stacked logos for DNA, RNA and amino acid sequences") + (description + "The motifStack package is designed for graphic representation of +multiple motifs with different similarity scores. It works with both DNA/RNA +sequence motifs and amino acid sequence motifs. In addition, it provides the +flexibility for users to customize the graphic parameters such as the font +type and symbol colors.") + (license license:gpl2+))) From e5bff3079d673d1d7816b0c30142935ef1e05791 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 15:40:06 +0100 Subject: [PATCH 345/411] gnu: Add r-genomicscores. * gnu/packages/bioconductor.scm (r-genomicscores): New variable. --- gnu/packages/bioconductor.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index af2d7ce335..0daea685e5 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3271,3 +3271,34 @@ (define-public r-motifstack flexibility for users to customize the graphic parameters such as the font type and symbol colors.") (license license:gpl2+))) + +(define-public r-genomicscores + (package + (name "r-genomicscores") + (version "1.6.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "GenomicScores" version)) + (sha256 + (base32 + "0lrhkcblvnki6kncwpavs01gbcz22yza6ma8zvfmbrrkfaxqzh8n")))) + (properties `((upstream-name . "GenomicScores"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationhub" ,r-annotationhub) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-bsgenome" ,r-bsgenome) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-s4vectors" ,r-s4vectors) + ("r-xml" ,r-xml))) + (home-page "https://github.com/rcastelo/GenomicScores/") + (synopsis "Work with genome-wide position-specific scores") + (description + "This package provides infrastructure to store and access genome-wide +position-specific scores within R and Bioconductor.") + (license license:artistic2.0))) From 32e0f906d775679d8b4e770d267d29cb77724360 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 15:40:22 +0100 Subject: [PATCH 346/411] gnu: Add r-atacseqqc. * gnu/packages/bioconductor.scm (r-atacseqqc): New variable. --- gnu/packages/bioconductor.scm | 44 +++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 0daea685e5..4ee14a4c08 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3302,3 +3302,47 @@ (define-public r-genomicscores "This package provides infrastructure to store and access genome-wide position-specific scores within R and Bioconductor.") (license license:artistic2.0))) + +(define-public r-atacseqqc + (package + (name "r-atacseqqc") + (version "1.6.4") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "ATACseqQC" version)) + (sha256 + (base32 + "1rblvqar11fib6ip2hq0756vqi6qmncf90jw6i5p5lrgzmaxy8hn")))) + (properties `((upstream-name . "ATACseqQC"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-bsgenome" ,r-bsgenome) + ("r-chippeakanno" ,r-chippeakanno) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicranges" ,r-genomicranges) + ("r-genomicscores" ,r-genomicscores) + ("r-iranges" ,r-iranges) + ("r-kernsmooth" ,r-kernsmooth) + ("r-limma" ,r-limma) + ("r-motifstack" ,r-motifstack) + ("r-preseqr" ,r-preseqr) + ("r-randomforest" ,r-randomforest) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors))) + (home-page "https://bioconductor.org/packages/ATACseqQC/") + (synopsis "ATAC-seq quality control") + (description + "ATAC-seq, an assay for Transposase-Accessible Chromatin using +sequencing, is a rapid and sensitive method for chromatin accessibility +analysis. It was developed as an alternative method to MNase-seq, FAIRE-seq +and DNAse-seq. The ATACseqQC package was developed to help users to quickly +assess whether their ATAC-seq experiment is successful. It includes +diagnostic plots of fragment size distribution, proportion of mitochondria +reads, nucleosome positioning pattern, and CTCF or other Transcript Factor +footprints.") + (license license:gpl2+))) From 1fab2cf811a686ee0be3f64226e34ee86b4102ab Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 17:43:25 +0100 Subject: [PATCH 347/411] gnu: Add r-mapplots. * gnu/packages/cran.scm (r-mapplots): New variable. --- gnu/packages/cran.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 0d498758c5..4e3b2d8898 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13795,3 +13795,24 @@ (define-public r-preseqr genomic sequencing. The package includes both parametric and nonparametric methods, as described by Deng C, et al. (2018).") (license license:gpl3))) + +(define-public r-mapplots + (package + (name "r-mapplots") + (version "1.5.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "mapplots" version)) + (sha256 + (base32 + "18s2y66f8vi8g2r8a25zbgp2xm079r8v8qxv0w71h8krycs6vs9p")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/mapplots/") + (synopsis "Data visualization on maps") + (description + "This package helps you create simple maps; add sub-plots like pie plots +to a map or any other plot; format, plot and export gridded data. The package +was developed for displaying fisheries data but most functions can be used for +more generic data visualisation.") + (license license:gpl2+))) From 692bce15953994e1c19c464a1d91f5222430a166 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 17:43:40 +0100 Subject: [PATCH 348/411] gnu: Add r-abadata. * gnu/packages/bioconductor.scm (r-abadata): New variable. --- gnu/packages/bioconductor.scm | 37 +++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 4ee14a4c08..c0f0520ce8 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -738,6 +738,43 @@ (define-public r-do-db ;;; Experiment data +(define-public r-abadata + (package + (name "r-abadata") + (version "1.12.0") + (source (origin + (method url-fetch) + ;; We cannot use bioconductor-uri here because this tarball is + ;; located under "data/experiment/" instead of "bioc/". + (uri (string-append "https://www.bioconductor.org/packages/" + "release/data/experiment/src/contrib/" + "ABAData_" version ".tar.gz")) + (sha256 + (base32 + "1bmj341xcymlrk02gss5vvrqc4ddas0rdw39lnpsj98hq6n11p5z")))) + (properties + `((upstream-name . "ABAData"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi))) + (home-page "https://www.bioconductor.org/packages/ABAData/") + (synopsis "Gene expression in human brain regions from Allen Brain Atlas") + (description + "This package provides the data for the gene expression enrichment +analysis conducted in the package ABAEnrichment. The package includes three +datasets which are derived from the Allen Brain Atlas: + +@enumerate +@item Gene expression data from Human Brain (adults) averaged across donors, +@item Gene expression data from the Developing Human Brain pooled into five + age categories and averaged across donors, and +@item a developmental effect score based on the Developing Human Brain + expression data. +@end enumerate + +All datasets are restricted to protein coding genes.") + (license license:gpl2+))) + (define-public r-hsmmsinglecell (package (name "r-hsmmsinglecell") From 3972cfce6a03c8714c2b762b8d573e833efd8aee Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 17:43:52 +0100 Subject: [PATCH 349/411] gnu: Add r-gofuncr. * gnu/packages/bioconductor.scm (r-gofuncr): New variable. --- gnu/packages/bioconductor.scm | 47 +++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index c0f0520ce8..fb7e5a95f3 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3383,3 +3383,50 @@ (define-public r-atacseqqc reads, nucleosome positioning pattern, and CTCF or other Transcript Factor footprints.") (license license:gpl2+))) + +(define-public r-gofuncr + (package + (name "r-gofuncr") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "GOfuncR" version)) + (sha256 + (base32 + "021kgcbm8n2yalhzab11cyppwznlkglynnh45wsgy9i2vi2n2znk")))) + (properties `((upstream-name . "GOfuncR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-genomicranges" ,r-genomicranges) + ("r-gtools" ,r-gtools) + ("r-iranges" ,r-iranges) + ("r-mapplots" ,r-mapplots) + ("r-rcpp" ,r-rcpp) + ("r-vioplot" ,r-vioplot))) + (home-page "https://bioconductor.org/packages/GOfuncR/") + (synopsis "Gene ontology enrichment using FUNC") + (description + "GOfuncR performs a gene ontology enrichment analysis based on the +ontology enrichment software FUNC. GO-annotations are obtained from +OrganismDb or OrgDb packages (@code{Homo.sapiens} by default); the GO-graph is +included in the package and updated regularly. GOfuncR provides the standard +candidate vs background enrichment analysis using the hypergeometric test, as +well as three additional tests: + +@enumerate +@item the Wilcoxon rank-sum test that is used when genes are ranked, +@item a binomial test that is used when genes are associated with two counts, + and +@item a Chi-square or Fisher's exact test that is used in cases when genes are +associated with four counts. +@end enumerate + +To correct for multiple testing and interdependency of the tests, family-wise +error rates are computed based on random permutations of the gene-associated +variables. GOfuncR also provides tools for exploring the ontology graph and +the annotations, and options to take gene-length or spatial clustering of +genes into account. It is also possible to provide custom gene coordinates, +annotations and ontologies.") + (license license:gpl2+))) From 9bf4bb19c9f4a85fb7ea96f9f70add9b2a1513db Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 17:43:57 +0100 Subject: [PATCH 350/411] gnu: Add r-abaenrichment. * gnu/packages/bioconductor.scm (r-abaenrichment): New variable. --- gnu/packages/bioconductor.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index fb7e5a95f3..cbde3b54b0 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3430,3 +3430,33 @@ (define-public r-gofuncr genes into account. It is also possible to provide custom gene coordinates, annotations and ontologies.") (license license:gpl2+))) + +(define-public r-abaenrichment + (package + (name "r-abaenrichment") + (version "1.12.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "ABAEnrichment" version)) + (sha256 + (base32 + "0bvanqmg1smyckh16m2qn7d68zq4j7n74sgsnbgms5jngbp9158v")))) + (properties `((upstream-name . "ABAEnrichment"))) + (build-system r-build-system) + (propagated-inputs + `(("r-abadata" ,r-abadata) + ("r-data-table" ,r-data-table) + ("r-gofuncr" ,r-gofuncr) + ("r-gplots" ,r-gplots) + ("r-gtools" ,r-gtools) + ("r-rcpp" ,r-rcpp))) + (home-page "https://bioconductor.org/packages/ABAEnrichment/") + (synopsis "Gene expression enrichment in human brain regions") + (description + "The package ABAEnrichment is designed to test for enrichment of user +defined candidate genes in the set of expressed genes in different human brain +regions. The core function @code{aba_enrich} integrates the expression of the +candidate gene set (averaged across donors) and the structural information of +the brain using an ontology, both provided by the Allen Brain Atlas project.") + (license license:gpl2+))) From 0b91b7b969567e2f149606ab76ec34d332a52db6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 17:49:54 +0100 Subject: [PATCH 351/411] gnu: Add r-annotationfuncs. * gnu/packages/bioconductor.scm (r-annotationfuncs): New variable. --- gnu/packages/bioconductor.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index cbde3b54b0..599f774042 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3460,3 +3460,28 @@ (define-public r-abaenrichment candidate gene set (averaged across donors) and the structural information of the brain using an ontology, both provided by the Allen Brain Atlas project.") (license license:gpl2+))) + +(define-public r-annotationfuncs + (package + (name "r-annotationfuncs") + (version "1.32.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "AnnotationFuncs" version)) + (sha256 + (base32 + "1x11mfabh7kbp39y5rkmrpjkaawx7ab5anfmciamrmrcw1kddbss")))) + (properties + `((upstream-name . "AnnotationFuncs"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-dbi" ,r-dbi))) + (home-page "https://www.iysik.com/r/annotationfuncs") + (synopsis "Annotation translation functions") + (description + "This package provides functions for handling translating between +different identifieres using the Biocore Data Team data-packages (e.g. +@code{org.Bt.eg.db}).") + (license license:gpl2))) From adf7d8135b6fbb96d9d263760e749a7ada21754b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 18:05:45 +0100 Subject: [PATCH 352/411] gnu: Add r-annotationtools. * gnu/packages/bioconductor.scm (r-annotationtools): New variable. --- gnu/packages/bioconductor.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 599f774042..be618d39b9 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3485,3 +3485,28 @@ (define-public r-annotationfuncs different identifieres using the Biocore Data Team data-packages (e.g. @code{org.Bt.eg.db}).") (license license:gpl2))) + +(define-public r-annotationtools + (package + (name "r-annotationtools") + (version "1.56.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "annotationTools" version)) + (sha256 + (base32 + "0hqy0mq6pkn05p2dv4pw24p697yvikhdn351adf2ynldy6f3sl9z")))) + (properties + `((upstream-name . "annotationTools"))) + (build-system r-build-system) + (propagated-inputs `(("r-biobase" ,r-biobase))) + (home-page "https://bioconductor.org/packages/annotationTools/") + (synopsis "Annotate microarrays and perform gene expression analyses") + (description + "This package provides functions to annotate microarrays, find orthologs, +and integrate heterogeneous gene expression profiles using annotation and +other molecular biology information available as flat file database (plain +text files).") + ;; Any version of the GPL. + (license (list license:gpl2+)))) From f31e10f82e3bcfa74901f87b4a3d951758861804 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 18:07:17 +0100 Subject: [PATCH 353/411] gnu: Add r-allelicimbalance. * gnu/packages/bioconductor.scm (r-allelicimbalance): New variable. --- gnu/packages/bioconductor.scm | 41 +++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index be618d39b9..2d74d2628c 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3510,3 +3510,44 @@ (define-public r-annotationtools text files).") ;; Any version of the GPL. (license (list license:gpl2+)))) + +(define-public r-allelicimbalance + (package + (name "r-allelicimbalance") + (version "1.20.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "AllelicImbalance" version)) + (sha256 + (base32 + "03524lj6aw9cskbpxzjmi9g708x6p94mf26yz4j941g1d0mc3z91")))) + (properties + `((upstream-name . "AllelicImbalance"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-bsgenome" ,r-bsgenome) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicfeatures" ,r-genomicfeatures) + ("r-genomicranges" ,r-genomicranges) + ("r-gridextra" ,r-gridextra) + ("r-gviz" ,r-gviz) + ("r-iranges" ,r-iranges) + ("r-lattice" ,r-lattice) + ("r-latticeextra" ,r-latticeextra) + ("r-nlme" ,r-nlme) + ("r-rsamtools" ,r-rsamtools) + ("r-s4vectors" ,r-s4vectors) + ("r-seqinr" ,r-seqinr) + ("r-summarizedexperiment" ,r-summarizedexperiment) + ("r-variantannotation" ,r-variantannotation))) + (home-page "https://github.com/pappewaio/AllelicImbalance") + (synopsis "Investigate allele-specific expression") + (description + "This package provides a framework for allele-specific expression +investigation using RNA-seq data.") + (license license:gpl3))) From ffe7029babb40481f50cf931b28e92c8f74dfe01 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 18:10:46 +0100 Subject: [PATCH 354/411] gnu: Add r-aucell. * gnu/packages/bioconductor.scm (r-aucell): New variable. --- gnu/packages/bioconductor.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 2d74d2628c..6a7c98f625 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3551,3 +3551,38 @@ (define-public r-allelicimbalance "This package provides a framework for allele-specific expression investigation using RNA-seq data.") (license license:gpl3))) + +(define-public r-aucell + (package + (name "r-aucell") + (version "1.4.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "AUCell" version)) + (sha256 + (base32 + "1kdrs0521cyb8wlc4i3idfprrcy2f9w6kl56hfa94n0brmx62ya9")))) + (properties `((upstream-name . "AUCell"))) + (build-system r-build-system) + (propagated-inputs + `(("r-data-table" ,r-data-table) + ("r-gseabase" ,r-gseabase) + ("r-mixtools" ,r-mixtools) + ("r-r-utils" ,r-r-utils) + ("r-shiny" ,r-shiny) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (home-page "https://bioconductor.org/packages/AUCell/") + (synopsis "Analysis of gene set activity in single-cell RNA-seq data") + (description + "AUCell allows to identify cells with active gene sets (e.g. signatures, +gene modules, etc) in single-cell RNA-seq data. AUCell uses the @dfn{Area +Under the Curve} (AUC) to calculate whether a critical subset of the input +gene set is enriched within the expressed genes for each cell. The +distribution of AUC scores across all the cells allows exploring the relative +expression of the signature. Since the scoring method is ranking-based, +AUCell is independent of the gene expression units and the normalization +procedure. In addition, since the cells are evaluated individually, it can +easily be applied to bigger datasets, subsetting the expression matrix if +needed.") + (license license:gpl3))) From 5cfa4bff697fa0af43f6a7bbde7ec23c8a146e10 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 19:28:03 +0100 Subject: [PATCH 355/411] gnu: Add r-ebimage. * gnu/packages/bioconductor.scm (r-ebimage): New variable. --- gnu/packages/bioconductor.scm | 40 +++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 6a7c98f625..f6ffacc04e 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -30,6 +30,7 @@ (define-module (gnu packages bioconductor) #:use-module (gnu packages gcc) #:use-module (gnu packages graph) #:use-module (gnu packages haskell) + #:use-module (gnu packages image) #:use-module (gnu packages maths) #:use-module (gnu packages pkg-config) #:use-module (gnu packages statistics) @@ -3586,3 +3587,42 @@ (define-public r-aucell easily be applied to bigger datasets, subsetting the expression matrix if needed.") (license license:gpl3))) + +(define-public r-ebimage + (package + (name "r-ebimage") + (version "4.24.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "EBImage" version)) + (sha256 + (base32 + "18v2zr7xh0d0xbs7mxa2b6xjqlqiml0hji27gq1351xp5bf2pxvx")))) + (properties `((upstream-name . "EBImage"))) + (build-system r-build-system) + (propagated-inputs + `(("r-abind" ,r-abind) + ("r-biocgenerics" ,r-biocgenerics) + ("r-fftwtools" ,r-fftwtools) + ("r-htmltools" ,r-htmltools) + ("r-htmlwidgets" ,r-htmlwidgets) + ("r-jpeg" ,r-jpeg) + ("r-locfit" ,r-locfit) + ("r-png" ,r-png) + ("r-rcurl" ,r-rcurl) + ("r-tiff" ,r-tiff))) + (native-inputs + `(("r-knitr" ,r-knitr))) ; for vignettes + (home-page "https://github.com/aoles/EBImage") + (synopsis "Image processing and analysis toolbox for R") + (description + "EBImage provides general purpose functionality for image processing and +analysis. In the context of (high-throughput) microscopy-based cellular +assays, EBImage offers tools to segment cells and extract quantitative +cellular descriptors. This allows the automation of such tasks using the R +programming language and facilitates the use of other tools in the R +environment for signal processing, statistical modeling, machine learning and +visualization with image data.") + ;; Any version of the LGPL. + (license license:lgpl2.1+))) From 51e98f7e0fb1dc6578e2ad7c972fb419b25bba16 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 19:28:11 +0100 Subject: [PATCH 356/411] gnu: Add r-yamss. * gnu/packages/bioconductor.scm (r-yamss): New variable. --- gnu/packages/bioconductor.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index f6ffacc04e..b0e5d06988 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3626,3 +3626,35 @@ (define-public r-ebimage visualization with image data.") ;; Any version of the LGPL. (license license:lgpl2.1+))) + +(define-public r-yamss + (package + (name "r-yamss") + (version "1.8.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "yamss" version)) + (sha256 + (base32 + "13pln09j08fjsr7bj17apy4j0sr79n7jzshi8jbnz57jil7k6ia9")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-data-table" ,r-data-table) + ("r-ebimage" ,r-ebimage) + ("r-iranges" ,r-iranges) + ("r-limma" ,r-limma) + ("r-matrix" ,r-matrix) + ("r-mzr" ,r-mzr) + ("r-s4vectors" ,r-s4vectors) + ("r-summarizedexperiment" + ,r-summarizedexperiment))) + (home-page "https://github.com/hansenlab/yamss") + (synopsis "Tools for high-throughput metabolomics") + (description + "This package provides tools to analyze and visualize high-throughput +metabolomics data aquired using chromatography-mass spectrometry. These tools +preprocess data in a way that enables reliable and powerful differential +analysis.") + (license license:artistic2.0))) From 785747a974904fadd69c182bfa60505ecb800f50 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 21:00:23 +0100 Subject: [PATCH 357/411] gnu: font-iosevka: Update to 2.2.0. * gnu/packages/fonts.scm (font-iosevka): Update to 2.2.0. --- gnu/packages/fonts.scm | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 5e45349128..5c8d9146f2 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -1086,15 +1086,15 @@ (define-public font-comic-neue (define-public font-iosevka (package (name "font-iosevka") - (version "1.12.5") - (source (origin - (method url-fetch/zipbomb) - (uri (string-append - "https://github.com/be5invis/Iosevka/releases/download/v" - version "/iosevka-pack-" version ".zip")) - (sha256 - (base32 - "0s3g6mk0ngwsrw9h9dqinb50cd9i8zhqdcmmh93fhyf4d87yfwyi")))) + (version "2.2.0") + (source + (origin + (method url-fetch/zipbomb) + (uri (string-append "https://github.com/be5invis/Iosevka" + "/releases/download/v" version + "/ttc-iosevka-" version ".zip")) + (sha256 + (base32 "14jfv6pkh1w44m89z2fn44kgmmqaf0057lk71advwfbm3q313y0x")))) (build-system font-build-system) (home-page "https://be5invis.github.io/Iosevka/") (synopsis "Coders' typeface, built from code") From c948cf90925dee5c07119140636e78877e9374b4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 29 Mar 2019 21:09:07 +0100 Subject: [PATCH 358/411] gnu: Add font-iosevka-slab. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The ’slab’ variants of Iosevka were moved to a separate archive with version 2.0.0. * gnu/packages/fonts.scm (font-iosevka-slab): New public variable. --- gnu/packages/fonts.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 5c8d9146f2..569a7f807e 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -1105,6 +1105,20 @@ (define-public font-iosevka (license (list license:silofl1.1 ; build artifacts (i.e. the fonts) license:bsd-3)))) ; supporting code +(define-public font-iosevka-slab + (package + (inherit font-iosevka) + (name "font-iosevka-slab") + (version (package-version font-iosevka)) + (source + (origin + (method url-fetch/zipbomb) + (uri (string-append "https://github.com/be5invis/Iosevka" + "/releases/download/v" version + "/ttc-iosevka-slab-" version ".zip")) + (sha256 + (base32 "186d0pl13znysll3hvzm1ixn7ad616g6dhla55sbh6ki2j04b8ml")))))) + (define-public font-go (let ((commit "f03a046406d4d7fbfd4ed29f554da8f6114049fc") (revision "1")) From bc91562939ee002e84c95d13c907482b6d1e9339 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 29 Mar 2019 23:28:45 -0400 Subject: [PATCH 359/411] gnu: gtk+: Graft upstream fix for crashes in Emacs and IceCat. Fixes . * gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/gtk.scm (gtk+/fixed): New variable. (gtk+)[replacement]: New field. --- gnu/local.mk | 1 + gnu/packages/gtk.scm | 15 +++++++++- .../gtk3-fix-deprecation-macro-use.patch | 28 +++++++++++++++++++ 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch diff --git a/gnu/local.mk b/gnu/local.mk index 833944bfbd..e32b0298e1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -877,6 +877,7 @@ dist_patch_DATA = \ %D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \ %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \ %D%/packages/patches/gtk2-theme-paths.patch \ + %D%/packages/patches/gtk3-fix-deprecation-macro-use.patch \ %D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \ %D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \ %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \ diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index aab392758f..83aadfd177 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès -;;; Copyright © 2014, 2015, 2017, 2018 Mark H Weaver +;;; Copyright © 2014, 2015, 2017, 2018, 2019 Mark H Weaver ;;; Copyright © 2014 Eric Bavier ;;; Copyright © 2015 Federico Beffa ;;; Copyright © 2015 Paul van der Walt @@ -694,6 +694,7 @@ (define-public gtk+ ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in ;; mate.scm will also need to be updated. (version "3.24.2") + (replacement gtk+/fixed) (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -787,6 +788,18 @@ (define-public gtk+ (variable "GUIX_GTK3_PATH") (files '("lib/gtk-3.0"))))))) +;; Fixes a bug in Gtk that causes crashes in IceCat and Emacs. +;; See , , +;; and . +(define gtk+/fixed + (package + (inherit gtk+) + (source (origin + (inherit (package-source gtk+)) + (patches + (cons (search-patch "gtk3-fix-deprecation-macro-use.patch") + (origin-patches (package-source gtk+)))))))) + ;;; ;;; Guile bindings. ;;; diff --git a/gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch b/gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch new file mode 100644 index 0000000000..e933555ffb --- /dev/null +++ b/gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch @@ -0,0 +1,28 @@ +Copied from . +Fixes upstream bugs +and . + +diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c +index 97ada6d73919fba3dfe192dd66929e90bc7677bb..764e39495f7edb0c3efe41cca25b8bee4778887d 100644 +--- a/gdk/x11/gdkwindow-x11.c ++++ b/gdk/x11/gdkwindow-x11.c +@@ -2985,6 +2985,7 @@ gdk_window_x11_set_background (GdkWindow *window, + double r, g, b, a; + cairo_surface_t *surface; + cairo_matrix_t matrix; ++ cairo_pattern_t *parent_relative_pattern; + + if (GDK_WINDOW_DESTROYED (window)) + return; +@@ -2997,8 +2998,10 @@ gdk_window_x11_set_background (GdkWindow *window, + } + + G_GNUC_BEGIN_IGNORE_DEPRECATIONS +- if (pattern == gdk_x11_get_parent_relative_pattern ()) ++ parent_relative_pattern = gdk_x11_get_parent_relative_pattern (); + G_GNUC_END_IGNORE_DEPRECATIONS ++ ++ if (pattern == parent_relative_pattern) + { + GdkWindow *parent; + From 9563dd5599cbd88f33977de5b738a29b8ad57680 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 20:27:53 +0100 Subject: [PATCH 360/411] gnu: Add r-pmcmr. * gnu/packages/cran.scm (r-pmcmr): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 4e3b2d8898..ad67ae85fc 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13816,3 +13816,25 @@ (define-public r-mapplots was developed for displaying fisheries data but most functions can be used for more generic data visualisation.") (license license:gpl2+))) + +(define-public r-pmcmr + (package + (name "r-pmcmr") + (version "4.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "PMCMR" version)) + (sha256 + (base32 + "09bvdj2h1086r2cgy3myrhlylplxxlliv8nwx09c8kb1vn02i2ij")))) + (properties `((upstream-name . "PMCMR"))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/PMCMR/") + (synopsis "Calculate pairwise multiple comparisons of mean rank sums") + (description + "This is a deprecated package for calculating pairwise multiple +comparisons of mean rank sums. This package is superseded by the novel +PMCMRplus package. The PMCMR package is no longer maintained, but kept for +compatibility of reverse depending packages for some time.") + (license license:gpl3+))) From 398c4a93471067698efc965d4de03d66b2b9738e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 20:28:28 +0100 Subject: [PATCH 361/411] gnu: Add r-gtrellis. * gnu/packages/bioconductor.scm (r-gtrellis): New variable. --- gnu/packages/bioconductor.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index b0e5d06988..d3ffd41a3c 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3658,3 +3658,30 @@ (define-public r-yamss preprocess data in a way that enables reliable and powerful differential analysis.") (license license:artistic2.0))) + +(define-public r-gtrellis + (package + (name "r-gtrellis") + (version "1.14.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "gtrellis" version)) + (sha256 + (base32 + "17c43vs6m6hj90x5is0pbcpcv59gg9z98c47hnvlypgcqch38h6v")))) + (build-system r-build-system) + (propagated-inputs + `(("r-circlize" ,r-circlize) + ("r-genomicranges" ,r-genomicranges) + ("r-getoptlong" ,r-getoptlong) + ("r-iranges" ,r-iranges))) + (home-page "https://github.com/jokergoo/gtrellis") + (synopsis "Genome level Trellis layout") + (description + "Genome level Trellis graph visualizes genomic data conditioned by +genomic categories (e.g. chromosomes). For each genomic category, multiple +dimensional data which are represented as tracks describe different features +from different aspects. This package provides high flexibility to arrange +genomic categories and to add self-defined graphics in the plot.") + (license license:expat))) From 28098414d0e1455110b9ee8a500255f93dc34e20 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 20:28:38 +0100 Subject: [PATCH 362/411] gnu: Add r-somaticsignatures. * gnu/packages/bioconductor.scm (r-somaticsignatures): New variable. --- gnu/packages/bioconductor.scm | 37 +++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index d3ffd41a3c..78fd5a989b 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3685,3 +3685,40 @@ (define-public r-gtrellis from different aspects. This package provides high flexibility to arrange genomic categories and to add self-defined graphics in the plot.") (license license:expat))) + +(define-public r-somaticsignatures + (package + (name "r-somaticsignatures") + (version "2.18.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "SomaticSignatures" version)) + (sha256 + (base32 + "013dslbyq55a41d3n842brjk2bq1kxw0r18mb6drgbxx2sflzc02")))) + (properties + `((upstream-name . "SomaticSignatures"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biostrings" ,r-biostrings) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-ggbio" ,r-ggbio) + ("r-ggplot2" ,r-ggplot2) + ("r-iranges" ,r-iranges) + ("r-nmf" ,r-nmf) + ("r-pcamethods" ,r-pcamethods) + ("r-proxy" ,r-proxy) + ("r-reshape2" ,r-reshape2) + ("r-s4vectors" ,r-s4vectors) + ("r-variantannotation" ,r-variantannotation))) + (home-page "https://github.com/juliangehring/SomaticSignatures") + (synopsis "Somatic signatures") + (description + "This package identifies mutational signatures of @dfn{single nucleotide +variants} (SNVs). It provides a infrastructure related to the methodology +described in Nik-Zainal (2012, Cell), with flexibility in the matrix +decomposition algorithms.") + (license license:expat))) From 303f2ed1c6447bd01e5310ea16aec6cbd0153a5b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 20:28:46 +0100 Subject: [PATCH 363/411] gnu: Add r-yapsa. * gnu/packages/bioconductor.scm (r-yapsa): New variable. --- gnu/packages/bioconductor.scm | 40 +++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 78fd5a989b..4c31ffcc0d 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3722,3 +3722,43 @@ (define-public r-somaticsignatures described in Nik-Zainal (2012, Cell), with flexibility in the matrix decomposition algorithms.") (license license:expat))) + +(define-public r-yapsa + (package + (name "r-yapsa") + (version "1.8.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "YAPSA" version)) + (sha256 + (base32 + "1agacimdd1m5yja2xbcsb83mns4svpxbjcsfrvm9ydqdj737i10j")))) + (properties `((upstream-name . "YAPSA"))) + (build-system r-build-system) + (propagated-inputs + `(("r-circlize" ,r-circlize) + ("r-complexheatmap" ,r-complexheatmap) + ("r-corrplot" ,r-corrplot) + ("r-dendextend" ,r-dendextend) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-getoptlong" ,r-getoptlong) + ("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra) + ("r-gtrellis" ,r-gtrellis) + ("r-keggrest" ,r-keggrest) + ("r-lsei" ,r-lsei) + ("r-pmcmr" ,r-pmcmr) + ("r-reshape2" ,r-reshape2) + ("r-somaticsignatures" ,r-somaticsignatures) + ("r-variantannotation" ,r-variantannotation))) + (home-page "https://bioconductor.org/packages/YAPSA/") + (synopsis "Yet another package for signature analysis") + (description + "This package provides functions and routines useful in the analysis of +somatic signatures (cf. L. Alexandrov et al., Nature 2013). In particular, +functions to perform a signature analysis with known signatures and a +signature analysis on @dfn{stratified mutational catalogue} (SMC) are +provided.") + (license license:gpl3))) From e99380d67b459128807f27184b93f0b2a9e6c3fd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:18:49 +0100 Subject: [PATCH 364/411] gnu: Add r-gcrma. * gnu/packages/bioconductor.scm (r-gcrma): New variable. --- gnu/packages/bioconductor.scm | 36 +++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 4c31ffcc0d..91a5a66ec2 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3762,3 +3762,39 @@ (define-public r-yapsa signature analysis on @dfn{stratified mutational catalogue} (SMC) are provided.") (license license:gpl3))) + +(define-public r-gcrma + (package + (name "r-gcrma") + (version "2.54.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "gcrma" version)) + (sha256 + (base32 + "1v5fi98gdmj002ryq0rgsg2l4x3m3w5pz4h3bx4v8lk15azafgim")))) + (build-system r-build-system) + (propagated-inputs + `(("r-affy" ,r-affy) + ("r-affyio" ,r-affyio) + ("r-biobase" ,r-biobase) + ("r-biocmanager" ,r-biocmanager) + ("r-biostrings" ,r-biostrings) + ("r-xvector" ,r-xvector))) + (home-page "https://bioconductor.org/packages/gcrma/") + (synopsis "Background adjustment using sequence information") + (description + "Gcrma adjusts for background intensities in Affymetrix array data which +include optical noise and @dfn{non-specific binding} (NSB). The main function +@code{gcrma} converts background adjusted probe intensities to expression +measures using the same normalization and summarization methods as a +@dfn{Robust Multiarray Average} (RMA). Gcrma uses probe sequence information +to estimate probe affinity to NSB. The sequence information is summarized in +a more complex way than the simple GC content. Instead, the base types (A, T, +G or C) at each position along the probe determine the affinity of each probe. +The parameters of the position-specific base contributions to the probe +affinity is estimated in an NSB experiment in which only NSB but no +gene-specific bidning is expected.") + ;; Any version of the LGPL + (license license:lgpl2.1+))) From 4675b3cfa3dbf13056dec550d5a72fbf4a73def7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:19:30 +0100 Subject: [PATCH 365/411] gnu: Add r-simpleaffy. * gnu/packages/bioconductor.scm (r-simpleaffy): New variable. --- gnu/packages/bioconductor.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 91a5a66ec2..ade51157c4 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3798,3 +3798,31 @@ (define-public r-gcrma gene-specific bidning is expected.") ;; Any version of the LGPL (license license:lgpl2.1+))) + +(define-public r-simpleaffy + (package + (name "r-simpleaffy") + (version "2.58.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "simpleaffy" version)) + (sha256 + (base32 + "0bry0d2vw0w2rrpnmfm1kl5v4rdclypmy33jvs9l43vd6vx2ra9s")))) + (build-system r-build-system) + (propagated-inputs + `(("r-affy" ,r-affy) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-gcrma" ,r-gcrma) + ("r-genefilter" ,r-genefilter))) + (home-page "https://bioconductor.org/packages/simpleaffy/") + (synopsis "Very simple high level analysis of Affymetrix data") + (description + "This package provides high level functions for reading Affy @file{.CEL} +files, phenotypic data, and then computing simple things with it, such as +t-tests, fold changes and the like. It makes heavy use of the @code{affy} +library. It also has some basic scatter plot functions and mechanisms for +generating high resolution journal figures.") + (license license:gpl2+))) From f562c90aa8883e1edf4f2e977522293640949d68 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:19:42 +0100 Subject: [PATCH 366/411] gnu: Add r-yaqcaffy. * gnu/packages/bioconductor.scm (r-yaqcaffy): New variable. --- gnu/packages/bioconductor.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index ade51157c4..42779d264c 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3826,3 +3826,25 @@ (define-public r-simpleaffy library. It also has some basic scatter plot functions and mechanisms for generating high resolution journal figures.") (license license:gpl2+))) + +(define-public r-yaqcaffy + (package + (name "r-yaqcaffy") + (version "1.42.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "yaqcaffy" version)) + (sha256 + (base32 + "192n1zvd54nm9q71vyb6dcr7ia6givf4bjwf6542jjig085lwhxk")))) + (build-system r-build-system) + (propagated-inputs + `(("r-simpleaffy" ,r-simpleaffy))) + (home-page "https://bioconductor.org/packages/yaqcaffy/") + (synopsis "Affymetrix quality control and reproducibility analysis") + (description + "This is a package that can be used for quality control of Affymetrix +GeneChip expression data and reproducibility analysis of human whole genome +chips with the MAQC reference datasets.") + (license license:artistic2.0))) From 8d1990d495f115a79f6de0f455456b27a3344812 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:30:25 +0100 Subject: [PATCH 367/411] gnu: Add r-downloader. * gnu/packages/cran.scm (r-downloader): New variable. --- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index ad67ae85fc..40a0ed4759 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13838,3 +13838,26 @@ (define-public r-pmcmr PMCMRplus package. The PMCMR package is no longer maintained, but kept for compatibility of reverse depending packages for some time.") (license license:gpl3+))) + +(define-public r-downloader + (package + (name "r-downloader") + (version "0.4") + (source + (origin + (method url-fetch) + (uri (cran-uri "downloader" version)) + (sha256 + (base32 + "1axggnsc27zzgr7snf41j3zd1vp3nfpmq4zj4d01axc709dyg40q")))) + (build-system r-build-system) + (propagated-inputs + `(("r-digest" ,r-digest))) + (home-page "https://github.com/wch/downloader") + (synopsis "Download files over HTTP and HTTPS") + (description + "This package provides a wrapper for the @code{download.file} function, +making it possible to download files over HTTPS across platforms. The +@code{RCurl} package provides this functionality (and much more) but has +external dependencies. This package has is implemented purely in R.") + (license license:gpl2))) From 59cf26292f8aa13c4a98687371a2dafa63ccc932 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:30:39 +0100 Subject: [PATCH 368/411] gnu: Add r-quantro. * gnu/packages/bioconductor.scm (r-quantro): New variable. --- gnu/packages/bioconductor.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 42779d264c..6b11b47eae 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3848,3 +3848,34 @@ (define-public r-yaqcaffy GeneChip expression data and reproducibility analysis of human whole genome chips with the MAQC reference datasets.") (license license:artistic2.0))) + +(define-public r-quantro + (package + (name "r-quantro") + (version "1.16.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "quantro" version)) + (sha256 + (base32 + "1777gjgn855f04yv7hx70h9l8idmjzamkpazaq2cdr8qzhxwy2ib")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-doparallel" ,r-doparallel) + ("r-foreach" ,r-foreach) + ("r-ggplot2" ,r-ggplot2) + ("r-iterators" ,r-iterators) + ("r-minfi" ,r-minfi) + ("r-rcolorbrewer" ,r-rcolorbrewer))) + (home-page "https://bioconductor.org/packages/quantro/") + (synopsis "Test for when to use quantile normalization") + (description + "This package provides a data-driven test for the assumptions of quantile +normalization using raw data such as objects that inherit eSets (e.g. +ExpressionSet, MethylSet). Group level information about each sample (such as +Tumor / Normal status) must also be provided because the test assesses if +there are global differences in the distributions between the user-defined +groups.") + (license license:gpl3+))) From 98a2af31a8066eff780a71a6366749cad5d3d580 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:30:47 +0100 Subject: [PATCH 369/411] gnu: Add r-yarn. * gnu/packages/bioconductor.scm (r-yarn): New variable. --- gnu/packages/bioconductor.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 6b11b47eae..b0c1fb08bf 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3879,3 +3879,38 @@ (define-public r-quantro there are global differences in the distributions between the user-defined groups.") (license license:gpl3+))) + +(define-public r-yarn + (package + (name "r-yarn") + (version "1.8.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "yarn" version)) + (sha256 + (base32 + "0c84x1zq34hadpsyaa873r8kg0jcxp09c2z63377hlmhsll90l7s")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biomart" ,r-biomart) + ("r-downloader" ,r-downloader) + ("r-edger" ,r-edger) + ("r-gplots" ,r-gplots) + ("r-limma" ,r-limma) + ("r-matrixstats" ,r-matrixstats) + ("r-preprocesscore" ,r-preprocesscore) + ("r-quantro" ,r-quantro) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-readr" ,r-readr))) + (home-page "https://bioconductor.org/packages/yarn/") + (synopsis "Robust multi-condition RNA-Seq preprocessing and normalization") + (description + "Expedite large RNA-Seq analyses using a combination of previously +developed tools. YARN is meant to make it easier for the user in performing +basic mis-annotation quality control, filtering, and condition-aware +normalization. YARN leverages many Bioconductor tools and statistical +techniques to account for the large heterogeneity and sparsity found in very +large RNA-seq experiments.") + (license license:artistic2.0))) From a6e1eb1a96799212815eda7b0408d778b7000022 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:41:58 +0100 Subject: [PATCH 370/411] gnu: Add r-roar. * gnu/packages/bioconductor.scm (r-roar): New variable. --- gnu/packages/bioconductor.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index b0c1fb08bf..d87d9135ff 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3914,3 +3914,32 @@ (define-public r-yarn techniques to account for the large heterogeneity and sparsity found in very large RNA-seq experiments.") (license license:artistic2.0))) + +(define-public r-roar + (package + (name "r-roar") + (version "1.18.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "roar" version)) + (sha256 + (base32 + "15650s9vs7dvmqpvrs4xwn6j4kh14yqsx4daqyhhxxr68kn8mklw")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (home-page "https://github.com/vodkatad/roar/") + (synopsis "Identify differential APA usage from RNA-seq alignments") + (description + "This package provides tools for identifying preferential usage of APA +sites, comparing two biological conditions, starting from known alternative +sites and alignments obtained from standard RNA-seq experiments.") + (license license:gpl3))) From 50d91770513bb52bd693080661758d8fd6aab89f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:42:19 +0100 Subject: [PATCH 371/411] gnu: Add r-xbseq. * gnu/packages/bioconductor.scm (r-xbseq): New variable. --- gnu/packages/bioconductor.scm | 37 +++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index d87d9135ff..c276f000b6 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3943,3 +3943,40 @@ (define-public r-roar sites, comparing two biological conditions, starting from known alternative sites and alignments obtained from standard RNA-seq experiments.") (license license:gpl3))) + +(define-public r-xbseq + (package + (name "r-xbseq") + (version "1.14.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "XBSeq" version)) + (sha256 + (base32 + "0na0jiqfy40bzl243gqc2214k4hibv6v4ndiqwq0c5f78cyr6lph")))) + (properties `((upstream-name . "XBSeq"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-deseq2" ,r-deseq2) + ("r-dplyr" ,r-dplyr) + ("r-ggplot2" ,r-ggplot2) + ("r-locfit" ,r-locfit) + ("r-magrittr" ,r-magrittr) + ("r-matrixstats" ,r-matrixstats) + ("r-pracma" ,r-pracma) + ("r-roar" ,r-roar))) + (home-page "https://github.com/Liuy12/XBSeq") + (synopsis "Test for differential expression for RNA-seq data") + (description + "XBSeq is a novel algorithm for testing RNA-seq @dfn{differential +expression} (DE), where a statistical model was established based on the +assumption that observed signals are the convolution of true expression +signals and sequencing noises. The mapped reads in non-exonic regions are +considered as sequencing noises, which follows a Poisson distribution. Given +measurable observed signal and background noise from RNA-seq data, true +expression signals, assuming governed by the negative binomial distribution, +can be delineated and thus the accurate detection of differential expressed +genes.") + (license license:gpl3+))) From c8310056f45e7395976773ada517aee1d41c2d9b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:55:56 +0100 Subject: [PATCH 372/411] gnu: Add r-massspecwavelet. * gnu/packages/bioconductor.scm (r-massspecwavelet): New variable. --- gnu/packages/bioconductor.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index c276f000b6..4a73edf02c 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3980,3 +3980,27 @@ (define-public r-xbseq can be delineated and thus the accurate detection of differential expressed genes.") (license license:gpl3+))) + +(define-public r-massspecwavelet + (package + (name "r-massspecwavelet") + (version "1.48.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "MassSpecWavelet" version)) + (sha256 + (base32 + "1xcr568a36b570rldy27wq4a2jn7yf5f6fddlzgx6x944jdn3ckz")))) + (properties + `((upstream-name . "MassSpecWavelet"))) + (build-system r-build-system) + (propagated-inputs + `(("r-waveslim" ,r-waveslim))) + (home-page "https://bioconductor.org/packages/MassSpecWavelet/") + (synopsis "Mass spectrum processing by wavelet-based algorithms") + (description + "The MassSpecWavelet package aims to process @dfn{Mass Spectrometry} (MS) +data mainly through the use of wavelet transforms. It supports peak detection +based on @dfn{Continuous Wavelet Transform} (CWT).") + (license license:lgpl2.0+))) From ec12e53736f212d700587e096ebee15ffc118c46 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 29 Mar 2019 22:56:12 +0100 Subject: [PATCH 373/411] gnu: Add r-xcms. * gnu/packages/bioconductor.scm (r-xcms): New variable. --- gnu/packages/bioconductor.scm | 36 +++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 4a73edf02c..750311fd7b 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -4004,3 +4004,39 @@ (define-public r-massspecwavelet data mainly through the use of wavelet transforms. It supports peak detection based on @dfn{Continuous Wavelet Transform} (CWT).") (license license:lgpl2.0+))) + +(define-public r-xcms + (package + (name "r-xcms") + (version "3.4.4") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "xcms" version)) + (sha256 + (base32 + "073f25m7y8z4560k93d99fv72pr7nrgrp054zssi7jhas4l3ddww")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocparallel" ,r-biocparallel) + ("r-lattice" ,r-lattice) + ("r-massspecwavelet" ,r-massspecwavelet) + ("r-msnbase" ,r-msnbase) + ("r-multtest" ,r-multtest) + ("r-mzr" ,r-mzr) + ("r-plyr" ,r-plyr) + ("r-protgenerics" ,r-protgenerics) + ("r-rann" ,r-rann) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-robustbase" ,r-robustbase) + ("r-s4vectors" ,r-s4vectors))) + (home-page "https://bioconductor.org/packages/xcms/") + (synopsis "LC/MS and GC/MS mass spectrometry data analysis") + (description + "This package provides a framework for processing and visualization of +chromatographically separated and single-spectra mass spectral data. It +imports from AIA/ANDI NetCDF, mzXML, mzData and mzML files. It preprocesses +data for high-throughput, untargeted analyte profiling.") + (license license:gpl2+))) From d2be7e3c4ba8d6d0dde9b4c0bff623ab85637424 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 29 Mar 2019 22:40:55 +0100 Subject: [PATCH 374/411] records: Support custom 'this' identifiers. This lets record users choose an identifier other than 'this-record'. * guix/records.scm (make-syntactic-constructor): Add #:this-identifier. [wrap-field-value]: Honor it. (define-record-type*): Add form with extra THIS-IDENTIFIER and honor it. * tests/records.scm ("define-record-type* & thunked & inherit & custom this"): New test. --- guix/records.scm | 32 +++++++++++++++++++++++++++++--- tests/records.scm | 18 ++++++++++++++++++ 2 files changed, 47 insertions(+), 3 deletions(-) diff --git a/guix/records.scm b/guix/records.scm index 244b124098..99507dc384 100644 --- a/guix/records.scm +++ b/guix/records.scm @@ -118,6 +118,7 @@ (define-syntax make-syntactic-constructor ((_ type name ctor (expected ...) #:abi-cookie abi-cookie #:thunked thunked + #:this-identifier this-identifier #:delayed delayed #:innate innate #:defaults defaults) @@ -162,7 +163,7 @@ (define (innate-field? f) (define (wrap-field-value f value) (cond ((thunked-field? f) #`(lambda (x) - (syntax-parameterize ((this-record + (syntax-parameterize ((#,this-identifier (lambda (s) (syntax-case s () (id @@ -254,6 +255,7 @@ (define-syntax define-record-type* (define-record-type* thing make-thing thing? + this-thing (name thing-name (default \"chbouib\")) (port thing-port (default (current-output-port)) (thunked)) @@ -273,7 +275,8 @@ (define-record-type* thing make-thing The 'port' field is \"thunked\", meaning that calls like '(thing-port x)' will actually compute the field's value in the current dynamic extent, which is -useful when referring to fluids in a field's value. +useful when referring to fluids in a field's value. Furthermore, that thunk +can access the record it belongs to via the 'this-thing' identifier. A field can also be marked as \"delayed\" instead of \"thunked\", in which case its value is effectively wrapped in a (delay …) form. @@ -352,7 +355,9 @@ (define (compute-abi-cookie field-specs) (syntax-case s () ((_ type syntactic-ctor ctor pred + this-identifier (field get properties ...) ...) + (identifier? #'this-identifier) (let* ((field-spec #'((field get properties ...) ...)) (thunked (filter-map thunked-field? field-spec)) (delayed (filter-map delayed-field? field-spec)) @@ -381,15 +386,36 @@ (define-record-type type field-spec* ...) (define #,(current-abi-identifier #'type) #,cookie) + + #,@(if (free-identifier=? #'this-identifier #'this-record) + #'() + #'((define-syntax-parameter this-identifier + (lambda (s) + "Return the record being defined. This macro may +only be used in the context of the definition of a thunked field." + (syntax-case s () + (id + (identifier? #'id) + (syntax-violation 'this-identifier + "cannot be used outside \ +of a record instantiation" + #'id))))))) thunked-field-accessor ... delayed-field-accessor ... (make-syntactic-constructor type syntactic-ctor ctor (field ...) #:abi-cookie #,cookie #:thunked #,thunked + #:this-identifier #'this-identifier #:delayed #,delayed #:innate #,innate - #:defaults #,defaults)))))))) + #:defaults #,defaults))))) + ((_ type syntactic-ctor ctor pred + (field get properties ...) ...) + ;; When no 'this' identifier was specified, use 'this-record'. + #'(define-record-type* type syntactic-ctor ctor pred + this-record + (field get properties ...) ...))))) (define* (alist->record alist make keys #:optional (multiple-value-keys '())) diff --git a/tests/records.scm b/tests/records.scm index 45614093a0..16b7a9c35e 100644 --- a/tests/records.scm +++ b/tests/records.scm @@ -210,6 +210,24 @@ (define-record-type* foo make-foo (= 40 (foo-bar z)) (= -2 (foo-baz z)))))) +(test-assert "define-record-type* & thunked & inherit & custom this" + (let () + (define-record-type* foo make-foo + foo? this-foo + (thing foo-thing (thunked))) + (define-record-type* bar make-bar + bar? this-bar + (baz bar-baz (thunked))) + + ;; Nest records and test the two self references. + (let* ((x (foo (thing (bar (baz (list this-bar this-foo)))))) + (y (foo-thing x))) + (match (bar-baz y) + ((first second) + (and (eq? second x) + (bar? first) + (eq? first y))))))) + (test-assert "define-record-type* & delayed" (begin (define-record-type* foo make-foo From adb6462c4ce51fcdc94d3608ad6efb4adf716018 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 29 Mar 2019 22:49:00 +0100 Subject: [PATCH 375/411] packages: Define 'this-package' and 'this-origin'. * guix/packages.scm (): Choose 'this-origin' as the 'this' identifier. (): Choose 'this-package'. * gnu/packages/gnucash.scm (gnucash)[arguments]: Use 'this-package' instead of 'this-record'. * gnu/packages/version-control.scm (git)[arguments]: Likewise. --- gnu/packages/gnucash.scm | 5 ++--- gnu/packages/version-control.scm | 5 ++--- guix/packages.scm | 4 ++++ 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm index 342df650aa..5b4da97e5d 100644 --- a/gnu/packages/gnucash.scm +++ b/gnu/packages/gnucash.scm @@ -27,7 +27,6 @@ (define-module (gnu packages gnucash) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) - #:use-module ((guix records) #:select (this-record)) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages base) @@ -165,14 +164,14 @@ (define-public gnucash ,@(transitive-input-references 'inputs (map (lambda (l) - (assoc l (package-inputs this-record))) + (assoc l (package-inputs this-package))) '("perl-finance-quote" "perl-date-manip")))) (list ,@(transitive-input-references 'inputs (map (lambda (l) - (assoc l (package-inputs this-record))) + (assoc l (package-inputs this-package))) '("perl-finance-quote"))))))))) '("gnucash" "gnc-fq-check" diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index fe9b64ba5c..667b2881b1 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -51,7 +51,6 @@ (define-module (gnu packages version-control) #:use-module (guix build-system haskell) #:use-module (guix build-system python) #:use-module (guix build-system trivial) - #:use-module ((guix records) #:select (this-record)) #:use-module (gnu packages apr) #:use-module (gnu packages autotools) #:use-module (gnu packages documentation) @@ -409,7 +408,7 @@ (define-public git ,@(transitive-input-references 'inputs (map (lambda (l) - (assoc l (package-inputs this-record))) + (assoc l (package-inputs this-package))) '("perl-authen-sasl" "perl-net-smtp-ssl" "perl-io-socket-ssl"))))))) @@ -422,7 +421,7 @@ (define-public git ,@(transitive-input-references 'inputs (map (lambda (l) - (assoc l (package-inputs this-record))) + (assoc l (package-inputs this-package))) '("perl-cgi"))))))) ;; Tell 'git-submodule' where Perl is. diff --git a/guix/packages.scm b/guix/packages.scm index 9d83de3d48..b402637508 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -48,6 +48,7 @@ (define-module (guix packages) search-path-specification) ;for convenience #:export (origin origin? + this-origin origin-uri origin-method origin-sha256 @@ -63,6 +64,7 @@ (define-module (guix packages) package package? + this-package package-name package-upstream-name package-version @@ -156,6 +158,7 @@ (define-module (guix packages) (define-record-type* origin make-origin origin? + this-origin (uri origin-uri) ; string (method origin-method) ; procedure (sha256 origin-sha256) ; bytevector @@ -247,6 +250,7 @@ (define %hydra-supported-systems (define-record-type* package make-package package? + this-package (name package-name) ; string (version package-version) ; string (source package-source) ; instance From d8bead6c5dcb8de3c86b4f84ee7c74d824135d16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 29 Mar 2019 23:22:27 +0100 Subject: [PATCH 376/411] system: Define 'this-operating-system'. * gnu/system.scm (): Choose 'this-operating-system' as the 'this' identifier. [essential-services]: Adjust accordingly. --- gnu/system.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/system.scm b/gnu/system.scm index 9887d72c41..ad0c9e57dc 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -66,6 +66,7 @@ (define-module (gnu system) #:use-module (rnrs bytevectors) #:export (operating-system operating-system? + this-operating-system operating-system-bootloader operating-system-services @@ -152,6 +153,8 @@ (define (bootable-kernel-arguments system root-device) (define-record-type* operating-system make-operating-system operating-system? + this-operating-system + (kernel operating-system-kernel ; package (default linux-libre)) (kernel-arguments operating-system-user-kernel-arguments @@ -204,7 +207,7 @@ (define-record-type* operating-system (essential-services operating-system-essential-services ; list of services (thunked) - (default (essential-services this-record))) + (default (essential-services this-operating-system))) (services operating-system-user-services ; list of services (default %base-services)) From 03a33eee720d7173a438cd1ce3e8dedf89aaa1d4 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Sat, 30 Mar 2019 14:55:11 +0100 Subject: [PATCH 377/411] gnu: wine-staging: Update to 4.5. * gnu/packages/wine.scm (wine-staging-patchset-data): Update to 4.5. * gnu/packages/wine.scm (wine-staging): Update to 4.5. --- gnu/packages/wine.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm index c7a57f5ec4..57b755c8a2 100644 --- a/gnu/packages/wine.scm +++ b/gnu/packages/wine.scm @@ -310,7 +310,7 @@ (define-public wine-minimal (define-public wine-staging-patchset-data (package (name "wine-staging-patchset-data") - (version "4.4") + (version "4.5") (source (origin (method git-fetch) @@ -320,7 +320,7 @@ (define-public wine-staging-patchset-data (file-name (git-file-name name version)) (sha256 (base32 - "1pk0p37p2pbdsikj6987pg70f9a5n2ki8vnhcj4ngh1rhg6iqgyw")))) + "18xpha7nl3jg7c24cgbncciyyqqb6svsyfp1xk81993wnl6r8abs")))) (build-system trivial-build-system) (native-inputs `(("bash" ,bash) @@ -366,7 +366,7 @@ (define-public wine-staging (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "1c072a2d56x43alv9pvahasfrdb8k0y0f540xpzjjhqb9g7hjfnv")))) + "1dy1v27cw9vp2xnr8y4bdcvvw5ivcgpk2375jgn536csbwaxgwjz")))) (inputs `(("autoconf" ,autoconf) ; for autoreconf ("faudio" ,faudio) ("ffmpeg" ,ffmpeg) From 29a9eb9e1a958414aae902dbb96fe01e90d2de89 Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Mon, 25 Mar 2019 07:06:08 +0100 Subject: [PATCH 378/411] gnu: Add emacs-counsel-projectile. * gnu/packages/emacs-xyz.scm (emacs-counsel-projectile): New variable. Signed-off-by: Oleg Pykhalov --- gnu/packages/emacs-xyz.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 51444d5687..df5e2cf21e 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -4406,6 +4406,30 @@ (define-public emacs-epl @code{package.el} into a sane API.") (license license:gpl3+))) +(define-public emacs-counsel-projectile + (package + (name "emacs-counsel-projectile") + (version "0.3.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ericdanan/counsel-projectile") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1inc4ndl0ysfwvxk4avbgpj4qi9rc93da6476a5c81xmwpsv8wmq")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-ivy" ,emacs-ivy) + ("emacs-projectile" ,emacs-projectile))) + (home-page "https://github.com/ericdanan/counsel-projectile") + (synopsis "Enhance Projectile with Ivy") + (description + "This package uses Ivy to provide additional actions for Projectile +commands and replacements for existing functions.") + (license license:gpl3+))) + (define-public emacs-queue (package (name "emacs-queue") From 14c297fde12f2dd401abadd3896b72ebbf5d571b Mon Sep 17 00:00:00 2001 From: Timothy Sample Date: Wed, 27 Mar 2019 23:22:30 -0400 Subject: [PATCH 379/411] gnu: gnome-online-accounts: Split off 'lib' output. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gnu/packages/gnome.scm (gnome-online-accounts)[outputs]: Add 'lib'. [arguments]: Set the 'libdir' path to the 'out' output, and add a phase to ensure that libgoa gets installed in the 'lib' output. (evolution-data-server, gfbgraph, gnome-calendar, gnome-control-center, gnome-todo, libgdata, libzapojit): Use the 'lib' output of gnome-online-accounts. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 060379aba9..9222f99003 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -389,7 +389,7 @@ (define-public libgdata ("libsoup" ,libsoup))) (propagated-inputs `(("gcr" ,gcr) - ("gnome-online-accounts" ,gnome-online-accounts) + ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") ("liboauth" ,liboauth) ("libxml2" ,libxml2))) (home-page "https://wiki.gnome.org/Projects/libgdata") @@ -4941,7 +4941,23 @@ (define-public gnome-online-accounts (sha256 (base32 "1l8p1ghknmkmjpnpl7jr53j66qbzpikickzbmrz0aczyhq6pdy29")))) + (outputs '("out" "lib")) (build-system glib-or-gtk-build-system) + (arguments + `(#:configure-flags + (list (string-append "--libdir=" (assoc-ref %outputs "out") "/lib")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-libgoa-output + (lambda* (#:key outputs #:allow-other-keys) + (let ((lib (assoc-ref outputs "lib"))) + (substitute* '("src/goa/Makefile.in" "src/goa/goa-1.0.pc.in") + (("@prefix@") lib) + (("@exec_prefix@") lib) + (("@libdir@") (string-append lib "/lib")) + (("@includedir@") (string-append lib "/include")) + (("@datadir@") (string-append lib "/share"))) + #t)))))) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc. ("gobject-introspection" ,gobject-introspection) @@ -5038,7 +5054,7 @@ (define-public evolution-data-server (inputs `(("bdb" ,bdb) ("gcr" ,gcr) - ("gnome-online-accounts" ,gnome-online-accounts) + ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") ("json-glib" ,json-glib) ("libgweather" ,libgweather) ("mit-krb5" ,mit-krb5) @@ -5631,6 +5647,7 @@ (define-public gnome-control-center ("gnome-bluetooth" ,gnome-bluetooth) ("gnome-desktop" ,gnome-desktop) ("gnome-online-accounts" ,gnome-online-accounts) + ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") ("gnome-settings-daemon" ,gnome-settings-daemon) ("grilo" ,grilo) ("ibus" ,ibus) @@ -6300,7 +6317,7 @@ (define-public libzapojit ("intltool" ,intltool) ("pkg-config" ,pkg-config))) (inputs - `(("gnome-online-accounts" ,gnome-online-accounts) + `(("gnome-online-accounts:lib" ,gnome-online-accounts "lib") ("json-glib" ,json-glib) ("rest" ,rest))) (home-page "https://wiki.gnome.org/Projects/Zapojit") @@ -6373,7 +6390,7 @@ (define-public gnome-calendar ("pkg-config" ,pkg-config))) (inputs `(("evolution-data-server" ,evolution-data-server) - ("gnome-online-accounts" ,gnome-online-accounts) + ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") ("gsettings-desktop-schemas" ,gsettings-desktop-schemas))) (home-page "https://wiki.gnome.org/Apps/Calendar") (synopsis "GNOME's calendar application") @@ -6425,7 +6442,7 @@ (define-public gnome-todo ("libpeas" ,libpeas) ("python-pygobject" ,python-pygobject) ("evolution-data-server" ,evolution-data-server) - ("gnome-online-accounts" ,gnome-online-accounts) + ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") ("gsettings-desktop-schemas" ,gsettings-desktop-schemas))) (home-page "https://wiki.gnome.org/Apps/Todo") (synopsis "GNOME's ToDo Application") @@ -6754,7 +6771,7 @@ (define-public gfbgraph ("gobject-introspection" ,gobject-introspection))) (inputs `(("json-glib" ,json-glib) - ("gnome-online-accounts" ,gnome-online-accounts) + ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") ("rest" ,rest))) (synopsis "GLib/GObject wrapper for the Facebook API") (description "This library allows you to use the Facebook API from From da43d1cb32cc5dd93d8d240d7a4ad5fb52a9169c Mon Sep 17 00:00:00 2001 From: Timothy Sample Date: Wed, 27 Mar 2019 23:22:31 -0400 Subject: [PATCH 380/411] gnu: evolution-data-server: Add 'libedataserverui' output. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gnu/packages/gnome.scm (evolution-data-server)[outputs]: Add 'libedataserverui'. [arguments]: Add phases so that only libedataserverui is linked with WebKitGTK, and that it is moved to its own output. (evolution, gnome-calendar, gnome-todo)[inputs]: Add libedataserverui. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 41 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 9222f99003..595ba20f7f 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4994,6 +4994,7 @@ (define-public evolution-data-server (sha256 (base32 "12b9lfgwd57rzn9394xrbvl9ym5aqldpz9v7c9a421dsv8dgq13b")))) + (outputs '("out" "libedataserverui")) (build-system cmake-build-system) (arguments '(;; XXX FIXME: 11/85 tests are failing. @@ -5034,7 +5035,40 @@ (define-public evolution-data-server ;; CMakeLists.txt hard-codes runpath to just the libdir. ;; Remove it so the configure flag is respected. (("SET\\(CMAKE_INSTALL_RPATH .*") "")) - #t))))) + #t)) + (add-before 'configure 'factor-webkit + (lambda _ + (substitute* "CMakeLists.txt" + (("webkit2gtk-4\\.0>=\\$[{]webkit2gtk_minimum_version[}]") "") + (("if[(]ENABLE_OAUTH2[)]") + (string-append + "if(ENABLE_OAUTH2)\n" + "\tpkg_check_modules(OAUTH2_UI REQUIRED " + "webkit2gtk-4.0>=${webkit2gtk_minimum_version})"))) + (substitute* "src/libedataserverui/CMakeLists.txt" + (("\\$[{]OAUTH2_([A-Z_]+)[}]" all part) + (string-append all " ${OAUTH2_UI_" part "}"))))) + (add-after 'install 'split + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (libedsui (assoc-ref outputs "libedataserverui"))) + (for-each (lambda (file) + (mkdir-p (dirname (string-append libedsui file))) + (rename-file (string-append out file) + (string-append libedsui file))) + '("/lib/pkgconfig/libedataserverui-1.2.pc" + "/lib/libedataserverui-1.2.so" + "/lib/libedataserverui-1.2.so.2" + "/lib/libedataserverui-1.2.so.2.0.0" + "/lib/girepository-1.0/EDataServerUI-1.2.typelib" + "/include/evolution-data-server/libedataserverui" + "/share/gir-1.0/EDataServerUI-1.2.gir" + "/share/vala/vapi/libedataserverui-1.2.vapi" + "/share/vala/vapi/libedataserverui-1.2.deps")) + (substitute* (string-append libedsui "/lib/pkgconfig/" + "libedataserverui-1.2.pc") + ((out) libedsui)) + #t)))))) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc. ("gobject-introspection" ,gobject-introspection) @@ -6391,7 +6425,8 @@ (define-public gnome-calendar (inputs `(("evolution-data-server" ,evolution-data-server) ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") - ("gsettings-desktop-schemas" ,gsettings-desktop-schemas))) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("libedataserverui" ,evolution-data-server "libedataserverui"))) (home-page "https://wiki.gnome.org/Apps/Calendar") (synopsis "GNOME's calendar application") (description @@ -6438,6 +6473,7 @@ (define-public gnome-todo (inputs `(("rest" ,rest) ; For Todoist plugin ("json-glib" ,json-glib) ; For Todoist plugin + ("libedataserverui" ,evolution-data-server "libedataserverui") ("libical" ,libical) ("libpeas" ,libpeas) ("python-pygobject" ,python-pygobject) @@ -7608,6 +7644,7 @@ (define-public evolution ("gtkspell3" ,gtkspell3) ("highlight" ,highlight) ("libcanberra" ,libcanberra) + ("libedataserverui" ,evolution-data-server "libedataserverui") ("libgweather" ,libgweather) ("libnotify" ,libnotify) ("libsoup" ,libsoup) From 398747f8f11dc011799da1c2384aa201488a4595 Mon Sep 17 00:00:00 2001 From: Timothy Sample Date: Wed, 27 Mar 2019 23:22:32 -0400 Subject: [PATCH 381/411] gnu: gnome-shell: Remove gnome-control-center from inputs. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (gnome-shell)[inputs]: Remove gnome-control-center. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 595ba20f7f..a489137669 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5814,7 +5814,6 @@ (define-public gnome-shell ("gdm" ,gdm) ("gjs" ,gjs) ("gnome-bluetooth" ,gnome-bluetooth) - ("gnome-control-center" ,gnome-control-center) ("gnome-desktop" ,gnome-desktop) ("gnome-settings-daemon" ,gnome-settings-daemon) ("gst-plugins-base" ,gst-plugins-base) From 528ea990c3a815cb4b0ded913ea22cdc778839bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 30 Mar 2019 14:34:40 +0100 Subject: [PATCH 382/411] gnu: Use 'this-package' as a native input instead of 'self-native-input?'. * gnu/packages/file.scm (file)[self-native-input?]: Remove. [native-inputs]: New field. * gnu/packages/guile.scm (guile-1.8)[self-native-input?]: Remove. [native-inputs]: New field. (guile-2.0)[self-native-input?]: Remove. [native-inputs]: Add THIS-PACKAGE when (%current-target-system) is true. * gnu/packages/ncurses.scm (ncurses)[self-native-input?]: Remove. [native-inputs]: Add THIS-PACKAGE when (%current-target-system) is true. * gnu/packages/python-xyz.scm (python-file)[self-native-input?]: Remove. [native-inputs]: New field. --- gnu/packages/file.scm | 4 +++- gnu/packages/guile.scm | 18 ++++++++++++------ gnu/packages/ncurses.scm | 8 +++++--- gnu/packages/python-xyz.scm | 4 +++- 4 files changed, 23 insertions(+), 11 deletions(-) diff --git a/gnu/packages/file.scm b/gnu/packages/file.scm index 4518c8d3dc..d04357023d 100644 --- a/gnu/packages/file.scm +++ b/gnu/packages/file.scm @@ -43,7 +43,9 @@ (define-public file ;; When cross-compiling, this package depends upon a native install of ;; itself. - (self-native-input? #t) + (native-inputs (if (%current-target-system) + `(("self" ,this-package)) + '())) (synopsis "File type guesser") (description diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index daeadca610..5903bcabaa 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -103,6 +103,12 @@ (define-public guile-1.8 (substitute* "ice-9/popen.scm" (("/bin/sh") (which "sh"))) #t))))) + + ;; When cross-compiling, a native version of Guile itself is needed. + (native-inputs (if (%current-target-system) + `(("self" ,this-package)) + '())) + (inputs `(("gawk" ,gawk) ("readline" ,readline))) @@ -111,9 +117,6 @@ (define-public guile-1.8 (propagated-inputs `(("gmp" ,gmp) ("libltdl" ,libltdl))) - ;; When cross-compiling, a native version of Guile itself is needed. - (self-native-input? #t) - (native-search-paths (list (search-path-specification (variable "GUILE_LOAD_PATH") @@ -141,7 +144,12 @@ (define-public guile-2.0 (base32 "10lxc6l5alf3lzbs3ihnbfy6dfcrsyf8667wa57f26vf4mk2ai78")))) (build-system gnu-build-system) - (native-inputs `(("pkgconfig" ,pkg-config))) + + ;; When cross-compiling, a native version of Guile itself is needed. + (native-inputs `(,@(if (%current-target-system) + `(("self" ,this-package)) + '()) + ("pkgconfig" ,pkg-config))) (inputs `(("libffi" ,libffi) ,@(libiconv-if-needed) @@ -165,8 +173,6 @@ (define-public guile-2.0 ("bdw-gc" ,libgc) ("gmp" ,gmp))) - (self-native-input? #t) - (outputs '("out" "debug")) (arguments diff --git a/gnu/packages/ncurses.scm b/gnu/packages/ncurses.scm index 9b5498688b..a35ff9b400 100644 --- a/gnu/packages/ncurses.scm +++ b/gnu/packages/ncurses.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2018 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2018, 2019 Ludovic Courtès ;;; Copyright © 2014, 2016 Mark H Weaver ;;; Copyright © 2015, 2017 Leo Famulari ;;; Copyright © 2016 ng0 @@ -196,9 +196,11 @@ (define package.pc ,patch-makefile-phase) (add-after 'unpack 'remove-unneeded-shebang ,remove-shebang-phase))))) - (self-native-input? #t) ; for `tic' (native-inputs - `(("pkg-config" ,pkg-config))) + `(,@(if (%current-target-system) + `(("self" ,this-package)) ;for `tic' + '()) + ("pkg-config" ,pkg-config))) (native-search-paths (list (search-path-specification (variable "TERMINFO_DIRS") diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f392b52235..03a83022a1 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -6875,7 +6875,9 @@ (define-public python-file (string-append "'" file "/lib/libmagic.so'"))) #t)))))) (inputs `(("file" ,file))) - (self-native-input? #f) + (native-inputs (if (%current-target-system) + `(("self" ,this-package)) + '())) (synopsis "Python bindings to the libmagic file type guesser. Note that this module and the python-magic module both provide a \"magic.py\" file; these two modules, which are different and were developed separately, both From 329c3c323e32f3f97c452ee4455934fe57a18ff0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 30 Mar 2019 14:37:11 +0100 Subject: [PATCH 383/411] gnu: guile: Remove version 2.0.13. This package was unused since 0991fd53367907908fbd901a9fbe79540e4e4527. * gnu/packages/guile.scm (guile-2.0.13): Remove. --- gnu/packages/guile.scm | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 5903bcabaa..d4dd10ba11 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -213,20 +213,6 @@ (define-public guile-2.0 (home-page "https://www.gnu.org/software/guile/") (license license:lgpl3+))) -(define-public guile-2.0.13 - ;; For testing a "minimal" Guix - (hidden-package - (package (inherit guile-2.0) - (name "guile") - (version "2.0.13") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/guile/guile-" version - ".tar.xz")) - (sha256 - (base32 - "12yqkr974y91ylgw6jnmci2v90i90s7h9vxa4zk0sai8vjnz4i1p"))))))) - (define-public guile-2.2 (package (inherit guile-2.0) (name "guile") From a7646bc5e17a829d23519d0b199a576fb1edbd04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 30 Mar 2019 14:59:26 +0100 Subject: [PATCH 384/411] packages: Remove 'self-native-input?' field. This field has become unnecessary with the addition of 'this-package'. * guix/packages.scm ()[self-native-input?]: Remove. (package->bag): Adjust accordingly. * doc/guix.texi (package Reference): Remove 'self-native-input?'. --- doc/guix.texi | 4 ---- guix/packages.scm | 11 ++--------- 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index d6dda9904c..527f9bcd10 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5361,10 +5361,6 @@ more. To ensure that libraries written in those languages can find library code they depend on at run time, run-time dependencies must be listed in @code{propagated-inputs} rather than @code{inputs}. -@item @code{self-native-input?} (default: @code{#f}) -This is a Boolean field telling whether the package should use itself as -a native input when cross-compiling. - @item @code{outputs} (default: @code{'("out")}) The list of output names of the package. @xref{Packages with Multiple Outputs}, for typical uses of additional outputs. diff --git a/guix/packages.scm b/guix/packages.scm index b402637508..1d3d99ba65 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -264,9 +264,6 @@ (define-record-type* (default '()) (thunked)) (native-inputs package-native-inputs ; native input packages/derivations (default '()) (thunked)) - (self-native-input? package-self-native-input? ; whether to use itself as - ; a native input when cross- - (default #f)) ; compiling (outputs package-outputs ; list of strings (default '("out"))) @@ -1032,7 +1029,7 @@ (define* (package->bag package #:optional ((and self ($ name version source build-system args inputs propagated-inputs native-inputs - self-native-input? outputs)) + outputs)) ;; Even though we prefer to use "@" to separate the package ;; name from the package version in various user-facing parts ;; of Guix, checkStoreName (in nix/libstore/store-api.cc) @@ -1044,11 +1041,7 @@ (define* (package->bag package #:optional #:inputs (append (inputs self) (propagated-inputs self)) #:outputs outputs - #:native-inputs `(,@(if (and target - self-native-input?) - `(("self" ,self)) - '()) - ,@(native-inputs self)) + #:native-inputs (native-inputs self) #:arguments (args self)) (raise (if target (condition From 154f1f0937754fafac0c6288dd458b66b332e6bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 30 Mar 2019 15:00:41 +0100 Subject: [PATCH 385/411] packages: Remove 'maintainers' field. This field was never used and doesn't match the way we collectively maintain packages. * guix/packages.scm ()[maintainers]: Remove. --- guix/packages.scm | 2 -- 1 file changed, 2 deletions(-) diff --git a/guix/packages.scm b/guix/packages.scm index 1d3d99ba65..c2981dda8b 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -84,7 +84,6 @@ (define-module (guix packages) package-license package-home-page package-supported-systems - package-maintainers package-properties package-location hidden-package @@ -286,7 +285,6 @@ (define-record-type* (home-page package-home-page) (supported-systems package-supported-systems ; list of strings (default %supported-systems)) - (maintainers package-maintainers (default '())) (properties package-properties (default '())) ; alist for anything else From e23f2ff1836e982fc2289093aab0994e0c0cf2d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 30 Mar 2019 15:15:12 +0100 Subject: [PATCH 386/411] gnu: Rename "gnubackgammon" back to "gnubg". This reverts c97e4d8bbe8bf12c09471573d3544d08a42d83f5, which was not consensual and broke 'tests/guix-package.sh'. * gnu/packages/games.scm (gnubackgammon): Rename to... (gnubg): ... this, and rename the 'gnubg' deprecated alias to 'gnubackgammon'. --- gnu/packages/games.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 5340ae5d5b..169ca28459 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Eric Bavier ;;; Copyright © 2014 Cyrill Schenkel ;;; Copyright © 2014 Sylvain Beucler -;;; Copyright © 2014, 2015, 2018 Ludovic Courtès +;;; Copyright © 2014, 2015, 2018, 2019 Ludovic Courtès ;;; Copyright © 2014, 2015, 2016 Sou Bunnbu ;;; Copyright © 2014, 2015 Mark H Weaver ;;; Copyright © 2015, 2016 Andreas Enge @@ -738,9 +738,9 @@ (define-public knights ;; license. The whole package is released under GPLv3+. (license license:gpl3+))) -(define-public gnubackgammon +(define-public gnubg (package - (name "gnubackgammon") + (name "gnubg") (version "1.06.002") (source (origin @@ -770,8 +770,8 @@ (define-public gnubackgammon also features an attractive, 3D representation of the playing board.") (license license:gpl3+))) -(define-public gnubg - (deprecated-package "gnubg" gnubackgammon)) +(define-public gnubackgammon + (deprecated-package "gnubackgammon" gnubg)) (define-public gnubik (package From 6e1f91d91ca594098a7e98ae17b301fc035a6234 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 26 Mar 2019 19:04:54 -0400 Subject: [PATCH 387/411] gnu: khal: Update to 0.10.0. * gnu/packages/calendar.scm (khal): Update to 0.10.0. [native-inputs]: Replace tzdata with tzdata-for-tests. [arguments]: Simplify the check phase. --- gnu/packages/calendar.scm | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index 226d8f57e2..90f23452f7 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -96,13 +96,13 @@ (define-public libical (define-public khal (package (name "khal") - (version "0.9.10") + (version "0.10.0") (source (origin (method url-fetch) (uri (pypi-uri "khal" version)) (sha256 (base32 - "03h0j0d3xyqh98x5v2gv63wv3g91hip3vsaxvybsn5iz331d23h4")))) + "1p49f3g25x900vk32spjbr2aipj12kcbhayny2vwhdpkjlv6k396")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -122,22 +122,14 @@ (define-public khal (setenv "TZ" (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo/Zulu")) - (invoke "py.test" "tests" "-k" - (string-append - ;; These tests are known to fail in when not - ;; running in a TTY: - ;; https://github.com/pimutils/khal/issues/683 - "not test_printics_read_from_stdin " - "and not test_import_from_stdin " - ;; https://github.com/pimutils/khal/issues/825 - "and not test_description_and_location_and_categories"))))))) + (invoke "py.test" "tests")))))) (native-inputs `(("python-pytest" ,python-pytest) ("python-pytest-cov" ,python-pytest-cov) ("python-setuptools-scm" ,python-setuptools-scm) ;; Required for tests ("python-freezegun" ,python-freezegun) - ("tzdata" ,tzdata) + ("tzdata" ,tzdata-for-tests) ("vdirsyncer" ,vdirsyncer) ;; Required to build manpage ("python-sphinxcontrib-newsfeed" ,python-sphinxcontrib-newsfeed) From 6d3e149f102188baf0d27c085f6897e030841152 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 30 Mar 2019 15:47:57 -0400 Subject: [PATCH 388/411] gnu: dovecot: Update to 2.3.5.1 [fixes CVE-2019-7524]. * gnu/packages/mail.scm (dovecot): Update to 2.3.5.1. --- gnu/packages/mail.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 9d09cade29..a2971a5e67 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1287,7 +1287,7 @@ (define-public exim (define-public dovecot (package (name "dovecot") - (version "2.3.5") + (version "2.3.5.1") (source (origin (method url-fetch) @@ -1295,7 +1295,8 @@ (define-public dovecot (version-major+minor version) "/" "dovecot-" version ".tar.gz")) (sha256 - (base32 "1zxa9banams9nmk99sf1rqahr11cdqxhwi7hyz3ddxqidpn15qdz")))) + (base32 + "0gy3qzwbp6zsyn44pcfq8iiv9iy9q7z6py30h60alb1vkr3rv3yp")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From ad4f644226efa67c9d122591cbb16418f6f654bd Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sat, 30 Mar 2019 23:50:25 +0100 Subject: [PATCH 389/411] gnu: Add flare. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/games.scm (flare-engine, flare-game): New variables. Signed-off-by: 宋文武 --- gnu/packages/games.scm | 92 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 169ca28459..8207b92dc9 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6657,3 +6657,95 @@ (define-public openclonk fight each other on an arena-like map.") ;; Software as a whole is licensed under ISC, artwork under CC-BY. (license (list license:isc license:cc-by3.0)))) + +(define-public flare-engine + (package + (name "flare-engine") + (version "1.09.01") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/flareteam/flare-engine.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1117nxir0zwz4pipx7sxj64p68ig6gbz94lkkjbgrk44lhs0hz8p")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;no test + #:configure-flags '("-DBINDIR=bin" "-DDATADIR=share/flare"))) + (inputs + `(("hicolor-icon-theme" ,hicolor-icon-theme) + ("python" ,python-wrapper) + ("sdl" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf))))) + (home-page "http://www.flarerpg.org/") + (synopsis "Action Roleplaying Engine") + (description "Flare (Free Libre Action Roleplaying Engine) is a simple +game engine built to handle a very specific kind of game: single-player 2D +action RPGs.") + (license license:gpl3+))) + +(define-public flare-game + (package + (name "flare-game") + (version "1.09.01") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/flareteam/flare-game.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1hn2cchqsbvvgzqc6zvblnl3qrr6sp5rqxpsrcvdmbjm7b37x37b")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;no test + #:configure-flags '("-DDATADIR=share/flare") + #:phases + (modify-phases %standard-phases + ;; Flare expects the mods to be located in the same folder. + ;; Yet, "default" mod is in the engine, whereas the others + ;; are in the current package. Merge everything here with + ;; a symlink. + (add-after 'install 'add-default-mod + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (mods (string-append out "/share/flare/mods"))) + (with-directory-excursion mods + (symlink (string-append (assoc-ref inputs "flare-engine") + "/share/flare/mods/default") + "default"))) + #t)) + (add-after 'install 'install-executable + ;; The package only provides assets for the game, the + ;; executable coming from "flare-engine". Since more than + ;; one game may use the engine, we create a new executable, + ;; "flare-game", which launches the engine with appropriate + ;; parameters. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bash (string-append (assoc-ref inputs "bash") + "/bin/bash")) + (flare (string-append (assoc-ref inputs "flare-engine") + "/bin/flare")) + (script (string-append out "/bin/flare-game"))) + (mkdir-p (dirname script)) + (call-with-output-file script + (lambda (port) + (format port + "#!~a +exec ~a --data-path=~a/share/flare --mods=empyrean_campaign~%" + bash + flare + out))) + (chmod script #o755)) + #t))))) + (inputs + `(("flare-engine" ,flare-engine))) + (home-page "http://www.flarerpg.org/") + (synopsis "Fantasy action RPG using the FLARE engine") + (description "Flare is a single-player 2D action RPG with +fast-paced action and a dark fantasy style.") + (license license:cc-by-sa3.0))) From cd9ca20a5d54549db26d9780cbc7b282ec9f0001 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 31 Mar 2019 15:51:25 +0200 Subject: [PATCH 390/411] gnu: znc: Update to 1.7.3. * gnu/packages/messaging.scm (znc): Update to 1.7.3. --- gnu/packages/messaging.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 2a910c4bc6..32868d1a1f 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -492,14 +492,14 @@ (define-public pidgin-otr (define-public znc (package (name "znc") - (version "1.7.2") + (version "1.7.3") (source (origin (method url-fetch) (uri (string-append "http://znc.in/releases/archive/znc-" version ".tar.gz")) (sha256 (base32 - "1ac2csl5jr56vahnxdynlvrhwlvcc1gqxvyifckc6cn5aj7ygd30")))) + "0g8i5hsl4kinpz1wp0a2zniidv3w2sd6awq8676fds516wcc6k0y")))) ;; TODO: autotools support has been deprecated, and new features like i18n ;; are only supported when building with cmake. (build-system gnu-build-system) From 36a4366d79a310d05db0de2cf6d5bb3c5e861d4b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 31 Mar 2019 16:39:43 +0300 Subject: [PATCH 391/411] gnu: Fix descriptions to not use quotes. * gnu/packages/admin.scm (wpa-supplicant-minimal, mingetty, di), * gnu/packages/audio.scm (fil-plugins), * gnu/packages/base.scm (make-ld-wrapper, make-glibc-locales), * gnu/packages/bioinformatics.scm (r-samtools), * gnu/packages/chez.scm (chez-mit), * gnu/packages/commencement.scm (make-gcc-toolchain), * gnu/packages/compression.scm (fastjar), * gnu/packages/cran.scm (r-maps, r-rcpp), * gnu/packages/databases.scm (sparql-query), * gnu/packages/dunst.scm (dunst), * gnu/packages/ftp.scm (ncftp), * gnu/packages/gl.scm (freeglut), * gnu/packages/haskell-check.scm (ghc-tasty-golden), * gnu/packages/haskell.scm (ghc-case-insensitive, ghc-text, ghc-haskell-src, ghc-syb, ghc-deepseq-generics, ghc-network-uri, ghc-rerebase, ghc-zlib), * gnu/packages/image.scm (jbig2dec), * gnu/packages/kde-frameworks.scm (kinit, karchive), * gnu/packages/linux.scm (wireless-tools, perf, module-init-tools, kbd), * gnu/packages/lirc.scm (lirc), * gnu/packages/lisp.scm (uglify-js), * gnu/packages/mate.scm (mate-netbook), * gnu/packages/microcom.scm (microcom), * gnu/packages/music.scm (bristol), * gnu/packages/networking.scm (perl-geo-ip), * gnu/packages/patchutils.scm (patches), * gnu/packages/perl-check.scm (perl-test-more-utf8), * gnu/packages/perl.scm (perl-log-report-optional, perl-file-which, perl-io-tty, perl-log-any, perl-digest-sha1, perl-class-load, perl-regexp-common, perl-module-pluggable, perl-class-modifier), * gnu/packages/python-xyz.scm (python-backports-abc, python-natsort), * gnu/packages/samba.scm (iniparser), * gnu/packages/search.scm (mlocate), * gnu/packages/spice.scm (spice), * gnu/packages/statistics.scm (r-dt, r-lubridate, r-estimability, r-commonmark, r-digest, r-viridislite, r-stringr), * gnu/packages/tex.scm (texlive-latex-changebar), * gnu/packages/version-control.scm (subversion), * gnu/packages/w3m.scm (w3m), * gnu/packages/web.scm (perl-http-parser, perl-plack-middleware-reverseproxy), * gnu/packages/xorg.scm (xkeyboard-config, mkfontdir, xcursor-theme, mkfontscale, xinit, font-alias)[description]: Use @code instead of quotes. --- gnu/packages/admin.scm | 9 ++++---- gnu/packages/audio.scm | 2 +- gnu/packages/base.scm | 10 ++++---- gnu/packages/bioinformatics.scm | 8 +++---- gnu/packages/chez.scm | 2 +- gnu/packages/commencement.scm | 2 +- gnu/packages/compression.scm | 4 ++-- gnu/packages/cran.scm | 8 +++---- gnu/packages/databases.scm | 2 +- gnu/packages/dunst.scm | 2 +- gnu/packages/ftp.scm | 6 ++--- gnu/packages/gl.scm | 2 +- gnu/packages/haskell-check.scm | 6 ++--- gnu/packages/haskell.scm | 32 +++++++++++++------------- gnu/packages/image.scm | 2 +- gnu/packages/kde-frameworks.scm | 7 +++--- gnu/packages/linux.scm | 10 ++++---- gnu/packages/lirc.scm | 8 +++---- gnu/packages/lisp.scm | 2 +- gnu/packages/mate.scm | 2 +- gnu/packages/microcom.scm | 2 +- gnu/packages/music.scm | 2 +- gnu/packages/networking.scm | 4 ++-- gnu/packages/patchutils.scm | 2 +- gnu/packages/perl-check.scm | 7 +++--- gnu/packages/perl.scm | 26 ++++++++++----------- gnu/packages/python-xyz.scm | 14 ++++++------ gnu/packages/samba.scm | 2 +- gnu/packages/search.scm | 2 +- gnu/packages/spice.scm | 2 +- gnu/packages/statistics.scm | 39 ++++++++++++++++---------------- gnu/packages/tex.scm | 4 ++-- gnu/packages/version-control.scm | 2 +- gnu/packages/w3m.scm | 6 ++--- gnu/packages/web.scm | 6 ++--- gnu/packages/xorg.scm | 16 ++++++------- 36 files changed, 133 insertions(+), 129 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 7f7b2fec3e..d901110e53 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -475,8 +475,8 @@ (define-public mingetty (synopsis "Getty for the text console") (description "Small console getty that is started on the Linux text console, -asks for a login name and then transfers over to 'login'. It is extended to -allow automatic login and starting any app.") +asks for a login name and then transfers over to @code{login}. It is extended +to allow automatic login and starting any app.") (license license:gpl2+))) (define-public net-base @@ -1140,7 +1140,8 @@ (define (copy-man-page target) and it controls the roaming and IEEE 802.11 authentication/association of the WLAN driver. -This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.") +This package provides the @code{wpa_supplicant} daemon and the @code{wpa_cli} +command.") ;; In practice, this is linked against Readline, which makes it GPLv3+. (license license:bsd-3) @@ -2076,7 +2077,7 @@ (define-public di (home-page "https://www.gentoo.com/di/") (synopsis "Advanced df like disk information utility") (description - "'di' is a disk information utility, displaying everything that your + "@code{di} is a disk information utility, displaying everything that your @code{df} command does and more. It features the ability to display your disk usage in whatever format you prefer. It is designed to be highly portable and produce uniform output across heterogeneous networks.") diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index aa99382f79..fb119f870d 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -943,7 +943,7 @@ (define-public fil-plugins The 2nd order resonant filters are implemented using a Mitra-Regalia style lattice filter, which is stable even while parameters are being changed. -All switches and controls are internally smoothed, so they can be used 'live' +All switches and controls are internally smoothed, so they can be used @code{live} without any clicks or zipper noises. This makes this plugin suitable for use in systems that allow automation of plugin control ports, such as Ardour, or for stage use.") diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index db9cca6faf..91f8b03c83 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -600,9 +600,9 @@ (define* (make-ld-wrapper name #:key #t))))) (synopsis "The linker wrapper") (description - "The linker wrapper (or 'ld-wrapper') wraps the linker to add any -missing '-rpath' flags, and to detect any misuse of libraries outside of the -store.") + "The linker wrapper (or @code{ld-wrapper}) wraps the linker to add any +missing @code{-rpath} flags, and to detect any misuse of libraries outside of +the store.") (home-page "https://www.gnu.org/software/guix//") (license gpl3+))) @@ -1019,8 +1019,8 @@ (define-public (make-glibc-locales glibc) (synopsis "All the locales supported by the GNU C Library") (description "This package provides all the locales supported by the GNU C Library, -more than 400 in total. To use them set the 'LOCPATH' environment variable to -the 'share/locale' sub-directory of this package.") +more than 400 in total. To use them set the @code{LOCPATH} environment variable +to the @code{share/locale} sub-directory of this package.") (outputs '("out")) ;110+ MiB (native-search-paths '()) (arguments diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index c647d48aec..8f6a37a4f8 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7765,10 +7765,10 @@ (define-public r-rsamtools (home-page "https://bioconductor.org/packages/release/bioc/html/Rsamtools.html") (synopsis "Interface to samtools, bcftools, and tabix") (description - "This package provides an interface to the 'samtools', 'bcftools', and -'tabix' utilities for manipulating SAM (Sequence Alignment / Map), FASTA, -binary variant call (BCF) and compressed indexed tab-delimited (tabix) -files.") + "This package provides an interface to the @code{samtools}, +@code{bcftools}, and @code{tabix} utilities for manipulating SAM (Sequence +Alignment / Map), FASTA, binary variant call (BCF) and compressed indexed +tab-delimited (tabix) files.") (license license:expat))) (define-public r-delayedarray diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 7d0042872e..7e9f00f4c4 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -558,7 +558,7 @@ (define-public chez-mit (synopsis "MIT/GNU Scheme compatibility library for Chez Scheme") (description "This package provides a set of MIT/GNU Scheme compatibility libraries for Chez Scheme. The main goal was to provide the functionality -required to port the program 'Scmutils' to Chez Scheme.") +required to port the program @code{Scmutils} to Chez Scheme.") (license gpl3+))) (define-public chez-scmutils diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 0aa65fe638..b07630a54d 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -1050,7 +1050,7 @@ (define (make-gcc-toolchain gcc) (description "This package provides a complete GCC tool chain for C/C++ development to be installed in user profiles. This includes GCC, as well as libc (headers -and binaries, plus debugging symbols in the 'debug' output), and Binutils.") +and binaries, plus debugging symbols in the @code{debug} output), and Binutils.") (home-page "https://gcc.gnu.org/") (outputs '("out" "debug" "static")) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index fee657c3f8..ec80dc92ec 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -158,8 +158,8 @@ (define-public fastjar (home-page "https://savannah.nongnu.org/projects/fastjar") (synopsis "Replacement for Sun's 'jar' utility") (description - "FastJar is an attempt to create a much faster replacement for Sun's 'jar' -utility. Instead of being written in Java, FastJar is written in C.") + "FastJar is an attempt to create a much faster replacement for Sun's +@code{jar} utility. Instead of being written in Java, FastJar is written in C.") (license license:gpl2+))) (define-public libtar diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 40a0ed4759..f741b20f15 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -929,8 +929,8 @@ (define-public r-maps (home-page "https://cran.r-project.org/web/packages/maps") (synopsis "Draw geographical maps") (description "This package provides an R module for display of maps. -Projection code and larger maps are in separate packages ('mapproj' and -'mapdata').") +Projection code and larger maps are in separate packages (@code{mapproj} and +@code{mapdata}).") (license license:gpl2))) (define-public r-mapproj @@ -1351,9 +1351,9 @@ (define-public r-rcpp mapped back and forth to C++ equivalents which facilitates both writing of new code as well as easier integration of third-party libraries. Documentation about Rcpp is provided by several vignettes included in this package, via the -'Rcpp Gallery' site at , the paper by Eddelbuettel +@code{Rcpp Gallery} site at , the paper by Eddelbuettel and Francois (2011, JSS), and the book by Eddelbuettel (2013, Springer); see -'citation(\"Rcpp\")' for details on these last two.") +@code{citation(\"Rcpp\")} for details on these last two.") (license license:gpl2+))) (define-public r-bindr diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index afc6d7a307..3551be5596 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -986,7 +986,7 @@ (define-public sparql-query (home-page "https://github.com/tialaramex/sparql-query/") (synopsis "Command-line tool for accessing SPARQL endpoints over HTTP") (description "Sparql-query is a command-line tool for accessing SPARQL -endpoints over HTTP. It has been intentionally designed to 'feel' similar to +endpoints over HTTP. It has been intentionally designed to @code{feel} similar to tools for interrogating SQL databases. For example, you can enter a query over several lines, using a semi-colon at the end of a line to indicate the end of your query. It also supports readline so that you can more easily recall and diff --git a/gnu/packages/dunst.scm b/gnu/packages/dunst.scm index 7328e442cf..31b7f58758 100644 --- a/gnu/packages/dunst.scm +++ b/gnu/packages/dunst.scm @@ -73,6 +73,6 @@ (define-public dunst (synopsis "Customizable and lightweight notification daemon") (description "Dunst is a highly configurable and minimalistic notification daemon. -It provides 'org.freedesktop.Notifications' D-Bus service, so it is +It provides @code{org.freedesktop.Notifications} D-Bus service, so it is started automatically on the first call via D-Bus.") (license license:bsd-3))) diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index 68ad8da716..96953d6fd5 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -134,9 +134,9 @@ (define-public ncftp (synopsis "Command-line File Transfer Protocol (FTP) client") (description "NcFTP Client (or just NcFTP) is a set of command-line programs to access -File Transfer Protocol (FTP) servers. This includes 'ncftp', an interactive -FTP browser, as well as non-interactive commands such as 'ncftpput' and -'ncftpget'.") +File Transfer Protocol (FTP) servers. This includes @code{ncftp}, an interactive +FTP browser, as well as non-interactive commands such as @code{ncftpput} and +@code{ncftpget}.") (license clarified-artistic))) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 743932fd07..57e65e29b5 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -120,7 +120,7 @@ (define-public freeglut "Freeglut is a completely Free/OpenSourced alternative to the OpenGL Utility Toolkit (GLUT) library. GLUT was originally written by Mark Kilgard to support the sample programs in the -second edition OpenGL 'RedBook'. Since then, GLUT has been used +second edition OpenGL @code{RedBook}. Since then, GLUT has been used in a wide variety of practical applications because it is simple, widely available and highly portable. diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm index 19eb40eaa4..fa2bd0d652 100644 --- a/gnu/packages/haskell-check.scm +++ b/gnu/packages/haskell-check.scm @@ -148,9 +148,9 @@ (define-public ghc-tasty-golden "https://github.com/feuerbach/tasty-golden") (synopsis "Golden tests support for tasty") (description - "This package provides support for 'golden testing'. A @dfn{golden test} -is an IO action that writes its result to a file. To pass the test, this -output file should be identical to the corresponding 'golden' file, which + "This package provides support for @code{golden testing}. A @dfn{golden +test} is an IO action that writes its result to a file. To pass the test, this +output file should be identical to the corresponding @code{golden} file, which contains the correct result for the test.") (license license:expat))) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 2a5ba2a706..a23dfe9ae6 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -1157,7 +1157,7 @@ (define-public ghc-haskell-src (synopsis "Support for manipulating Haskell source code") (description - "The 'haskell-src' package provides support for manipulating Haskell + "The @code{haskell-src} package provides support for manipulating Haskell source code. The package provides a lexer, parser and pretty-printer, and a definition of a Haskell abstract syntax tree (AST). Common uses of this package are to parse or generate Haskell 98 code.") @@ -2360,11 +2360,11 @@ (define-public ghc-zlib "Compression and decompression in the gzip and zlib formats") (description "This package provides a pure interface for compressing and decompressing -streams of data represented as lazy 'ByteString's. It uses the zlib C library -so it has high performance. It supports the 'zlib', 'gzip' and 'raw' -compression formats. It provides a convenient high level API suitable for -most tasks and for the few cases where more control is needed it provides -access to the full zlib feature set.") +streams of data represented as lazy @code{ByteString}s. It uses the zlib C +library so it has high performance. It supports the @code{zlib}, @code{gzip} +and @code{raw} compression formats. It provides a convenient high level API +suitable for most tasks and for the few cases where more control is needed it +provides access to the full zlib feature set.") (license license:bsd-3))) (define-public ghc-stm @@ -2467,7 +2467,7 @@ (define-public ghc-text "An efficient packed, immutable Unicode text type (both strict and lazy), with a powerful loop fusion optimization framework. -The 'Text' type represents Unicode character strings, in a time and +The @code{Text} type represents Unicode character strings, in a time and space-efficient manner. This package provides text processing capabilities that are optimized for performance critical use, both in terms of large data quantities and high speed.") @@ -3800,10 +3800,10 @@ (define-public ghc-case-insensitive "https://github.com/basvandijk/case-insensitive") (synopsis "Case insensitive string comparison") (description - "The module 'Data.CaseInsensitive' provides the 'CI' type constructor -which can be parameterised by a string-like type like: 'String', 'ByteString', -'Text', etc.. Comparisons of values of the resulting type will be insensitive -to cases.") + "The module @code{Data.CaseInsensitive} provides the @code{CI} type +constructor which can be parameterised by a string-like type like: +@code{String}, @code{ByteString}, @code{Text}, etc. Comparisons of values of +the resulting type will be insensitive to cases.") (license license:bsd-3))) (define-public ghc-syb @@ -3830,7 +3830,7 @@ (define-public ghc-syb (description "This package contains the generics system described in the /Scrap Your Boilerplate/ papers (see @uref{http://www.cs.uu.nl/wiki/GenericProgramming/SYB, the website}). It -defines the 'Data' class of types permitting folding and unfolding of +defines the @code{Data} class of types permitting folding and unfolding of constructor applications, instances of this class for primitive types, and a variety of traversals.") (license license:bsd-3))) @@ -4323,8 +4323,8 @@ (define-public ghc-network-uri "https://github.com/haskell/network-uri") (synopsis "Library for URI manipulation") (description "This package provides an URI manipulation interface. In -'network-2.6' the 'Network.URI' module was split off from the 'network' -package into this package.") +@code{network-2.6} the @code{Network.URI} module was split off from the +@code{network} package into this package.") (license license:bsd-3))) (define-public ghc-ansi-terminal @@ -5724,7 +5724,7 @@ (define-public ghc-deepseq-generics (description "This package provides a @code{GHC.Generics}-based @code{Control.DeepSeq.Generics.genericRnf} function which can be used for -providing an 'rnf' implementation.") +providing an @code{rnf} implementation.") (license license:bsd-3))) (define-public ghc-string-qq @@ -9430,7 +9430,7 @@ (define-public ghc-rerebase `(("ghc-rebase" ,ghc-rebase))) (home-page "https://github.com/nikita-volkov/rerebase") (synopsis "Reexports from ``base'' with many other standard libraries") - (description "A rich drop-in replacement for ``base''. For details and + (description "A rich drop-in replacement for @code{base}. For details and documentation please visit @uref{https://github.com/nikita-volkov/rerebase, the project's home page}.") (license license:expat))) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index d363c445b7..9fc29ec284 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -545,7 +545,7 @@ (define-public jbig2dec (arguments '(#:configure-flags '("--disable-static"))) (synopsis "Decoder of the JBIG2 image compression format") (description - "JBIG2 is designed for lossy or lossless encoding of 'bilevel' (1-bit + "JBIG2 is designed for lossy or lossless encoding of @code{bilevel} (1-bit monochrome) images at moderately high resolution, and in particular scanned paper documents. In this domain it is very efficient, offering compression ratios on the order of 100:1. diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index 10a1dfe0d1..ec735d8903 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -418,7 +418,7 @@ (define-public karchive (home-page "https://community.kde.org/Frameworks") (synopsis "Qt 5 addon providing access to numerous types of archives") (description "KArchive provides classes for easy reading, creation and -manipulation of 'archive' formats like ZIP and TAR. +manipulation of @code{archive} formats like ZIP and TAR. It also provides transparent compression and decompression of data, like the GZip format, via a subclass of QIODevice.") @@ -2585,8 +2585,9 @@ (define-public kinit (synopsis "Library to speed up start of applications on KDE workspaces") (description "Kdeinit is a process launcher similar to init used for booting UNIX. It launches processes by forking and then loading a dynamic library which -contains a 'kdemain(...)' function. Using kdeinit to launch KDE applications -makes starting KDE applications faster and reduces memory consumption.") +contains a @code{kdemain(@dots{})} function. Using kdeinit to launch KDE +applications makes starting KDE applications faster and reduces memory +consumption.") ;; dual licensed (license (list license:lgpl2.0+ license:lgpl2.1+)))) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index b4a80bb2a0..9e4261eb02 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1996,7 +1996,7 @@ (define-public kbd (description "This package contains keytable files and keyboard utilities compatible for systems using the Linux kernel. This includes commands such as -'loadkeys', 'setfont', 'kbdinfo', and 'chvt'.") +@code{loadkeys}, @code{setfont}, @code{kbdinfo}, and @code{chvt}.") (license license:gpl2+))) (define-public loadkeys-static @@ -2302,7 +2302,7 @@ (define-public wireless-tools #:tests? #f)) (synopsis "Tools for manipulating Linux Wireless Extensions") (description "Wireless Tools are used to manipulate the now-deprecated -Linux Wireless Extensions; consider using 'iw' instead. The Wireless +Linux Wireless Extensions; consider using @code{iw} instead. The Wireless Extension was an interface allowing you to set Wireless LAN specific parameters and get the specific stats. It is deprecated in favor the nl80211 interface.") @@ -2660,7 +2660,7 @@ (define-public perf with support in the Linux kernel. perf can instrument CPU performance counters, tracepoints, kprobes, and uprobes (dynamic tracing). It is capable of lightweight profiling. This package contains the user-land tools and in -particular the 'perf' command.") +particular the @code{perf} command.") (license (package-license linux-libre)))) (define-public pflask @@ -4016,8 +4016,8 @@ (define-public module-init-tools (home-page "https://www.kernel.org/pub/linux/utils/kernel/module-init-tools/") (synopsis "Tools for loading and managing Linux kernel modules") (description - "Tools for loading and managing Linux kernel modules, such as `modprobe', -`insmod', `lsmod', and more.") + "Tools for loading and managing Linux kernel modules, such as +@code{modprobe}, @code{insmod}, @code{lsmod}, and more.") (license license:gpl2+))) (define-public mcelog diff --git a/gnu/packages/lirc.scm b/gnu/packages/lirc.scm index 627c79f979..5e77f1ddc2 100644 --- a/gnu/packages/lirc.scm +++ b/gnu/packages/lirc.scm @@ -96,10 +96,10 @@ (define-public lirc (synopsis "Linux Infrared Remote Control") (description "LIRC allows computers to send and receive IR signals of many commonly -used remote controls. The most important part of LIRC is the 'lircd' daemon -that decodes IR signals received by the device drivers. The second daemon -program 'lircmd' allows to translate IR signals to mouse movements. The -user space applications allow you to control your computer with a remote +used remote controls. The most important part of LIRC is the @code{lircd} +daemon that decodes IR signals received by the device drivers. The second +daemon program @code{lircmd} allows to translate IR signals to mouse movements. +The user space applications allow you to control your computer with a remote control: you can send X events to applications, start programs and much more on just one button press.") (license license:gpl2+))) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 87dcf36372..d92d69985b 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -1467,7 +1467,7 @@ (define-public sbcl-cl-uglify-js @item reduce variable names (usually to single letters) @item join consecutive @code{var} statements @item resolve simple binary expressions -@item group most consecutive statements using the ``sequence'' operator (comma) +@item group most consecutive statements using the @code{sequence} operator (comma) @item remove unnecessary blocks @item convert @code{IF} expressions in various ways that result in smaller code @item remove some unreachable code diff --git a/gnu/packages/mate.scm b/gnu/packages/mate.scm index 16e9148506..f02bb41cda 100644 --- a/gnu/packages/mate.scm +++ b/gnu/packages/mate.scm @@ -1148,7 +1148,7 @@ (define-public mate-netbook @item Allows you to set basic rules for a window type, such as maximise|undecorate @item Allows exceptions to the rules, based on string matching for window name and window class. -@item Allows 'reversing' of rules when the user manually changes something: +@item Allows @code{reversing} of rules when the user manually changes something: Re-decorates windows on un-maximise. @end enumerate\n") (license license:gpl3+))) diff --git a/gnu/packages/microcom.scm b/gnu/packages/microcom.scm index 67fd5fe355..3a1ec1d3cb 100644 --- a/gnu/packages/microcom.scm +++ b/gnu/packages/microcom.scm @@ -46,6 +46,6 @@ (define-public microcom (synopsis "Minimalistic serial line terminal program") (description "Microcom is a minimalistic terminal program for accessing devices via a serial connection. It features connection via RS232 serial -interfaces (including setting of transfer rates) as well as in `telnetmode' +interfaces (including setting of transfer rates) as well as in @code{telnetmode} as specified in rfc2217 and a (Linux specific) CAN mode.") (license gpl2+))) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 442796bc1d..1707dfa944 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1630,7 +1630,7 @@ (define-public bristol (home-page "http://bristol.sourceforge.net/") (synopsis "Synthesizer emulator") (description - "Bristol is an emulation package for a number of different 'classic' + "Bristol is an emulation package for a number of different @code{classic} synthesizers including additive and subtractive and a few organs. The application consists of the engine, which is called bristol, and its own GUI library called brighton that represents all the emulations. There are diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index d3deb78516..e266ea0832 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -1108,8 +1108,8 @@ (define-public perl-geo-ip (home-page "https://metacpan.org/release/Geo-IP") (synopsis "Look up location and network information by IP Address in Perl") - (description "The Perl module 'Geo::IP'. It looks up location and network -information by IP Address.") + (description "The Perl module @code{Geo::IP}. It looks up location and +network information by IP Address.") (license license:perl-license))) (define-public perl-io-socket-inet6 diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index 09f5afbb28..ec669e2e23 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -216,7 +216,7 @@ (define-public patches #:python ,python-2)) ;not compatible with Python 3 (synopsis "Patch tracking tool") (description - "'Patches' is a patch-tracking tool initially written for the QEMU + "@code{Patches} is a patch-tracking tool initially written for the QEMU project. It provides commands that build a database of patches from a mailing list, and commands that can search that database. It allows users to track the status of a patch, apply patches, and search for patches---all that from diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm index aae83e5771..a25c43cc32 100644 --- a/gnu/packages/perl-check.scm +++ b/gnu/packages/perl-check.scm @@ -801,9 +801,10 @@ (define-public perl-test-more-utf8 (home-page "https://metacpan.org/release/Test-More-UTF8") (synopsis "Enhance Test::More for UTF8-based projects") (description "@code{Test::More::UTF8} is a simple extension for the widely -used @code{Test::More} module. By default, it will do a @code{binmode ':utf8'} -on all of @code{Test::Builder}'s output handles thus enabling the easy use -flagged strings without warnings like \"Wide character in print @dots{}\"") +used @code{Test::More} module. By default, it will do a @code{binmode +@code{:utf8}} on all of @code{Test::Builder}'s output handles thus enabling the +easy use flagged strings without warnings like \"Wide character in print +@dots{}\"") (license perl-license))) (define-public perl-test-most diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 038d551fb1..ff387354e7 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1190,11 +1190,11 @@ (define-public perl-class-method-modifiers ("perl-test-requires" ,perl-test-requires))) (home-page "https://metacpan.org/release/Class-Method-Modifiers") (synopsis "Moose-like method modifiers") - (description "Class::Method::Modifiers provides three modifiers: 'before', -'around', and 'after'. 'before' and 'after' are run just before and after the -method they modify, but can not really affect that original method. 'around' -is run in place of the original method, with a hook to easily call that -original method.") + (description "Class::Method::Modifiers provides three modifiers: +@code{before}, @code{around}, and @code{after}. @code{before} and @code{after} +are run just before and after the method they modify, but can not really affect +that original method. @code{around} is run in place of the original method, +with a hook to easily call that original method.") (license (package-license perl)))) (define-public perl-class-singleton @@ -2938,7 +2938,7 @@ (define-public perl-digest-sha1 (build-system perl-build-system) (synopsis "Perl implementation of the SHA-1 message digest algorithm") (description - "This package provides 'Digest::SHA1', an implementation of the NIST + "This package provides @code{Digest::SHA1}, an implementation of the NIST SHA-1 message digest algorithm for use by Perl programs.") (home-page "https://metacpan.org/release/Digest-SHA1") (license (package-license perl)))) @@ -3481,7 +3481,7 @@ (define-public perl-file-homedir (home-page "https://metacpan.org/release/File-HomeDir") (synopsis "Find your home and other directories on any platform") (description "File::HomeDir is a module for locating the directories that -are \"owned\" by a user (typically your user) and to solve the various issues +are @code{owned} by a user (typically your user) and to solve the various issues that arise trying to find them consistently across a wide variety of platforms.") (license (package-license perl)))) @@ -4266,8 +4266,8 @@ (define-public perl-io-tty (home-page "https://metacpan.org/release/IO-Tty") (synopsis "Perl interface to pseudo ttys") (description - "This package provides the 'IO::Pty' and 'IO::Tty' Perl interfaces to -pseudo ttys.") + "This package provides the @code{IO::Pty} and @code{IO::Tty} Perl +interfaces to pseudo ttys.") (license (package-license perl)))) (define-public perl-ipc-cmd @@ -4533,7 +4533,7 @@ (define-public perl-log-any @code{Log::Any} has a very tiny footprint and no dependencies beyond Perl itself, which makes it appropriate for even small CPAN modules to use. It -defaults to 'null' logging activity, so a module can safely log without +defaults to @code{null} logging activity, so a module can safely log without worrying about whether the application has chosen (or will ever choose) a logging mechanism.") (license (package-license perl)))) @@ -4606,7 +4606,7 @@ (define-public perl-log-report-optional "This module allows libraries to have a dependency to a small module instead of the full Log-Report distribution. The full power of @code{Log::Report} is only released when the main program uses that module. -In that case, the module using the 'Optional' will also use the full +In that case, the module using the @code{Optional} will also use the full @code{Log::Report}, otherwise the dressed-down @code{Log::Report::Minimal} version.") (license (package-license perl)))) @@ -5274,7 +5274,7 @@ (define-public perl-module-pluggable (home-page "https://metacpan.org/release/Module-Pluggable") (synopsis "Give your Perl module the ability to have plugins") (description "This module provides a simple but extensible way of having -'plugins' for your Perl module.") +@code{plugins} for your Perl module.") (license (package-license perl)))) (define-public perl-module-runtime @@ -7130,7 +7130,7 @@ (define-public perl-regexp-common (build-system perl-build-system) (synopsis "Provide commonly requested regular expressions") (description - "This module exports a single hash (`%RE') that stores or generates + "This module exports a single hash (@code{%RE}) that stores or generates commonly needed regular expressions. Patterns currently provided include: balanced parentheses and brackets, delimited text (with escapes), integers and floating-point numbers in any base (up to 36), comments in 44 languages, diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 03a83022a1..413d8a822f 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5644,7 +5644,7 @@ (define-public python-backports-abc (synopsis "Backport of additions to the 'collections.abc' module") (description "Python-backports-abc provides a backport of additions to the -'collections.abc' module in Python-3.5.") +@code{collections.abc} module in Python-3.5.") (license license:psfl))) (define-public python2-backports-abc @@ -10341,12 +10341,12 @@ (define-public python-natsort (description "Natsort lets you apply natural sorting on lists instead of lexicographical. If you use the built-in @code{sorted} method in python -on a list such as @code{['a20', 'a9', 'a1', 'a4', 'a10']}, it would be -returned as @code{['a1', 'a10', 'a20', 'a4', 'a9']}. Natsort provides a -function @code{natsorted} that identifies numbers and sorts them separately -from strings. It can also sort version numbers, real numbers, mixed types -and more, and comes with a shell command @command{natsort} that exposes this -functionality in the command line.") +on a list such as @code{[@code{a20}, @code{a9}, @code{a1}, @code{a4}, +@code{a10}]}, it would be returned as @code{[@code{a1}, @code{a10}, @code{a20}, +@code{a4}, @code{a9}]}. Natsort provides a function @code{natsorted} that +identifies numbers and sorts them separately from strings. It can also sort +version numbers, real numbers, mixed types and more, and comes with a shell +command @command{natsort} that exposes this functionality in the command line.") (license license:expat) (properties `((python2-variant . ,(delay python2-natsort)))))) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index f4bd0e3f11..2ebbc29a79 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -144,7 +144,7 @@ (define (install dir) (home-page "https://github.com/ndevilla/iniparser") (synopsis "Standalone ini file parsing library") (description - "iniparser is a free stand-alone `ini' file parsing library (Windows + "iniparser is a free stand-alone @code{ini} file parsing library (Windows configuration files). It is written in portable ANSI C and should compile anywhere.") (license x11))) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 9969cad8ac..a127d5ca34 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -243,7 +243,7 @@ (define-public mlocate (home-page "https://pagure.io/mlocate") (synopsis "Locate files on the file system") (description - "mlocate is a locate/updatedb implementation. The 'm' stands for + "mlocate is a locate/updatedb implementation. The @code{m} stands for \"merging\": @code{updatedb} reuses the existing database to avoid rereading most of the file system, which makes it faster and does not trash the system caches as much. The locate(1) utility is intended to be completely compatible diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm index 55b551a119..e9e9042bd1 100644 --- a/gnu/packages/spice.scm +++ b/gnu/packages/spice.scm @@ -217,7 +217,7 @@ (define-public spice #:parallel-tests? #f)) (synopsis "Server implementation of the SPICE protocol") (description "SPICE is a remote display system built for virtual -environments which allows you to view a computing 'desktop' environment +environments which allows you to view a computing @code{desktop} environment not only on the machine where it is running, but from anywhere on the Internet and from a wide variety of machine architectures.") (home-page "https://www.spice-space.org") diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index d473c7c06d..d89a18e2b9 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus ;;; Copyright © 2015 Vicente Vera Parra ;;; Copyright © 2016 Andreas Enge -;;; Copyright © 2016, 2017 Efraim Flashner +;;; Copyright © 2016, 2017, 2019 Efraim Flashner ;;; Copyright © 2016 Pjotr Prins ;;; Copyright © 2016 Roel Janssen ;;; Copyright © 2016 Ben Woodcroft @@ -802,10 +802,10 @@ (define-public r-digest (home-page "http://dirk.eddelbuettel.com/code/digest.html") (synopsis "Create cryptographic hash digests of R objects") (description - "This package contains an implementation of a function 'digest()' for the -creation of hash digests of arbitrary R objects (using the md5, sha-1, + "This package contains an implementation of a function @code{digest()} for +the creation of hash digests of arbitrary R objects (using the md5, sha-1, sha-256, crc32, xxhash and murmurhash algorithms) permitting easy comparison -of R language objects, as well as a function 'hmac()' to create hash-based +of R language objects, as well as a function @code{hmac()} to create hash-based message authentication code. Please note that this package is not meant to be deployed for cryptographic @@ -827,7 +827,7 @@ (define-public r-estimability (home-page "https://cran.r-project.org/web/packages/estimability") (synopsis "Tools for assessing estimability of linear predictions") (description "Provides tools for determining estimability of linear -functions of regression coefficients, and 'epredict' methods that handle +functions of regression coefficients, and @code{epredict} methods that handle non-estimable cases correctly.") (license license:gpl2+))) @@ -1063,7 +1063,7 @@ (define-public r-stringr (synopsis "Simple, consistent wrappers for common string operations") (description "Stringr is a consistent, simple and easy to use set of wrappers around -the fantastic 'stringi' package. All function and argument names (and +the fantastic @code{stringi} package. All function and argument names (and positions) are consistent, all functions deal with \"NA\"'s and zero length vectors in the same way, and the output from one function is easy to feed into the input of another.") @@ -2274,9 +2274,9 @@ (define-public r-commonmark (synopsis "CommonMark and Github Markdown Rendering in R") (description "The CommonMark specification defines a rationalized version of markdown -syntax. This package uses the 'cmark' reference implementation for converting -markdown text into various formats including HTML, LaTeX and groff man. In -addition, it exposes the markdown parse tree in XML format. The latest +syntax. This package uses the @code{cmark} reference implementation for +converting markdown text into various formats including HTML, LaTeX and groff +man. In addition, it exposes the markdown parse tree in XML format. The latest version of this package also adds support for Github extensions including tables, autolinks and strikethrough text.") (license license:bsd-2))) @@ -3165,8 +3165,8 @@ (define-public r-dt (synopsis "R wrapper of the DataTables JavaScript library") (description "This package allows for data objects in R to be rendered as HTML tables -using the JavaScript library 'DataTables' (typically via R Markdown or Shiny). -The 'DataTables' library has been included in this R package.") +using the JavaScript library @code{DataTables} (typically via R Markdown or +Shiny). The @code{DataTables} library has been included in this R package.") ;; The DT package as a whole is distributed under GPLv3. The DT package ;; inludes other software components under different licenses: ;; @@ -3688,13 +3688,14 @@ (define-public r-viridislite (home-page "https://github.com/sjmgarnier/viridisLite") (synopsis "Default color maps from matplotlib") (description - "This package is a port of the new @code{matplotlib} color maps ('viridis', -'magma', 'plasma' and 'inferno') to R. matplotlib is a popular plotting -library for Python. These color maps are designed in such a way that they -will analytically be perfectly perceptually-uniform, both in regular form and -also when converted to black-and-white. They are also designed to be -perceived by readers with the most common form of color blindness. This is -the 'lite' version of the more complete @code{viridis} package.") + "This package is a port of the new @code{matplotlib} color maps +(@code{viridis}, @code{magma}, @code{plasma} and @code{inferno}) to R. +matplotlib is a popular plotting library for Python. These color maps are +designed in such a way that they will analytically be perfectly +perceptually-uniform, both in regular form and also when converted to +black-and-white. They are also designed to be perceived by readers with the +most common form of color blindness. This is the @code{lite} version of the +more complete @code{viridis} package.") (license license:expat))) (define-public r-tidyselect @@ -5528,7 +5529,7 @@ (define-public r-lubridate "This package provides functions to work with date-times and time-spans: fast and user friendly parsing of date-time data, extraction and updating of components of a date-time (years, months, days, hours, minutes, and seconds), -algebraic manipulation on date-time and time-span objects. The 'lubridate' +algebraic manipulation on date-time and time-span objects. The @code{lubridate} package has a consistent and memorable syntax that makes working with dates easy and fun.") (license license:gpl2))) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 5b29937672..579dacafef 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3416,8 +3416,8 @@ (define-public texlive-latex-changebar (description "Identify areas of text to be marked with changebars with the @code{\\cbstart} and @code{\\cbend} commands; the bars may be coloured. The -package uses 'drivers' to place the bars; the available drivers can work with -@code{dvitoln03}, @code{dvitops}, @code{dvips}, the emTeX and TeXtures DVI +package uses @code{drivers} to place the bars; the available drivers can work +with @code{dvitoln03}, @code{dvitops}, @code{dvips}, the emTeX and TeXtures DVI drivers, and VTeX and pdfTeX.") (license license:lppl))) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 667b2881b1..db096d8587 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -1366,7 +1366,7 @@ (define-public subversion (home-page "https://subversion.apache.org/") (synopsis "Revision control system") (description - "Subversion (aka. ``svn'') exists to be recognized and adopted as a + "@dfn{Subversion} (svn) exists to be recognized and adopted as a centralized version control system characterized by its reliability as a safe haven for valuable data; the simplicity of its model and usage; and its ability to support the needs of a wide variety of users and diff --git a/gnu/packages/w3m.scm b/gnu/packages/w3m.scm index b88bbd39bb..1ec07675ab 100644 --- a/gnu/packages/w3m.scm +++ b/gnu/packages/w3m.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013 Nikita Karetnikov ;;; Copyright © 2016, 2017, 2018 Leo Famulari ;;; Copyright © 2016 Kei Kebreau -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2019 Efraim Flashner ;;; Copyright © 2018 Rutger Helling ;;; ;;; This file is part of GNU Guix. @@ -76,8 +76,8 @@ (define-public w3m (home-page "http://w3m.sourceforge.net/") (synopsis "Text-mode web browser") (description - "w3m is a text-based web browser as well as a pager like 'more' or -'less'. With w3m you can browse web pages through a terminal emulator + "w3m is a text-based web browser as well as a pager like @code{more} or +@code{less}. With w3m you can browse web pages through a terminal emulator window. Moreover, w3m can be used as a text formatting tool which typesets HTML into plain text.") (license (x11-style "file://doc/README" diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index c215c1928f..6a34c1e2fd 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -10,7 +10,7 @@ ;;; Copyright © 2015 Eric Dvorsak ;;; Copyright © 2016 Sou Bunnbu ;;; Copyright © 2016 Jelle Licht -;;; Copyright © 2016, 2017, 2018 Efraim Flashner +;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner ;;; Copyright © 2016 Rene Saavedra ;;; Copyright © 2016 Ben Woodcroft ;;; Copyright © 2016 Clément Lassieur @@ -2900,7 +2900,7 @@ (define-public perl-http-parser (home-page "https://metacpan.org/release/HTTP-Parser") (synopsis "Parse HTTP/1.1 requests") (description "This is an HTTP request parser. It takes chunks of text as -received and returns a 'hint' as to what is required, or returns the +received and returns a @code{hint} as to what is required, or returns the HTTP::Request when a complete request has been read. HTTP/1.1 chunking is supported.") (license l:perl-license))) @@ -3467,7 +3467,7 @@ (define-public perl-plack-middleware-reverseproxy (synopsis "Supports app to run as a reverse proxy backend") (description "Plack::Middleware::ReverseProxy resets some HTTP headers, which are changed by reverse-proxy. You can specify the reverse proxy address -and stop fake requests using 'enable_if' directive in your app.psgi.") +and stop fake requests using @code{enable_if} directive in your app.psgi.") (license l:perl-license))) (define-public perl-plack-test-externalserver diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index a396586638..770aa9409c 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2015 Eric Dvorsak ;;; Copyright © 2016 Mathieu Lirzin ;;; Copyright © 2015 Cyrill Schenkel -;;; Copyright © 2016, 2017 Efraim Flashner +;;; Copyright © 2016, 2017, 2019 Efraim Flashner ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Alex Kost ;;; Copyright © 2016 David Craven @@ -548,7 +548,7 @@ (define-public font-alias (synopsis "Xorg font aliases") (description "This package provides some common aliases for Xorg fonts. -For example: '6x10', '9x15bold', etc.") +For example: @code{6x10}, @code{9x15bold}, etc.") (license license:x11))) @@ -1600,8 +1600,8 @@ (define-public mkfontscale (home-page "https://www.x.org/wiki/") (synopsis "Create an index of scalable font files for X server") (description - "MkFontScale creates the 'fonts.scale' and 'fonts.dir' index files used -by the legacy X11 font system.") + "MkFontScale creates the @code{fonts.scale} and @code{fonts.dir} index +files used by the legacy X11 font system.") (license license:x11))) @@ -2220,7 +2220,7 @@ (define-public xcursor-themes (synopsis "Default Xorg cursors") (description "This package provides a default set of cursor themes for the Xorg -X server: 'handhelds', 'redglass' and 'whiteglass'.") +X server: @code{handhelds}, @code{redglass} and @code{whiteglass}.") (license license:x11))) @@ -3864,7 +3864,7 @@ (define-public xkeyboard-config "xkeyboard-config provides a database for X Keyboard (XKB) Extension. There are five components that define a complete keyboard mapping: symbols, geometry, keycodes, compat, and types; these five components -can be combined together using the 'rules' component of this database.") +can be combined together using the @code{rules} component of this database.") (license license:x11))) @@ -4746,7 +4746,7 @@ (define-public mkfontdir (home-page "https://www.x.org/wiki/") (synopsis "Create an index of X font files in a directory") (description - "MkFontDir creates the 'fonts.dir' files needed by the legacy X + "MkFontDir creates the @code{fonts.dir} files needed by the legacy X server core font system. The current implementation is a simple wrapper script around the mkfontscale program.") (license license:x11))) @@ -5680,7 +5680,7 @@ (define-public xinit (description "The xinit program is used to start the X Window System server and a first client program on systems that are not using a display manager such as -xdm. This package also provides the 'startx' command, which provides a +xdm. This package also provides the @code{startx} command, which provides a user-friendly mechanism to start the X server.") (license license:x11))) From ccbaeba38ec5226f25e792062f42b0cff81893eb Mon Sep 17 00:00:00 2001 From: Brett Gilio Date: Fri, 29 Mar 2019 20:23:20 +0100 Subject: [PATCH 392/411] gnu: python-language-server: Update to 0.26.1. * gnu/packages/python-xyz.scm (python-language-server): Update to 0.26.1. Signed-off-by: Efraim Flashner --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 413d8a822f..3ebf2abaae 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -2765,14 +2765,14 @@ (define-public python-pydocstyle (define-public python-language-server (package (name "python-language-server") - (version "0.25.0") + (version "0.26.1") (source (origin (method url-fetch) (uri (pypi-uri "python-language-server" version)) (sha256 (base32 - "1xabnaqd4n72myrc3mxl2y33vr2p7c9c5a87n77p9k327ckvdx01")))) + "1vs9ckfmm534n1hq3m871916wsjvi5h4gyj6wlzg13ck6506lx0s")))) (build-system python-build-system) (propagated-inputs `(("python-pluggy" ,python-pluggy) From d7d3bdca890e1a39c7e3dde3fe11dad9e14cf875 Mon Sep 17 00:00:00 2001 From: Ivan Petkov Date: Fri, 29 Mar 2019 00:46:10 +0100 Subject: [PATCH 393/411] gnu: rust: Update to 1.32.0. * gnu/packages/rust.scm (rust): Rename to... (rust-1.31): ...this. (rust): New variable. Signed-off-by: Danny Milosavljevic --- gnu/packages/rust.scm | 65 +++++++++++++++++++++++++++++++++++++++---- 1 file changed, 59 insertions(+), 6 deletions(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 5151cacd42..63426a12fc 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -882,10 +882,10 @@ (define-public rust-1.30 (replace 'disable-amd64-avx-test (lambda _ (substitute* "src/test/ui/run-pass/issues/issue-44056.rs" - (("only-x86_64") "ignore-test")) + (("only-x86_64") "ignore-test")) #t))))))))) -(define-public rust +(define-public rust-1.31 (let ((base-rust (rust-bootstrapped-package-pre-1.32 rust-1.30 "1.31.1" "0sk84ff0cklybcp0jbbxcw7lk7mrm6kb6km5nzd6m64dy0igrlli" @@ -914,10 +914,10 @@ (define-public rust ((" Command::new\\(\"echo\"\\)") (string-append "\nCommand::new(\"" coreutils "/bin/echo\")\n"))) #t))) - ;; The test has been moved elsewhere. - (replace 'disable-amd64-avx-test - (lambda _ - (substitute* "src/test/ui/issues/issue-44056.rs" + ;; The test has been moved elsewhere. + (replace 'disable-amd64-avx-test + (lambda _ + (substitute* "src/test/ui/issues/issue-44056.rs" (("only-x86_64") "ignore-test")) #t)) (add-after 'patch-tests 'patch-process-docs-rev-cmd @@ -927,3 +927,56 @@ (define-public rust (substitute* "src/libstd/process.rs" (("```rust") "```rust,no_run")) #t))))))))) + +(define-public rust + (let ((base-rust + (rust-bootstrapped-package rust-1.31 "1.32.0" + "0ji2l9xv53y27xy72qagggvq47gayr5lcv2jwvmfirx029vlqnac" + #:patches '("rust-reproducible-builds.patch") + ;; the vendor directory has moved to the root of + ;; the tarball, so we have to strip an extra prefix + #:patch-flags '("-p2")))) + (package + (inherit base-rust) + (inputs + ;; Downgrade to LLVM 6, all LTO tests appear to fail with LLVM 7.0.1 + (alist-replace "llvm" (list llvm-6) + (package-inputs base-rust))) + (arguments + (substitute-keyword-arguments (package-arguments base-rust) + ((#:phases phases) + `(modify-phases ,phases + ;; Cargo.lock and the vendor/ directory have been moved to the + ;; root of the rust tarball + (replace 'patch-cargo-checksums + (lambda* _ + (substitute* "Cargo.lock" + (("(\"checksum .* = )\".*\"" all name) + (string-append name "\"" ,%cargo-reference-hash "\""))) + (for-each + (lambda (filename) + (use-modules (guix build cargo-utils)) + (delete-file filename) + (let* ((dir (dirname filename))) + (display (string-append + "patch-cargo-checksums: generate-checksums for " + dir "\n")) + (generate-checksums dir ,%cargo-reference-project-file))) + (find-files "vendor" ".cargo-checksum.json")) + #t)) + (add-after 'enable-codegen-tests 'override-jemalloc + (lambda* (#:key inputs #:allow-other-keys) + ;; The compiler is no longer directly built against jemalloc, + ;; but rather via the jemalloc-sys crate (which vendors the + ;; jemalloc source). To use jemalloc we must enable linking to + ;; it (otherwise it would use the system allocator), and set + ;; an environment variable pointing to the compiled jemalloc. + (substitute* "config.toml" + (("^jemalloc =.*$") "") + (("[[]rust[]]") "\n[rust]\njemalloc=true\n")) + (setenv "JEMALLOC_OVERRIDE" (string-append (assoc-ref inputs "jemalloc") + "/lib/libjemalloc_pic.a")) + #t)) + ;; Remove no longer relevant steps + (delete 'remove-flaky-test) + (delete 'patch-aarch64-test)))))))) From e73ded3c71527412944bb9a97916a096742f695d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 25 Mar 2019 00:17:41 +0100 Subject: [PATCH 394/411] services: Open vSwitch: Provide a default configuration. * gnu/services/networking.scm (openvswitch-service-type): Provide OPENVSWITCH-CONFIGURATION as a default value. * gnu/tests/networking.scm (%openvswitch-os): Don't configure the service. --- gnu/services/networking.scm | 3 ++- gnu/tests/networking.scm | 4 +--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm index cab129e0c3..5fbbf25789 100644 --- a/gnu/services/networking.scm +++ b/gnu/services/networking.scm @@ -1154,7 +1154,8 @@ (define openvswitch-service-type (description "Run @uref{http://www.openvswitch.org, Open vSwitch}, a multilayer virtual switch designed to enable massive network automation through programmatic -extension."))) +extension.") + (default-value (openvswitch-configuration)))) ;;; ;;; iptables diff --git a/gnu/tests/networking.scm b/gnu/tests/networking.scm index a97b29bc4b..d1234442bb 100644 --- a/gnu/tests/networking.scm +++ b/gnu/tests/networking.scm @@ -178,9 +178,7 @@ (define %openvswitch-os (static-networking-service "ovs0" "10.1.1.1" #:netmask "255.255.255.252" #:requirement '(openvswitch-configuration)) - (service openvswitch-service-type - (openvswitch-configuration - (package openvswitch))) + (service openvswitch-service-type) openvswitch-configuration-service)) (define (run-openvswitch-test) From ad7c77fd7518fcd0671f6e13f6afbebf4c7435c9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:16:02 +0200 Subject: [PATCH 395/411] gnu: leveldb: Don't use unstable tarball. * gnu/packages/databases.scm (leveldb)[source]: Use GIT-FETCH. --- gnu/packages/databases.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 3551be5596..301aab2406 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -241,13 +241,14 @@ (define-public leveldb (name "leveldb") (version "1.20") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/google/leveldb" - "/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/google/leveldb") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0r36bcrj6b2afsp4aw1gjai3jbs1c7734pxpc1jz7hh9nasyiazm")))) + "01kxga1hv4wp94agx5vl3ybxfw5klqrdsrb6p6ywvnjmjxm8322y")))) (build-system gnu-build-system) (arguments '(#:make-flags (list "CC=gcc") From 5cc013f05d6dc1042e68d864e2938c2ffbc77871 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:17:18 +0200 Subject: [PATCH 396/411] gnu: leveldb: Update to 1.21. * gnu/packages/databases.scm (leveldb): Update to 1.21. [build-system]: Change to CMAKE-BUILD-SYSTEM. [arguments]: Adjust accordingly. --- gnu/packages/databases.scm | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 301aab2406..1fc6ababe4 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -239,33 +239,19 @@ (define-public es-dump-restore (define-public leveldb (package (name "leveldb") - (version "1.20") + (version "1.21") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/google/leveldb") - (commit (string-append "v" version)))) + (commit version))) (file-name (git-file-name name version)) (sha256 (base32 - "01kxga1hv4wp94agx5vl3ybxfw5klqrdsrb6p6ywvnjmjxm8322y")))) - (build-system gnu-build-system) + "00v0w6883z7a6204894j59nd5v6dazn3c8hvh3sbczv4wiabppw2")))) + (build-system cmake-build-system) (arguments - '(#:make-flags (list "CC=gcc") - #:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'install - ;; There is no install target, so we do it here. - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (lib (string-append out "/lib")) - (include (string-append out "/include"))) - (for-each (lambda (file) - (install-file file lib)) - (find-files "out-shared" "^libleveldb\\.so.*$")) - (copy-recursively "include" include) - #t)))))) + `(#:configure-flags '("-DBUILD_SHARED_LIBS=ON" "-DLEVELDB_BUILD_TESTS=ON"))) (inputs `(("snappy" ,snappy))) (home-page "http://leveldb.org/") From 5089ebc3a398e93c213edcc2998c9ac075c5bd9d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:25:13 +0200 Subject: [PATCH 397/411] gnu: GnuPG: Update to 2.2.15. * gnu/packages/gnupg.scm (gnupg): Update to 2.2.15. --- gnu/packages/gnupg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 22ae435a83..0795be3619 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -224,14 +224,14 @@ (define-public npth (define-public gnupg (package (name "gnupg") - (version "2.2.14") + (version "2.2.15") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "0yzqrg24j9fc4f8ss5pclyvg70a9z53sv89vl77xii8yvi3fvy8v")))) + "0m6lyphbb20i84isdxzfhcbzyc682hdrdv4aqkzmhrdksycf536b")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From 32deef23f64297f4edb8ac47e9a5b754ece8ee2b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:28:27 +0200 Subject: [PATCH 398/411] gnu: libssh2: Update to 1.8.2. * gnu/packages/ssh.scm (libssh2): Update to 1.8.2. --- gnu/packages/ssh.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 1ea8634021..abbc0dad89 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -111,7 +111,7 @@ (define-public libssh (define-public libssh2 (package (name "libssh2") - (version "1.8.1") + (version "1.8.2") (source (origin (method url-fetch) (uri (string-append @@ -119,7 +119,7 @@ (define-public libssh2 version ".tar.gz")) (sha256 (base32 - "0ngif3ynk6xqzy5nlfjs7bsmfm81g9f145av0z86kf0vbgrigda0")) + "0rqd37pc80nm2pz4sa2m9pfc48axys7jwq1l7z0vii5nyvchg0q8")) (patches (search-patches "libssh2-fix-build-failure-with-gcrypt.patch")))) (build-system gnu-build-system) From 4f0464c92387780b461b79cd053257e190b2b735 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:31:03 +0200 Subject: [PATCH 399/411] gnu: whois: Update to 5.4.2. * gnu/packages/networking.scm (whois): Update to 5.4.2. --- gnu/packages/networking.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index e266ea0832..46aed1e549 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -547,7 +547,7 @@ (define-public iodine (define-public whois (package (name "whois") - (version "5.4.1") + (version "5.4.2") (source (origin (method url-fetch) @@ -555,7 +555,7 @@ (define-public whois name "_" version ".tar.xz")) (sha256 (base32 - "0l7chmlvsl22r5cfm6fpm999z2n3sjrnx3ha8f8kf42cn4gmkriy")))) + "0mqzs0g2qxd29ihammisg9qf4503sr7d4zas26zjz4an78xkmqzf")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no test suite From 3b3fd903778b098c4094f9146b3be7fe9d63d056 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:33:07 +0200 Subject: [PATCH 400/411] gnu: elogind: Update to 241.2. * gnu/packages/freedesktop.scm (elogind): Update to 241.2. --- gnu/packages/freedesktop.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index bc91696dbc..56aeca0478 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -230,7 +230,7 @@ (define-public libxdg-basedir (define-public elogind (package (name "elogind") - (version "241.1") + (version "241.2") (source (origin (method git-fetch) (uri (git-reference @@ -239,7 +239,7 @@ (define-public elogind (file-name (git-file-name name version)) (sha256 (base32 - "0a4irq4ycps3xcizjjr0gz3j46dyqvcwa4ncinpqpqlasi8l18nk")))) + "1ragysp4kh1vj3zpz1aprh5h4k3hmp3i5q55pimpabdpkdfbv2fc")))) (build-system meson-build-system) (arguments `(#:configure-flags From fa542ee48a77942023a65c5b167c2474664bd801 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:35:42 +0200 Subject: [PATCH 401/411] gnu: ffmpeg@3.4: Update to 3.4.6. * gnu/packages/video.scm (ffmpeg-3.4): Update to 3.4.6. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 55a1931530..19ed950401 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -935,14 +935,14 @@ (define-public ffmpeg (define-public ffmpeg-3.4 (package (inherit ffmpeg) - (version "3.4.5") + (version "3.4.6") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "0b59qk5wpc5ksiha76jbhb859g5gxa4w0k6afh3kgvgajiivs73l")))) + "0gmqbhg5jjcfanrxrl657zn12lzz73sfs8xwryfy7n9rn6f2fwim")))) (arguments (substitute-keyword-arguments (package-arguments ffmpeg) ((#:configure-flags flags) From 1e3c711923a1866fd9c211099bcdece98226b5b8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:41:54 +0200 Subject: [PATCH 402/411] gnu: python-markdown: Update to 3.1. * gnu/packages/python-xyz.scm (python-markdown): Update to 3.1. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3ebf2abaae..2d84059bc8 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -6075,14 +6075,14 @@ (define-public python2-mistune (define-public python-markdown (package (name "python-markdown") - (version "3.0.1") + (version "3.1") (source (origin (method url-fetch) (uri (pypi-uri "Markdown" version)) (sha256 (base32 - "0z6v8649sr434d5r5zmrhydka7v7f9yas4bwcgkcs0650jdhybnh")))) + "0l62x154r9mgdvfap06gf0nkrmjd7xixlfshsxcdif2nlrlnyjpw")))) (build-system python-build-system) (native-inputs `(("python-nose" ,python-nose) From ee74a0766877c2f15eb078b2bda6ba12a741b4f7 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:48:43 +0200 Subject: [PATCH 403/411] gnu: pcsc-lite: Update to 1.8.25. * gnu/packages/security-token.scm (pcsc-lite): Update to 1.8.25. --- gnu/packages/security-token.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm index ba5bb5b4c6..29d691dd31 100644 --- a/gnu/packages/security-token.scm +++ b/gnu/packages/security-token.scm @@ -161,7 +161,7 @@ (define-public libyubikey (define-public pcsc-lite (package (name "pcsc-lite") - (version "1.8.24") + (version "1.8.25") (source (origin (method url-fetch) (uri (string-append @@ -169,7 +169,7 @@ (define-public pcsc-lite name "-" version ".tar.bz2")) (sha256 (base32 - "0s3mv6csbi9303vvis0hilm71xsmi6cqkbh2kiipdisydbx6865q")))) + "14l7irs1nsh8b036ag4cfy8wryyysch78scz5dw6xxqwqgnpjvfp")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--enable-usbdropdir=/var/lib/pcsc/drivers" From a02d390357fc6aab051693d8a3d1c0d0dd848f50 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:51:33 +0200 Subject: [PATCH 404/411] gnu: mbedtls-apache: Update to 2.16.1. * gnu/packages/tls.scm (mbedtls-apache): Update to 2.16.1. --- gnu/packages/tls.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 9e3020be3f..c0b92bab04 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -837,7 +837,7 @@ (define-public acme-client (define-public mbedtls-apache (package (name "mbedtls-apache") - (version "2.16.0") + (version "2.16.1") (source (origin (method url-fetch) @@ -847,7 +847,7 @@ (define-public mbedtls-apache version "-apache.tgz")) (sha256 (base32 - "1qlscr0m97favkqmrlj90rlgw40h8lcypxz0snvr1iwkj1pbbnp3")))) + "08zz88gcb2jmpfsgy5b6qc3li6l39yw1dbimd18aziyd889nvl7b")))) (build-system cmake-build-system) (arguments `(#:configure-flags From 3725865f8448b76f4573eda8dc62214a1350761b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 16:57:37 +0200 Subject: [PATCH 405/411] gnu: SDDM: Update to 0.18.1. * gnu/packages/display-managers.scm (sddm): Update to 0.18.1. --- gnu/packages/display-managers.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm index 502cdde7da..afe5cc2b7b 100644 --- a/gnu/packages/display-managers.scm +++ b/gnu/packages/display-managers.scm @@ -134,7 +134,7 @@ (define-public greenisland (define-public sddm (package (name "sddm") - (version "0.18.0") + (version "0.18.1") (source (origin (method url-fetch) (uri (string-append @@ -143,7 +143,7 @@ (define-public sddm "sddm-" version ".tar.xz")) (sha256 (base32 - "0icyi9nqgbp2v6dwh3n3jzff9jv2xy8d4rbsz89hd65x7c3hrv87")))) + "0nilrhwlyvkngjgxfc08n73c16azgmw80pvx0a78xqww9y3hv4xh")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) From 799aebd71f23f8b5af6a7e7a26321bc5c9bddbb6 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 17:57:48 +0200 Subject: [PATCH 406/411] gnu: ungoogled-chromium: Enable VA-API on x86_64-linux only. * gnu/packages/chromium.scm (ungoogled-chromium)[arguments]: Conditionally add "use_vaapi" to #:configure-flags. --- gnu/packages/chromium.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm index 7d49b06ce3..cc968cb5ca 100644 --- a/gnu/packages/chromium.scm +++ b/gnu/packages/chromium.scm @@ -427,7 +427,12 @@ (define-public ungoogled-chromium "use_openh264=true" "use_pulseaudio=true" "link_pulseaudio=true" - "use_vaapi=true" + + ;; VA-API acceleration is currently only supported on x86_64-linux. + ,@(if (string-prefix? "x86_64" (or (%current-target-system) + (%current-system))) + '("use_vaapi=true") + '()) ;; Don't arbitrarily restrict formats supported by system ffmpeg. "proprietary_codecs=true" From 105fa9fcf734706dfb2ec23191da53cee3f998ed Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 31 Mar 2019 20:55:47 +0200 Subject: [PATCH 407/411] gnu: ungoogled-chromium: Update to 73.0.3683.86-0.4c7fb6d [security fixes]. The update to Chromium 73 includes more than 60 security fixes. See the release announcement for more information: . * gnu/packages/chromium.scm (%preserved-third-party-files): Drop "net/third_party/http2" and "net/third_party/spdy". Add "v8/src/third_party/siphash". (%chromium-version): Update to 73.0.3683.86. (%ungoogled-revision): Update to 4c7fb6d1a86602999f30b58ef8b331b2115c5ad8. (%debian-revision): New variable. (ungoogled-chromium-source): Add an origin for Debians packaging scripts. Adjust for Ungoogled refactoring and add a procedure for applying Debian patches. Replace unneeded LET* for LET and reindent. (ungoogled-chromium)[arguments]: Remove one obsolete substitution, add two others. --- gnu/packages/chromium.scm | 146 ++++++++++++++++++++++++-------------- 1 file changed, 92 insertions(+), 54 deletions(-) diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm index cc968cb5ca..2678e49ca7 100644 --- a/gnu/packages/chromium.scm +++ b/gnu/packages/chromium.scm @@ -80,11 +80,9 @@ (define %preserved-third-party-files "chrome/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+ "courgette/third_party/bsdiff" ;BSD-2, BSD protection license "courgette/third_party/divsufsort" ;Expat - "net/third_party/http2" ;BSD-3 "net/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+ "net/third_party/nss" ;MPL-2.0 "net/third_party/quic" ;BSD-3 - "net/third_party/spdy" ;BSD-3 "net/third_party/uri_template" ;ASL2.0 "third_party/abseil-cpp" ;ASL2.0 "third_party/adobe/flash/flapper_version.h" ;no license, trivial @@ -206,6 +204,7 @@ (define %preserved-third-party-files "third_party/yasm/run_yasm.py" ;BSD-2 or BSD-3 "third_party/zlib/google" ;BSD-3 "url/third_party/mozilla" ;BSD-3, MPL1.1/GPL2+/LGPL2.1+ + "v8/src/third_party/siphash" ;Public domain "v8/src/third_party/utf8-decoder" ;Expat "v8/src/third_party/valgrind" ;BSD-4 "v8/third_party/inspector_protocol" ;BSD-3 @@ -224,8 +223,9 @@ (define* (computed-origin-method gexp-promise hash-algo hash #:system system #:guile-for-build guile))) -(define %chromium-version "72.0.3626.121") -(define %ungoogled-revision "a80839c418de8843dfcd6c13a557f12d26a0a17a") +(define %chromium-version "73.0.3683.86") +(define %ungoogled-revision "4c7fb6d1a86602999f30b58ef8b331b2115c5ad8") +(define %debian-revision "debian/73.0.3683.75-1") (define package-revision "0") (define %package-version (string-append %chromium-version "-" @@ -233,29 +233,43 @@ (define %package-version (string-append %chromium-version "-" (string-take %ungoogled-revision 7))) ;; This is a "computed" origin that does the following: -;; 1) Runs the Ungoogled scripts on a pristine Chromium tarball. -;; 2) Prunes all third_party folders that are not explicitly preserved. -;; 3) Adjusts "GN" build files such that system libraries are preferred. +;; *) Runs the Ungoogled scripts on a pristine Chromium tarball. +;; *) Applies Debians Chromium patches, for their unbundling and GCC work. +;; *) Prunes all third_party directories that are not explicitly preserved. +;; *) Adjusts "GN" build files such that system libraries are preferred. (define ungoogled-chromium-source - (let* ((chromium-source - (origin - (method url-fetch) - (uri (string-append "https://commondatastorage.googleapis.com" - "/chromium-browser-official/chromium-" - %chromium-version ".tar.xz")) - (sha256 - (base32 - "07xwmlvmzfga61nrimqmzl7s29jb4kc94nkzwwlb7sh6nr55a7jc")))) - (ungoogled-source - (origin - (method git-fetch) - (uri (git-reference (url "https://github.com/Eloston/ungoogled-chromium") - (commit %ungoogled-revision))) - (file-name (git-file-name "ungoogled-chromium" - (string-take %ungoogled-revision 7))) - (sha256 - (base32 - "0rgirbxbgjdm3s2kzgj101rjq0clr7x2a7b37kfx2q629z4qlrpc"))))) + (let ((chromium-source + (origin + (method url-fetch) + (uri (string-append "https://commondatastorage.googleapis.com" + "/chromium-browser-official/chromium-" + %chromium-version ".tar.xz")) + (sha256 + (base32 + "18xzddqi8rgng5vksx23jaiv103prxc38pshwp702nfjfqap7fwy")))) + (ungoogled-source + (origin + (method git-fetch) + (uri (git-reference (url "https://github.com/Eloston/ungoogled-chromium") + (commit %ungoogled-revision))) + (file-name (git-file-name "ungoogled-chromium" + (string-take %ungoogled-revision 7))) + (sha256 + (base32 + "0njx505il07d237fzgbhciy78rz7h77r2ai5crbnsx2gdr9kpvd1")))) + (debian-source + (origin + (method git-fetch) + (uri (git-reference + (url "https://salsa.debian.org/chromium-team/chromium.git") + (commit %debian-revision))) + (file-name (git-file-name "debian-chromium-packaging" + (if (string-prefix? "debian/" %debian-revision) + (cadr (string-split %debian-revision #\/)) + (string-take %debian-revision 7)))) + (sha256 + (base32 + "1pq0l3m7frf9ygxc1gva1191fxf3d1phaaqp7g3b70mgbabp0mxi"))))) (origin (method computed-origin-method) @@ -265,7 +279,10 @@ (define ungoogled-chromium-source (delay (with-imported-modules '((guix build utils)) #~(begin - (use-modules (guix build utils)) + (use-modules (guix build utils) + (ice-9 rdelim) + (srfi srfi-1) + (srfi srfi-26)) (let ((chromium-dir (string-append "chromium-" #$%chromium-version)) (preserved-files (list #$@%preserved-third-party-files))) @@ -281,41 +298,61 @@ (define ungoogled-chromium-source (with-directory-excursion "/tmp/ungoogled" - ;; Create a custom "bundle" that inherits from linux_rooted - ;; and adds an additional patch. - (format #t "Creating Guix config bundle...~%") - (force-output) - (mkdir-p "config_bundles/guix") - (call-with-output-file "config_bundles/guix/bundlemeta.ini" - (lambda (port) - (format port - "[bundle] -display_name = GNU Guix -depends = linux_rooted\n"))) - (call-with-output-file "config_bundles/guix/patch_order.list" - (lambda (port) - (format port "debian_buster/system/openjpeg.patch\n"))) - (format #t "Unpacking chromium tarball...~%") (force-output) (invoke "tar" "xf" #+chromium-source) (format #t "Ungooglifying...~%") (force-output) - (invoke "python3" "run_buildkit_cli.py" "prune" - "-b" "config_bundles/guix" chromium-dir) - (invoke "python3" "run_buildkit_cli.py" "patches" "apply" - "-b" "config_bundles/guix" chromium-dir) - (invoke "python3" "run_buildkit_cli.py" "domains" "apply" - "-b" "config_bundles/linux_rooted" + (invoke "python3" "utils/prune_binaries.py" chromium-dir + "pruning.list") + (invoke "python3" "utils/patches.py" "apply" + chromium-dir "patches") + (invoke "python3" "utils/domain_substitution.py" "apply" "-r" + "domain_regex.list" "-f" "domain_substitution.list" "-c" "/tmp/domainscache.tar.gz" chromium-dir) (with-directory-excursion chromium-dir + + (format #t "applying Debian patches...~%") + (force-output) + (let* ((debian #+debian-source) + (patches (string-append debian "/debian/patches")) + (series (string-append patches "/series")) + (grep-q (lambda (query file) + (with-input-from-file file + (lambda () + (let loop ((line (read-line)) + (match #f)) + (if (or match (eof-object? line)) + (if match #t #f) + (loop (read-line) + (string-contains line query))))))))) + (with-input-from-file series + (lambda () + (let loop ((line (read-line))) + (unless (eof-object? line) + (when (and (> (string-length line) 1) + ;; Skip the Debian-specific ones. + (not (string-prefix? "debianization/" line)) + ;; And those that conflict with Ungoogled. + (not (any (cute string-suffix? <> line) + '("widevine-buildflag.patch" + "signin.patch" + "third-party-cookies.patch"))) + ;; Ungoogled includes a subset of the Debian + ;; patches. Exclude those already present. + (not (grep-q line "../patches/series"))) + (invoke "patch" "--force" "-p1" "--input" + (string-append patches "/" line) + "--no-backup-if-mismatch")) + (loop (read-line))))))) + (format #t "Pruning third party files...~%") (force-output) (apply invoke "python" - "build/linux/unbundle/remove_bundled_libraries.py" - "--do-remove" preserved-files) + "build/linux/unbundle/remove_bundled_libraries.py" + "--do-remove" preserved-files) (format #t "Replacing GN files...~%") (force-output) @@ -507,12 +544,13 @@ (define-public ungoogled-chromium (substitute* "third_party/webrtc/rtc_base/strings/json.h" (("#include \"third_party/jsoncpp/") "#include \"json/")) - (substitute* "media/base/decode_capabilities.cc" - (("third_party/libvpx/source/libvpx/") "")) - - (substitute* "ui/gfx/skia_util.h" + (substitute* '("ui/gfx/skia_util.h" + "components/viz/common/resources/resource_format_utils.h") (("third_party/vulkan/include/") "")) + (substitute* "third_party/skia/include/gpu/vk/GrVkVulkan.h" + (("\\.\\./\\.\\./include/third_party/vulkan/") "")) + ;; Building chromedriver embeds some files using the ZIP ;; format which doesn't support timestamps before ;; 1980. Therefore, advance the timestamps of the files From 631a6e63777dd2e08fe5bdc75908e6c030abcd1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 31 Mar 2019 23:13:51 +0200 Subject: [PATCH 408/411] doc: Document 'gdm-service-type'. * doc/guix.texi (X Window): Document 'gdm-service-type' and 'gdm-configuration'. Take description of '.desktop' files from the 'slim-service-type' description. * gnu/services/xorg.scm (gdm-service): Remove outdated comment. --- doc/guix.texi | 52 ++++++++++++++++++++++++++++++++++++------- gnu/services/xorg.scm | 3 --- 2 files changed, 44 insertions(+), 11 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 527f9bcd10..616970b505 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -13304,23 +13304,59 @@ example the @code{windowmaker} or @code{openbox} packages---preferably by adding it to the @code{packages} field of your operating system definition (@pxref{operating-system Reference, system-wide packages}). -@defvr {Scheme Variable} slim-service-type -This is the type for the SLiM graphical login manager for X11. +@defvr {Scheme Variable} gdm-service-type +This is the type for the @uref{https://wiki.gnome.org/Projects/GDM/, GNOME +Desktop Manager} (GDM), a program that manages graphical display servers and +handles graphical user logins. Its value must be a @code{gdm-configuration} +(see below.) @cindex session types (X11) @cindex X11 session types -SLiM looks for @dfn{session types} described by the @file{.desktop} files in -@file{/run/current-system/profile/share/xsessions} and allows users to -choose a session from the log-in screen using @kbd{F1}. Packages such -as @code{xfce}, @code{sawfish}, and @code{ratpoison} provide -@file{.desktop} files; adding them to the system-wide set of packages -automatically makes them available at the log-in screen. +GDM looks for @dfn{session types} described by the @file{.desktop} files in +@file{/run/current-system/profile/share/xsessions} and allows users to choose +a session from the log-in screen. Packages such as @code{gnome}, @code{xfce}, +and @code{i3} provide @file{.desktop} files; adding them to the system-wide +set of packages automatically makes them available at the log-in screen. In addition, @file{~/.xsession} files are honored. When available, @file{~/.xsession} must be an executable that starts a window manager and/or other X clients. @end defvr +@deftp {Data Type} gdm-configuration +@table @asis +@item @code{auto-login?} (default: @code{#f}) +@itemx @code{default-user} (default: @code{#f}) +When @code{auto-login?} is false, GDM presents a log-in screen. + +When @code{auto-login?} is true, GDM logs in directly as +@code{default-user}. + +@item @code{gnome-shell-assets} (default: ...) +List of GNOME Shell assets needed by GDM: icon theme, fonts, etc. + +@item @code{xorg-configuration} (default: @code{(xorg-configuration)}) +Configuration of the Xorg graphical server. + +@item @code{xsession} (default: @code{(xinitrc)}) +Script to run before starting a X session. + +@item @code{dbus-daemon} (default: @code{dbus-daemon-wrapper}) +File name of the @code{dbus-daemon} executable. + +@item @code{gdm} (default: @code{gdm}) +The GDM package to use. +@end table +@end deftp + +@defvr {Scheme Variable} slim-service-type +This is the type for the SLiM graphical login manager for X11. + +Like GDM, SLiM looks for session types described by @file{.desktop} files and +allows users to choose a session from the log-in screen using @kbd{F1}. It +also honors @file{~/.xsession} files. +@end defvr + @deftp {Data Type} slim-configuration Data type representing the configuration of @code{slim-service-type}. diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index f047b8a043..6cbd1fd722 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -791,9 +791,6 @@ (define gdm-service-type "Run the GNOME Desktop Manager (GDM), a program that allows you to log in in a graphical session, whether or not you use GNOME."))) -;; This service isn't working yet; it gets as far as starting to run the -;; greeter from gnome-shell but doesn't get any further. It is here because -;; it doesn't hurt anyone and perhaps it inspires someone to fix it :) (define-deprecated (gdm-service #:key (gdm gdm) (allow-empty-passwords? #t) (x-server (xorg-wrapper))) From bab7a49558e28388d064063ae674117ca4a964df Mon Sep 17 00:00:00 2001 From: Tim Gesthuizen Date: Tue, 26 Mar 2019 20:52:50 +0100 Subject: [PATCH 409/411] services: slim-configuration: Adapt exported getter methods. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Commit 554b8607396785dcde6eb391f75f98a07ec582fd introduces changes to the slim-configuration record without updating the exported methods. * gnu/services/xorg.scm: Export slim-configuration-xorg and slim-configuration-sessreg. Signed-off-by: Ludovic Courtès --- gnu/services/xorg.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index 6cbd1fd722..29c7f30013 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015 Sou Bunnbu ;;; Copyright © 2018, 2019 Timothy Sample ;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen +;;; Copyright © 2019 Tim Gesthuizen ;;; ;;; This file is part of GNU Guix. ;;; @@ -79,7 +80,8 @@ (define-module (gnu services xorg) slim-configuration-xauth slim-configuration-shepherd slim-configuration-auto-login-session - slim-configuration-startx + slim-configuration-xorg + slim-configuration-sessreg slim-service-type slim-service From 7a352f76cfed0236eadf507debe1059f256653a4 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Tue, 26 Mar 2019 21:41:59 +0000 Subject: [PATCH 410/411] gnu: gpodder: Build reproducibly. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gpodder.scm (gpodder)[arguments]: Add 'do-not-run-msgmerge' phase before 'install'. Signed-off-by: Ludovic Courtès --- gnu/packages/gpodder.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm index ea1a3108ca..badb7f867f 100644 --- a/gnu/packages/gpodder.scm +++ b/gnu/packages/gpodder.scm @@ -69,6 +69,13 @@ (define-public gpodder (substitute* "src/gpodder/util.py" (("xdg-open") (string-append xdg-utils "/bin/xdg-open"))) #t))) + ;; 'msgmerge' introduces non-determinism by resetting the + ;; POT-Creation-Date in .po files. + (add-before 'install 'do-not-run-msgmerge + (lambda _ + (substitute* "makefile" + (("msgmerge") "true")) + #t)) (add-before 'install 'make-po-files-writable (lambda _ (for-each From f125c5a5ea03d53749f45d310694b79241d5888d Mon Sep 17 00:00:00 2001 From: Brian Leung Date: Wed, 27 Mar 2019 21:41:58 +0100 Subject: [PATCH 411/411] gnu: emacs-zones: silence byte-compiler. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/patches/emacs-zones-called-interactively.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/emacs-xyz.scm | 5 ++- .../emacs-zones-called-interactively.patch | 43 +++++++++++++++++++ 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/emacs-zones-called-interactively.patch diff --git a/gnu/local.mk b/gnu/local.mk index e32b0298e1..45598d4e14 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -745,6 +745,7 @@ dist_patch_DATA = \ %D%/packages/patches/emacs-source-date-epoch.patch \ %D%/packages/patches/emacs-realgud-fix-configure-ac.patch \ %D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \ + %D%/packages/patches/emacs-zones-called-interactively.patch \ %D%/packages/patches/enlightenment-fix-setuid-path.patch \ %D%/packages/patches/erlang-man-path.patch \ %D%/packages/patches/eudev-rules-directory.patch \ diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index df5e2cf21e..1e8d703ce3 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -6037,7 +6037,10 @@ (define-public emacs-zones (file-name (git-file-name name version)) (sha256 (base32 - "0gwnw2giii2a14nlh62xp45f47cw6ikqphhzpmcw6c7mn9x5z2ar")))) + "0gwnw2giii2a14nlh62xp45f47cw6ikqphhzpmcw6c7mn9x5z2ar")) + (patches + (search-patches + "emacs-zones-called-interactively.patch")))) (build-system emacs-build-system) (home-page "https://www.emacswiki.org/emacs/Zones") (synopsis "Define and act on multiple zones of buffer text") diff --git a/gnu/packages/patches/emacs-zones-called-interactively.patch b/gnu/packages/patches/emacs-zones-called-interactively.patch new file mode 100644 index 0000000000..b60f390a7e --- /dev/null +++ b/gnu/packages/patches/emacs-zones-called-interactively.patch @@ -0,0 +1,43 @@ +From fb56fbb706804215ef9af0cc575db97c373046c6 Mon Sep 17 00:00:00 2001 +From: Brian Leung +Date: Sun, 17 Mar 2019 01:32:04 +0100 +Subject: [PATCH] This patch silences the byte-compiler. + +--- + zones.el | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/zones.el b/zones.el +index 1bf94f0..94fa9a6 100644 +--- a/zones.el ++++ b/zones.el +@@ -1031,7 +1031,7 @@ You can use `C-x n x' to widen to a previous buffer restriction. + + This is a destructive operation. The list structure of the variable + value can be modified." +- (zz-narrow-advice (interactive-p))) ++ (zz-narrow-advice (called-interactively-p))) + + (defadvice narrow-to-defun (after zz-add-zone--defun activate) + "Push the defun limits to the current `zz-izones-var'. +@@ -1039,7 +1039,7 @@ You can use `C-x n x' to widen to a previous buffer restriction. + + This is a destructive operation. The list structure of the variable + value can be modified." +- (zz-narrow-advice (interactive-p))) ++ (zz-narrow-advice (called-interactively-p))) + + ;; Call `zz-add-zone' if interactive or `zz-add-zone-anyway-p'. + ;; +@@ -1049,7 +1049,7 @@ You can use `C-x n x' to widen to a previous buffer restriction. + + This is a destructive operation. The list structure of the variable + value can be modified." +- (zz-narrow-advice (interactive-p))) ++ (zz-narrow-advice (called-interactively-p))) + + ;;(@* "General Commands") + +-- +2.21.0 +