From 5f5ff266e594948b02005ae46d47ebff7654b8c3 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 12 Sep 2020 13:20:19 +0300 Subject: [PATCH 001/757] Revert "gnu: linux-libre: Update to 5.8.8." This reverts commit ad42c20921235532e80e776fd55090127389208b, which breaks "guix system build" as described in . --- gnu/packages/linux.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 72fb3ca49d..59ffb334e0 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -349,15 +349,15 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The current "stable" kernel. That is, the most recently released major ;; version. -(define-public linux-libre-5.8-version "5.8.8") +(define-public linux-libre-5.8-version "5.8.7") (define deblob-scripts-5.8 (linux-libre-deblob-scripts - "5.8.7" + linux-libre-5.8-version (base32 "07z7sglyrfh0706icqqf3shadf638pvyid9386r661ds5lbsa2mw") (base32 "0j6jba5fcddqlb42f95gjl78jisfla4nswqila074gglcrbnl9q7"))) (define-public linux-libre-5.8-pristine-source (let ((version linux-libre-5.8-version) - (hash (base32 "0xm901zvvrwsb9k88la6pb65nybi43bygiyz1z68njwsx6ripxik"))) + (hash (base32 "1zhpzlhl2ykna2nc70m72wlgyv1pkvkpfssb4k8p5pwlkh1ga2vv"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.8))) From 61e7fa07c8b3d173e9cf17a40bd369b72144fd49 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sat, 12 Sep 2020 14:09:40 +0200 Subject: [PATCH 002/757] gnu: emacs-pdf-tools: Update to 0.90-1. * gnu/packages/emacs-xyz.scm (emacs-pdf-tools): Update to 0.90-1. Fix indentation. Update to an unreleased commit to fix an incompatibility with Emacs 27+. --- gnu/packages/emacs-xyz.scm | 142 ++++++++++++++++++++----------------- 1 file changed, 75 insertions(+), 67 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index ff043463cc..ddd0da6005 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -2513,78 +2513,86 @@ during idle time, while Emacs is doing nothing else.") (license license:gpl3+))) (define-public emacs-pdf-tools - (package - (name "emacs-pdf-tools") - (version "0.90") - (home-page "https://github.com/politza/pdf-tools") - (source (origin - (method git-fetch) - (uri (git-reference (url home-page) - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0iv2g5kd14zk3r5dzdw7b7hk4b5w7qpbilcqkja46jgxbb6xnpl9")))) - (build-system gnu-build-system) - (arguments - `(#:tests? #f ; there are no tests - #:modules ((guix build gnu-build-system) - ((guix build emacs-build-system) #:prefix emacs:) - (guix build utils) - (guix build emacs-utils)) - #:imported-modules (,@%gnu-build-system-modules - (guix build emacs-build-system) - (guix build emacs-utils)) - #:phases - (modify-phases %standard-phases - ;; Build server side using 'gnu-build-system'. - (add-after 'unpack 'enter-server-dir - (lambda _ (chdir "server") #t)) - (add-after 'enter-server-dir 'autogen - (lambda _ - (invoke "bash" "autogen.sh"))) + ;; XXX: Development branch fixes an incompatibility with Emacs 27+. See + ;; . + (let ((commit "c510442ab89c8a9e9881230eeb364f4663f59e76") + (revision "1")) + (package + (name "emacs-pdf-tools") + (version (git-version "0.90" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/politza/pdf-tools") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "17z3cpn76g9dp62drjrgrqpp1bgf4gl5k5gspylskpvd4kj4bq4d")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there are no tests + #:modules ((guix build gnu-build-system) + ((guix build emacs-build-system) #:prefix emacs:) + (guix build utils) + (guix build emacs-utils)) + #:imported-modules (,@%gnu-build-system-modules + (guix build emacs-build-system) + (guix build emacs-utils)) + #:phases + (modify-phases %standard-phases + ;; Build server side using 'gnu-build-system'. + (add-after 'unpack 'enter-server-dir + (lambda _ (chdir "server") #t)) + (add-after 'enter-server-dir 'autogen + (lambda _ + (invoke "bash" "autogen.sh"))) - ;; Build emacs side using 'emacs-build-system'. - (add-after 'compress-documentation 'enter-lisp-dir - (lambda _ (chdir "../lisp") #t)) - (add-after 'enter-lisp-dir 'emacs-patch-variables - (lambda* (#:key outputs #:allow-other-keys) - (for-each make-file-writable (find-files ".")) + ;; Build emacs side using 'emacs-build-system'. + (add-after 'compress-documentation 'enter-lisp-dir + (lambda _ (chdir "../lisp") #t)) + (add-after 'enter-lisp-dir 'emacs-patch-variables + (lambda* (#:key outputs #:allow-other-keys) + (for-each make-file-writable (find-files ".")) - ;; Set path to epdfinfo program. - (emacs-substitute-variables "pdf-info.el" - ("pdf-info-epdfinfo-program" - (string-append (assoc-ref outputs "out") - "/bin/epdfinfo"))) - ;; Set 'pdf-tools-handle-upgrades' to nil to avoid "auto - ;; upgrading" that pdf-tools tries to perform. - (emacs-substitute-variables "pdf-tools.el" - ("pdf-tools-handle-upgrades" '())))) - (add-after 'emacs-patch-variables 'emacs-add-source-to-load-path - (assoc-ref emacs:%standard-phases 'add-source-to-load-path)) - (add-after 'emacs-add-source-to-load-path 'emacs-install - (assoc-ref emacs:%standard-phases 'install)) - (add-after 'emacs-install 'emacs-build - (assoc-ref emacs:%standard-phases 'build)) - (add-after 'emacs-install 'emacs-make-autoloads - (assoc-ref emacs:%standard-phases 'make-autoloads))))) - (native-inputs `(("autoconf" ,autoconf) - ("automake" ,automake) - ("pkg-config" ,pkg-config) - ("emacs" ,emacs-minimal))) - (inputs `(("poppler" ,poppler) - ("cairo" ,cairo) - ("glib" ,glib) - ("libpng" ,libpng) - ("zlib" ,zlib))) - (propagated-inputs `(("tablist" ,emacs-tablist))) - (synopsis "Emacs support library for PDF files") - (description - "PDF Tools is, among other things, a replacement of DocView for PDF + ;; Set path to epdfinfo program. + (emacs-substitute-variables "pdf-info.el" + ("pdf-info-epdfinfo-program" + (string-append (assoc-ref outputs "out") + "/bin/epdfinfo"))) + ;; Set 'pdf-tools-handle-upgrades' to nil to avoid "auto + ;; upgrading" that pdf-tools tries to perform. + (emacs-substitute-variables "pdf-tools.el" + ("pdf-tools-handle-upgrades" '())))) + (add-after 'emacs-patch-variables 'emacs-add-source-to-load-path + (assoc-ref emacs:%standard-phases 'add-source-to-load-path)) + (add-after 'emacs-add-source-to-load-path 'emacs-install + (assoc-ref emacs:%standard-phases 'install)) + (add-after 'emacs-install 'emacs-build + (assoc-ref emacs:%standard-phases 'build)) + (add-after 'emacs-install 'emacs-make-autoloads + (assoc-ref emacs:%standard-phases 'make-autoloads))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config) + ("emacs" ,emacs-minimal))) + (inputs + `(("poppler" ,poppler) + ("cairo" ,cairo) + ("glib" ,glib) + ("libpng" ,libpng) + ("zlib" ,zlib))) + (propagated-inputs + `(("tablist" ,emacs-tablist))) + (home-page "https://github.com/politza/pdf-tools") + (synopsis "Emacs support library for PDF files") + (description + "PDF Tools is, among other things, a replacement of DocView for PDF files. The key difference is that pages are not pre-rendered by e.g. ghostscript and stored in the file-system, but rather created on-demand and stored in memory.") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public emacs-dash (package From 5525aea7cf1444fe65dd96ce1d413c7f7331d67b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 12 Sep 2020 08:42:49 +0200 Subject: [PATCH 003/757] gnu: muse-sequencer: Update to 3.1.1. * gnu/packages/music.scm (muse-sequencer): Update to 3.1.1. [arguments]: Set CMAKE_EXE_LINKER_FLAGS and CMAKE_SHARED_LINKER_FLAGS; end "chdir" phase with #T. --- gnu/packages/music.scm | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 35d75d274a..c62611fb06 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -4158,7 +4158,7 @@ sample library.") (define-public muse-sequencer (package (name "muse-sequencer") - (version "3.0.0") + (version "3.1.1") (source (origin (method git-fetch) (uri (git-reference @@ -4170,7 +4170,7 @@ sample library.") (file-name (git-file-name name version)) (sha256 (base32 - "1nninz8qyqlxxjdnrm79y3gr3056pga9l2fsqh674jd3cjvafya3")))) + "1rasp2v1ds2aw296lbf27rzw0l9fjl0cvbvw85d5ycvh6wkm301p")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; there is no test target @@ -4178,11 +4178,19 @@ sample library.") (list "-DENABLE_LV2_SUPPLIED=OFF" "-DENABLE_RTAUDIO=OFF" ; FIXME: not packaged "-DENABLE_INSTPATCH=OFF" ; FIXME: not packaged - "-DENABLE_VST_NATIVE=OFF") + "-DENABLE_VST_NATIVE=OFF" + (string-append "-DCMAKE_EXE_LINKER_FLAGS=" + "-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib/muse-" + ,(version-major+minor version) "/modules") + (string-append "-DCMAKE_SHARED_LINKER_FLAGS=" + "-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib/muse-" + ,(version-major+minor version) "/modules")) #:phases (modify-phases %standard-phases (add-after 'unpack 'chdir - (lambda _ (chdir "muse3")))))) + (lambda _ (chdir "muse3") #t))))) (inputs `(("alsa-lib" ,alsa-lib) ("lash" ,lash) From fb24a4d5b87fa77a42966938df5e9761c0991876 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 12 Sep 2020 14:53:14 +0200 Subject: [PATCH 004/757] gnu: muse-sequencer: Enable more features. * gnu/packages/music.scm (muse-sequencer)[arguments]: Add phase "fix-include" to patch header file reference; remove obsolete ENABLE_LV2_SUPPLIED configuration option; remove ENABLE_RTAUDIO=OFF. [inputs]: Add lrdf, pulseaudio, rtaudio, and rubberband. --- gnu/packages/music.scm | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index c62611fb06..95e010b3e2 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -4175,9 +4175,7 @@ sample library.") (arguments `(#:tests? #f ; there is no test target #:configure-flags - (list "-DENABLE_LV2_SUPPLIED=OFF" - "-DENABLE_RTAUDIO=OFF" ; FIXME: not packaged - "-DENABLE_INSTPATCH=OFF" ; FIXME: not packaged + (list "-DENABLE_INSTPATCH=OFF" ; FIXME: not packaged "-DENABLE_VST_NATIVE=OFF" (string-append "-DCMAKE_EXE_LINKER_FLAGS=" "-Wl,-rpath=" @@ -4190,7 +4188,12 @@ sample library.") #:phases (modify-phases %standard-phases (add-after 'unpack 'chdir - (lambda _ (chdir "muse3") #t))))) + (lambda _ (chdir "muse3") #t)) + (add-after 'chdir 'fix-include + (lambda _ + (substitute* "muse/driver/rtaudio.h" + (("rtaudio/RtAudio.h") "RtAudio.h")) + #t))))) (inputs `(("alsa-lib" ,alsa-lib) ("lash" ,lash) @@ -4203,10 +4206,14 @@ sample library.") ("sord" ,sord) ("libsndfile" ,libsndfile) ("libsamplerate" ,libsamplerate) + ("lrdf" ,lrdf) ("fluidsynth" ,fluidsynth) ("pcre" ,pcre) + ("pulseaudio" ,pulseaudio) ; required by rtaudio ("qtbase" ,qtbase) - ("qtsvg" ,qtsvg))) + ("qtsvg" ,qtsvg) + ("rtaudio" ,rtaudio) + ("rubberband" ,rubberband))) (native-inputs `(("pkg-config" ,pkg-config) ("qttools" ,qttools))) From 2c0b715389a723ecd35e9cc2694deb585a91ea76 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 12 Sep 2020 22:33:26 +0300 Subject: [PATCH 005/757] gnu: editorconfig-vim: Update to 1.1.1. * gnu/packages/vim.scm (editorconfig-vim): Update to 1.1.1. [source]: Remove snippet. [arguments]: Remove custom 'patch-editorconfig-path phase. [inputs]: Remove editorconfig-core-c. --- gnu/packages/vim.scm | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 01ebda6cfe..083f9da3a4 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -570,7 +570,7 @@ are detected, the user is notified.") (define-public editorconfig-vim (package (name "editorconfig-vim") - (version "0.3.3") + (version "1.1.1") (source (origin (method git-fetch) @@ -580,27 +580,13 @@ are detected, the user is notified.") (file-name (git-file-name name version)) (sha256 (base32 - "0vssfl1wjq0mv0p30c3dszwrh4yy90vwxmmdgqaxf5rykik7bdfd")) - (modules '((guix build utils))) - (snippet - '(begin - (delete-file-recursively "plugin/editorconfig-core-py") #t)))) + "0mp80bi2m56bb93szw87vy6q5s85yk9g91sl4pr51316rgdv5kkv")))) (build-system copy-build-system) (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-editorconfig-path - (lambda* (#:key inputs #:allow-other-keys) - (let ((editorconfig (assoc-ref inputs "editorconfig-core"))) - (substitute* "plugin/editorconfig.vim" - (("/opt") editorconfig)) - #t)))) - #:install-plan + '(#:install-plan '(("autoload" "share/vim/vimfiles/") ("doc" "share/vim/vimfiles/") ("plugin" "share/vim/vimfiles/")))) - (inputs - `(("editorconfig-core" ,editorconfig-core-c))) (home-page "https://editorconfig.org/") (synopsis "EditorConfig plugin for Vim") (description "EditorConfig makes it easy to maintain the correct coding From d257697dc1ab4d2a278415d75b057c072f4660ec Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Sun, 13 Sep 2020 00:19:38 -0400 Subject: [PATCH 006/757] gnu: profanity: Make some cosmetic changes. * gnu/packages/messaging.scm (profanity): Make some cosmetic changes. Signed-off-by: Danny Milosavljevic --- gnu/packages/messaging.scm | 51 ++++++++++++++++++++------------------ 1 file changed, 27 insertions(+), 24 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 1f41f0cb8b..18919341f4 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -1774,22 +1774,35 @@ are both supported).") (package (name "profanity") (version "0.9.5") - (source (origin - (method url-fetch) - (uri (string-append "https://profanity-im.github.io/profanity-" - version ".tar.gz")) - (sha256 - (base32 - "00j9l9v62rz9hprgiy1vrz8v3v59ph18h8kskqxr31fgqvjv5xr3")))) + (source + (origin + (method url-fetch) + (uri + (string-append "https://profanity-im.github.io/profanity-" + version ".tar.gz")) + (sha256 + (base32 + "00j9l9v62rz9hprgiy1vrz8v3v59ph18h8kskqxr31fgqvjv5xr3")))) (build-system gnu-build-system) (arguments - '(#:configure-flags - (list "--enable-c-plugins" - "--enable-otr" - "--enable-omemo" - "--enable-pgp" - "--enable-icons" - "--enable-notifications"))) + `(#:configure-flags + (list + "--enable-notifications" + "--enable-c-plugins" + "--enable-otr" + "--enable-pgp" + "--enable-omemo" + "--enable-icons"))) + (native-inputs + `(("autoconf" ,autoconf) + ("autoconf-archive" ,autoconf-archive) + ("automake" ,automake) + ("cmocka" ,cmocka) + ("gtk+" ,gtk+-2) + ("libnotify" ,libnotify) + ("libtool" ,libtool) + ("libsignal-protocol-c" ,libsignal-protocol-c) + ("pkg-config" ,pkg-config))) (inputs `(("curl" ,curl) ("expat" ,expat) @@ -1801,16 +1814,6 @@ are both supported).") ("openssl" ,openssl) ("readline" ,readline) ("sqlite" ,sqlite))) - (native-inputs - `(("autoconf" ,autoconf) - ("autoconf-archive" ,autoconf-archive) - ("automake" ,automake) - ("cmocka" ,cmocka) - ("gtk+" ,gtk+-2) - ("libnotify" ,libnotify) - ("libtool" ,libtool) - ("libsignal-protocol-c" ,libsignal-protocol-c) - ("pkg-config" ,pkg-config))) (synopsis "Console-based XMPP client") (description "Profanity is a console based XMPP client written in C using ncurses and libmesode, inspired by Irssi.") From ca7535ddf3099003adbe12e5e931d28caf0a3de7 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Sun, 13 Sep 2020 00:22:25 -0400 Subject: [PATCH 007/757] gnu: profanity: Move some dependencies. * gnu/packages/messaging.scm (profanity) [native-inputs]: Move gtk-2, libnotify and libsignal-protocol-c to ... [inputs]: ... here. Signed-off-by: Danny Milosavljevic --- gnu/packages/messaging.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 18919341f4..13ed7b489c 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -1798,18 +1798,18 @@ are both supported).") ("autoconf-archive" ,autoconf-archive) ("automake" ,automake) ("cmocka" ,cmocka) - ("gtk+" ,gtk+-2) - ("libnotify" ,libnotify) ("libtool" ,libtool) - ("libsignal-protocol-c" ,libsignal-protocol-c) ("pkg-config" ,pkg-config))) (inputs `(("curl" ,curl) ("expat" ,expat) ("glib" ,glib) ("gpgme" ,gpgme) + ("gtk+" ,gtk+-2) ("libmesode" ,libmesode) + ("libnotify" ,libnotify) ("libotr" ,libotr) + ("libsignal-protocol-c" ,libsignal-protocol-c) ("ncurses" ,ncurses) ("openssl" ,openssl) ("readline" ,readline) From d0e85b805e93ffca017cd0bb22d5380fbaa59693 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Sun, 13 Sep 2020 00:27:19 -0400 Subject: [PATCH 008/757] gnu: profanity: Enable plugins, icons and clipboard. * gnu/packages/messaging.scm (profanity) [arguments]<#:configure-flags> [--enable-python-plugins]: New flag. [--enable-plugins]: New flag. [--enable-icons-and-clipboard]: New flag. [--enable-icons]: Remove flag. [inputs]: Add python-wrapper. Signed-off-by: Danny Milosavljevic --- gnu/packages/messaging.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 13ed7b489c..ef27e12e30 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -1788,11 +1788,13 @@ are both supported).") `(#:configure-flags (list "--enable-notifications" + "--enable-python-plugins" "--enable-c-plugins" + "--enable-plugins" "--enable-otr" "--enable-pgp" "--enable-omemo" - "--enable-icons"))) + "--enable-icons-and-clipboard"))) (native-inputs `(("autoconf" ,autoconf) ("autoconf-archive" ,autoconf-archive) @@ -1812,6 +1814,7 @@ are both supported).") ("libsignal-protocol-c" ,libsignal-protocol-c) ("ncurses" ,ncurses) ("openssl" ,openssl) + ("python" ,python-wrapper) ("readline" ,readline) ("sqlite" ,sqlite))) (synopsis "Console-based XMPP client") From a3f6f27bbc87d3ae169323a419916e50dd379790 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Sun, 13 Sep 2020 00:30:10 -0400 Subject: [PATCH 009/757] gnu: profanity: Change build system. * gnu/package/messaging.scm (profanity) [build-system]: Change from gnu to glib-or-gtk. Signed-off-by: Danny Milosavljevic --- gnu/packages/messaging.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index ef27e12e30..f8bb673734 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -1783,7 +1783,7 @@ are both supported).") (sha256 (base32 "00j9l9v62rz9hprgiy1vrz8v3v59ph18h8kskqxr31fgqvjv5xr3")))) - (build-system gnu-build-system) + (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags (list From 1192ae940434808560b3170107e4ce44855816c3 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sun, 13 Sep 2020 09:31:15 +0100 Subject: [PATCH 010/757] gnu: josm: Fix formatting and install more files. This means that JOSM appears in the GNOME Shell menu. * gnu/packages/geo.scm (josm)[source]: Replace tab character. [arguments]: Reduce line length, and add install-share-directories phase. --- gnu/packages/geo.scm | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index ab1d691c6c..291b928338 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2019 Wiktor Żelazny ;;; Copyright © 2019 Hartmut Goebel ;;; Copyright © 2020 Marius Bakke +;;; Copyright © 2020 Christopher Baines ;;; ;;; This file is part of GNU Guix. ;;; @@ -1290,7 +1291,7 @@ to the OSM opening hours specification.") (modules '((guix build utils))) (snippet '(begin - (for-each delete-file (find-files "." ".*.jar$")) + (for-each delete-file (find-files "." ".*.jar$")) #t)))) (build-system ant-build-system) (native-inputs @@ -1339,7 +1340,8 @@ to the OSM opening hours specification.") (filter (lambda (s) (let ((source (assoc-ref inputs "source"))) - (not (equal? (substring s 0 (string-length source)) source)))) + (not (equal? (substring s 0 (string-length source)) + source)))) (string-split (getenv "CLASSPATH") #\:)) ":")) #t)) @@ -1386,6 +1388,19 @@ to the OSM opening hours specification.") "Is-Local-Build: true\n" "Build-Date: 1970-01-01 00:00:00 +0000\n")))) #t)) + (add-after 'install 'install-share-directories + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (share-directories '("applications" "icons" "man" "menu" + "metainfo" "mime" "pixmaps"))) + (for-each (lambda (directory) + (copy-recursively (string-append + "native/linux/tested/usr/share/" + directory) + (string-append + out "/share/" directory))) + share-directories)) + #t)) (add-after 'install 'install-bin (lambda* (#:key outputs inputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) From 898fbb60b2354e82e5b7f259b44dbfed112a83aa Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 11 Sep 2020 20:51:22 -0400 Subject: [PATCH 011/757] gnu: Fix a crash in NTP and Chrony. Fixes . * gnu/packages/ntp.scm (ntp, chrony)[inputs]: Replace libcap with libcap/next. --- gnu/packages/ntp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm index 6b725c2b0f..5fa7d55845 100644 --- a/gnu/packages/ntp.scm +++ b/gnu/packages/ntp.scm @@ -80,7 +80,7 @@ (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("libcap" ,libcap) + `(("libcap" ,libcap/next) ("libseccomp" ,libseccomp) ("nettle" ,nettle))) (home-page "https://chrony.tuxfamily.org/") @@ -143,7 +143,7 @@ time-stamping or reference clock, sub-microsecond accuracy is possible.") ;; to run as non-root (when invoked with '-u'.) ,@(if (string-suffix? "-linux" (or (%current-target-system) (%current-system))) - `(("libcap" ,libcap)) + `(("libcap" ,libcap/next)) '()))) (arguments `(#:phases From 71992a532dd0bb88b39dda285482b332a24dae66 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 13 Sep 2020 23:02:49 +0200 Subject: [PATCH 012/757] services: Fix zram-device-service. * gnu/services/linux.scm (): Fix typo. --- gnu/services/linux.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/services/linux.scm b/gnu/services/linux.scm index ec42663a11..72c7779596 100644 --- a/gnu/services/linux.scm +++ b/gnu/services/linux.scm @@ -196,7 +196,7 @@ representation." (define-record-type* zram-device-configuration make-zram-device-configuration zram-device-configuration? - (size zram-device-configration-size + (size zram-device-configuration-size (default "1G")) ; string or integer (compression-algorithm zram-device-configuration-compression-algorithm (default 'lzo)) ; symbol From 978c9bc50dcc96a129da79efab3a471bcd599f85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 11 Sep 2020 17:14:34 +0200 Subject: [PATCH 013/757] gnu: libcyaml: Update to 1.1.0. * gnu/packages/web.scm (libcyaml): Update to 1.1.0. --- 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 2c3a007779..d184e14e88 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5027,7 +5027,7 @@ written in C. It is developed as part of the NetSurf project.") (define-public libcyaml (package (name "libcyaml") - (version "1.0.1") + (version "1.1.0") (source (origin (method git-fetch) @@ -5036,7 +5036,7 @@ written in C. It is developed as part of the NetSurf project.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0h5ydyqdl8kzh526np3jsi0pm7ks16nh1hjkdsjcd6pacw7y6i6z")))) + (base32 "0428p0rwq71nhh5nzcbapsbrjxa0x5l6h6ns32nxv7j624f0zd93")))) (build-system gnu-build-system) (arguments `(#:make-flags From fce852c45817793998dc4b7f174033b4796b1b88 Mon Sep 17 00:00:00 2001 From: Alexandros Theodotou Date: Fri, 11 Sep 2020 17:37:23 +0100 Subject: [PATCH 014/757] gnu: libaudec: Update to 0.2.3. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/audio.scm (libaudec): Update to 0.2.3. Signed-off-by: Ludovic Courtès --- gnu/packages/audio.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 0746f67b2e..5e6008f31e 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -4610,7 +4610,7 @@ in the package.") (define-public libaudec (package (name "libaudec") - (version "0.2.2") + (version "0.2.3") (source (origin (method git-fetch) @@ -4620,14 +4620,14 @@ in the package.") (file-name (git-file-name name version)) (sha256 (base32 - "04mpmfmqc43asw0m3zxhb6jj4qms7x4jw7mx4xb1d3lh16xllniz")))) + "04hw61db8wscj28qjyiaiafx8xl87njgmvqszxyhs4gmg8xgjip7")))) (build-system meson-build-system) (arguments - `(#:configure-flags `("-Denable_tests=true -Denable_ffmpeg=true"))) + ;; Compile tests. + `(#:configure-flags `("-Dtests=true"))) (inputs `(("libsamplerate" ,libsamplerate) - ("libsndfile" ,libsndfile) - ("ffmpeg" ,ffmpeg))) + ("libsndfile" ,libsndfile))) (native-inputs `(("pkg-config", pkg-config))) (synopsis "Library for reading and resampling audio files") From ae286b58c85395e9a3cea813eff00d4ca3cdffae Mon Sep 17 00:00:00 2001 From: Alexandros Theodotou Date: Fri, 11 Sep 2020 17:27:56 +0100 Subject: [PATCH 015/757] gnu: Add meson 0.55.1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/build-tools.scm (meson-0.55): New variable. Co-authored-by: Ludovic Courtès --- gnu/packages/build-tools.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index 7213c1bd0b..32e8f4cc82 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -211,6 +211,21 @@ files}, are written in a custom domain-specific language (@dfn{DSL}) that resembles Python.") (license license:asl2.0))) +;; Added temporarily for packages that need it. +;; TODO: Remove when core-updates is merged. +(define-public meson-0.55 + (package + (inherit meson) + (version "0.55.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/mesonbuild/meson/" + "releases/download/" version "/meson-" + version ".tar.gz")) + (sha256 + (base32 + "1070kjiirxxdfppmrhi3wsc6rykay1zlciqrzayjhjg0hkw42mrv")))))) + (define-public meson-for-build (package (inherit meson) From 66ce92ffe43880407ff96477466a8950d1d8603e Mon Sep 17 00:00:00 2001 From: Alexandros Theodotou Date: Fri, 11 Sep 2020 17:48:40 +0100 Subject: [PATCH 016/757] gnu: zrythm: Update to 0.8.911. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/music.scm (zrythm): Update to 0.8.911. Signed-off-by: Ludovic Courtès --- gnu/packages/music.scm | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 95e010b3e2..a3e38dd1c8 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -73,11 +73,13 @@ #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages boost) + #:use-module (gnu packages build-tools) #:use-module (gnu packages cdrom) #:use-module (gnu packages code) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) + #:use-module (gnu packages cpp) #:use-module (gnu packages crypto) #:use-module (gnu packages curl) #:use-module (gnu packages cyrus-sasl) @@ -5457,8 +5459,13 @@ and as an LV2 plugin.") (define-public zrythm (package + ;; Zrythm contains trademarks and comes with a trademark policy found in + ;; TRADMARKS.md inside the release distribution. The trademark policy + ;; allows verbatim re-distribution, and it also allows FSF-approved + ;; distros to make necessary changes to integrate the software into the + ;; distribution. (name "zrythm") - (version "0.8.333") + (version "0.8.911") (source (origin (method url-fetch) @@ -5466,13 +5473,19 @@ and as an LV2 plugin.") version ".tar.xz")) (sha256 (base32 - "0x2kxr5zz058jpy6k6ymj0fi2gqfcgrlv4qkwz9443hjy5345iwb")))) + "1xyp70sjc2k5pfdqbwqa988v86da0rmmyl8ry86bqv4ja80sc6g9")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t + #:meson ,meson-0.55 #:configure-flags - `("-Denable_tests=true" "-Dmanpage=true" - "-Dinstall_dseg_font=false" "-Denable_ffmpeg=true") + `("-Dtests=true" + "-Dmanpage=true" + "-Ddseg_font=false" + "-Dgraphviz=enabled" ; for exporting routing graphs + "-Dguile=enabled" ; for Guile scripting + "-Djack=enabled" ; for JACK audio/MIDI backend + "-Dsdl=enabled") ; for SDL audio backend (which uses ALSA) #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-xdg-open @@ -5485,7 +5498,6 @@ and as an LV2 plugin.") `(("alsa-lib" ,alsa-lib) ("jack" ,jack-1) ("font-dseg" ,font-dseg) - ("ffmpeg" ,ffmpeg) ("fftw" ,fftw) ("fftwf" ,fftwf) ("gettext" ,gettext-minimal) @@ -5494,19 +5506,23 @@ and as an LV2 plugin.") ("gtk+" ,gtk+) ("gtksourceview" ,gtksourceview) ("guile" ,guile-2.2) + ("libaudec" ,libaudec) ("libcyaml" ,libcyaml) ("libsamplerate" ,libsamplerate) ("libsndfile" ,libsndfile) ("libyaml" ,libyaml) ("lilv" ,lilv) + ("lv2" ,lv2) + ("reproc" ,reproc) + ("rubberband" ,rubberband) + ("rtmidi" ,rtmidi) + ("sdl2" ,sdl2) ("xdg-utils" ,xdg-utils) - ("rubberband" ,rubberband))) + ("zstd" ,zstd "lib"))) (native-inputs `(("pkg-config" ,pkg-config) ("help2man" ,help2man) - ("libaudec" ,libaudec) - ("lv2" ,lv2) - ("glib" ,glib "bin"))) ;for 'glib-compile-resources' + ("glib" ,glib "bin"))) ; for 'glib-compile-resources' (synopsis "Digital audio workstation focusing on usability") (description "Zrythm is a digital audio workstation designed to be featureful and easy to use. It offers unlimited automation options, LV2 From a4fe16ee41d64bfe9cb9402c29d11d974c235662 Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 11 Sep 2020 18:07:58 +0200 Subject: [PATCH 017/757] gnu: libgccjit: Reword synopsis and description. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes . Reported by Jeffrey Walton . * gnu/packages/gcc.scm: (libgccjit)[synopsis,description]: Reword. Signed-off-by: Ludovic Courtès --- gnu/packages/gcc.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index a39ac3b84c..c74477aed9 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2018, 2020 Marius Bakke ;;; Copyright © 2020 Joseph LaFreniere ;;; Copyright © 2020 Guy Fleury Iteriteka +;;; Copyright © 2020 Simon Tournier ;;; ;;; This file is part of GNU Guix. ;;; @@ -759,7 +760,16 @@ as the 'native-search-paths' field." (for-each delete-file (find-files (string-append (assoc-ref outputs "out") "/bin") ".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc|gcc-.*)")) - #t)))))))) + #t)))))) + (synopsis "GCC library generating machine code on-the-fly at runtime") + (description + "This package is part of the GNU Compiler Collection and provides an +embeddable library for generating machine code on-the-fly at runtime. This +shared library can then be dynamically-linked into bytecode interpreters and +other such programs that want to generate machine code on-the-fly at run-time. +It can also be used for ahead-of-time code generation for building standalone +compilers. The just-in-time (jit) part of the name is now something of a +misnomer."))) (define-public gccgo-4.9 From 542c4707de98289e85b9be1b63d2f3d1a77f7c35 Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 11 Sep 2020 18:07:59 +0200 Subject: [PATCH 018/757] gnu: gccgo: Reword synopsis and description. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes . Reported by Jeffrey Walton . * gnu/packages/gcc.scm: (gccgo-4.9): Add synopsis and description Signed-off-by: Ludovic Courtès --- gnu/packages/gcc.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index c74477aed9..4d5aaa7070 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -773,7 +773,13 @@ misnomer."))) (define-public gccgo-4.9 - (custom-gcc gcc-4.9 "gccgo" '("go") + (custom-gcc (package + (inherit gcc-4.9) + (synopsis "Go frontend to GCC") + (description + "This package is part of the GNU Compiler Collection and +provides the GNU compiler for the Go programming language.")) + "gccgo" '("go") %generic-search-paths ;; Suppress the separate "lib" output, because otherwise the ;; "lib" and "out" outputs would refer to each other, creating From 0214d5dd849c140707345885cf899fa46d656021 Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 11 Sep 2020 18:08:00 +0200 Subject: [PATCH 019/757] gnu: gcc-toolchain: Reword description. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/commencement.scm (make-gcc-toolchain)[description]: Reword. Signed-off-by: Ludovic Courtès --- gnu/packages/commencement.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index cc86d06c65..565799c611 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -3861,7 +3861,8 @@ COREUTILS-FINAL vs. COREUTILS, etc." (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 @code{debug} output), and Binutils.") +binaries, plus debugging symbols in the @code{debug} output), and Binutils. GCC +is the GNU Compiler Collection.") (home-page "https://gcc.gnu.org/") (outputs '("out" "debug" "static")) From 0f918908ebcfc1d5aeb780d6fbe5c52a48178e85 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Fri, 11 Sep 2020 06:58:03 -0400 Subject: [PATCH 020/757] gnu: fmt: Update to 7.0.3. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From 820d39a55a5673fffac70c919b8cc3b28d94f6e7 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Fri, 11 Sep 2020 10:53:20 +0000 Subject: [PATCH] gnu: fmt: Update to 7.0.3. * gnu/packages/pretty-print.scm (fmt): Update to 7.0.3. Signed-off-by: Ludovic Courtès --- gnu/packages/pretty-print.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm index 8e5d9ceafe..eeae472f08 100644 --- a/gnu/packages/pretty-print.scm +++ b/gnu/packages/pretty-print.scm @@ -168,14 +168,14 @@ different programming languages.") (define-public fmt (package (name "fmt") - (version "6.2.1") + (version "7.0.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/fmtlib/fmt/releases/download/" version "/fmt-" version ".zip")) (sha256 - (base32 "06l8g59frbsbwj15kg6x2bbn6p8yidh6wzsigdhbdjncvm1agzll")))) + (base32 "0kgajl3qsrdyj0csqsz8b8h84kasdy0pnh16byl0y1vlsaddzkyy")))) (build-system cmake-build-system) (arguments '(#:configure-flags '("-DBUILD_SHARED_LIBS=ON"))) From 11a962e6536d59b8c5b24880fbb19550242ffa04 Mon Sep 17 00:00:00 2001 From: Timotej Lazar Date: Fri, 11 Sep 2020 13:55:55 +0200 Subject: [PATCH 021/757] services: certbot: Support registration without email. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/services/certbot.scm (certbot-configuration): Add default for the email option. (certbot-command): Pass email for registration only when specified. * doc/guix.texi (Certificate Services): "mandatory"→"optional" email. Signed-off-by: Ludovic Courtès --- doc/guix.texi | 7 ++++--- gnu/services/certbot.scm | 11 ++++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index a6e14ea177..5e4bfd8e85 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -22478,9 +22478,10 @@ A list of @code{certificates-configuration}s for which to generate certificates and request signatures. Each certificate has a @code{name} and several @code{domains}. -@item @code{email} -Mandatory email used for registration, recovery contact, and important -account notifications. +@item @code{email} (default: @code{#f}) +Optional email address used for registration and recovery contact. +Setting this is encouraged as it allows you to receive important +notifications about the account and issued certificates. @item @code{server} (default: @code{#f}) Optional URL of ACME server. Setting this overrides certbot's default, diff --git a/gnu/services/certbot.scm b/gnu/services/certbot.scm index 5643340799..1c67ff63f1 100644 --- a/gnu/services/certbot.scm +++ b/gnu/services/certbot.scm @@ -71,7 +71,8 @@ (default "/var/www")) (certificates certbot-configuration-certificates (default '())) - (email certbot-configuration-email) + (email certbot-configuration-email + (default #f)) (server certbot-configuration-server (default #f)) (rsa-key-size certbot-configuration-rsa-key-size @@ -99,12 +100,14 @@ (if challenge (append (list name certbot "certonly" "-n" "--agree-tos" - "-m" email "--manual" (string-append "--preferred-challenges=" challenge) "--cert-name" name "--manual-public-ip-logging-ok" "-d" (string-join domains ",")) + (if email + `("--email" ,email) + '("--register-unsafely-without-email")) (if server `("--server" ,server) '()) (if rsa-key-size `("--rsa-key-size" ,rsa-key-size) '()) (if authentication-hook @@ -114,10 +117,12 @@ (if deploy-hook `("--deploy-hook" ,deploy-hook) '())) (append (list name certbot "certonly" "-n" "--agree-tos" - "-m" email "--webroot" "-w" webroot "--cert-name" name "-d" (string-join domains ",")) + (if email + `("--email" ,email) + '("--register-unsafely-without-email")) (if server `("--server" ,server) '()) (if rsa-key-size `("--rsa-key-size" ,rsa-key-size) '()) (if deploy-hook `("--deploy-hook" ,deploy-hook) '())))))) From 227932991f55f3a817d96b8de3193bd89ef6460b Mon Sep 17 00:00:00 2001 From: Morgan Smith Date: Tue, 8 Sep 2020 22:21:11 -0400 Subject: [PATCH 022/757] gnu: emacs-djvu: Add needed inputs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-djvu)[inputs, arguments]: New fields. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index ddd0da6005..d7b10c1164 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -118,6 +118,7 @@ #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages dictionaries) + #:use-module (gnu packages djvu) #:use-module (gnu packages emacs) #:use-module (gnu packages guile) #:use-module (gnu packages gtk) @@ -2479,13 +2480,30 @@ filters, new key bindings and faces. It can be enabled by (sha256 (base32 "0njgyx09q225hliacsnjk8wallg5i6xkz6bj501pb05nwqfbvfk7")))) (build-system emacs-build-system) + (inputs `(("djview" ,djview) + ("djvulibre" ,djvulibre))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((file "djvu.el") + (djview (assoc-ref inputs "djview")) + (djvulibre (assoc-ref inputs "djvulibre"))) + ;; Specify the absolute executable locations. + (chmod file #o644) + (substitute* file + (("\"djvused\"") (string-append "\"" djvulibre "/bin/djvused\"")) + (("\"djvm\"") (string-append "\"" djvulibre "/bin/djvm\"")) + (("\"ddjvu\"") (string-append "\"" djvulibre "/bin/ddjvu\""))) + (emacs-substitute-variables file + ("djvu-djview-command" (string-append djview "/bin/djview")))) + #t))))) (home-page "http://elpa.gnu.org/packages/djvu.html") (synopsis "Edit and view Djvu files via djvused") (description "This package is a front end for the command-line program djvused from -DjVuLibre, see @url{http://djvu.sourceforge.net/}. It assumes you have the -programs @command{djvused}, @command{djview}, @command{ddjvu}, and -@command{djvm} installed.") +DjVuLibre, see @url{http://djvu.sourceforge.net/}.") (license license:gpl3+))) (define-public emacs-pabbrev From 88915958c0b16c5b6b935d0ad8bf7cc740979640 Mon Sep 17 00:00:00 2001 From: Leo Prikler Date: Tue, 8 Sep 2020 14:03:40 +0200 Subject: [PATCH 023/757] gnu: glade: Add catalog and module search paths. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (glade3)[native-search-paths]: Add GLADE_CATALOG_SEARCH_PATH and GLADE_MODULE_SEARCH_PATH. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 9b72e6a7ab..5b08cb18f3 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2919,7 +2919,13 @@ API add-ons to make GTK+ widgets OpenGL-capable.") (description "Glade is a rapid application development (RAD) tool to enable quick & easy development of user interfaces for the GTK+ toolkit and the GNOME desktop environment.") - (license license:lgpl2.0+))) + (license license:lgpl2.0+) + (native-search-paths (list (search-path-specification + (variable "GLADE_CATALOG_SEARCH_PATH") + (files '("share/glade/catalogs"))) + (search-path-specification + (variable "GLADE_MODULE_SEARCH_PATH") + (files '("lib/glade/modules"))))))) (define-public libcroco (package From 43514b82e4c1addcc85c3bd149e2c9d78009a8d9 Mon Sep 17 00:00:00 2001 From: Leo Prikler Date: Tue, 8 Sep 2020 14:08:33 +0200 Subject: [PATCH 024/757] gnu: libhandy: Enable glade_catalog. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (libhandy)[configure-flags]: Add glade_catalog. [inputs]: Add glade and libxml2. (libhandy-0.0)[configure-flags]: Keep glade_catalog disabled. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 5b08cb18f3..85b95a7507 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -10508,7 +10508,7 @@ advanced image management tool") (build-system meson-build-system) (arguments `(#:configure-flags - '("-Dglade_catalog=disabled" + '("-Dglade_catalog=enabled" "-Dgtk_doc=true") #:phases (modify-phases %standard-phases @@ -10519,7 +10519,9 @@ advanced image management tool") (setenv "DISPLAY" ":1") #t))))) (inputs - `(("gtk+" ,gtk+))) + `(("gtk+" ,gtk+) + ("glade" ,glade3) + ("libxml2" ,libxml2))) (native-inputs `(("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) ; for g-ir-scanner @@ -10550,7 +10552,11 @@ for usage on small and big screens.") (commit (string-append "v" version)))) (file-name (git-file-name "libhandy" version)) (sha256 - (base32 "1y23k623sjkldfrdiwfarpchg5mg58smcy1pkgnwfwca15wm1ra5")))))) + (base32 "1y23k623sjkldfrdiwfarpchg5mg58smcy1pkgnwfwca15wm1ra5")))) + (arguments + (substitute-keyword-arguments (package-arguments libhandy) + ((#:configure-flags flags) + '(list "-Dglade_catalog=disabled" "-Dgtk_doc=true")))))) (define-public libgit2-glib (package From 33061f7bf1fb3c163036ac6422af95f88be5c807 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 13 Sep 2020 23:43:08 +0200 Subject: [PATCH 025/757] gnu: bear: Update to 2.4.4. * gnu/packages/build-tools.scm (bear): Update to 2.4.4. --- gnu/packages/build-tools.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index 32e8f4cc82..5bbe70eaa1 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -89,7 +89,7 @@ makes a few sacrifices to acquire fast full and incremental build times.") (define-public bear (package (name "bear") - (version "2.4.3") + (version "2.4.4") (source (origin (method git-fetch) (uri (git-reference @@ -98,7 +98,7 @@ makes a few sacrifices to acquire fast full and incremental build times.") (file-name (git-file-name name version)) (sha256 (base32 - "19fk4flfykbzhb89ppmzqf0zlrkbjm6ajl9fsayndj9km5ys0041")))) + "184dqjcpxiwcfziyi67zzran2c4fal1r3j8nhjdjadcmfxf4389d")))) (build-system cmake-build-system) (inputs `(("python" ,python-wrapper))) From ce4a497b132a63784cd64aca5223c92e061013fa Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 14 Sep 2020 00:01:32 +0200 Subject: [PATCH 026/757] gnu: shellcheck: Update to 0.7.1. * gnu/packages/haskell-apps.scm (shellcheck): Update to 0.7.1. --- gnu/packages/haskell-apps.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm index 32e1c50852..07bf26669b 100644 --- a/gnu/packages/haskell-apps.scm +++ b/gnu/packages/haskell-apps.scm @@ -775,7 +775,7 @@ too slow and you'll get wound up in the scroll and crushed.") (define-public shellcheck (package (name "shellcheck") - (version "0.7.0") + (version "0.7.1") (source (origin (method url-fetch) @@ -783,7 +783,7 @@ too slow and you'll get wound up in the scroll and crushed.") "https://hackage.haskell.org/package/ShellCheck/ShellCheck-" version ".tar.gz")) (sha256 - (base32 "1vx895cp5k5h0680xfwj74lk97m9y627n965x6srds0gfnbkzy9s")) + (base32 "06m4wh891nah3y0br4wh3adpsb16zawkb2ijgf1vcz61fznj6ps1")) (file-name (string-append name "-" version ".tar.gz")))) (build-system haskell-build-system) (inputs From 1e58798bc4cd8d05bc0f8a3221fea1b67dd4d90a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 14 Sep 2020 00:21:30 +0200 Subject: [PATCH 027/757] gnu: jasper: Update to 2.0.20 [fixes CVE-2016-9398's revenge]. * gnu/packages/image.scm (jasper): Update to 2.0.20. [arguments]: Skip tests of the now-disabled MIF image format. --- gnu/packages/image.scm | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 6604ac5359..4606cc77b2 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -1409,7 +1409,7 @@ convert, manipulate, filter and display a wide variety of image formats.") (define-public jasper (package (name "jasper") - (version "2.0.19") + (version "2.0.20") (source (origin (method git-fetch) (uri (git-reference @@ -1418,8 +1418,20 @@ convert, manipulate, filter and display a wide variety of image formats.") (file-name (git-file-name name version)) (sha256 (base32 - "036rcr0wkz9gzmvk1jb96piznk0c0bwxgf31z1zrlg8js4zl1n84")))) + "1bn4mg6l5afryrlyk3y7p3accdq113fis8hpwywy5g51ycablz3h")))) (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-checking-disabled-things + (lambda _ + ;; The MIF codec was disabled for security reasons in JasPer 2.0.20 + ;; but its test suite still assumes that the format is supported. + (for-each delete-file + (find-files "data/test" "\\.mif$")) ; for run_test_1 + (substitute* "test/bin/run_test_2" + (("image_formats\\+=\\(mif\\)") "")) + #t))))) (inputs `(("libjpeg" ,libjpeg-turbo))) (synopsis "JPEG-2000 library") (description "The JasPer Project is an initiative to provide a reference From 61d02cecd907b3cec14237bef3aafdcb6f62e6e9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 14 Sep 2020 00:22:10 +0200 Subject: [PATCH 028/757] gnu: wesnoth: Update to 1.14.14. * gnu/packages/games.scm (wesnoth): Update to 1.14.14. --- 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 ac5d08b79b..f6819873df 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3664,7 +3664,7 @@ falling, themeable graphics and sounds, and replays.") (define-public wesnoth (package (name "wesnoth") - (version "1.14.13") + (version "1.14.14") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/wesnoth/wesnoth-" @@ -3673,7 +3673,7 @@ falling, themeable graphics and sounds, and replays.") "wesnoth-" version ".tar.bz2")) (sha256 (base32 - "1pmqj4rah0256qi9w394ksb9apid723i5f5agkg6x1lahb1ac91q")))) + "1l7mdxn4kw938qz824057rqh99b7y9439a54s64n1xz95w77lp0r")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ;no check target From d392226f4af9cae1cc6f023fa1ca0a284fb06cee Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 13 Sep 2020 23:10:51 +0200 Subject: [PATCH 029/757] gnu: python-ansi2html: Fix typo in description. * gnu/packages/python-xyz.scm (python-ansi2html)[description]: Fix typo. --- gnu/packages/python-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 6063b358c2..3e66e5a7eb 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -14523,7 +14523,7 @@ to ansi-escaped strings suitable for display in a terminal.") (synopsis "Convert ANSI-decorated console output to HTML") (description "@command{ansi2html} is a Python library and command line utility for -convering text with ANSI color codes to HTML or LaTeX.") +converting text with ANSI color codes to HTML or LaTeX.") (license license:gpl3+))) (define-public python2-ansi2html From 2cae49f9c99e25686858d4a0e423ebd97bc77b2f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 14 Sep 2020 00:55:23 +0200 Subject: [PATCH 030/757] gnu: youtube-dl: Update to 2020.09.14. * gnu/packages/video.scm (youtube-dl): Update to 2020.09.14. --- 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 bd3b1cc858..8ebe7dbcdf 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -2165,7 +2165,7 @@ To load this plugin, specify the following option when starting mpv: (define-public youtube-dl (package (name "youtube-dl") - (version "2020.09.06") + (version "2020.09.14") (source (origin (method url-fetch) (uri (string-append "https://github.com/ytdl-org/youtube-dl/" @@ -2173,7 +2173,7 @@ To load this plugin, specify the following option when starting mpv: version ".tar.gz")) (sha256 (base32 - "1827hcp9bvwq7p2f5r0wgkg6yb5fgvr4miyi3d99hkah2afw12za")))) + "18wfhprbaszpxgqkac3hb050ngvdsaibbcifg88rkv5vc6bc2mq6")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion From 1042d269a723360a02b19a2baafef1e24a3bfc73 Mon Sep 17 00:00:00 2001 From: Robin Green Date: Sun, 13 Sep 2020 15:12:18 +0100 Subject: [PATCH 031/757] gnu: Update coq and its dependents * gnu/packages/coq.scm (coq): Update to 8.11.2 (coq-flocq): Update to 3.3.1 (coq-gappa): Update to 1.4.4 (coq-mathcomp): Update to 1.11.0 (coq-coquelicot): Update to 3.1.0 (coq-bignums): Update to 8.11.0 (coq-interval): Update to 4.0.0 (coq-equations): Update to 1.2.3 Signed-off-by: Julien Lepiller --- gnu/packages/coq.scm | 42 +++++++++++++++++++++++------------------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/gnu/packages/coq.scm b/gnu/packages/coq.scm index 3573518763..e57e40c2ad 100644 --- a/gnu/packages/coq.scm +++ b/gnu/packages/coq.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2020 Brett Gilio ;;; Copyright © 2020 Björn Höfling ;;; Copyright © 2020 raingloom +;;; Copyright © 2020 Robin Green ;;; ;;; This file is part of GNU Guix. ;;; @@ -34,6 +35,7 @@ #:use-module (gnu packages ocaml) #:use-module (gnu packages perl) #:use-module (gnu packages python) + #:use-module (gnu packages rsync) #:use-module (gnu packages texinfo) #:use-module (guix build-system gnu) #:use-module (guix build-system ocaml) @@ -47,7 +49,7 @@ (define-public coq (package (name "coq") - (version "8.10.2") + (version "8.11.2") (source (origin (method git-fetch) @@ -57,7 +59,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0ji2rzd70b3hcwfw97qk7rv3m2977ylqnq82l1555dp3njr8nm3q")))) + "1gia82dkmzqspw2w3s4gjyh39ghbmw4i41i4hyzc91g7mza17nbz")))) (native-search-paths (list (search-path-specification (variable "COQPATH") @@ -70,7 +72,9 @@ ("camlp5" ,camlp5) ("ocaml-num" ,ocaml-num))) (native-inputs - `(("ocaml-ounit" ,ocaml-ounit))) + `(("ocaml-ounit" ,ocaml-ounit) + ("rsync" ,rsync) + ("which" ,which))) (arguments `(#:phases (modify-phases %standard-phases @@ -125,7 +129,7 @@ ;; Fails because the output is not formatted as expected. (delete-file-recursively "coq-makefile/timing") ;; Fails because we didn't build coqtop.byte. - (delete-file-recursively "coq-makefile/findlib-package") + (delete-file "misc/printers.sh") (invoke "make"))))))) (home-page "https://coq.inria.fr") (synopsis "Proof assistant for higher-order logic") @@ -215,7 +219,7 @@ provers.") (define-public coq-flocq (package (name "coq-flocq") - (version "3.2.0") + (version "3.3.1") (source (origin (method git-fetch) @@ -225,7 +229,7 @@ provers.") (file-name (git-file-name name version)) (sha256 (base32 - "15bi36x7zj0glsb3s2gwqd4wswhfzh36rbp7imbyff53a7nna95l")))) + "01gdykva0lcw6y3dm8j0djxayb87szfg9vn0mxd6z3pks644misl")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -272,7 +276,7 @@ inside Coq.") (define-public coq-gappa (package (name "coq-gappa") - (version "1.4.2") + (version "1.4.4") (source (origin (method git-fetch) @@ -282,7 +286,7 @@ inside Coq.") (file-name (git-file-name name version)) (sha256 (base32 - "0r7jwp5xssdfzivs2flp7mzrscqhgl63mryhhf1cvndpgzqwfk2f")))) + "0f3g3wjkvfkm961l4jpckhsqd43jnvm7f5qqk78qc32zh1fg339n")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -332,7 +336,7 @@ assistant.") (define-public coq-mathcomp (package (name "coq-mathcomp") - (version "1.10.0") + (version "1.11.0") (source (origin (method git-fetch) @@ -341,7 +345,7 @@ assistant.") (commit (string-append "mathcomp-" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1h5h1c2025r1ms5qryvwy6pikxmpmmjav6yl127xpzmqdi6w732d")))) + (base32 "1axywpa1jcpnidd86irpd1gdbbg2sfbwc652675xisq5wnmfmf6f")))) (build-system gnu-build-system) (native-inputs `(("ocaml" ,ocaml) @@ -374,7 +378,7 @@ part of the distribution.") (define-public coq-coquelicot (package (name "coq-coquelicot") - (version "3.0.3") + (version "3.1.0") (source (origin (method git-fetch) @@ -384,7 +388,7 @@ part of the distribution.") (file-name (git-file-name name version)) (sha256 (base32 - "0m5wbr2s8lnf8b7cfwv15hyzsmbcaz6hgdn7aazcrkxnwr87vgkp")))) + "0mz3pxan1237fr5fi79c66y7b9z7bmi0sc45kwrmkczsjm5462jm")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -427,7 +431,7 @@ theorems between the two libraries.") (define-public coq-bignums (package (name "coq-bignums") - (version "8.10.0") + (version "8.11.0") (source (origin (method git-fetch) (uri (git-reference @@ -436,7 +440,7 @@ theorems between the two libraries.") (file-name (git-file-name name version)) (sha256 (base32 - "0bpb4flckn4nqxbs3wjiznyx1k7r8k93qdigp3qwmikp2lxvcbw5")))) + "1xcd7c7qlvs0narfba6px34zq0mz8rffnhxw0kzhhg6i4iw115dp")))) (build-system gnu-build-system) (native-inputs `(("ocaml" ,ocaml) @@ -460,7 +464,7 @@ provides BigN, BigZ, BigQ that used to be part of Coq standard library.") (define-public coq-interval (package (name "coq-interval") - (version "3.4.1") + (version "4.0.0") (source (origin (method git-fetch) @@ -470,7 +474,7 @@ provides BigN, BigZ, BigQ that used to be part of Coq standard library.") (file-name (git-file-name name version)) (sha256 (base32 - "03q3dfqi3r3f7aji5s06ig4aav9ajcwswwdzi5lrgr69z0m487k4")))) + "01iz6qmnsm6b9s1vmdjs79vjx9xgwzn5rwyjp6bvs8hg3zlmhpip")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -556,16 +560,16 @@ uses Ltac to synthesize the substitution operation.") (define-public coq-equations (package (name "coq-equations") - (version "1.2.1") + (version "1.2.3") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/mattam82/Coq-Equations") - (commit (string-append "v" version "-8.10-2")))) + (commit (string-append "v" version "-8.11")))) (file-name (git-file-name name version)) (sha256 (base32 - "0j3z4l5nrbyi9zbbyqkc6kassjanwld2188mwmrbqspaypm2ys68")))) + "1srxz1rws8jsh7402g2x2vcqgjbbsr64dxxj5d2zs48pmhb20csf")))) (build-system gnu-build-system) (native-inputs `(("ocaml" ,ocaml) From e641a9569455f0c5f5b81d617720a6545bfc2fe0 Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Sun, 13 Sep 2020 21:39:12 +0800 Subject: [PATCH 032/757] gnu: rofi: Update to 1.6.0. * gnu/packages/xdisorg.scm (rofi): Update to 1.6.0. [inputs]: Add libjpeg-turbo. Signed-off-by: Efraim Flashner --- gnu/packages/xdisorg.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 50cde39e81..44f903ccb0 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -39,6 +39,7 @@ ;;; Copyright © 2020 Alex McGrath ;;; Copyright © 2020 Ivan Kozlov ;;; Copyright © 2020 Brett Gilio +;;; Copyright © 2020 Gabriel Arazas ;;; ;;; This file is part of GNU Guix. ;;; @@ -1453,7 +1454,7 @@ connectivity of the X server running on a particular @code{DISPLAY}.") (define-public rofi (package (name "rofi") - (version "1.5.4") + (version "1.6.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/DaveDavenport/rofi/" @@ -1461,13 +1462,14 @@ connectivity of the X server running on a particular @code{DISPLAY}.") version "/rofi-" version ".tar.xz")) (sha256 (base32 - "1nslmyqyzhfr4hxd4llqkkkb8ap8apkdna32rllvar7r576059ci")))) + "0566b499lbpfb1gk4p17iw78ywmk9l2jww1kqjbdanrl22hai1y4")))) (build-system gnu-build-system) (inputs `(("pango" ,pango) ("cairo" ,cairo) ("glib" ,glib) ("startup-notification" ,startup-notification) + ("libjpeg" ,libjpeg-turbo) ("librsvg" ,librsvg) ("libxkbcommon" ,libxkbcommon) ("libxcb" ,libxcb) From d67a3beb522f62720bbcaa1edbdab35514b9509e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 10:25:34 +0300 Subject: [PATCH 033/757] gnu: sxiv: Install desktop file. * gnu/packages/image-viewers.scm (sxiv)[arguments]: Add custom 'install-desktop-file phase to install desktop file. --- gnu/packages/image-viewers.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 16040e4c3c..1889be3c42 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2017, 2018, 2019, 2020 Ludovic Courtès ;;; Copyright © 2014 Ian Denhardt ;;; Copyright © 2015, 2016 Alex Kost -;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner ;;; Copyright © 2017 Alex Griffin ;;; Copyright © 2017 Nikita ;;; Copyright © 2017 Mathieu Othacehe @@ -212,7 +212,13 @@ It is the default image viewer on LXDE desktop environment.") "V=1") #:phases (modify-phases %standard-phases - (delete 'configure)))) ; no configure script + (delete 'configure) ; no configure script + (add-after 'install 'install-desktop-file + (lambda* (#:key outputs #:allow-other-keys) + (install-file "sxiv.desktop" + (string-append (assoc-ref outputs "out") + "/share/applications")) + #t))))) (inputs `(("freetype" ,freetype) ("giflib" ,giflib) From 858bb37a1daf276ac272aee0109eb4c17d8a2d23 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 10:27:46 +0300 Subject: [PATCH 034/757] gnu: sxiv: Install icons. * gnu/packages/image-viewers.scm (sxiv)[arguments]: Add custom phase to install icons. --- gnu/packages/image-viewers.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 1889be3c42..2f78458a06 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -218,7 +218,10 @@ It is the default image viewer on LXDE desktop environment.") (install-file "sxiv.desktop" (string-append (assoc-ref outputs "out") "/share/applications")) - #t))))) + #t)) + (add-after 'install 'install-icons + (lambda* (#:key make-flags #:allow-other-keys) + (apply invoke "make" "-C" "icon" "install" make-flags)))))) (inputs `(("freetype" ,freetype) ("giflib" ,giflib) From f165f7c9cb12f53b11ea5874e7e5bb07ee3beef7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 10:30:42 +0300 Subject: [PATCH 035/757] gnu: sxiv: Use 'cc-for-target'. * gnu/packages/image-viewers.scm (sxiv)[arguments]: Replace hard-coded gcc substitution with cc-for-target in make-flags. --- gnu/packages/image-viewers.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 2f78458a06..05e09263a0 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -203,7 +203,7 @@ It is the default image viewer on LXDE desktop environment.") `(#:tests? #f ; no check target #:make-flags (list (string-append "PREFIX=" %output) - "CC=gcc" + (string-append "CC=" ,(cc-for-target)) ;; Xft.h #includes without ‘freetype2/’. The Makefile ;; works around this by hard-coding /usr/include & $PREFIX. (string-append "CPPFLAGS=-I" From 2be5c2652a5fd79089048905ff6be60d74244d7b Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Mon, 14 Sep 2020 00:24:13 +0200 Subject: [PATCH 036/757] build-system: linux-module: Delete some huge items that we probably don't need. * guix/build-system/linux-module.scm (make-linux-module-builder): Delete some huge items that we probably don't need. --- guix/build-system/linux-module.scm | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/guix/build-system/linux-module.scm b/guix/build-system/linux-module.scm index 1077215671..fc3d959ce7 100644 --- a/guix/build-system/linux-module.scm +++ b/guix/build-system/linux-module.scm @@ -68,14 +68,41 @@ (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (out-lib-build (string-append out "/lib/modules/build"))) + ;; Delete some huge items that we probably don't need. ;; TODO: Only preserve the minimum, i.e. [Kbuild], Kconfig, ;; scripts, include, ".config". (copy-recursively "." out-lib-build) + (for-each (lambda (name) + (when (file-exists? name) + (delete-file-recursively name))) + (map (lambda (name) + (string-append out-lib-build "/" name)) + '("arch" ; 137 MB + ;"tools" ; 44 MB ; Note: is built by our 'build phase. + "tools/testing" ; 14 MB + "tools/perf" ; 17 MB + "drivers" ; 600 MB + "Documentation" ; 52 MB + "fs" ; 43 MB + "net" ; 33 MB + "samples" ; 2 MB + "sound"))) ; 40 MB + ;; Reinstate arch/**/dts since "scripts/dtc" depends on it. + ;; Reinstate arch/**/include directories. + ;; Reinstate arch/**/Makefile. + ;; Reinstate arch/**/module.lds. + (for-each + (lambda (name) + (mkdir-p (dirname (string-append out-lib-build "/" name))) + (copy-recursively name + (string-append out-lib-build "/" name))) + (append (find-files "arch" "^(dts|include)$" #:directories? #t) + (find-files "arch" "^(Makefile|module.lds)$"))) (let* ((linux (assoc-ref inputs "linux"))) (install-file (string-append linux "/System.map") out-lib-build) (let ((source (string-append linux "/Module.symvers"))) - (if (file-exists? source) + (when (file-exists? source) (install-file source out-lib-build)))) #t))))))))) From 24244f3fbff8cd107162803ab9c4392912ce6546 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Mon, 14 Sep 2020 10:27:32 +0200 Subject: [PATCH 037/757] gnu: python-wrapper: Mention pip in description. * gnu/packages/python.scm (python-wrapper)[description]: Mention that `pip' won't work properly if both python and python-wrapper are installed. --- gnu/packages/python.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 45d7288817..993ca0b40f 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -581,7 +581,9 @@ for more information."))) (description "This package provides wrappers for the commands of Python@tie{}3.x such that they can be invoked under their usual name---e.g., @command{python} -instead of @command{python3}."))) +instead of @command{python3} or @command{pip} instead of @command{pip3}. +To function properly, this package should not be installed together with the +@command{python} package."))) (define-public python-wrapper (wrap-python3 python)) (define-public python-minimal-wrapper (wrap-python3 python-minimal)) From 1d40e6fdd1898d94d9611b01ebd893aab72dec54 Mon Sep 17 00:00:00 2001 From: Caleb Ristvedt Date: Wed, 24 Jun 2020 01:00:40 -0500 Subject: [PATCH 038/757] .dir-locals.el: fix call-with-{retrying-}transaction indenting. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * .dir-locals.el (call-with-transaction, call-with-retrying-transaction): change scheme-indent-function property from 2 to 1. Signed-off-by: Ludovic Courtès --- .dir-locals.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.dir-locals.el b/.dir-locals.el index 7f966704c7..5954e313f2 100644 --- a/.dir-locals.el +++ b/.dir-locals.el @@ -90,9 +90,9 @@ (eval . (put 'let-system 'scheme-indent-function 1)) (eval . (put 'with-database 'scheme-indent-function 2)) - (eval . (put 'call-with-transaction 'scheme-indent-function 2)) + (eval . (put 'call-with-transaction 'scheme-indent-function 1)) (eval . (put 'with-statement 'scheme-indent-function 3)) - (eval . (put 'call-with-retrying-transaction 'scheme-indent-function 2)) + (eval . (put 'call-with-retrying-transaction 'scheme-indent-function 1)) (eval . (put 'call-with-savepoint 'scheme-indent-function 1)) (eval . (put 'call-with-retrying-savepoint 'scheme-indent-function 1)) From 14c422c12c86126cfb5ca7e1641bbcd78d02f711 Mon Sep 17 00:00:00 2001 From: Caleb Ristvedt Date: Sat, 8 Aug 2020 10:05:22 -0500 Subject: [PATCH 039/757] deduplication: pass store directory to replace-with-link. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This causes with-writable-file to take into consideration the actual store being used, as passed to 'deduplicate', rather than whatever (%store-directory) may return. * guix/store/deduplication.scm (replace-with-link): new keyword argument 'store'. Pass to with-writable-file. (with-writable-file, call-with-writable-file): new store argument. (deduplicate): pass store to replace-with-link. Signed-off-by: Ludovic Courtès --- .dir-locals.el | 2 +- guix/store/deduplication.scm | 102 ++++++++++++++++++----------------- 2 files changed, 54 insertions(+), 50 deletions(-) diff --git a/.dir-locals.el b/.dir-locals.el index 5954e313f2..7f310d2612 100644 --- a/.dir-locals.el +++ b/.dir-locals.el @@ -37,7 +37,7 @@ (eval . (put 'with-file-lock 'scheme-indent-function 1)) (eval . (put 'with-file-lock/no-wait 'scheme-indent-function 1)) (eval . (put 'with-profile-lock 'scheme-indent-function 1)) - (eval . (put 'with-writable-file 'scheme-indent-function 1)) + (eval . (put 'with-writable-file 'scheme-indent-function 2)) (eval . (put 'package 'scheme-indent-function 0)) (eval . (put 'package/inherit 'scheme-indent-function 1)) diff --git a/guix/store/deduplication.scm b/guix/store/deduplication.scm index df959bdd06..0655ceb890 100644 --- a/guix/store/deduplication.scm +++ b/guix/store/deduplication.scm @@ -94,8 +94,8 @@ LINK-PREFIX." (try (tempname-in link-prefix)) (apply throw args)))))) -(define (call-with-writable-file file thunk) - (if (string=? file (%store-directory)) +(define (call-with-writable-file file store thunk) + (if (string=? file store) (thunk) ;don't meddle with the store's permissions (let ((stat (lstat file))) (dynamic-wind @@ -106,17 +106,18 @@ LINK-PREFIX." (set-file-time file stat) (chmod file (stat:mode stat))))))) -(define-syntax-rule (with-writable-file file exp ...) +(define-syntax-rule (with-writable-file file store exp ...) "Make FILE writable for the dynamic extent of EXP..., except if FILE is the store." - (call-with-writable-file file (lambda () exp ...))) + (call-with-writable-file file store (lambda () exp ...))) ;; There are 3 main kinds of errors we can get from hardlinking: "Too many ;; things link to this" (EMLINK), "this link already exists" (EEXIST), and ;; "can't fit more stuff in this directory" (ENOSPC). (define* (replace-with-link target to-replace - #:key (swap-directory (dirname target))) + #:key (swap-directory (dirname target)) + (store (%store-directory))) "Atomically replace the file TO-REPLACE with a link to TARGET. Use SWAP-DIRECTORY as the directory to store temporary hard links. Upon ENOSPC and EMLINK, TO-REPLACE is left unchanged. @@ -137,7 +138,7 @@ Note: TARGET, TO-REPLACE, and SWAP-DIRECTORY must be on the same file system." ;; If we couldn't create TEMP-LINK, that's OK: just don't do the ;; replacement, which means TO-REPLACE won't be deduplicated. (when temp-link - (with-writable-file (dirname to-replace) + (with-writable-file (dirname to-replace) store (catch 'system-error (lambda () (rename-file temp-link to-replace)) @@ -154,46 +155,49 @@ under STORE." (define links-directory (string-append store "/.links")) - (mkdir-p links-directory) - (let loop ((path path) - (type (stat:type (lstat path))) - (hash hash)) - (if (eq? 'directory type) - ;; Can't hardlink directories, so hardlink their atoms. - (for-each (match-lambda - ((file . properties) - (unless (member file '("." "..")) - (let* ((file (string-append path "/" file)) - (type (match (assoc-ref properties 'type) - ((or 'unknown #f) - (stat:type (lstat file))) - (type type)))) - (loop file type - (and (not (eq? 'directory type)) - (nar-sha256 file))))))) - (scandir* path)) - (let ((link-file (string-append links-directory "/" - (bytevector->nix-base32-string hash)))) - (if (file-exists? link-file) - (replace-with-link link-file path - #:swap-directory links-directory) - (catch 'system-error - (lambda () - (link path link-file)) - (lambda args - (let ((errno (system-error-errno args))) - (cond ((= errno EEXIST) - ;; Someone else put an entry for PATH in - ;; LINKS-DIRECTORY before we could. Let's use it. - (replace-with-link path link-file - #:swap-directory links-directory)) - ((= errno ENOSPC) - ;; There's not enough room in the directory index for - ;; more entries in .links, but that's fine: we can - ;; just stop. - #f) - ((= errno EMLINK) - ;; PATH has reached the maximum number of links, but - ;; that's OK: we just can't deduplicate it more. - #f) - (else (apply throw args))))))))))) + (mkdir-p links-directory) + (let loop ((path path) + (type (stat:type (lstat path))) + (hash hash)) + (if (eq? 'directory type) + ;; Can't hardlink directories, so hardlink their atoms. + (for-each (match-lambda + ((file . properties) + (unless (member file '("." "..")) + (let* ((file (string-append path "/" file)) + (type (match (assoc-ref properties 'type) + ((or 'unknown #f) + (stat:type (lstat file))) + (type type)))) + (loop file type + (and (not (eq? 'directory type)) + (nar-sha256 file))))))) + (scandir* path)) + (let ((link-file (string-append links-directory "/" + (bytevector->nix-base32-string hash)))) + (if (file-exists? link-file) + (replace-with-link link-file path + #:swap-directory links-directory + #:store store) + (catch 'system-error + (lambda () + (link path link-file)) + (lambda args + (let ((errno (system-error-errno args))) + (cond ((= errno EEXIST) + ;; Someone else put an entry for PATH in + ;; LINKS-DIRECTORY before we could. Let's use it. + (replace-with-link path link-file + #:swap-directory + links-directory + #:store store)) + ((= errno ENOSPC) + ;; There's not enough room in the directory index for + ;; more entries in .links, but that's fine: we can + ;; just stop. + #f) + ((= errno EMLINK) + ;; PATH has reached the maximum number of links, but + ;; that's OK: we just can't deduplicate it more. + #f) + (else (apply throw args))))))))))) From a05c31ab3007a7a60f735ed7405fb9c54be1728d Mon Sep 17 00:00:00 2001 From: Caleb Ristvedt Date: Wed, 8 Jul 2020 11:33:23 -0500 Subject: [PATCH 040/757] database: document extra registration requirements. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It's necessary that store items be locked and protected from garbage collection while they are being registered. This documents that. * guix/store/database.scm (register-path, register-items): document GC protection and locking requirements. Signed-off-by: Ludovic Courtès --- guix/store/database.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/guix/store/database.scm b/guix/store/database.scm index 50b66ce282..e39a1603af 100644 --- a/guix/store/database.scm +++ b/guix/store/database.scm @@ -397,7 +397,10 @@ absolute file name to the state directory of the store being initialized. Return #t on success. Use with care as it directly modifies the store! This is primarily meant to -be used internally by the daemon's build hook." +be used internally by the daemon's build hook. + +PATH must be protected from GC and locked during execution of this, typically +by adding it as a temp-root." (define db-file (store-database-file #:prefix prefix #:state-directory state-directory)) @@ -423,7 +426,9 @@ be used internally by the daemon's build hook." "Register all of ITEMS, a list of records as returned by 'read-reference-graph', in DB. ITEMS must be in topological order (with leaves first.) REGISTRATION-TIME must be the registration time to be recorded -in the database; #f means \"now\". Write a progress report to LOG-PORT." +in the database; #f means \"now\". Write a progress report to LOG-PORT. All +of ITEMS must be protected from GC and locked during execution of this, +typically by adding them as temp-roots." (define store-dir (if prefix (string-append prefix %storedir) From 2932591b8aeec89732c8f8faa0d3f8ef900e68d2 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Tue, 23 Jun 2020 17:36:49 +0100 Subject: [PATCH 041/757] database: register-items: reduce transaction scope. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It was made transactional in a4678c6ba18d8dbd79d931f80426eebf61be7ebe, with the reasoning to prevent broken intermediate states from being visible. I think this means something like an entry being in ValidPaths, but the Refs not being inserted. Using a transaction for this makes sense, but I think using one single transaction for the whole register-items call is unnecessary to avoid broken states from being visible, and could block other writes to the store database while register-items is running. Because the deduplication and resetting timestamps happens within the transaction as well, even though these things don't involve the database, writes to the database will still be blocked while this is happening. To reduce the potential for register-items to block other writers to the database for extended periods, this commit moves the transaction to just wrap the call to sqlite-register. This is the one place where writes occur, so that should prevent the broken intermediate states issue above. The one difference this will make is some of the registered items will be visible to other connections while others may be still being added. I think this is OK, as it's equivalent to just registering different items. * guix/store/database.scm (register-items): Reduce transaction scope. Signed-off-by: Ludovic Courtès --- guix/store/database.scm | 37 +++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/guix/store/database.scm b/guix/store/database.scm index e39a1603af..2ea63b17aa 100644 --- a/guix/store/database.scm +++ b/guix/store/database.scm @@ -457,24 +457,25 @@ typically by adding them as temp-roots." (when reset-timestamps? (reset-timestamps real-file-name)) (let-values (((hash nar-size) (nar-sha256 real-file-name))) - (sqlite-register db #:path to-register - #:references (store-info-references item) - #:deriver (store-info-deriver item) - #:hash (string-append "sha256:" - (bytevector->base16-string hash)) - #:nar-size nar-size - #:time registration-time) + (call-with-retrying-transaction db + (lambda () + (sqlite-register db #:path to-register + #:references (store-info-references item) + #:deriver (store-info-deriver item) + #:hash (string-append + "sha256:" + (bytevector->base16-string hash)) + #:nar-size nar-size + #:time registration-time))) (when deduplicate? (deduplicate real-file-name hash #:store store-dir))))) - (call-with-retrying-transaction db - (lambda () - (let* ((prefix (format #f "registering ~a items" (length items))) - (progress (progress-reporter/bar (length items) - prefix log-port))) - (call-with-progress-reporter progress - (lambda (report) - (for-each (lambda (item) - (register db item) - (report)) - items))))))) + (let* ((prefix (format #f "registering ~a items" (length items))) + (progress (progress-reporter/bar (length items) + prefix log-port))) + (call-with-progress-reporter progress + (lambda (report) + (for-each (lambda (item) + (register db item) + (report)) + items))))) From 8cc8e584ab664057562ccf419031875127a6a395 Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 11 Sep 2020 12:43:40 +0200 Subject: [PATCH 042/757] gnu: ruby-pandoc-ruby: Use pandoc instead of ghc-pandoc. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/ruby.scm (ruby-pandoc-ruby)[native-inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index b181d1dc1f..c562ade153 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1115,7 +1115,7 @@ line of code.") #t)) (add-after 'unpack 'patch-pandoc-path (lambda* (#:key inputs #:allow-other-keys) - (let ((pandoc (string-append (assoc-ref inputs "ghc-pandoc") + (let ((pandoc (string-append (assoc-ref inputs "pandoc") "/bin/pandoc"))) (substitute* "lib/pandoc-ruby.rb" (("@@pandoc_path = 'pandoc'") @@ -1135,7 +1135,7 @@ line of code.") (native-inputs `(("ruby-mocha" ,ruby-mocha))) (inputs - `(("ghc-pandoc" ,ghc-pandoc))) + `(("pandoc" ,pandoc))) (synopsis "Ruby wrapper for Pandoc") (description "PandocRuby is a wrapper for Pandoc, a Haskell library with command line tools for converting one markup format to another. Pandoc can From d37279ee1e7696b58977a1fc334f6fd2197fe4fa Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 11 Sep 2020 12:43:41 +0200 Subject: [PATCH 043/757] gnu: emacs-ox-pandoc: Use pandoc instead of ghc-pandoc. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-ox-pandoc)[inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index d7b10c1164..2770ecf1ce 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -22009,7 +22009,7 @@ format.") "0iibxplgdp34bpq1yll2gmqjd8d8lnqn4mqjvx6cdf0y438yr4jz")))) (build-system emacs-build-system) (inputs - `(("pandoc" ,ghc-pandoc))) + `(("pandoc" ,pandoc))) (propagated-inputs `(("emacs-dash" ,emacs-dash) ("emacs-ht" ,emacs-ht))) From 991c61678b436b17f8c431f4c47162697286452b Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 11 Sep 2020 12:43:42 +0200 Subject: [PATCH 044/757] gnu: emacs-org-web-tools: Use pandoc instead of ghc-pandoc. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-org-webtools)[inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 2770ecf1ce..b11e9a793e 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -18462,7 +18462,7 @@ can be queued at any time.") ("emacs-esxml" ,emacs-esxml) ("emacs-s" ,emacs-s))) (inputs - `(("pandoc" ,ghc-pandoc))) + `(("pandoc" ,pandoc))) (arguments `(#:phases (modify-phases %standard-phases From 5dc5a3116b4aa90b2c0bbf3cffba0286abb75147 Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 11 Sep 2020 12:43:43 +0200 Subject: [PATCH 045/757] gnu: manuskript: Use pandoc instead of ghc-pandoc. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/text-editors.scm (manuskript)[inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès --- gnu/packages/text-editors.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index cbf7693ddb..18f1c00da5 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -670,7 +670,7 @@ environment with Markdown markup.") #:categories "Office;WordProcessor;")) #t)))))) (inputs - `(("ghc-pandoc" ,ghc-pandoc) + `(("pandoc" ,pandoc) ("python-lxml" ,python-lxml) ("python-markdown" ,python-markdown) ("python-pyqt" ,python-pyqt) From 885332832cf0eebcb80094acc4c98e4bb01b2493 Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 11 Sep 2020 12:43:44 +0200 Subject: [PATCH 046/757] gnu: ganeti: Use pandoc instead of ghc-pandoc. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/text-editors.scm (ganeti)[native-inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès --- gnu/packages/virtualization.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 9880acf085..8e634ba6c6 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -679,7 +679,7 @@ server and embedded PowerPC, and S390 guests.") ;; For the documentation. ("python-docutils" ,python-docutils) ("sphinx" ,python-sphinx) - ("pandoc" ,ghc-pandoc) + ("pandoc" ,pandoc) ("dot" ,graphviz) ;; Test dependencies. From c22c6de453a4685bc65bf38f92f823c733d62290 Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 11 Sep 2020 12:43:45 +0200 Subject: [PATCH 047/757] gnu: rapicorn: Use pandoc instead of ghc-pandoc. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/graphics.scm (rapicorn)[native-inputs]: Replace ghc-pandoc with pandoc. Signed-off-by: Ludovic Courtès --- gnu/packages/graphics.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index d6c8e415bb..cf52984183 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -1208,7 +1208,7 @@ realistic reflections, shading, perspective and other effects.") ("python" ,python-2) ("cython" ,python2-cython))) (native-inputs - `(("pandoc" ,ghc-pandoc) + `(("pandoc" ,pandoc) ("bison" ,bison) ("flex" ,flex) ("doxygen" ,doxygen) From f6807498bea9471dd7ef9b09359ba9077e7094e6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 13:17:40 +0200 Subject: [PATCH 048/757] gnu: Add altermime. * gnu/packages/mail.scm (altermime): New variable. --- gnu/packages/mail.scm | 63 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 4a9c6fc90f..2244653724 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -627,6 +627,69 @@ Extension (MIME).") (base32 "0slzlzcr3h8jikpz5a5amqd0csqh2m40gdk910ws2hnaf5m6hjbi")))))) +(define-public altermime + (package + (name "altermime") + (version "0.3.10") + (source (origin + (method url-fetch) + (uri (string-append "http://pldaniels.com/altermime/altermime-" + version ".tar.gz")) + (sha256 + (base32 + "0vn3vmbcimv0n14khxr1782m76983zz9sf4j2kz5v86lammxld43")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:tests? #f ; there are none + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'unpack 'fix-bugs + (lambda _ + (substitute* "MIME_headers.c" + (("hinfo->filename, sizeof\\(hinfo->name\\)") + "hinfo->filename, sizeof(hinfo->filename)") + (("memset\\(hinfo->defects, 0, _MIMEH_DEFECT_ARRAY_SIZE\\);") + "memset(hinfo->defects, 0, sizeof(hinfo->defects));")) + (substitute* "pldstr.c" + (("if \\(\\(st->start\\)&&\\(st->start != '\\\\0'\\)\\)") + "if ((st->start)&&(*st->start != '\\0'))")) + (substitute* "qpe.c" + (("if \\(lineend != '\\\\0'\\)") + "if (*lineend != '\\0')")) + #t)) + (add-after 'unpack 'install-to-prefix + (lambda _ + (substitute* "Makefile" + (("/usr/local") "${PREFIX}") + (("cp altermime.*") "install -D -t ${PREFIX}/bin altermime\n")) + #t)) + (add-after 'unpack 'disable-Werror + (lambda _ + (substitute* "Makefile" + (("-Werror") "")) + #t))))) + (home-page "https://pldaniels.com/altermime/") + (synopsis "Modify MIME-encoded messages") + (description + "alterMIME is a small program which is used to alter your mime-encoded +mailpack. What can alterMIME do? + +@enumerate +@item Insert disclaimers, +@item insert arbitary X-headers, +@item modify existing headers, +@item remove attachments based on filename or content-type, +@item replace attachments based on filename. +@end enumerate +.") + ;; MIME_headers.c is distributed under BSD-3; the rest of the code is + ;; published under the alterMIME license. + (license (list (license:non-copyleft "file://LICENSE") + license:bsd-3)))) + (define-public bogofilter (package (name "bogofilter") From 8c4f1aa85f3844fc8c989e74cef9d269dd30889c Mon Sep 17 00:00:00 2001 From: Stefan Date: Mon, 14 Sep 2020 14:20:16 +0200 Subject: [PATCH 049/757] gnu: grub: Support loading files from TFTP if the root filesystem is NFS. * gnu/bootloader/grub.scm (grub-root-search): Set the root to "(tftp)" if the searched-for file is stored on NFS. --- gnu/bootloader/grub.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index e3febeefd0..f69bf8ed4d 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -295,6 +295,33 @@ code." ((? file-system-label? label) (format #f "search --label --set ~a" (file-system-label->string label))) + ((? (lambda (device) + (and (string? device) (string-contains device ":/"))) nfs-uri) + ;; This assumes that if your root file system is on NFS, then + ;; you also want to load your grub extra files, kernel and initrd + ;; from there. + ;; + ;; We explicitly set "root=(tftp)" here even though if grub.cfg + ;; had been loaded via TFTP, Grub would have set "root=(tftp)" + ;; automatically anyway. The reason is if you have a system that + ;; used to be on NFS but now is local, root would be set to local + ;; disk. If you then selected an older system generation that is + ;; supposed to boot from network in the Grub boot menu, Grub still + ;; wouldn't load those files from network otherwise. + ;; + ;; TFTP is preferred to HTTP because it is used more widely and + ;; specified in standards more widely--especially BOOTP/DHCPv4 + ;; defines a TFTP server for DHCP option 66, but not HTTP. + ;; + ;; Note: DHCPv6 specifies option 59 to contain a boot-file-url, + ;; which can contain a HTTP or TFTP URL. + ;; + ;; Note: It is assumed that the file paths are of a similar + ;; setup on both the TFTP server and the NFS server (it is + ;; not possible to search for files on TFTP). + ;; + ;; TODO: Allow HTTP. + "set root=(tftp)") ((or #f (? string?)) #~(format #f "search --file --set ~a" #$file))))) From bc5dcd9ef5f82f68398010a2a4bcb95a35007896 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 14 Sep 2020 14:43:33 +0200 Subject: [PATCH 050/757] gnu: cuirass: Update to 0.0.1-45.cf11b73. * gnu/packages/ci.scm (cuirass): Update to 0.0.1-45.cf11b73. --- gnu/packages/ci.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index e0a0708847..5f7baebe20 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -47,8 +47,8 @@ #:use-module (guix build-system gnu)) (define-public cuirass - (let ((commit "00c7b4bb4432ff3f5ba28dca3625479e1fa129d8") - (revision "44")) + (let ((commit "cf11b73db00678b45b70108768138d0fb74d9506") + (revision "45")) (package (name "cuirass") (version (git-version "0.0.1" revision commit)) @@ -60,7 +60,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0xjl2in9hg24liahrhfr637ddwib3904ax9rpggyphamnvcxygzr")))) + "1f7jqnscy8vjqrpgl4cyynrvbx6zp3slsd82fykap6qvvwwn7xj8")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) From 735808b12cc23909b421e10e212a07e7aa69a5eb Mon Sep 17 00:00:00 2001 From: Paul Garlick Date: Mon, 14 Sep 2020 14:01:15 +0100 Subject: [PATCH 051/757] guix: Fix download-svn-to-store. * guix/svn-download.scm (download-svn-to-store): Add a subdirectory to the download path. The subdirectory is used as the target for the 'svn export' command, avoiding a 'directory exists' error when attempting to use the parent directory directly. --- guix/svn-download.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/guix/svn-download.scm b/guix/svn-download.scm index 59e2eb8d07..b96151234c 100644 --- a/guix/svn-download.scm +++ b/guix/svn-download.scm @@ -159,10 +159,11 @@ reports to LOG." (parameterize ((current-output-port log)) (build:svn-fetch (svn-reference-url ref) (svn-reference-revision ref) - temp + (string-append temp "/svn") #:user-name (svn-reference-user-name ref) #:password (svn-reference-password ref))))) (and result - (add-to-store store name #t "sha256" temp)))))) + (add-to-store store name #t "sha256" + (string-append temp "/svn"))))))) ;;; svn-download.scm ends here From 7809071c822589dfc3c65c539760e92936c41073 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 10 Sep 2020 16:28:11 +0200 Subject: [PATCH 052/757] daemon: Generalize 'HookInstance' to 'Agent'. * nix/libstore/build.cc (HookInstance): Rename to... (Agent): ... this. Rename 'toHook' and 'fromHook' similarly and update users. Change constructor to require a command and an argument list. (DerivationGoal::tryBuildHook): Pass arguments to the 'Agent' constructor. --- nix/libstore/build.cc | 90 ++++++++++++++++++++++++------------------- 1 file changed, 51 insertions(+), 39 deletions(-) diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index 29266f1dd6..346f92a8c3 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -85,7 +85,7 @@ static string pathNullDevice = "/dev/null"; /* Forward definition. */ class Worker; -struct HookInstance; +struct Agent; /* A pointer to a goal. */ @@ -265,7 +265,7 @@ public: LocalStore & store; - std::shared_ptr hook; + std::shared_ptr hook; Worker(LocalStore & store); ~Worker(); @@ -590,37 +590,41 @@ void UserLock::kill() ////////////////////////////////////////////////////////////////////// -struct HookInstance +/* An "agent" is a helper program that runs in the background and that we talk + to over pipes, such as the "guix offload" program. */ +struct Agent { - /* Pipes for talking to the build hook. */ - Pipe toHook; + /* Pipes for talking to the agent. */ + Pipe toAgent; - /* Pipe for the hook's standard output/error. */ - Pipe fromHook; + /* Pipe for the agent's standard output/error. */ + Pipe fromAgent; - /* Pipe for the builder's standard output/error. */ + /* Pipe for build standard output/error--e.g., for build processes started + by "guix offload". */ Pipe builderOut; - /* The process ID of the hook. */ + /* The process ID of the agent. */ Pid pid; - HookInstance(); + /* The 'guix' sub-command and arguments passed to the agent. */ + Agent(const string &command, const Strings &args); - ~HookInstance(); + ~Agent(); }; -HookInstance::HookInstance() +Agent::Agent(const string &command, const Strings &args) { - debug("starting build hook"); + debug(format("starting agent '%1%'") % command); const Path &buildHook = settings.guixProgram; /* Create a pipe to get the output of the child. */ - fromHook.create(); + fromAgent.create(); /* Create the communication pipes. */ - toHook.create(); + toAgent.create(); /* Create a pipe to get the output of the builder. */ builderOut.create(); @@ -628,38 +632,38 @@ HookInstance::HookInstance() /* Fork the hook. */ pid = startProcess([&]() { - commonChildInit(fromHook); + commonChildInit(fromAgent); if (chdir("/") == -1) throw SysError("changing into `/"); /* Dup the communication pipes. */ - if (dup2(toHook.readSide, STDIN_FILENO) == -1) + if (dup2(toAgent.readSide, STDIN_FILENO) == -1) throw SysError("dupping to-hook read side"); /* Use fd 4 for the builder's stdout/stderr. */ if (dup2(builderOut.writeSide, 4) == -1) throw SysError("dupping builder's stdout/stderr"); - execl(buildHook.c_str(), buildHook.c_str(), "offload", - settings.thisSystem.c_str(), - (format("%1%") % settings.maxSilentTime).str().c_str(), - (format("%1%") % settings.printBuildTrace).str().c_str(), - (format("%1%") % settings.buildTimeout).str().c_str(), - NULL); + Strings allArgs; + allArgs.push_back(buildHook); + allArgs.push_back(command); + allArgs.insert(allArgs.end(), args.begin(), args.end()); // append - throw SysError(format("executing `%1% offload'") % buildHook); + execv(buildHook.c_str(), stringsToCharPtrs(allArgs).data()); + + throw SysError(format("executing `%1% %2%'") % buildHook % command); }); pid.setSeparatePG(true); - fromHook.writeSide.close(); - toHook.readSide.close(); + fromAgent.writeSide.close(); + toAgent.readSide.close(); } -HookInstance::~HookInstance() +Agent::~Agent() { try { - toHook.writeSide.close(); + toAgent.writeSide.close(); pid.kill(true); } catch (...) { ignoreException(); @@ -760,7 +764,7 @@ private: Pipe builderOut; /* The build hook. */ - std::shared_ptr hook; + std::shared_ptr hook; /* Whether we're currently doing a chroot build. */ bool useChroot; @@ -1440,7 +1444,7 @@ void DerivationGoal::buildDone() /* Close the read side of the logger pipe. */ if (hook) { hook->builderOut.readSide.close(); - hook->fromHook.readSide.close(); + hook->fromAgent.readSide.close(); } else builderOut.readSide.close(); @@ -1587,8 +1591,16 @@ HookReply DerivationGoal::tryBuildHook() { if (!settings.useBuildHook) return rpDecline; - if (!worker.hook) - worker.hook = std::shared_ptr(new HookInstance); + if (!worker.hook) { + Strings args = { + settings.thisSystem.c_str(), + (format("%1%") % settings.maxSilentTime).str().c_str(), + (format("%1%") % settings.printBuildTrace).str().c_str(), + (format("%1%") % settings.buildTimeout).str().c_str() + }; + + worker.hook = std::make_shared("offload", args); + } /* Tell the hook about system features (beyond the system type) required from the build machine. (The hook could parse the @@ -1597,7 +1609,7 @@ HookReply DerivationGoal::tryBuildHook() foreach (Strings::iterator, i, features) checkStoreName(*i); /* !!! abuse */ /* Send the request to the hook. */ - writeLine(worker.hook->toHook.writeSide, (format("%1% %2% %3% %4%") + writeLine(worker.hook->toAgent.writeSide, (format("%1% %2% %3% %4%") % (worker.getNrLocalBuilds() < settings.maxBuildJobs ? "1" : "0") % drv.platform % drvPath % concatStringsSep(",", features)).str()); @@ -1605,7 +1617,7 @@ HookReply DerivationGoal::tryBuildHook() whether the hook wishes to perform the build. */ string reply; while (true) { - string s = readLine(worker.hook->fromHook.readSide); + string s = readLine(worker.hook->fromAgent.readSide); if (string(s, 0, 2) == "# ") { reply = string(s, 2); break; @@ -1637,21 +1649,21 @@ HookReply DerivationGoal::tryBuildHook() string s; foreach (PathSet::iterator, i, allInputs) { s += *i; s += ' '; } - writeLine(hook->toHook.writeSide, s); + writeLine(hook->toAgent.writeSide, s); /* Tell the hooks the missing outputs that have to be copied back from the remote system. */ s = ""; foreach (PathSet::iterator, i, missingPaths) { s += *i; s += ' '; } - writeLine(hook->toHook.writeSide, s); + writeLine(hook->toAgent.writeSide, s); - hook->toHook.writeSide.close(); + hook->toAgent.writeSide.close(); /* Create the log file and pipe. */ Path logFile = openLogFile(); set fds; - fds.insert(hook->fromHook.readSide); + fds.insert(hook->fromAgent.readSide); fds.insert(hook->builderOut.readSide); worker.childStarted(shared_from_this(), hook->pid, fds, false, true); @@ -2785,7 +2797,7 @@ void DerivationGoal::handleChildOutput(int fd, const string & data) writeFull(fdLogFile, data); } - if (hook && fd == hook->fromHook.readSide) + if (hook && fd == hook->fromAgent.readSide) writeToStderr(prefix + data); } From 27cc51c269fbe9d2ca65711d281c63ae441a9b4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 10 Sep 2020 16:46:52 +0200 Subject: [PATCH 053/757] daemon: Isolate signing and signature verification functions. * nix/libstore/local-store.cc (signHash, verifySignature): New functions. (LocalStore::exportPath): Use 'signHash' instead of inline code. (LocalStore::importPath): Use 'verifySignature' instead of inline code. --- nix/libstore/local-store.cc | 43 ++++++++++++++++++++++++++----------- 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/nix/libstore/local-store.cc b/nix/libstore/local-store.cc index e6badd3721..cbbd8e901d 100644 --- a/nix/libstore/local-store.cc +++ b/nix/libstore/local-store.cc @@ -1238,6 +1238,34 @@ static std::string runAuthenticationProgram(const Strings & args) return runProgram(settings.guixProgram, false, fullArgs); } +/* Sign HASH with the key stored in file SECRETKEY. Return the signature as a + string, or raise an exception upon error. */ +static std::string signHash(const string &secretKey, const Hash &hash) +{ + Strings args; + args.push_back("sign"); + args.push_back(secretKey); + args.push_back(printHash(hash)); + + return runAuthenticationProgram(args); +} + +/* Verify SIGNATURE and return the base16-encoded hash over which it was + computed. */ +static std::string verifySignature(const string &signature) +{ + Path tmpDir = createTempDir("", "guix", true, true, 0700); + AutoDelete delTmp(tmpDir); + + Path sigFile = tmpDir + "/sig"; + writeFile(sigFile, signature); + + Strings args; + args.push_back("verify"); + args.push_back(sigFile); + return runAuthenticationProgram(args); +} + void LocalStore::exportPath(const Path & path, bool sign, Sink & sink) { @@ -1280,12 +1308,7 @@ void LocalStore::exportPath(const Path & path, bool sign, Path secretKey = settings.nixConfDir + "/signing-key.sec"; checkSecrecy(secretKey); - Strings args; - args.push_back("sign"); - args.push_back(secretKey); - args.push_back(printHash(hash)); - - string signature = runAuthenticationProgram(args); + string signature = signHash(secretKey, hash); writeString(signature, hashAndWriteSink); @@ -1364,13 +1387,7 @@ Path LocalStore::importPath(bool requireSignature, Source & source) string signature = readString(hashAndReadSource); if (requireSignature) { - Path sigFile = tmpDir + "/sig"; - writeFile(sigFile, signature); - - Strings args; - args.push_back("verify"); - args.push_back(sigFile); - string hash2 = runAuthenticationProgram(args); + string hash2 = verifySignature(signature); /* Note: runProgram() throws an exception if the signature is invalid. */ From ee9dff34f9317509cb2b833d07a0d5e01a36a4ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 11 Sep 2020 12:34:25 +0200 Subject: [PATCH 054/757] daemon: Move 'Agent' to libutil. * nix/libstore/build.cc (DerivationGoal::tryBuildHook): Add "offload" to 'args' and pass settings.guixProgram as the first argument to Agent::Agent. (pathNullDevice, commonChildInit, Agent, Agent::Agent) (Agent::~Agent): Move to... * nix/libutil/util.cc: ... here. * nix/libutil/util.hh (struct Agent, commonChildInit): New declarations. --- nix/libstore/build.cc | 118 +----------------------------------------- nix/libutil/util.cc | 84 ++++++++++++++++++++++++++++++ nix/libutil/util.hh | 25 +++++++++ 3 files changed, 111 insertions(+), 116 deletions(-) diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index 346f92a8c3..88f8d11103 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -80,9 +80,6 @@ namespace nix { using std::map; -static string pathNullDevice = "/dev/null"; - - /* Forward definition. */ class Worker; struct Agent; @@ -397,33 +394,6 @@ void Goal::trace(const format & f) ////////////////////////////////////////////////////////////////////// -/* Common initialisation performed in child processes. */ -static void commonChildInit(Pipe & logPipe) -{ - /* Put the child in a separate session (and thus a separate - process group) so that it has no controlling terminal (meaning - that e.g. ssh cannot open /dev/tty) and it doesn't receive - terminal signals. */ - if (setsid() == -1) - throw SysError(format("creating a new session")); - - /* Dup the write side of the logger pipe into stderr. */ - if (dup2(logPipe.writeSide, STDERR_FILENO) == -1) - throw SysError("cannot pipe standard error into log file"); - - /* Dup stderr to stdout. */ - if (dup2(STDERR_FILENO, STDOUT_FILENO) == -1) - throw SysError("cannot dup stderr into stdout"); - - /* Reroute stdin to /dev/null. */ - int fdDevNull = open(pathNullDevice.c_str(), O_RDWR); - if (fdDevNull == -1) - throw SysError(format("cannot open `%1%'") % pathNullDevice); - if (dup2(fdDevNull, STDIN_FILENO) == -1) - throw SysError("cannot dup null device into stdin"); - close(fdDevNull); -} - /* Restore default handling of SIGPIPE, otherwise some programs will randomly say "Broken pipe". */ static void restoreSIGPIPE() @@ -586,91 +556,6 @@ void UserLock::kill() killUser(uid); } - -////////////////////////////////////////////////////////////////////// - - -/* An "agent" is a helper program that runs in the background and that we talk - to over pipes, such as the "guix offload" program. */ -struct Agent -{ - /* Pipes for talking to the agent. */ - Pipe toAgent; - - /* Pipe for the agent's standard output/error. */ - Pipe fromAgent; - - /* Pipe for build standard output/error--e.g., for build processes started - by "guix offload". */ - Pipe builderOut; - - /* The process ID of the agent. */ - Pid pid; - - /* The 'guix' sub-command and arguments passed to the agent. */ - Agent(const string &command, const Strings &args); - - ~Agent(); -}; - - -Agent::Agent(const string &command, const Strings &args) -{ - debug(format("starting agent '%1%'") % command); - - const Path &buildHook = settings.guixProgram; - - /* Create a pipe to get the output of the child. */ - fromAgent.create(); - - /* Create the communication pipes. */ - toAgent.create(); - - /* Create a pipe to get the output of the builder. */ - builderOut.create(); - - /* Fork the hook. */ - pid = startProcess([&]() { - - commonChildInit(fromAgent); - - if (chdir("/") == -1) throw SysError("changing into `/"); - - /* Dup the communication pipes. */ - if (dup2(toAgent.readSide, STDIN_FILENO) == -1) - throw SysError("dupping to-hook read side"); - - /* Use fd 4 for the builder's stdout/stderr. */ - if (dup2(builderOut.writeSide, 4) == -1) - throw SysError("dupping builder's stdout/stderr"); - - Strings allArgs; - allArgs.push_back(buildHook); - allArgs.push_back(command); - allArgs.insert(allArgs.end(), args.begin(), args.end()); // append - - execv(buildHook.c_str(), stringsToCharPtrs(allArgs).data()); - - throw SysError(format("executing `%1% %2%'") % buildHook % command); - }); - - pid.setSeparatePG(true); - fromAgent.writeSide.close(); - toAgent.readSide.close(); -} - - -Agent::~Agent() -{ - try { - toAgent.writeSide.close(); - pid.kill(true); - } catch (...) { - ignoreException(); - } -} - - ////////////////////////////////////////////////////////////////////// @@ -1593,13 +1478,14 @@ HookReply DerivationGoal::tryBuildHook() if (!worker.hook) { Strings args = { + "offload", settings.thisSystem.c_str(), (format("%1%") % settings.maxSilentTime).str().c_str(), (format("%1%") % settings.printBuildTrace).str().c_str(), (format("%1%") % settings.buildTimeout).str().c_str() }; - worker.hook = std::make_shared("offload", args); + worker.hook = std::make_shared(settings.guixProgram, args); } /* Tell the hook about system features (beyond the system type) diff --git a/nix/libutil/util.cc b/nix/libutil/util.cc index 17d145b4c6..59a2981359 100644 --- a/nix/libutil/util.cc +++ b/nix/libutil/util.cc @@ -1142,5 +1142,89 @@ void ignoreException() } } +static const string pathNullDevice = "/dev/null"; + +/* Common initialisation performed in child processes. */ +void commonChildInit(Pipe & logPipe) +{ + /* Put the child in a separate session (and thus a separate + process group) so that it has no controlling terminal (meaning + that e.g. ssh cannot open /dev/tty) and it doesn't receive + terminal signals. */ + if (setsid() == -1) + throw SysError(format("creating a new session")); + + /* Dup the write side of the logger pipe into stderr. */ + if (dup2(logPipe.writeSide, STDERR_FILENO) == -1) + throw SysError("cannot pipe standard error into log file"); + + /* Dup stderr to stdout. */ + if (dup2(STDERR_FILENO, STDOUT_FILENO) == -1) + throw SysError("cannot dup stderr into stdout"); + + /* Reroute stdin to /dev/null. */ + int fdDevNull = open(pathNullDevice.c_str(), O_RDWR); + if (fdDevNull == -1) + throw SysError(format("cannot open `%1%'") % pathNullDevice); + if (dup2(fdDevNull, STDIN_FILENO) == -1) + throw SysError("cannot dup null device into stdin"); + close(fdDevNull); +} + +////////////////////////////////////////////////////////////////////// + +Agent::Agent(const string &command, const Strings &args) +{ + debug(format("starting agent '%1%'") % command); + + /* Create a pipe to get the output of the child. */ + fromAgent.create(); + + /* Create the communication pipes. */ + toAgent.create(); + + /* Create a pipe to get the output of the builder. */ + builderOut.create(); + + /* Fork the hook. */ + pid = startProcess([&]() { + + commonChildInit(fromAgent); + + if (chdir("/") == -1) throw SysError("changing into `/"); + + /* Dup the communication pipes. */ + if (dup2(toAgent.readSide, STDIN_FILENO) == -1) + throw SysError("dupping to-hook read side"); + + /* Use fd 4 for the builder's stdout/stderr. */ + if (dup2(builderOut.writeSide, 4) == -1) + throw SysError("dupping builder's stdout/stderr"); + + Strings allArgs; + allArgs.push_back(command); + allArgs.insert(allArgs.end(), args.begin(), args.end()); // append + + execv(command.c_str(), stringsToCharPtrs(allArgs).data()); + + throw SysError(format("executing `%1%'") % command); + }); + + pid.setSeparatePG(true); + fromAgent.writeSide.close(); + toAgent.readSide.close(); +} + + +Agent::~Agent() +{ + try { + toAgent.writeSide.close(); + pid.kill(true); + } catch (...) { + ignoreException(); + } +} + } diff --git a/nix/libutil/util.hh b/nix/libutil/util.hh index 9e3c14bdd4..13cff44316 100644 --- a/nix/libutil/util.hh +++ b/nix/libutil/util.hh @@ -264,6 +264,29 @@ public: void setKillSignal(int signal); }; +/* An "agent" is a helper program that runs in the background and that we talk + to over pipes, such as the "guix offload" program. */ +struct Agent +{ + /* Pipes for talking to the agent. */ + Pipe toAgent; + + /* Pipe for the agent's standard output/error. */ + Pipe fromAgent; + + /* Pipe for build standard output/error--e.g., for build processes started + by "guix offload". */ + Pipe builderOut; + + /* The process ID of the agent. */ + Pid pid; + + /* The command and arguments passed to the agent. */ + Agent(const string &command, const Strings &args); + + ~Agent(); +}; + /* Kill all processes running under the specified uid by sending them a SIGKILL. */ @@ -295,6 +318,8 @@ void closeMostFDs(const set & exceptions); /* Set the close-on-exec flag for the given file descriptor. */ void closeOnExec(int fd); +/* Common initialisation performed in child processes. */ +void commonChildInit(Pipe & logPipe); /* User interruption. */ From 64cf660f872fb7aaf0d2b463e45b4c756297f743 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 11 Sep 2020 12:51:36 +0200 Subject: [PATCH 055/757] daemon: Spawn 'guix authenticate' once for all. Previously, we'd spawn 'guix authenticate' once for each item that has to be signed (when exporting) or authenticated (when importing). Now, we spawn it once for all and then follow a request/reply protocol. This reduces the wall-clock time of: guix archive --export -r $(guix build coreutils -d) from 30s to 2s. * guix/scripts/authenticate.scm (sign-with-key): Return the signature instead of displaying it. Raise a &formatted-message instead of calling 'leave'. (validate-signature): Likewise. (read-command): New procedure. (define-enumerate-type, reply-code): New macros. (guix-authenticate)[send-reply]: New procedure. Change to read commands from current-input-port. * nix/libstore/local-store.cc (runAuthenticationProgram): Remove. (authenticationAgent, readInteger, readAuthenticateReply): New functions. (signHash, verifySignature): Rewrite in terms of the agent. * tests/store.scm ("import not signed"): Remove 'pk' call. ("import signed by unauthorized key"): Check the error message of C. * tests/guix-authenticate.sh: Rewrite using the new protocol. fixlet --- guix/scripts/authenticate.scm | 138 ++++++++++++++++++++++++++-------- nix/libstore/local-store.cc | 87 ++++++++++++++++----- tests/guix-authenticate.sh | 45 ++++++----- tests/store.scm | 8 +- 4 files changed, 208 insertions(+), 70 deletions(-) diff --git a/guix/scripts/authenticate.scm b/guix/scripts/authenticate.scm index 37e6cef53c..dc73981092 100644 --- a/guix/scripts/authenticate.scm +++ b/guix/scripts/authenticate.scm @@ -22,6 +22,10 @@ #:use-module (gcrypt pk-crypto) #:use-module (guix pki) #:use-module (guix ui) + #:use-module (guix diagnostics) + #:use-module (srfi srfi-34) + #:use-module (srfi srfi-35) + #:use-module (rnrs bytevectors) #:use-module (ice-9 binary-ports) #:use-module (ice-9 rdelim) #:use-module (ice-9 match) @@ -40,41 +44,90 @@ (compose string->canonical-sexp read-string)) (define (sign-with-key key-file sha256) - "Sign the hash SHA256 (a bytevector) with KEY-FILE, and write an sexp that -includes both the hash and the actual signature." + "Sign the hash SHA256 (a bytevector) with KEY-FILE, and return the signature +as a canonical sexp that includes both the hash and the actual signature." (let* ((secret-key (call-with-input-file key-file read-canonical-sexp)) (public-key (if (string-suffix? ".sec" key-file) (call-with-input-file (string-append (string-drop-right key-file 4) ".pub") read-canonical-sexp) - (leave - (G_ "cannot find public key for secret key '~a'~%") - key-file))) + (raise + (formatted-message + (G_ "cannot find public key for secret key '~a'~%") + key-file)))) (data (bytevector->hash-data sha256 #:key-type (key-type public-key))) (signature (signature-sexp data secret-key public-key))) - (display (canonical-sexp->string signature)) - #t)) + signature)) (define (validate-signature signature) "Validate SIGNATURE, a canonical sexp. Check whether its public key is -authorized, verify the signature, and print the signed data to stdout upon -success." +authorized, verify the signature, and return the signed data (a bytevector) +upon success." (let* ((subject (signature-subject signature)) (data (signature-signed-data signature))) (if (and data subject) (if (authorized-key? subject) (if (valid-signature? signature) - (let ((hash (hash-data->bytevector data))) - (display (bytevector->base16-string hash)) - #t) ; success - (leave (G_ "error: invalid signature: ~a~%") - (canonical-sexp->string signature))) - (leave (G_ "error: unauthorized public key: ~a~%") - (canonical-sexp->string subject))) - (leave (G_ "error: corrupt signature data: ~a~%") - (canonical-sexp->string signature))))) + (hash-data->bytevector data) ; success + (raise + (formatted-message (G_ "invalid signature: ~a") + (canonical-sexp->string signature)))) + (raise + (formatted-message (G_ "unauthorized public key: ~a") + (canonical-sexp->string subject)))) + (raise + (formatted-message (G_ "corrupt signature data: ~a") + (canonical-sexp->string signature)))))) + +(define (read-command port) + "Read a command from PORT and return the command and arguments as a list of +strings. Return the empty list when the end-of-file is reached. + +Commands are newline-terminated and must look something like this: + + COMMAND 3:abc 5:abcde 1:x + +where COMMAND is an alphanumeric sequence and the remainder is the command +arguments. Each argument is written as its length (in characters), followed +by colon, followed by the given number of characters." + (define (consume-whitespace port) + (let ((chr (lookahead-u8 port))) + (when (eqv? chr (char->integer #\space)) + (get-u8 port) + (consume-whitespace port)))) + + (match (read-delimited " \t\n\r" port) + ((? eof-object?) + '()) + (command + (let loop ((result (list command))) + (consume-whitespace port) + (let ((next (lookahead-u8 port))) + (cond ((eqv? next (char->integer #\newline)) + (get-u8 port) + (reverse result)) + ((eof-object? next) + (reverse result)) + (else + (let* ((len (string->number (read-delimited ":" port))) + (str (utf8->string + (get-bytevector-n port len)))) + (loop (cons str result)))))))))) + +(define-syntax define-enumerate-type ;TODO: factorize + (syntax-rules () + ((_ name->int (name id) ...) + (define-syntax name->int + (syntax-rules (name ...) + ((_ name) id) ...))))) + +;; Codes used when reply to requests. +(define-enumerate-type reply-code + (success 0) + (command-not-found 404) + (command-failed 500)) ;;; @@ -85,6 +138,13 @@ success." (category internal) (synopsis "sign or verify signatures on normalized archives (nars)") + (define (send-reply code str) + ;; Send CODE and STR as a reply to our client. + (let ((bv (string->utf8 str))) + (format #t "~a ~a:" code (bytevector-length bv)) + (put-bytevector (current-output-port) bv) + (force-output (current-output-port)))) + ;; Signature sexps written to stdout may contain binary data, so force ;; ISO-8859-1 encoding so that things are not mangled. See ;; for details. @@ -95,21 +155,39 @@ success." (with-fluids ((%default-port-encoding "ISO-8859-1") (%default-port-conversion-strategy 'error)) (match args - (("sign" key-file hash) - (sign-with-key key-file (base16-string->bytevector hash))) - (("verify" signature-file) - (call-with-input-file signature-file - (lambda (port) - (validate-signature (string->canonical-sexp - (read-string port)))))) - (("--help") (display (G_ "Usage: guix authenticate OPTION... -Sign or verify the signature on the given file. This tool is meant to -be used internally by 'guix-daemon'.\n"))) +Sign data or verify signatures. This tool is meant to be used internally by +'guix-daemon'.\n"))) (("--version") (show-version-and-exit "guix authenticate")) - (else - (leave (G_ "wrong arguments")))))) + (() + (let loop () + (guard (c ((formatted-message? c) + (send-reply (reply-code command-failed) + (apply format #f + (G_ (formatted-message-string c)) + (formatted-message-arguments c))))) + ;; Read a request on standard input and reply. + (match (read-command (current-input-port)) + (("sign" signing-key (= base16-string->bytevector hash)) + (let ((signature (sign-with-key signing-key hash))) + (send-reply (reply-code success) + (canonical-sexp->string signature)))) + (("verify" signature) + (send-reply (reply-code success) + (bytevector->base16-string + (validate-signature + (string->canonical-sexp signature))))) + (() + (exit 0)) + (commands + (warning (G_ "~s: invalid command; ignoring~%") commands) + (send-reply (reply-code command-not-found) + "invalid command")))) + + (loop))) + (_ + (leave (G_ "wrong arguments~%")))))) ;;; authenticate.scm ends here diff --git a/nix/libstore/local-store.cc b/nix/libstore/local-store.cc index cbbd8e901d..8c479002ec 100644 --- a/nix/libstore/local-store.cc +++ b/nix/libstore/local-store.cc @@ -21,6 +21,7 @@ #include #include #include +#include #if HAVE_UNSHARE && HAVE_STATVFS && HAVE_SYS_MOUNT_H #include @@ -1231,39 +1232,91 @@ static void checkSecrecy(const Path & path) } -static std::string runAuthenticationProgram(const Strings & args) +/* Return the authentication agent, a "guix authenticate" process started + lazily. */ +static std::shared_ptr authenticationAgent() { - Strings fullArgs = { "authenticate" }; - fullArgs.insert(fullArgs.end(), args.begin(), args.end()); // append - return runProgram(settings.guixProgram, false, fullArgs); + static std::shared_ptr agent; + + if (!agent) { + Strings args = { "authenticate" }; + agent = std::make_shared(settings.guixProgram, args); + } + + return agent; +} + +/* Read an integer and the byte that immediately follows it from FD. Return + the integer. */ +static int readInteger(int fd) +{ + string str; + + while (1) { + char ch; + ssize_t rd = read(fd, &ch, 1); + if (rd == -1) { + if (errno != EINTR) + throw SysError("reading an integer"); + } else if (rd == 0) + throw EndOfFile("unexpected EOF reading an integer"); + else { + if (isdigit(ch)) { + str += ch; + } else { + break; + } + } + } + + return stoi(str); +} + +/* Read from FD a reply coming from 'guix authenticate'. The reply has the + form "CODE LEN:STR". CODE is an integer, where zero indicates success. + LEN specifies the length in bytes of the string that immediately + follows. */ +static std::string readAuthenticateReply(int fd) +{ + int code = readInteger(fd); + int len = readInteger(fd); + + string str; + str.resize(len); + readFull(fd, (unsigned char *) &str[0], len); + + if (code == 0) + return str; + else + throw Error(str); } /* Sign HASH with the key stored in file SECRETKEY. Return the signature as a string, or raise an exception upon error. */ static std::string signHash(const string &secretKey, const Hash &hash) { - Strings args; - args.push_back("sign"); - args.push_back(secretKey); - args.push_back(printHash(hash)); + auto agent = authenticationAgent(); + auto hexHash = printHash(hash); - return runAuthenticationProgram(args); + writeLine(agent->toAgent.writeSide, + (format("sign %1%:%2% %3%:%4%") + % secretKey.size() % secretKey + % hexHash.size() % hexHash).str()); + + return readAuthenticateReply(agent->fromAgent.readSide); } /* Verify SIGNATURE and return the base16-encoded hash over which it was computed. */ static std::string verifySignature(const string &signature) { - Path tmpDir = createTempDir("", "guix", true, true, 0700); - AutoDelete delTmp(tmpDir); + auto agent = authenticationAgent(); - Path sigFile = tmpDir + "/sig"; - writeFile(sigFile, signature); + writeLine(agent->toAgent.writeSide, + (format("verify %1%:%2%") + % signature.size() % signature).str()); - Strings args; - args.push_back("verify"); - args.push_back(sigFile); - return runAuthenticationProgram(args); + return readAuthenticateReply(agent->fromAgent.readSide); } void LocalStore::exportPath(const Path & path, bool sign, diff --git a/tests/guix-authenticate.sh b/tests/guix-authenticate.sh index 773443453d..f3b36ee41d 100644 --- a/tests/guix-authenticate.sh +++ b/tests/guix-authenticate.sh @@ -28,33 +28,38 @@ rm -f "$sig" "$hash" trap 'rm -f "$sig" "$hash"' EXIT +key="$abs_top_srcdir/tests/signing-key.sec" +key_len="`echo -n $key | wc -c`" + # A hexadecimal string as long as a sha256 hash. hash="2749f0ea9f26c6c7be746a9cff8fa4c2f2a02b000070dba78429e9a11f87c6eb" +hash_len="`echo -n $hash | wc -c`" -guix authenticate sign \ - "$abs_top_srcdir/tests/signing-key.sec" \ - "$hash" > "$sig" +echo "sign $key_len:$key $hash_len:$hash" | guix authenticate > "$sig" test -f "$sig" +case "$(cat $sig)" in + "0 "*) ;; + *) echo "broken signature: $(cat $sig)" + exit 42;; +esac -hash2="`guix authenticate verify "$sig"`" -test "$hash2" = "$hash" +# Remove the leading "0". +sed -i "$sig" -e's/^0 //g' + +hash2="$(echo verify $(cat "$sig") | guix authenticate)" +test "$(echo $hash2 | cut -d : -f 2)" = "$hash" # Detect corrupt signatures. -if guix authenticate verify /dev/null -then false -else true -fi +code="$(echo "verify 5:wrong" | guix authenticate | cut -f1 -d ' ')" +test "$code" -ne 0 # Detect invalid signatures. # The signature has (payload (data ... (hash sha256 #...#))). We proceed by # modifying this hash. sed -i "$sig" \ -e's|#[A-Z0-9]\{64\}#|#0000000000000000000000000000000000000000000000000000000000000000#|g' -if guix authenticate verify "$sig" -then false -else true -fi - +code="$(echo "verify $(cat $sig)" | guix authenticate | cut -f1 -d ' ')" +test "$code" -ne 0 # Test for : make sure 'guix authenticate' produces # valid signatures when run in the C locale. @@ -63,9 +68,11 @@ hash="5eff0b55c9c5f5e87b4e34cd60a2d5654ca1eb78c7b3c67c3179fed1cff07b4c" LC_ALL=C export LC_ALL -guix authenticate sign "$abs_top_srcdir/tests/signing-key.sec" "$hash" \ - > "$sig" +echo "sign $key_len:$key $hash_len:$hash" | guix authenticate > "$sig" -guix authenticate verify "$sig" -hash2="`guix authenticate verify "$sig"`" -test "$hash2" = "$hash" +# Remove the leading "0". +sed -i "$sig" -e's/^0 //g' + +echo "verify $(cat $sig)" | guix authenticate +hash2="$(echo "verify $(cat $sig)" | guix authenticate | cut -f2 -d ' ')" +test "$(echo $hash2 | cut -d : -f 2)" = "$hash" diff --git a/tests/store.scm b/tests/store.scm index 8ff76e8f98..3a2a21a250 100644 --- a/tests/store.scm +++ b/tests/store.scm @@ -990,7 +990,7 @@ ;; Ensure 'import-paths' raises an exception. (guard (c ((store-protocol-error? c) - (and (not (zero? (store-protocol-error-status (pk 'C c)))) + (and (not (zero? (store-protocol-error-status c))) (string-contains (store-protocol-error-message c) "lacks a signature")))) (let* ((source (open-bytevector-input-port dump)) @@ -1030,9 +1030,9 @@ ;; Ensure 'import-paths' raises an exception. (guard (c ((store-protocol-error? c) - ;; XXX: The daemon-provided error message currently doesn't - ;; mention the reason of the failure. - (not (zero? (store-protocol-error-status c))))) + (and (not (zero? (store-protocol-error-status c))) + (string-contains (store-protocol-error-message c) + "unauthorized public key")))) (let* ((source (open-bytevector-input-port dump)) (imported (import-paths %store source))) (pk 'unauthorized-imported imported) From 7d516c17da50dfc8ce635a21c37533d1fe27b43b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 11 Sep 2020 14:35:07 +0200 Subject: [PATCH 056/757] authenticate: Cache the ACL and key pairs. In practice we're always using the same key pair, /etc/guix/signing-key.{pub,sec}. Keeping them in cache allows us to avoid redundant I/O and parsing when signing multiple store items in a row. * guix/scripts/authenticate.scm (load-key-pair): New procedure. (sign-with-key): Remove 'key-file' parameter and add 'public-key' and 'secret-key'. Adjust accordingly. (validate-signature): Add 'acl' parameter and pass it to 'authorized-key?'. (guix-authenticate)[call-with-reply]: New procedure. [with-reply]: New macro. Call 'current-acl' upfront and cache its result. Add 'key-pairs' as an argument to 'loop' and use it as a cache of key pairs. --- guix/scripts/authenticate.scm | 98 +++++++++++++++++++++++------------ 1 file changed, 64 insertions(+), 34 deletions(-) diff --git a/guix/scripts/authenticate.scm b/guix/scripts/authenticate.scm index dc73981092..0bac13edee 100644 --- a/guix/scripts/authenticate.scm +++ b/guix/scripts/authenticate.scm @@ -25,10 +25,12 @@ #:use-module (guix diagnostics) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) + #:use-module (srfi srfi-71) #:use-module (rnrs bytevectors) #:use-module (ice-9 binary-ports) #:use-module (ice-9 rdelim) #:use-module (ice-9 match) + #:use-module (ice-9 vlist) #:export (guix-authenticate)) ;;; Commentary: @@ -43,32 +45,40 @@ ;; Read a gcrypt sexp from a port and return it. (compose string->canonical-sexp read-string)) -(define (sign-with-key key-file sha256) - "Sign the hash SHA256 (a bytevector) with KEY-FILE, and return the signature -as a canonical sexp that includes both the hash and the actual signature." - (let* ((secret-key (call-with-input-file key-file read-canonical-sexp)) - (public-key (if (string-suffix? ".sec" key-file) - (call-with-input-file +(define (load-key-pair key-file) + "Load the key pair whose secret key lives at KEY-FILE. Return a pair of +canonical sexps representing those keys." + (catch 'system-error + (lambda () + (let* ((secret-key (call-with-input-file key-file read-canonical-sexp)) + (public-key (call-with-input-file (string-append (string-drop-right key-file 4) ".pub") - read-canonical-sexp) - (raise - (formatted-message - (G_ "cannot find public key for secret key '~a'~%") - key-file)))) - (data (bytevector->hash-data sha256 - #:key-type (key-type public-key))) - (signature (signature-sexp data secret-key public-key))) - signature)) + read-canonical-sexp))) + (cons public-key secret-key))) + (lambda args + (let ((errno (system-error-errno args))) + (raise + (formatted-message + (G_ "failed to load key pair at '~a': ~a~%") + key-file (strerror errno))))))) -(define (validate-signature signature) +(define (sign-with-key public-key secret-key sha256) + "Sign the hash SHA256 (a bytevector) with SECRET-KEY (a canonical sexp), and +return the signature as a canonical sexp that includes SHA256, PUBLIC-KEY, and +the actual signature." + (let ((data (bytevector->hash-data sha256 + #:key-type (key-type public-key)))) + (signature-sexp data secret-key public-key))) + +(define (validate-signature signature acl) "Validate SIGNATURE, a canonical sexp. Check whether its public key is -authorized, verify the signature, and return the signed data (a bytevector) -upon success." +authorized in ACL, verify the signature, and return the signed data (a +bytevector) upon success." (let* ((subject (signature-subject signature)) (data (signature-signed-data signature))) (if (and data subject) - (if (authorized-key? subject) + (if (authorized-key? subject acl) (if (valid-signature? signature) (hash-data->bytevector data) ; success (raise @@ -145,6 +155,19 @@ by colon, followed by the given number of characters." (put-bytevector (current-output-port) bv) (force-output (current-output-port)))) + (define (call-with-reply thunk) + ;; Send a reply for the result of THUNK or for any exception raised during + ;; its execution. + (guard (c ((formatted-message? c) + (send-reply (reply-code command-failed) + (apply format #f + (G_ (formatted-message-string c)) + (formatted-message-arguments c))))) + (send-reply (reply-code success) (thunk)))) + + (define-syntax-rule (with-reply exp ...) + (call-with-reply (lambda () exp ...))) + ;; Signature sexps written to stdout may contain binary data, so force ;; ISO-8859-1 encoding so that things are not mangled. See ;; for details. @@ -162,31 +185,38 @@ Sign data or verify signatures. This tool is meant to be used internally by (("--version") (show-version-and-exit "guix authenticate")) (() - (let loop () - (guard (c ((formatted-message? c) - (send-reply (reply-code command-failed) - (apply format #f - (G_ (formatted-message-string c)) - (formatted-message-arguments c))))) + (let ((acl (current-acl))) + (let loop ((key-pairs vlist-null)) ;; Read a request on standard input and reply. (match (read-command (current-input-port)) (("sign" signing-key (= base16-string->bytevector hash)) - (let ((signature (sign-with-key signing-key hash))) - (send-reply (reply-code success) - (canonical-sexp->string signature)))) + (let* ((key-pairs keys + (match (vhash-assoc signing-key key-pairs) + ((_ . keys) + (values key-pairs keys)) + (#f + (let ((keys (load-key-pair signing-key))) + (values (vhash-cons signing-key keys + key-pairs) + keys)))))) + (with-reply (canonical-sexp->string + (match keys + ((public . secret) + (sign-with-key public secret hash))))) + (loop key-pairs))) (("verify" signature) - (send-reply (reply-code success) - (bytevector->base16-string + (with-reply (bytevector->base16-string (validate-signature - (string->canonical-sexp signature))))) + (string->canonical-sexp signature) + acl))) + (loop key-pairs)) (() (exit 0)) (commands (warning (G_ "~s: invalid command; ignoring~%") commands) (send-reply (reply-code command-not-found) - "invalid command")))) - - (loop))) + "invalid command") + (loop key-pairs)))))) (_ (leave (G_ "wrong arguments~%")))))) From 8eeeedcb35ac5514360a325116c188ef15f43de6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 14 Sep 2020 14:22:59 +0200 Subject: [PATCH 057/757] tests: Remove one 'delete-paths' call in 'tests/store.scm'. This makes the test slightly less expensive. * tests/store.scm ("add-text-to-store vs. delete-paths") ("add-to-store vs. delete-paths"): Delete and merge into... ("add-text-to-store/add-to-store vs. delete-paths"): ... this test. --- tests/store.scm | 36 ++++++++++++++---------------------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/tests/store.scm b/tests/store.scm index 3a2a21a250..38051bf5e5 100644 --- a/tests/store.scm +++ b/tests/store.scm @@ -223,30 +223,22 @@ ;;(> freed 0) (not (file-exists? p)))))) -(test-assert "add-text-to-store vs. delete-paths" - ;; Before, 'add-text-to-store' would return PATH2 without noticing that it - ;; is no longer valid. +(test-assert "add-text-to-store/add-to-store vs. delete-paths" + ;; Before, 'add-text-to-store' and 'add-to-store' would return the same + ;; store item without noticing that it is no longer valid. (with-store store (let* ((text (random-text)) - (path (add-text-to-store store "delete-me" text)) - (deleted (delete-paths store (list path))) - (path2 (add-text-to-store store "delete-me" text))) - (and (string=? path path2) - (equal? deleted (list path)) - (valid-path? store path) - (file-exists? path))))) - -(test-assert "add-to-store vs. delete-paths" - ;; Same as above. - (with-store store - (let* ((file (search-path %load-path "guix.scm")) - (path (add-to-store store "delete-me" #t "sha256" file)) - (deleted (delete-paths store (list path))) - (path2 (add-to-store store "delete-me" #t "sha256" file))) - (and (string=? path path2) - (equal? deleted (list path)) - (valid-path? store path) - (file-exists? path))))) + (file (search-path %load-path "guix.scm")) + (path1 (add-text-to-store store "delete-me" text)) + (path2 (add-to-store store "delete-me" #t "sha256" file)) + (deleted (delete-paths store (list path1 path2)))) + (and (string=? path1 (add-text-to-store store "delete-me" text)) + (string=? path2 (add-to-store store "delete-me" #t "sha256" file)) + (lset= string=? deleted (list path1 path2)) + (valid-path? store path1) + (valid-path? store path2) + (file-exists? path1) + (file-exists? path2))))) (test-equal "add-file-tree-to-store" `(42 From 846403ef62066b23c87b6f8a99fd8a551001fc52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 14 Sep 2020 15:16:59 +0200 Subject: [PATCH 058/757] ui: 'show-what-to-build' displays download estimate more prominently. * guix/ui.scm (show-what-to-build): When VERBOSITY is 1, add a newline before the "would/will be downloaded" line, and wrap that message in 'highlight'. --- guix/ui.scm | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/guix/ui.scm b/guix/ui.scm index 115d9801b2..ecaf975c1f 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -1075,16 +1075,19 @@ summary, and level 0 shows nothing." (null? hook) (map colorized-store-item hook))) ((= verbosity 1) ;; Display the bare minimum; don't mention grafts and hooks. + (unless (null? build) + (newline (current-error-port))) (if display-download-size? (format (current-error-port) ;; TRANSLATORS: "MB" is for "megabyte"; it should be ;; translated to the corresponding abbreviation. - (G_ "~:[~,1h MB would be downloaded~%~;~]") + (highlight (G_ "~:[~,1h MB would be downloaded~%~;~]")) (null? download) download-size) (format (current-error-port) - (N_ "~:[~h item would be downloaded~%~;~]" - "~:[~h items would be downloaded~%~;~]" - (length download)) + (highlight + (N_ "~:[~h item would be downloaded~%~;~]" + "~:[~h items would be downloaded~%~;~]" + (length download))) (null? download) (length download)))))) (begin @@ -1123,16 +1126,19 @@ summary, and level 0 shows nothing." (null? hook) (map colorized-store-item hook))) ((= verbosity 1) ;; Display the bare minimum; don't mention grafts and hooks. + (unless (null? build) + (newline (current-error-port))) (if display-download-size? (format (current-error-port) ;; TRANSLATORS: "MB" is for "megabyte"; it should be ;; translated to the corresponding abbreviation. - (G_ "~:[~,1h MB will be downloaded~%~;~]") + (highlight (G_ "~:[~,1h MB will be downloaded~%~;~]")) (null? download) download-size) (format (current-error-port) - (N_ "~:[~h item will be downloaded~%~;~]" - "~:[~h items will be downloaded~%~;~]" - (length download)) + (highlight + (N_ "~:[~h item will be downloaded~%~;~]" + "~:[~h items will be downloaded~%~;~]" + (length download))) (null? download) (length download))))))) (check-available-space installed-size) From 4a2cb3fa0e6384d7ad9f4cc7ca1fb46f63ebdb41 Mon Sep 17 00:00:00 2001 From: Ryan Prior Date: Mon, 14 Sep 2020 01:13:31 +0000 Subject: [PATCH 059/757] gnu: Add quickjs. * gnu/packages/javascript.scm (quickjs): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/javascript.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index fbc7388f3d..0e61cf10ff 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -447,3 +447,34 @@ to use, and is very similar to Lua. There is no need to interact with byzantine C++ template mechanisms, or worry about marking and unmarking garbage collection roots, or wrestle with obscure build systems.") (license license:isc))) + +(define-public quickjs + (package + (name "quickjs") + (version "2020-09-06") + (source (origin + (method url-fetch) + (uri (string-append "https://bellard.org/quickjs/quickjs-" + version ".tar.xz")) + (sha256 + (base32 + "05vpnnzmws7plnwsnk2brwf7whyj84l5xl0iahi1xdn6rpla6880")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (list "prefix=" + (string-append "DESTDIR=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'check + (lambda _ + (invoke "make" "microbench")))))) + (home-page "https://bellard.org/quickjs/") + (synopsis "Small embeddable Javascript engine") + (description "QuickJS supports the ES2020 specification including modules, +asynchronous generators, proxies, BigInt and BigDecimal. It can compile +Javascript sources to executables with no external dependency. It includes a +command line interpreter with contextual colorization implemented in +Javascript and a small built-in standard library with C library wrappers.") + (license license:expat))) From ef7381f463ec162b16fdd0f6396eefd19b678d40 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 16:20:07 +0300 Subject: [PATCH 060/757] doc: Fix docker configuration options. * doc/guix.texi (Docker Service): Fix typo in enable-proxy? default. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 5e4bfd8e85..bfffb4ac2a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -27998,7 +27998,7 @@ The Containerd package to use. @item @code{proxy} (default @var{docker-libnetwork-cmd-proxy}) The Docker user-land networking proxy package to use. -@item @code{enable-proxy?} (default @code{#f}) +@item @code{enable-proxy?} (default @code{#t}) Enable or disable the use of the Docker user-land networking proxy. @item @code{debug?} (default @code{#f}) From 8422a67dc16af4dd5eb82180463aa7a0b362d5b9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 16:35:36 +0300 Subject: [PATCH 061/757] services: docker: Make docker command available. * gnu/services/docker.scm (docker-service-type): Extend the profile-service-type and add the docker-cli package. --- gnu/services/docker.scm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gnu/services/docker.scm b/gnu/services/docker.scm index 380a942ed2..2fb2ae2c47 100644 --- a/gnu/services/docker.scm +++ b/gnu/services/docker.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2018 Danny Milosavljevic ;;; Copyright © 2020 Jakub Kądziołka ;;; Copyright © 2020 Maxim Cournoyer +;;; Copyright © 2020 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -133,6 +134,9 @@ loop-back communications.") bundles in Docker containers.") (extensions (list + ;; Make sure the 'docker' command is available. + (service-extension profile-service-type + (list docker-cli)) (service-extension activation-service-type %docker-activation) (service-extension shepherd-root-service-type From 913faed8ba69f9f8508a14de567eeb500fdb3a59 Mon Sep 17 00:00:00 2001 From: Alexandros Theodotou Date: Mon, 14 Sep 2020 15:16:30 +0100 Subject: [PATCH 062/757] gnu: Add lsp-dsp-lib. * gnu/packages/audio.scm (lsp-dsp-lib): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/audio.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 5e6008f31e..38ee4f8bcc 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -4778,6 +4778,37 @@ edited, converted, compressed and saved.") ,@(package-inputs ztoolkit))) (synopsis "ZToolkit with SVG support"))) +(define-public lsp-dsp-lib + (package + (name "lsp-dsp-lib") + (version "0.5.8") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/sadko4u/lsp-dsp-lib/" + "releases/download/lsp-dsp-lib-" version + "/lsp-dsp-lib-" version "-src.tar.gz")) + (sha256 + (base32 + "07w3d2i0z0xmvi1ngcgs7lc5a0da8jvf7rv4dnjk01md43b7fkh1")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:make-flags + (list (string-append "CC=" ,(cc-for-target))) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (invoke "make" "config" + (string-append "PREFIX=" (assoc-ref outputs "out")))))))) + (home-page "https://github.com/sadko4u/lsp-dsp-lib") + (synopsis "Digital signal processing library") + (description "The LSP DSP library provides a set of functions that perform +SIMD-optimized computing on several hardware architectures. All functions +currently operate on IEEE-754 single-precision floating-point numbers.") + (license license:lgpl3+))) + (define-public codec2 (package (name "codec2") From 327f6aec55deadbcba6193844e135b5e1cff13ac Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 14 Sep 2020 18:03:02 +0200 Subject: [PATCH 063/757] gnu: emacs-esup: Fix build. * gnu/packages/emacs-xyz.scm (emacs-esup): Update to 0.7.1-1.0de8af8. [native-inputs]: Add "emacs-buttercup" and "emacs-undercover", remove "emacs-el-mock". [propagated-inputs]: Add "emacs-dash". [arguments]: Fix testing. --- gnu/packages/emacs-xyz.scm | 58 +++++++++++++++++++------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index b11e9a793e..342adc6dd0 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -15035,36 +15035,36 @@ macro takes a first argument (whose value must be an alist) and a body.") (license license:gpl3+))) (define-public emacs-esup - (package - (name "emacs-esup") - (version "0.7") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/jschaf/esup") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "100w28n3qb3s5b18vvqpwmijdjnjazawn38i0pjbpxz5llhqgl1g")))) - (build-system emacs-build-system) - (native-inputs - `(("emacs-noflet" ,emacs-noflet) - ("emacs-el-mock" ,emacs-el-mock))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'install 'check - (lambda* (#:key inputs #:allow-other-keys) - (invoke "emacs" "--batch" "-L" "." - "-l" "test/esup-test.el" - "-f" "ert-run-tests-batch-and-exit")))))) - (home-page "https://github.com/jschaf/esup") - (synopsis "Emacs start up profiler") - (description "Benchmark Emacs Startup time without ever leaving + (let ((commit "0de8af8233d9ce1b67f05a50f25c481c4f1118d8") + (revision "1")) + (package + (name "emacs-esup") + (version (git-version "0.7.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jschaf/esup") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "01khb3xyj0ylwib6ryzzvqmkh5wvzxiq2n3l0s3h9zv7wx849bzv")))) + (build-system emacs-build-system) + (native-inputs + `(("emacs-noflet" ,emacs-noflet) + ("emacs-undercover" ,emacs-undercover) + ("emacs-buttercup" ,emacs-buttercup))) + (propagated-inputs + `(("emacs-dash" ,emacs-dash))) + (arguments + `(#:tests? #t + #:test-command '("buttercup" "-L" "."))) + (home-page "https://github.com/jschaf/esup") + (synopsis "Emacs start up profiler") + (description "Benchmark Emacs Startup time without ever leaving your Emacs.") - (license license:gpl2+))) + (license license:gpl2+)))) (define-public emacs-restart-emacs (let ((commit "9aa90d3df9e08bc420e1c9845ee3ff568e911bd9") From e1ce10e3856c514d05b0b34501e803e8813a0c1b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:01:33 +0200 Subject: [PATCH 064/757] gnu: r-activedriverwgs: Update to 1.1.0. * gnu/packages/bioconductor.scm (r-activedriverwgs): Update to 1.1.0. [propagated-inputs]: Remove r-plyr. [native-inputs]: Add r-knitr. --- gnu/packages/bioconductor.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index db1fdcad17..a9f8ff21c5 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -7159,14 +7159,14 @@ data.") (define-public r-activedriverwgs (package (name "r-activedriverwgs") - (version "1.0.1") + (version "1.1.0") (source (origin (method url-fetch) (uri (cran-uri "ActiveDriverWGS" version)) (sha256 (base32 - "08l9dj8d3cd74z1dqn8n4yqykwvqjxsfa067wnxyh7xnfvvnm5v1")))) + "0l6h0f54zjvcx19ngq3kp01dypsjqf28vssjm8yzccmpyacfypag")))) (properties `((upstream-name . "ActiveDriverWGS"))) (build-system r-build-system) @@ -7177,8 +7177,9 @@ data.") ("r-genomeinfodb" ,r-genomeinfodb) ("r-genomicranges" ,r-genomicranges) ("r-iranges" ,r-iranges) - ("r-plyr" ,r-plyr) ("r-s4vectors" ,r-s4vectors))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://cran.r-project.org/web/packages/ActiveDriverWGS/") (synopsis "Driver discovery tool for cancer whole genomes") (description From c629dce1df09e874839bcf8b6927ec21f0058cb8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:01:37 +0200 Subject: [PATCH 065/757] gnu: r-ggpmisc: Update to 0.3.6. * gnu/packages/cran.scm (r-ggpmisc): Update to 0.3.6. [propagated-inputs]: Add r-glue. --- gnu/packages/cran.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index be66533b0b..0d7d7e3cd8 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -253,17 +253,18 @@ series of numeric vectors/matrices and factors.") (define-public r-ggpmisc (package (name "r-ggpmisc") - (version "0.3.5") + (version "0.3.6") (source (origin (method url-fetch) (uri (cran-uri "ggpmisc" version)) (sha256 (base32 - "0ma2d3a3v8n85sghxr9anl6vgbs8gi82i1dllw99n81gsm59wgin")))) + "05i81q9rg8zf35vgcxhn3yhkc9dlvcpwpxncq1q3zs0rxhfkf208")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) ("r-dplyr" ,r-dplyr) + ("r-glue" ,r-glue) ("r-ggplot2" ,r-ggplot2) ("r-gridextra" ,r-gridextra) ("r-lubridate" ,r-lubridate) From adde9093691a272a5e766eff978ba2bd95729f77 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:01:40 +0200 Subject: [PATCH 066/757] gnu: r-callr: Update to 3.4.4. * gnu/packages/cran.scm (r-callr): Update to 3.4.4. --- 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 0d7d7e3cd8..6c127fdd8d 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -784,14 +784,14 @@ same time tries to group instances from the same class together.") (define-public r-callr (package (name "r-callr") - (version "3.4.3") + (version "3.4.4") (source (origin (method url-fetch) (uri (cran-uri "callr" version)) (sha256 (base32 - "1dc20gdawy9mhnc452qlshv2p4krs6c2gymvpv365mn141zjgdq1")))) + "1hgc4mfwv83104fh93v8g2srpwzjayq7krgzi9r0apq784r61642")))) (build-system r-build-system) (propagated-inputs `(("r-r6" ,r-r6) From 8c7a18577991b0e06b55495d66aef7bd4a7dfbbc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:01:43 +0200 Subject: [PATCH 067/757] gnu: r-jsonlite: Update to 1.7.1. * gnu/packages/cran.scm (r-jsonlite): Update to 1.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 6c127fdd8d..7f0ce4615b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -918,13 +918,13 @@ particularly easy to create complete web applications using httpuv alone.") (define-public r-jsonlite (package (name "r-jsonlite") - (version "1.7.0") + (version "1.7.1") (source (origin (method url-fetch) (uri (cran-uri "jsonlite" version)) (sha256 (base32 - "1izfrk5yahsz6s69wanfspn72qdffjglbr5305akj72ig9fnladq")))) + "1wygpnycmyf339x92hwapqk7nc1gs9cadx890b809a9spjhah41a")))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) From 54c91e4a6679aeb8527655f1d494cf7d17895e2e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:01:46 +0200 Subject: [PATCH 068/757] gnu: r-shape: Update to 1.4.5. * gnu/packages/cran.scm (r-shape): Update to 1.4.5. --- 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 7f0ce4615b..73c4c3f6ae 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -2261,14 +2261,14 @@ on (non-orthogonal) variable vectors in scatterplots and biplots.") (define-public r-shape (package (name "r-shape") - (version "1.4.4") + (version "1.4.5") (source (origin (method url-fetch) (uri (cran-uri "shape" version)) (sha256 (base32 - "0hadk3mapkhbh8xjkiz52vxdagmmgvm15xwpzb90ikw4giyipjzl")))) + "17qqhjyfhxv9la07ykaslb50c8g4d0cgfypx4y91h9i2yjw7jjh9")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/shape") (synopsis "Functions for plotting graphical shapes") From 5473d23f59cf5c58d0453fb64fc0e93545416db8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:01:49 +0200 Subject: [PATCH 069/757] gnu: r-lmtest: Update to 0.9-38. * gnu/packages/cran.scm (r-lmtest): Update to 0.9-38. --- 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 73c4c3f6ae..67ed761747 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -2789,14 +2789,14 @@ or excesses over a high threshold.") (define-public r-lmtest (package (name "r-lmtest") - (version "0.9-37") + (version "0.9-38") (source (origin (method url-fetch) (uri (cran-uri "lmtest" version)) (sha256 (base32 - "02nasm0j2vwkhz11dxqixs23msy1s3yj0jps6949fmgh9gwjkjfx")))) + "0sr19bmw2cpagfvwg772m79wvl1i2hww1xfr69bzr3rr8pm2r8ij")))) (build-system r-build-system) (propagated-inputs `(("r-zoo" ,r-zoo))) From c5199f2918d04f692112521ef100e2146dbc91a4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:01:52 +0200 Subject: [PATCH 070/757] gnu: r-inline: Update to 0.3.16. * gnu/packages/cran.scm (r-inline): Update to 0.3.16. --- 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 67ed761747..e6625ea375 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -2834,13 +2834,13 @@ by Li, Brown, Huang, and Bickel") (define-public r-inline (package (name "r-inline") - (version "0.3.15") + (version "0.3.16") (source (origin (method url-fetch) (uri (cran-uri "inline" version)) (sha256 (base32 - "0s4wssvpan189fijahknxq5s22ww9bzmdlmyhnra748r7khky17z")))) + "0x9m2hwin6anfhkf61cnsbqn4qp1pr2gy1pbwbdgbdz2cmns85nj")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/inline") (synopsis "Functions to inline C, C++, Fortran function calls from R") From dee6078a86d8f4cc0fec754f25e45491403af3ca Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:01:56 +0200 Subject: [PATCH 071/757] gnu: r-psych: Update to 2.0.8. * gnu/packages/cran.scm (r-psych): Update to 2.0.8. --- 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 e6625ea375..9a2efa235e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -3525,14 +3525,14 @@ problems as well as resampling based estimators of prediction error.") (define-public r-psych (package (name "r-psych") - (version "2.0.7") + (version "2.0.8") (source (origin (method url-fetch) (uri (cran-uri "psych" version)) (sha256 (base32 - "13z26yk9nrgviyakkij3jc7mja8wy7al9ripab07mvy21kli79bc")))) + "0ymds7ql2dv994m73h68dnhbsws8bl09p2rqvl6xsq6c6xr0yryg")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice) From 302dacec7e8a4205342e759a507f66bece8de213 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:01:59 +0200 Subject: [PATCH 072/757] gnu: r-xts: Update to 0.12.1. * gnu/packages/cran.scm (r-xts): Update to 0.12.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 9a2efa235e..fd065fd27a 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -4112,14 +4112,14 @@ training models for classification or ranking.") (define-public r-xts (package (name "r-xts") - (version "0.12-0") + (version "0.12.1") (source (origin (method url-fetch) (uri (cran-uri "xts" version)) (sha256 (base32 - "0q4cc8ynp7ndmgll1jj3lxyl6wmgg89ad3wq09kjc2ngszdfc4fz")))) + "0b6a7mpyk9aw6axas7nz01gadczprwwfhii01fz31z26z555i06n")))) (build-system r-build-system) (propagated-inputs `(("r-zoo" ,r-zoo))) (home-page "https://github.com/joshuaulrich/xts") From cb4243eaba27c48046d05ef6b903232a1e4925ba Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:02 +0200 Subject: [PATCH 073/757] gnu: r-processx: Update to 3.4.4. * gnu/packages/cran.scm (r-processx): Update to 3.4.4. --- 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 fd065fd27a..f4be50aa33 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -4409,13 +4409,13 @@ constants, and control debugging of packages via environment variables.") (define-public r-processx (package (name "r-processx") - (version "3.4.3") + (version "3.4.4") (source (origin (method url-fetch) (uri (cran-uri "processx" version)) (sha256 - (base32 "07dhzijqnj2zkm3qrk4ppsv8wscn8ysdsjbidlg9zrbj1wcg4izj")))) + (base32 "0as8lzfpbz5rcpcpczvrrgd67whngkmw12q33r2yn3k7lq80z95a")))) (build-system r-build-system) (propagated-inputs `(("r-ps" ,r-ps) From 60e4d972958de7507ea38e3300e8f913d659f712 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:05 +0200 Subject: [PATCH 074/757] gnu: r-xfun: Update to 0.17. * gnu/packages/cran.scm (r-xfun): Update to 0.17. --- 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 f4be50aa33..4efc4f5946 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -4556,13 +4556,13 @@ iVAT).") (define-public r-xfun (package (name "r-xfun") - (version "0.16") + (version "0.17") (source (origin (method url-fetch) (uri (cran-uri "xfun" version)) (sha256 - (base32 "1x7b71xhbl44fyccz69l24nbgyxawm2km90s4h1l3zr5z2vly0sg")))) + (base32 "1zd5qi1rrz3b1lpisapa2yscanz39ghaamf28g7aq3z9ai2a2ymj")))) (build-system r-build-system) ;; knitr itself depends on xfun #; From 8d8db33f71bfc9ba6592ca61b565f14a523db465 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:09 +0200 Subject: [PATCH 075/757] gnu: r-tsa: Update to 1.3. * gnu/packages/cran.scm (r-tsa): Update to 1.3. [propagated-inputs]: Add r-tseries. --- gnu/packages/cran.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 4efc4f5946..cdc6bd0976 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -5078,20 +5078,21 @@ University Press, 2000.") (define-public r-tsa (package (name "r-tsa") - (version "1.2") + (version "1.3") (source (origin (method url-fetch) (uri (cran-uri "TSA" version)) (sha256 (base32 - "0gjfqibwdznz0nka95k4fjm935svxjpnqfywwz403crn2lh30h6q")))) + "1bv5q609lhmrcxnjnvcj497fbjlv89zwa8q918hw4iki5nkvwwdb")))) (properties `((upstream-name . "TSA"))) (build-system r-build-system) (propagated-inputs `(("r-leaps" ,r-leaps) ("r-locfit" ,r-locfit) - ("r-mgcv" ,r-mgcv))) + ("r-mgcv" ,r-mgcv) + ("r-tseries" ,r-tseries))) (home-page "https://homepage.divms.uiowa.edu/~kchan/TSA.htm") (synopsis "Time series analysis") (description From 16cc10eafb61ffef351d5af4aebdb56bdb2d5c5e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:12 +0200 Subject: [PATCH 076/757] gnu: r-extradistr: Update to 1.9.1. * gnu/packages/cran.scm (r-extradistr): Update to 1.9.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 cdc6bd0976..8892dea5bf 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -5104,14 +5104,14 @@ Cryer and Kung-Sik Chan.") (define-public r-extradistr (package (name "r-extradistr") - (version "1.8.11") + (version "1.9.1") (source (origin (method url-fetch) (uri (cran-uri "extraDistr" version)) (sha256 (base32 - "1vvqv1d4hxa025gmm8cbiph63qsqy87l3ri5idd524gyz3chbcl3")))) + "1gypnbvdzczl0mvznvy8r7hzsvc5gvdvi2mmzj21cqdw9n63944r")))) (properties `((upstream-name . "extraDistr"))) (build-system r-build-system) (propagated-inputs From 9a22da37904bef366c56e6718f8bc93d53535592 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:16 +0200 Subject: [PATCH 077/757] gnu: r-officer: Update to 0.3.14. * gnu/packages/cran.scm (r-officer): Update to 0.3.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 8892dea5bf..de872accdd 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -6859,14 +6859,14 @@ references and Rd files.") (define-public r-officer (package (name "r-officer") - (version "0.3.13") + (version "0.3.14") (source (origin (method url-fetch) (uri (cran-uri "officer" version)) (sha256 (base32 - "15v5dishdsrw95nj6f7x23llzla3sgbvw35ibdk8ld3miwzxb2kr")))) + "1nyv4710bcd2afh1l1qiy5zrspjcdvc7mrzz5189dwy9xvgxi31h")))) (build-system r-build-system) (propagated-inputs `(("r-magrittr" ,r-magrittr) From 07c1620f818034556575a3a823a7bed0a69ed03a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:19 +0200 Subject: [PATCH 078/757] gnu: r-insight: Update to 0.9.5. * gnu/packages/cran.scm (r-insight): Update to 0.9.5. --- 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 de872accdd..ccb0d74654 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -7126,14 +7126,14 @@ other add-on packages.") (define-public r-insight (package (name "r-insight") - (version "0.9.1") + (version "0.9.5") (source (origin (method url-fetch) (uri (cran-uri "insight" version)) (sha256 (base32 - "0d6yzg5s0mz07bzxwfc77rpv4l20jpzrnhviqgkp02qw6a4nrwa6")))) + "0853kq4j8kic8z2gh5mxfqkwxjs4bdphlajzyvxka7af4r04bfmi")))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) From 6880269b94f74b7f5715d028c1c6062b2a03bf51 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:22 +0200 Subject: [PATCH 079/757] gnu: r-flextable: Update to 0.5.11. * gnu/packages/cran.scm (r-flextable): Update to 0.5.11. --- 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 ccb0d74654..a999185409 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -7260,14 +7260,14 @@ functions.") (define-public r-flextable (package (name "r-flextable") - (version "0.5.10") + (version "0.5.11") (source (origin (method url-fetch) (uri (cran-uri "flextable" version)) (sha256 (base32 - "1j7yvjiavar21ywck6nyz0p6bd66fnj99bq8lljdz4rrl3314yb8")))) + "1yb872izzr9yja7q2vfqm0imcbcgs0fvi4b19arhdlwwa42figj4")))) (build-system r-build-system) (propagated-inputs `(("r-base64enc" ,r-base64enc) From 9e3712958f75a862320e6b16b0ff8a8e0eec8d24 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:26 +0200 Subject: [PATCH 080/757] gnu: r-mosaiccore: Update to 0.8.0. * gnu/packages/cran.scm (r-mosaiccore): Update to 0.8.0. [propagated-inputs]: Remove r-lazyeval. --- gnu/packages/cran.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index a999185409..ab3050658f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -7915,18 +7915,17 @@ and coverage methods to tune the choice of threshold.") (define-public r-mosaiccore (package (name "r-mosaiccore") - (version "0.6.0") + (version "0.8.0") (source (origin (method url-fetch) (uri (cran-uri "mosaicCore" version)) (sha256 - (base32 "1klw97h6lchw1cpcl8s637ikcl428cckmjq0czi7mibh9q9mw72z")))) + (base32 "00va6x1i8d3wkm1bgsms9dsjfn5a1l43prpl9pqirgq3zm85hrqj")))) (properties `((upstream-name . "mosaicCore"))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) - ("r-lazyeval" ,r-lazyeval) ("r-mass" ,r-mass) ("r-rlang" ,r-rlang) ("r-tidyr" ,r-tidyr))) From 5efeef3f019c46c1a906a4e87798816638358ea9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:29 +0200 Subject: [PATCH 081/757] gnu: r-mosaicdata: Update to 0.20.1. * gnu/packages/cran.scm (r-mosaicdata): Update to 0.20.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 ab3050658f..976cfb23e6 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -7967,13 +7967,13 @@ while providing the intuitive capabilities of @code{r-ggplot2}.") (define-public r-mosaicdata (package (name "r-mosaicdata") - (version "0.18.0") + (version "0.20.1") (source (origin (method url-fetch) (uri (cran-uri "mosaicData" version)) (sha256 - (base32 "0cx5dg26ha7nzkdyghkbbd6ikncj60qv1538az77lfgn2jylvkbz")))) + (base32 "05mrwvs7awhpv2gvk0jjva74gndfgh2cl17slxcjhwlpga8nmxji")))) (properties `((upstream-name . "mosaicData"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/mosaicData/") From 7975d2c3b850b05bcb83fe15640bddedff294ca9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:32 +0200 Subject: [PATCH 082/757] gnu: r-performance: Update to 0.5.0. * gnu/packages/cran.scm (r-performance): Update to 0.5.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 976cfb23e6..57da0a99fc 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -9252,14 +9252,14 @@ ROPE percentage and pd).") (define-public r-performance (package (name "r-performance") - (version "0.4.8") + (version "0.5.0") (source (origin (method url-fetch) (uri (cran-uri "performance" version)) (sha256 (base32 - "1gl3m1pw0wrj9m9cgd0vzbj9swfwjg4aa40gpliplb9y7dcmgi4l")))) + "01csmn52d6rhlmcj7gi6ckc6v6a8pymnrpx9l729h13igxsnaf28")))) (build-system r-build-system) (propagated-inputs `(("r-bayestestr" ,r-bayestestr) From a1e92714ce5a6fe20ad75d760c728973dfc1a9fa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:36 +0200 Subject: [PATCH 083/757] gnu: r-ggeffects: Update to 0.16.0. * gnu/packages/cran.scm (r-ggeffects): Update to 0.16.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 57da0a99fc..ec648d1cd4 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -9279,14 +9279,14 @@ effects models and Bayesian models.") (define-public r-ggeffects (package (name "r-ggeffects") - (version "0.15.1") + (version "0.16.0") (source (origin (method url-fetch) (uri (cran-uri "ggeffects" version)) (sha256 (base32 - "12z58casz0yl1w7nfs64bz4miz0mmc300ap3rz4d2cc4z0rg0r47")))) + "0v8n8jmp6x1iagbyc5jgf1d29yz5hd3ibnyl9n9f73vqq5bzj0p5")))) (build-system r-build-system) (propagated-inputs `(("r-insight" ,r-insight) From 015e15c8369270325758ffb804f97e8ee9bf5789 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:39 +0200 Subject: [PATCH 084/757] gnu: r-rcpphnsw: Update to 0.3.0. * gnu/packages/cran.scm (r-rcpphnsw): Update to 0.3.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 ec648d1cd4..4b7efb47af 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -9971,14 +9971,14 @@ This package provides an R interface.") (define-public r-rcpphnsw (package (name "r-rcpphnsw") - (version "0.2.0") + (version "0.3.0") (source (origin (method url-fetch) (uri (cran-uri "RcppHNSW" version)) (sha256 (base32 - "0gqdkw7vkcm544rz45g0hplg836ygzbfwk9gh9wr0817icvdb3qv")))) + "01z0plf1i6dyibw4ica8shmijyk1grpqb886hcga72z2cpm4xsx0")))) (properties `((upstream-name . "RcppHNSW"))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp))) From 0b73771ad96caa5a2b1ee80f231145bfe3c0096b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:42 +0200 Subject: [PATCH 085/757] gnu: r-misc3d: Update to 0.9-0. * gnu/packages/cran.scm (r-misc3d): Update to 0.9-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 4b7efb47af..81c301edf5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -10125,14 +10125,14 @@ to colexicographical order.") (define-public r-misc3d (package (name "r-misc3d") - (version "0.8-4") + (version "0.9-0") (source (origin (method url-fetch) (uri (cran-uri "misc3d" version)) (sha256 (base32 - "0qjzpw3h09qi2gfz52b7nhzd95p7yyxsd03fldc9wzzn6wi3vpkm")))) + "10jf5r1x588vi54bzaqgi9mgcqlkiga2c3jvmqmk3lavc8fjksd1")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/misc3d/") (synopsis "Miscellaneous 3D Plots") From 0f93324a83f8248e2d1475ec912d8d658ba73e4e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:45 +0200 Subject: [PATCH 086/757] gnu: r-rnifti: Update to 1.2.2. * gnu/packages/cran.scm (r-rnifti): Update to 1.2.2. --- 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 81c301edf5..68100b2c9b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -10968,14 +10968,14 @@ Touzet and Varre (2007).") (define-public r-rnifti (package (name "r-rnifti") - (version "1.2.1") + (version "1.2.2") (source (origin (method url-fetch) (uri (cran-uri "RNifti" version)) (sha256 (base32 - "1a5s75iwwngzmi7y69j7xkcrrfvjyjrfalv9ldpgwii4cwkbyf10")))) + "0h837jdspy071ckij8szqd8149bm113jpqwbclg87is4brsm5jzg")))) (properties `((upstream-name . "RNifti"))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp))) From ffe714b5f441ca22d69ecef34bdbb8e61bf758c4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:48 +0200 Subject: [PATCH 087/757] gnu: r-fields: Update to 11.4. * gnu/packages/cran.scm (r-fields): Update to 11.4. --- 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 68100b2c9b..745653c445 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11935,13 +11935,13 @@ Differences with other sparse matrix packages are: (define-public r-fields (package (name "r-fields") - (version "10.3") + (version "11.4") (source (origin (method url-fetch) (uri (cran-uri "fields" version)) (sha256 - (base32 "12k97vfjlz5h8vynirnvik1nyj1iw25n8xl7awmx9mpd6wvgy2s9")))) + (base32 "0x8hbl0rn7gnhn7w45wd757g9in27884qr6vy30xrk150qaq941y")))) (build-system r-build-system) (propagated-inputs `(("r-maps" ,r-maps) From 11f448ba74ad6478afa61f32ce91c86d511cba71 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:51 +0200 Subject: [PATCH 088/757] gnu: r-etm: Update to 1.1.1. * gnu/packages/cran.scm (r-etm): 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 745653c445..5d1a15c0c6 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12200,14 +12200,14 @@ JASA, 94:496-509.") (define-public r-etm (package (name "r-etm") - (version "1.1") + (version "1.1.1") (source (origin (method url-fetch) (uri (cran-uri "etm" version)) (sha256 (base32 - "02yvh473l5qajaymhsxwb235a9r7q3nsig9a9mrfca68xih8yvgd")))) + "1hvrplmdpjjpjji663rw0vjbbrzj2nvr04d1nkc8bf46p4ixyxgy")))) (build-system r-build-system) (propagated-inputs `(("r-data-table" ,r-data-table) From 0435f7eec1e37e7571988fa738632f3043befbd4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:56 +0200 Subject: [PATCH 089/757] gnu: r-shinyjs: Update to 2.0.0. * gnu/packages/cran.scm (r-shinyjs): Update to 2.0.0. [native-inputs]: Add r-knitr. --- gnu/packages/cran.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 5d1a15c0c6..d603729bf0 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12855,20 +12855,22 @@ transformation, respectively.") (define-public r-shinyjs (package (name "r-shinyjs") - (version "1.1") + (version "2.0.0") (source (origin (method url-fetch) (uri (cran-uri "shinyjs" version)) (sha256 (base32 - "14k8y313ppj23m9rhlk8jc94x6sbn3qrsnx6xrijiyv8m8dii1l9")))) + "1zzq356dvd8ciajy6r5n4ybgx9xk7ydwv25j86xlcsqznkxdkkf2")))) (build-system r-build-system) (propagated-inputs `(("r-digest" ,r-digest) ("r-htmltools" ,r-htmltools) ("r-jsonlite" ,r-jsonlite) ("r-shiny" ,r-shiny))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://deanattali.com/shinyjs") (synopsis "Improve the user experience of your Shiny apps") (description From b426f79602a9b8c3a4d197f66a67a8d02a88df9a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:02:59 +0200 Subject: [PATCH 090/757] gnu: r-deldir: Update to 0.1-29. * gnu/packages/cran.scm (r-deldir): Update to 0.1-29. --- 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 d603729bf0..65cc03ace4 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13891,14 +13891,14 @@ sampling.") (define-public r-deldir (package (name "r-deldir") - (version "0.1-28") + (version "0.1-29") (source (origin (method url-fetch) (uri (cran-uri "deldir" version)) (sha256 (base32 - "12ys8jdcrgzhf9m2yirlqfars397qb0q0pbypahmfa66lgr6wdx5")))) + "1vwh8c8zxspyls05q9kgzz5p85i8k8aax5ir45np2bmg0pjvh6kv")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) (home-page "https://cran.r-project.org/web/packages/deldir") From ef59d5784176320035658cb5ffa96eaaa5d5cab8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:02 +0200 Subject: [PATCH 091/757] gnu: r-sf: Update to 0.9-6. * gnu/packages/cran.scm (r-sf): Update to 0.9-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 65cc03ace4..39215efaa9 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13915,14 +13915,14 @@ tessellation.") (define-public r-sf (package (name "r-sf") - (version "0.9-5") + (version "0.9-6") (source (origin (method url-fetch) (uri (cran-uri "sf" version)) (sha256 (base32 - "0c58asqrvz1pkdkb0lkzwz8cwb43pmxd39z0jp217hk7p7q3ngwf")))) + "01yqlnx9v7lzb6g4ywjlncz67cnkizszarnf2dmd4fi8abhw4zs9")))) (build-system r-build-system) (inputs `(("gdal" ,gdal) From 3f67fb11cfa7d5e1da8872eb0a4ec551f9e52794 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:05 +0200 Subject: [PATCH 092/757] gnu: r-dalex: Update to 2.0. * gnu/packages/cran.scm (r-dalex): Update to 2.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 39215efaa9..b614e2b341 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -16100,14 +16100,14 @@ been used in the call to @code{aov}.") (define-public r-dalex (package (name "r-dalex") - (version "1.3.1.1") + (version "2.0") (source (origin (method url-fetch) (uri (cran-uri "DALEX" version)) (sha256 (base32 - "0akw1yzhb3shpg6yb89vralqd2z80z5yk9azqaa55dx56as52kjs")))) + "1yn61cbqvyycn617pzhd7kgd34xsnmqvj3s10inn2ywycybk7byi")))) (properties `((upstream-name . "DALEX"))) (build-system r-build-system) (propagated-inputs From 515b74694528d13614077c43407ff94a2dfa0c5a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:08 +0200 Subject: [PATCH 093/757] gnu: r-systemfonts: Update to 0.3.1. * gnu/packages/cran.scm (r-systemfonts): Update to 0.3.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 b614e2b341..3140b8feca 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -16692,14 +16692,14 @@ both R code and compiled C/C++/FORTRAN code.") (define-public r-systemfonts (package (name "r-systemfonts") - (version "0.3.0") + (version "0.3.1") (source (origin (method url-fetch) (uri (cran-uri "systemfonts" version)) (sha256 (base32 - "16n25bin46r0vq59wjdskkb8631gzf7grwnp2wnk0zb9c2qr48ax")))) + "0ldxgcayyisp2gcbv4xw9zpb48bp4czi8016kq5nqdqhv1qb3sz0")))) (properties `((upstream-name . "systemfonts"))) (build-system r-build-system) (propagated-inputs From bf37420fe7c1a28cba34bb29d925b776ddd43ebb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:11 +0200 Subject: [PATCH 094/757] gnu: r-parameters: Update to 0.8.5. * gnu/packages/cran.scm (r-parameters): Update to 0.8.5. --- 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 3140b8feca..7d7147d3c4 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -16840,14 +16840,14 @@ in pipelines.") (define-public r-parameters (package (name "r-parameters") - (version "0.8.2") + (version "0.8.5") (source (origin (method url-fetch) (uri (cran-uri "parameters" version)) (sha256 (base32 - "0kamszscywvdh4gikl5mmma7s5p7spmhirq3wrgf7x7f4gppbbmh")))) + "1vax5p1znq2ddbks2i614hbrnn2x6x71942xx49p813qk8dh284l")))) (properties `((upstream-name . "parameters"))) (build-system r-build-system) (propagated-inputs From ad10a45225523acd1a3e71021a4245ccc6c3b205 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:15 +0200 Subject: [PATCH 095/757] gnu: r-gamlss: Update to 5.2-0. * gnu/packages/cran.scm (r-gamlss): Update to 5.2-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 7d7147d3c4..c32eff507f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -18158,14 +18158,14 @@ models.") (define-public r-gamlss (package (name "r-gamlss") - (version "5.1-7") + (version "5.2-0") (source (origin (method url-fetch) (uri (cran-uri "gamlss" version)) (sha256 (base32 - "0ywqwsp4k6jgnicp1gdsglji61l5cnackl52700v8kmkk83bq4c8")))) + "1q82md0439si0n7vqbbbdk45sjr0ad7i8mgrn3kwnr4h213pb4nk")))) (properties `((upstream-name . "gamlss"))) (build-system r-build-system) (propagated-inputs From df2210be8b885cfc9b0df46b9ff94d01824dd508 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:18 +0200 Subject: [PATCH 096/757] gnu: r-forecast: Update to 8.13. * gnu/packages/cran.scm (r-forecast): Update to 8.13. --- 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 c32eff507f..9628091399 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -20307,14 +20307,14 @@ Raftery, Appl.Statistics, 1989); it includes inference and basic methods.") (define-public r-forecast (package (name "r-forecast") - (version "8.12") + (version "8.13") (source (origin (method url-fetch) (uri (cran-uri "forecast" version)) (sha256 (base32 - "1ycj5z4wd5a16nlcjy07dqm8jkih240xa02cn4wvysnnhkapyq7b")))) + "0vrql5d4v28890np2m6ws1nr1fcl6frs1bz74vfkihkixcmkl3j9")))) (properties `((upstream-name . "forecast"))) (build-system r-build-system) (propagated-inputs From 0982ffa898acd0757158d454dd12f8bcf9634712 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:21 +0200 Subject: [PATCH 097/757] gnu: r-scatterpie: Update to 0.1.5. * gnu/packages/cran.scm (r-scatterpie): Update to 0.1.5. --- 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 9628091399..5a6efa7052 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -22481,14 +22481,14 @@ multi-state models.") (define-public r-scatterpie (package (name "r-scatterpie") - (version "0.1.4") + (version "0.1.5") (source (origin (method url-fetch) (uri (cran-uri "scatterpie" version)) (sha256 (base32 - "0g5sn0iv6c1q7y51j4gbbbnil5089dgk1w4q94c7h5y3x7wfrzqb")))) + "0h48l0699lpfagv09f53yismir84945m56qwzk52lc7wxyvkfcp1")))) (properties `((upstream-name . "scatterpie"))) (build-system r-build-system) (propagated-inputs From e6711231ed2cd592f72ad1c5c5b47de645c65eb4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:24 +0200 Subject: [PATCH 098/757] gnu: r-rfast: Update to 2.0.1. * gnu/packages/cran.scm (r-rfast): Update to 2.0.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 5a6efa7052..1c4e894228 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -23218,14 +23218,14 @@ aggregation for comparing different implementations in order to provide a (define-public r-rfast (package (name "r-rfast") - (version "2.0.0") + (version "2.0.1") (source (origin (method url-fetch) (uri (cran-uri "Rfast" version)) (sha256 (base32 - "010dm5h2vayvfbh0zny7i2c7fmn83r2b54849r0b4id3wjpmg3xy")))) + "1cq3mcg49hsvqhwn6f4dgsx7f8ma4qnwr5n6s7m22qy57rg31958")))) (properties `((upstream-name . "Rfast"))) (build-system r-build-system) (propagated-inputs From 8731d274ae1afb53a85151629f34e35d2eeb75c0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:29 +0200 Subject: [PATCH 099/757] gnu: r-seurat: Update to 3.2.1. * gnu/packages/cran.scm (r-seurat): Update to 3.2.1. [propagated-inputs]: Remove r-ape; add r-matrixstats. --- gnu/packages/cran.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 1c4e894228..20e2bc327f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -24437,18 +24437,17 @@ as allowing spectra with different resolutions.") (define-public r-seurat (package (name "r-seurat") - (version "3.2.0") + (version "3.2.1") (source (origin (method url-fetch) (uri (cran-uri "Seurat" version)) (sha256 (base32 - "1vj3dlsqakgnn4x1jz9fkl2cy0jzc5s65h1c20fnamr7lk45pnf2")))) + "0jipc4xpmx56jzc31w6nsl77ah8x8wq7jclg2mxhjql4ixkwmz54")))) (properties `((upstream-name . "Seurat"))) (build-system r-build-system) (propagated-inputs - `(("r-ape" ,r-ape) - ("r-cluster" ,r-cluster) + `(("r-cluster" ,r-cluster) ("r-cowplot" ,r-cowplot) ("r-fitdistrplus" ,r-fitdistrplus) ("r-future" ,r-future) @@ -24466,6 +24465,7 @@ as allowing spectra with different resolutions.") ("r-lmtest" ,r-lmtest) ("r-mass" ,r-mass) ("r-matrix" ,r-matrix) + ("r-matrixstats" ,r-matrixstats) ("r-miniui" ,r-miniui) ("r-patchwork" ,r-patchwork) ("r-pbapply" ,r-pbapply) From 1c1b94190253f19340e05e2118d3b5d093276522 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:32 +0200 Subject: [PATCH 100/757] gnu: r-diversitree: Update to 0.9-14. * gnu/packages/cran.scm (r-diversitree): Update to 0.9-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 20e2bc327f..a39c0e64cb 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -24530,14 +24530,14 @@ Maximum Parsimony, distance methods and Hadamard conjugation.") (define-public r-diversitree (package (name "r-diversitree") - (version "0.9-13") + (version "0.9-14") (source (origin (method url-fetch) (uri (cran-uri "diversitree" version)) (sha256 (base32 - "00vi4klywi35hd170ksjv3xja3hqqbkcidcnrrlpgv4179k0azix")))) + "0xkxw4n1rsagip51smh9k0h0lmnnvsajqcxma7yh95ifdkyrcyy4")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) From 98f76dbcfb115eb1284b8147edf409e9ba46314d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:36 +0200 Subject: [PATCH 101/757] gnu: r-mass: Update to 7.3-53. * gnu/packages/statistics.scm (r-mass): Update to 7.3-53. --- 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 70a85e8b60..31b06d27be 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -429,14 +429,14 @@ D.V. Hinkley (1997, CUP), originally written by Angelo Canty for S.") (define-public r-mass (package (name "r-mass") - (version "7.3-52") + (version "7.3-53") (source (origin (method url-fetch) (uri (cran-uri "MASS" version)) (sha256 (base32 - "0c4scl7r4m0bikr0wmdrnn7wfzy1vg5v7gsq6bms2vknzs9ymhxp")))) + "0f2bwsbqr3nzsqxva051lg8wd068naqif3vc48hac0m3mmq4x0j1")))) (properties `((upstream-name . "MASS"))) (build-system r-build-system) (home-page "http://www.stats.ox.ac.uk/pub/MASS4/") From 7e2aa0efba73dc2779d6e329270c10f7c108ba89 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:39 +0200 Subject: [PATCH 102/757] gnu: r-stringi: Update to 1.5.3. * gnu/packages/statistics.scm (r-stringi): Update to 1.5.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 31b06d27be..be048f7609 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1026,14 +1026,14 @@ solution for sending email, including attachments, from within R.") (define-public r-stringi (package (name "r-stringi") - (version "1.4.6") + (version "1.5.3") (source (origin (method url-fetch) (uri (cran-uri "stringi" version)) (sha256 (base32 - "1mkgxzf000zdgbbbvg2vf4md4l501n5lfksffq8vdg6pbgd6fgv3")))) + "0420f7zn5knyyvd3a3xa7059l4kadw0m67rfpivacqn9xn6iwkr2")))) (build-system r-build-system) (inputs `(("icu4c" ,icu4c))) (native-inputs `(("pkg-config" ,pkg-config))) From 995641369e60f117634f3074e85612d2b409ede9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:42 +0200 Subject: [PATCH 103/757] gnu: r-ggdendro: Update to 0.1.22. * gnu/packages/statistics.scm (r-ggdendro): Update to 0.1.22. --- 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 be048f7609..db97584514 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1135,13 +1135,13 @@ aesthetic attributes.") (define-public r-ggdendro (package (name "r-ggdendro") - (version "0.1.21") + (version "0.1.22") (source (origin (method url-fetch) (uri (cran-uri "ggdendro" version)) (sha256 (base32 - "0jcjdkhd3wirjgv4v3gb9rw8idyymwhwnxplg3wi8wa3mwr9rhq2")))) + "0skbj487b6f6pj2iz4yq2b9gbgb39cv5dyzhdl3w7ay1k0s5z9ph")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) From 90ff99d9c5bb24d7d77bb7795860745f520e3239 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:45 +0200 Subject: [PATCH 104/757] gnu: r-rcpparmadillo: Update to 0.9.900.3.0. * gnu/packages/statistics.scm (r-rcpparmadillo): Update to 0.9.900.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 db97584514..98916d42cc 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2598,13 +2598,13 @@ well as additional utilities such as panel and axis annotation functions.") (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.9.900.2.0") + (version "0.9.900.3.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "03dfy0avzpiaf1jk8h18y2gyj3zwlfvvfixi13q3zq5qaz93by2r")))) + "0x8jm6cvfvp1kyckwwqxyy5hfkr8na28fih3k0lhi55wry3ml30q")))) (properties `((upstream-name . "RcppArmadillo"))) (build-system r-build-system) (propagated-inputs From 2feb9435589b71b520f182df3ec5dc762b36c5ec Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:49 +0200 Subject: [PATCH 105/757] gnu: r-cowplot: Update to 1.1.0. * gnu/packages/statistics.scm (r-cowplot): Update to 1.1.0. [native-inputs]: Add r-knitr. --- gnu/packages/statistics.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 98916d42cc..4023000f01 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4522,20 +4522,22 @@ Farebrother's algorithm or Liu et al.'s algorithm.") (define-public r-cowplot (package (name "r-cowplot") - (version "1.0.0") + (version "1.1.0") (source (origin (method url-fetch) (uri (cran-uri "cowplot" version)) (sha256 (base32 - "19cqdhgfyr1wj0fz0c5ly8f0aiy9sfgzq6lzb78hkx0hdp2agybh")))) + "04d5pg4xi9nhgcbam71b5mp3q1g804ng864v90add1kddfyl3f9h")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) ("r-gtable" ,r-gtable) ("r-rlang" ,r-rlang) ("r-scales" ,r-scales))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://github.com/wilkelab/cowplot") (synopsis "Streamlined plot theme and plot annotations for ggplot2") (description From d60739dff2e2f5eb74173b73a5fd207ef7cd110a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 19:03:52 +0200 Subject: [PATCH 106/757] gnu: r-quantreg: Update to 5.67. * gnu/packages/statistics.scm (r-quantreg): Update to 5.67. --- 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 4023000f01..82f97c679e 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -5096,13 +5096,13 @@ using modular prediction and response module classes.") (define-public r-quantreg (package (name "r-quantreg") - (version "5.61") + (version "5.67") (source (origin (method url-fetch) (uri (cran-uri "quantreg" version)) (sha256 - (base32 "0kby1crnzkdg5sczwqapfpkr58apyzrrx85khigcqggmhhwl44wk")))) + (base32 "09hgch8x6x2k7wm17c0njp7l0r6rrrlcji60afrv19dm9r4596wr")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) From 62881beb4d63a9910b2d640779b7705c120d643f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 21:25:17 +0200 Subject: [PATCH 107/757] gnu: r-rgraphviz: Build reproducibly. Fixes . * gnu/packages/graph.scm (r-rgraphviz)[arguments]: Add phase "make-reproducible". --- gnu/packages/graph.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index a307fee808..ccffccb050 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -134,6 +134,16 @@ more.") "1calpvzgcz6v7s4x6bf35kj83sga95zjp7x87p5d3qnbv7q2wz5y")))) (properties `((upstream-name . "Rgraphviz"))) (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'make-reproducible + (lambda _ + ;; The replacement value is taken from src/graphviz/builddate.h + (substitute* "src/graphviz/configure" + (("VERSION_DATE=.*") + "VERSION_DATE=20200427.2341\n")) + #t))))) ;; FIXME: Rgraphviz bundles the sources of an older variant of ;; graphviz. It does not build with the latest version of graphviz, so ;; we do not add graphviz to the inputs. From f4d920b9f7ac404b245693fe21b39b7c41a49a61 Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:36 +0200 Subject: [PATCH 108/757] gnu: r-fourcseq: Move to (gnu packages bioconductor). * gnu/packages/cran.scm (r-fourcseq): Move from here... * gnu/packages/bioconductor.scm (r-fourcseq): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 45 +++++++++++++++++++++++++++++++++++ gnu/packages/cran.scm | 44 ---------------------------------- 2 files changed, 45 insertions(+), 44 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index a9f8ff21c5..5505747f67 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2019 Simon Tournier ;;; Copyright © 2020 Peter Lo +;;; Copyright © 2020 Mădălin Ionel Patrașcu ;;; ;;; This file is part of GNU Guix. ;;; @@ -8242,3 +8243,47 @@ with: @end itemize ") (license license:gpl2+))) + +(define-public r-fourcseq + (package + (name "r-fourcseq") + (version "1.22.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "FourCSeq" version)) + (sha256 + (base32 "14q1ijnqnbd9xs60sfvyqjfiypjrvhacpwp2v85yfhcxw870cx5b")))) + (properties `((upstream-name . "FourCSeq"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biostrings" ,r-biostrings) + ("r-deseq2" ,r-deseq2) + ("r-fda" ,r-fda) + ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicranges" ,r-genomicranges) + ("r-ggbio" ,r-ggbio) + ("r-ggplot2" ,r-ggplot2) + ("r-gtools" ,r-gtools) + ("r-lsd" ,r-lsd) + ("r-matrix" ,r-matrix) + ("r-reshape2" ,r-reshape2) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page + "https://bioconductor.org/packages/release/bioc/html/FourCSeq.html") + (synopsis "Analysis of multiplexed 4C sequencing data") + (description + "This package is an R package dedicated to the analysis of (multiplexed) +4C sequencing data. @code{r-fourcseq} provides a pipeline to detect specific +interactions between DNA elements and identify differential interactions +between conditions. The statistical analysis in R starts with individual bam +files for each sample as inputs. To obtain these files, the package contains +a Python script to demultiplex libraries and trim off primer sequences. With +a standard alignment software the required bam files can be then be +generated.") + (license license:gpl3+))) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index a39c0e64cb..5169800fef 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -22575,50 +22575,6 @@ Try a demo of the LSD by running @code{demotour()}.") ;; Either version (license (list license:gpl2 license:gpl3)))) -(define-public r-fourcseq - (package - (name "r-fourcseq") - (version "1.22.1") - (source - (origin - (method url-fetch) - (uri (bioconductor-uri "FourCSeq" version)) - (sha256 - (base32 "14q1ijnqnbd9xs60sfvyqjfiypjrvhacpwp2v85yfhcxw870cx5b")))) - (properties `((upstream-name . "FourCSeq"))) - (build-system r-build-system) - (propagated-inputs - `(("r-biobase" ,r-biobase) - ("r-biostrings" ,r-biostrings) - ("r-deseq2" ,r-deseq2) - ("r-fda" ,r-fda) - ("r-genomicalignments" ,r-genomicalignments) - ("r-genomicranges" ,r-genomicranges) - ("r-ggbio" ,r-ggbio) - ("r-ggplot2" ,r-ggplot2) - ("r-gtools" ,r-gtools) - ("r-lsd" ,r-lsd) - ("r-matrix" ,r-matrix) - ("r-reshape2" ,r-reshape2) - ("r-rsamtools" ,r-rsamtools) - ("r-rtracklayer" ,r-rtracklayer) - ("r-summarizedexperiment" ,r-summarizedexperiment))) - (native-inputs - `(("r-knitr" ,r-knitr))) - (home-page - "https://bioconductor.org/packages/release/bioc/html/FourCSeq.html") - (synopsis "Analysis of multiplexed 4C sequencing data") - (description - "This package is an R package dedicated to the analysis of (multiplexed) -4C sequencing data. @code{r-fourcseq} provides a pipeline to detect specific -interactions between DNA elements and identify differential interactions -between conditions. The statistical analysis in R starts with individual bam -files for each sample as inputs. To obtain these files, the package contains -a Python script to demultiplex libraries and trim off primer sequences. With -a standard alignment software the required bam files can be then be -generated.") - (license license:gpl3+))) - (define-public r-phylogram (package (name "r-phylogram") From 6e0ab26f31cd2bb7e5d88719d3d458df68c1963e Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:37 +0200 Subject: [PATCH 109/757] gnu: r-preprocesscore: Move to (gnu packages bioconductor). * gnu/packages/statistics.scm (r-preprocesscore): Move from here... * gnu/packages/bioconductor.scm (r-preprocesscore): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 21 +++++++++++++++++++++ gnu/packages/statistics.scm | 21 --------------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 5505747f67..1f4ae8170f 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8287,3 +8287,24 @@ a Python script to demultiplex libraries and trim off primer sequences. With a standard alignment software the required bam files can be then be generated.") (license license:gpl3+))) + +(define-public r-preprocesscore + (package + (name "r-preprocesscore") + (version "1.50.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "preprocessCore" version)) + (sha256 + (base32 + "0q1406kswylc8zn5k3wyd34p34pfzbhi1ggkfsh30zcjp6adbwjl")))) + (properties + `((upstream-name . "preprocessCore"))) + (build-system r-build-system) + (home-page "https://github.com/bmbolstad/preprocessCore") + (synopsis "Collection of pre-processing functions") + (description + "This package provides a library of core pre-processing and normalization +routines.") + (license license:lgpl2.0+))) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 82f97c679e..03a63e6ba1 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4079,27 +4079,6 @@ framework, with additional code inspection and report generation tools.") hierarchical clustering dendrograms.") (license license:gpl2+))) -(define-public r-preprocesscore - (package - (name "r-preprocesscore") - (version "1.50.0") - (source - (origin - (method url-fetch) - (uri (bioconductor-uri "preprocessCore" version)) - (sha256 - (base32 - "0q1406kswylc8zn5k3wyd34p34pfzbhi1ggkfsh30zcjp6adbwjl")))) - (properties - `((upstream-name . "preprocessCore"))) - (build-system r-build-system) - (home-page "https://github.com/bmbolstad/preprocessCore") - (synopsis "Collection of pre-processing functions") - (description - "This package provides a library of core pre-processing and normalization -routines.") - (license license:lgpl2.0+))) - (define-public r-fastcluster (package (name "r-fastcluster") From b3a998374c37964820a51182fa7be7a546fc4d46 Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:38 +0200 Subject: [PATCH 110/757] gnu: r-rgraphviz: Move to (gnu packages bioconductor). * gnu/packages/graph.scm (r-rgraphviz): Move from here... * gnu/packages/bioconductor.scm (r-rgraphviz): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 38 +++++++++++++++++++++++++++++++++++ gnu/packages/graph.scm | 38 ----------------------------------- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 1f4ae8170f..db853bfae3 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8308,3 +8308,41 @@ generated.") "This package provides a library of core pre-processing and normalization routines.") (license license:lgpl2.0+))) + +(define-public r-rgraphviz + (package + (name "r-rgraphviz") + (version "2.32.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "Rgraphviz" version)) + (sha256 + (base32 + "1calpvzgcz6v7s4x6bf35kj83sga95zjp7x87p5d3qnbv7q2wz5y")))) + (properties `((upstream-name . "Rgraphviz"))) + (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'make-reproducible + (lambda _ + ;; The replacement value is taken from src/graphviz/builddate.h + (substitute* "src/graphviz/configure" + (("VERSION_DATE=.*") + "VERSION_DATE=20200427.2341\n")) + #t))))) + ;; FIXME: Rgraphviz bundles the sources of an older variant of + ;; graphviz. It does not build with the latest version of graphviz, so + ;; we do not add graphviz to the inputs. + (inputs `(("zlib" ,zlib))) + (propagated-inputs + `(("r-graph" ,r-graph))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://bioconductor.org/packages/Rgraphviz") + (synopsis "Plotting capabilities for R graph objects") + (description + "This package interfaces R with the graphviz library for plotting R graph +objects from the @code{graph} package.") + (license license:epl1.0))) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index ccffccb050..db390fed5e 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -121,44 +121,6 @@ more.") (home-page "https://pypi.org/project/python-igraph/") (synopsis "Python bindings for the igraph network analysis library"))) -(define-public r-rgraphviz - (package - (name "r-rgraphviz") - (version "2.32.0") - (source - (origin - (method url-fetch) - (uri (bioconductor-uri "Rgraphviz" version)) - (sha256 - (base32 - "1calpvzgcz6v7s4x6bf35kj83sga95zjp7x87p5d3qnbv7q2wz5y")))) - (properties `((upstream-name . "Rgraphviz"))) - (build-system r-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'make-reproducible - (lambda _ - ;; The replacement value is taken from src/graphviz/builddate.h - (substitute* "src/graphviz/configure" - (("VERSION_DATE=.*") - "VERSION_DATE=20200427.2341\n")) - #t))))) - ;; FIXME: Rgraphviz bundles the sources of an older variant of - ;; graphviz. It does not build with the latest version of graphviz, so - ;; we do not add graphviz to the inputs. - (inputs `(("zlib" ,zlib))) - (propagated-inputs - `(("r-graph" ,r-graph))) - (native-inputs - `(("pkg-config" ,pkg-config))) - (home-page "https://bioconductor.org/packages/Rgraphviz") - (synopsis "Plotting capabilities for R graph objects") - (description - "This package interfaces R with the graphviz library for plotting R graph -objects from the @code{graph} package.") - (license license:epl1.0))) - (define-public r-rbiofabric (let ((commit "666c2ae8b0a537c006592d067fac6285f71890ac") (revision "1")) From 8c7c6db408ab11e1bed9607d044727af7593151b Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:39 +0200 Subject: [PATCH 111/757] gnu: r-delayedmatrixstats: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-delayedmatrixstats): Move from here... * gnu/packages/bioconductor.scm (r-delayedmatrixstats): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 36 +++++++++++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 36 --------------------------------- 2 files changed, 36 insertions(+), 36 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index db853bfae3..8d7daaeec0 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8346,3 +8346,39 @@ routines.") "This package interfaces R with the graphviz library for plotting R graph objects from the @code{graph} package.") (license license:epl1.0))) + +(define-public r-delayedmatrixstats + (package + (name "r-delayedmatrixstats") + (version "1.10.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "DelayedMatrixStats" version)) + (sha256 + (base32 + "046sam0rz42ph0m7jz7v3bck7d3h2mp45gzywh5dvc1qkjq6fdxx")))) + (properties + `((upstream-name . "DelayedMatrixStats"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocparallel" ,r-biocparallel) + ("r-delayedarray" ,r-delayedarray) + ("r-hdf5array" ,r-hdf5array) + ("r-iranges" ,r-iranges) + ("r-matrix" ,r-matrix) + ("r-matrixstats" ,r-matrixstats) + ("r-s4vectors" ,r-s4vectors))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/PeteHaitch/DelayedMatrixStats") + (synopsis "Functions that apply to rows and columns of DelayedMatrix objects") + (description + "This package provides a port of the @code{matrixStats} API for use with +@code{DelayedMatrix} objects from the @code{DelayedArray} package. It +contains high-performing functions operating on rows and columns of +@code{DelayedMatrix} objects, e.g. @code{colMedians}, @code{rowMedians}, +@code{colRanks}, @code{rowRanks}, @code{colSds}, and @code{rowSds}. Functions +are optimized per data type and for subsetted calculations such that both +memory usage and processing time is minimized.") + (license license:expat))) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ffa2618458..ccdc693e08 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10900,42 +10900,6 @@ cell-specific biases, assignment of cell cycle phase, and detection of highly variable and significantly correlated genes.") (license license:gpl3))) -(define-public r-delayedmatrixstats - (package - (name "r-delayedmatrixstats") - (version "1.10.1") - (source - (origin - (method url-fetch) - (uri (bioconductor-uri "DelayedMatrixStats" version)) - (sha256 - (base32 - "046sam0rz42ph0m7jz7v3bck7d3h2mp45gzywh5dvc1qkjq6fdxx")))) - (properties - `((upstream-name . "DelayedMatrixStats"))) - (build-system r-build-system) - (propagated-inputs - `(("r-biocparallel" ,r-biocparallel) - ("r-delayedarray" ,r-delayedarray) - ("r-hdf5array" ,r-hdf5array) - ("r-iranges" ,r-iranges) - ("r-matrix" ,r-matrix) - ("r-matrixstats" ,r-matrixstats) - ("r-s4vectors" ,r-s4vectors))) - (native-inputs - `(("r-knitr" ,r-knitr))) - (home-page "https://github.com/PeteHaitch/DelayedMatrixStats") - (synopsis "Functions that apply to rows and columns of DelayedMatrix objects") - (description - "This package provides a port of the @code{matrixStats} API for use with -@code{DelayedMatrix} objects from the @code{DelayedArray} package. It -contains high-performing functions operating on rows and columns of -@code{DelayedMatrix} objects, e.g. @code{colMedians}, @code{rowMedians}, -@code{colRanks}, @code{rowRanks}, @code{colSds}, and @code{rowSds}. Functions -are optimized per data type and for subsetted calculations such that both -memory usage and processing time is minimized.") - (license license:expat))) - (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) From 1193b77e60a20c2b2751b2abb500d36ab505080e Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:40 +0200 Subject: [PATCH 112/757] gnu: r-scran: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-scran): Move from here... * gnu/packages/bioconductor.scm (r-scran): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 43 +++++++++++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 43 --------------------------------- 2 files changed, 43 insertions(+), 43 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 8d7daaeec0..56ceed36c3 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8347,6 +8347,49 @@ routines.") objects from the @code{graph} package.") (license license:epl1.0))) +(define-public r-scran + (package + (name "r-scran") + (version "1.16.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "scran" version)) + (sha256 + (base32 + "1gm4ys4aq8h1pn45k1rxk384wjyf55izivw8kgxbrflj6j4xvvsv")))) + (build-system r-build-system) + (propagated-inputs + `(("r-beachmat" ,r-beachmat) + ("r-bh" ,r-bh) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocneighbors" ,r-biocneighbors) + ("r-biocparallel" ,r-biocparallel) + ("r-biocsingular" ,r-biocsingular) + ("r-delayedarray" ,r-delayedarray) + ("r-delayedmatrixstats" ,r-delayedmatrixstats) + ("r-dqrng" ,r-dqrng) + ("r-edger" ,r-edger) + ("r-igraph" ,r-igraph) + ("r-iranges" ,r-iranges) + ("r-limma" ,r-limma) + ("r-matrix" ,r-matrix) + ("r-rcpp" ,r-rcpp) + ("r-s4vectors" ,r-s4vectors) + ("r-scater" ,r-scater) + ("r-singlecellexperiment" ,r-singlecellexperiment) + ("r-statmod" ,r-statmod) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/scran") + (synopsis "Methods for single-cell RNA-Seq data analysis") + (description "This package implements a variety of low-level analyses of +single-cell RNA-seq data. Methods are provided for normalization of +cell-specific biases, assignment of cell cycle phase, and detection of highly +variable and significantly correlated genes.") + (license license:gpl3))) + (define-public r-delayedmatrixstats (package (name "r-delayedmatrixstats") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ccdc693e08..dcafbb2d21 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10857,49 +10857,6 @@ various analyses of single-cell RNA-seq gene expression data, with a focus on quality control.") (license license:gpl2+))) -(define-public r-scran - (package - (name "r-scran") - (version "1.16.0") - (source - (origin - (method url-fetch) - (uri (bioconductor-uri "scran" version)) - (sha256 - (base32 - "1gm4ys4aq8h1pn45k1rxk384wjyf55izivw8kgxbrflj6j4xvvsv")))) - (build-system r-build-system) - (propagated-inputs - `(("r-beachmat" ,r-beachmat) - ("r-bh" ,r-bh) - ("r-biocgenerics" ,r-biocgenerics) - ("r-biocneighbors" ,r-biocneighbors) - ("r-biocparallel" ,r-biocparallel) - ("r-biocsingular" ,r-biocsingular) - ("r-delayedarray" ,r-delayedarray) - ("r-delayedmatrixstats" ,r-delayedmatrixstats) - ("r-dqrng" ,r-dqrng) - ("r-edger" ,r-edger) - ("r-igraph" ,r-igraph) - ("r-iranges" ,r-iranges) - ("r-limma" ,r-limma) - ("r-matrix" ,r-matrix) - ("r-rcpp" ,r-rcpp) - ("r-s4vectors" ,r-s4vectors) - ("r-scater" ,r-scater) - ("r-singlecellexperiment" ,r-singlecellexperiment) - ("r-statmod" ,r-statmod) - ("r-summarizedexperiment" ,r-summarizedexperiment))) - (native-inputs - `(("r-knitr" ,r-knitr))) - (home-page "https://bioconductor.org/packages/scran") - (synopsis "Methods for single-cell RNA-Seq data analysis") - (description "This package implements a variety of low-level analyses of -single-cell RNA-seq data. Methods are provided for normalization of -cell-specific biases, assignment of cell cycle phase, and detection of highly -variable and significantly correlated genes.") - (license license:gpl3))) - (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) From 6b1946b334b9d3808d78dcd7963c0dab2ce7a908 Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:41 +0200 Subject: [PATCH 113/757] gnu: r-scater: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-scater): Move from here... * gnu/packages/bioconductor.scm (r-scater): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 37 +++++++++++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 37 --------------------------------- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 56ceed36c3..3fec500abb 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8347,6 +8347,43 @@ routines.") objects from the @code{graph} package.") (license license:epl1.0))) +(define-public r-scater + (package + (name "r-scater") + (version "1.16.2") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "scater" version)) + (sha256 + (base32 + "1pa5wvgjb30rw1vsjwbnn07ss3sc5n8ck5d7khdby4r2s9177s33")))) + (build-system r-build-system) + (propagated-inputs + `(("r-beachmat" ,r-beachmat) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocneighbors" ,r-biocneighbors) + ("r-biocparallel" ,r-biocparallel) + ("r-biocsingular" ,r-biocsingular) + ("r-delayedarray" ,r-delayedarray) + ("r-delayedmatrixstats" ,r-delayedmatrixstats) + ("r-ggbeeswarm" ,r-ggbeeswarm) + ("r-ggplot2" ,r-ggplot2) + ("r-matrix" ,r-matrix) + ("r-rcpp" ,r-rcpp) + ("r-rlang" ,r-rlang) + ("r-s4vectors" ,r-s4vectors) + ("r-singlecellexperiment" ,r-singlecellexperiment) + ("r-summarizedexperiment" ,r-summarizedexperiment) + ("r-viridis" ,r-viridis))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/davismcc/scater") + (synopsis "Single-cell analysis toolkit for gene expression data in R") + (description "This package provides a collection of tools for doing +various analyses of single-cell RNA-seq gene expression data, with a focus on +quality control.") + (license license:gpl2+))) + (define-public r-scran (package (name "r-scran") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index dcafbb2d21..8dea6df8a1 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10820,43 +10820,6 @@ factors for each cell, along with the usual metadata for genes and libraries.") (license license:gpl3))) -(define-public r-scater - (package - (name "r-scater") - (version "1.16.2") - (source (origin - (method url-fetch) - (uri (bioconductor-uri "scater" version)) - (sha256 - (base32 - "1pa5wvgjb30rw1vsjwbnn07ss3sc5n8ck5d7khdby4r2s9177s33")))) - (build-system r-build-system) - (propagated-inputs - `(("r-beachmat" ,r-beachmat) - ("r-biocgenerics" ,r-biocgenerics) - ("r-biocneighbors" ,r-biocneighbors) - ("r-biocparallel" ,r-biocparallel) - ("r-biocsingular" ,r-biocsingular) - ("r-delayedarray" ,r-delayedarray) - ("r-delayedmatrixstats" ,r-delayedmatrixstats) - ("r-ggbeeswarm" ,r-ggbeeswarm) - ("r-ggplot2" ,r-ggplot2) - ("r-matrix" ,r-matrix) - ("r-rcpp" ,r-rcpp) - ("r-rlang" ,r-rlang) - ("r-s4vectors" ,r-s4vectors) - ("r-singlecellexperiment" ,r-singlecellexperiment) - ("r-summarizedexperiment" ,r-summarizedexperiment) - ("r-viridis" ,r-viridis))) - (native-inputs - `(("r-knitr" ,r-knitr))) - (home-page "https://github.com/davismcc/scater") - (synopsis "Single-cell analysis toolkit for gene expression data in R") - (description "This package provides a collection of tools for doing -various analyses of single-cell RNA-seq gene expression data, with a focus on -quality control.") - (license license:gpl2+))) - (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) From 916a3e59ab1df1d530f7558b8d653d01a846ee1b Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:42 +0200 Subject: [PATCH 114/757] gnu: r-singlecellexperiment: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-singlecellexperiment): Move from here... * gnu/packages/bioconductor.scm (r-singlecellexperiment): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 29 +++++++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 29 ----------------------------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 3fec500abb..fbdb7eedb2 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8347,6 +8347,35 @@ routines.") objects from the @code{graph} package.") (license license:epl1.0))) +(define-public r-singlecellexperiment + (package + (name "r-singlecellexperiment") + (version "1.10.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "SingleCellExperiment" version)) + (sha256 + (base32 + "092wvk11n7pa234vlwhxm3gdi4k3sbnz1splhxalbdhz3jf02zfp")))) + (properties + `((upstream-name . "SingleCellExperiment"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-s4vectors" ,r-s4vectors) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/SingleCellExperiment") + (synopsis "S4 classes for single cell data") + (description "This package defines an S4 class for storing data from +single-cell experiments. This includes specialized methods to store and +retrieve spike-in information, dimensionality reduction coordinates and size +factors for each cell, along with the usual metadata for genes and +libraries.") + (license license:gpl3))) + (define-public r-scater (package (name "r-scater") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 8dea6df8a1..ef6d6fc2d8 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10791,35 +10791,6 @@ variety of commonly used matrix types, including sparse and HDF5-backed matrices.") (license license:gpl3))) -(define-public r-singlecellexperiment - (package - (name "r-singlecellexperiment") - (version "1.10.1") - (source - (origin - (method url-fetch) - (uri (bioconductor-uri "SingleCellExperiment" version)) - (sha256 - (base32 - "092wvk11n7pa234vlwhxm3gdi4k3sbnz1splhxalbdhz3jf02zfp")))) - (properties - `((upstream-name . "SingleCellExperiment"))) - (build-system r-build-system) - (propagated-inputs - `(("r-biocgenerics" ,r-biocgenerics) - ("r-s4vectors" ,r-s4vectors) - ("r-summarizedexperiment" ,r-summarizedexperiment))) - (native-inputs - `(("r-knitr" ,r-knitr))) - (home-page "https://bioconductor.org/packages/SingleCellExperiment") - (synopsis "S4 classes for single cell data") - (description "This package defines an S4 class for storing data from -single-cell experiments. This includes specialized methods to store and -retrieve spike-in information, dimensionality reduction coordinates and size -factors for each cell, along with the usual metadata for genes and -libraries.") - (license license:gpl3))) - (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) From 8863c14cd856d917552017646dbf4a36654e9515 Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:43 +0200 Subject: [PATCH 115/757] gnu: r-beachmat: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-beachmat): Move from here... * gnu/packages/bioconductor.scm (r-beachmat): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 25 +++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 25 ------------------------- 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index fbdb7eedb2..2796f4f90e 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8347,6 +8347,31 @@ routines.") objects from the @code{graph} package.") (license license:epl1.0))) +(define-public r-beachmat + (package + (name "r-beachmat") + (version "2.4.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "beachmat" version)) + (sha256 + (base32 + "1vl6jbf9ia78cm4ikdb8vz04jv4b46zhvg5i006c63a9pzw7zhxi")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-delayedarray" ,r-delayedarray) + ("r-matrix" ,r-matrix))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/beachmat") + (synopsis "Compiling Bioconductor to handle each matrix type") + (description "This package provides a consistent C++ class interface for a +variety of commonly used matrix types, including sparse and HDF5-backed +matrices.") + (license license:gpl3))) + (define-public r-singlecellexperiment (package (name "r-singlecellexperiment") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ef6d6fc2d8..a84d19727c 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10766,31 +10766,6 @@ block processing.") packages.") (license license:artistic2.0))) -(define-public r-beachmat - (package - (name "r-beachmat") - (version "2.4.0") - (source - (origin - (method url-fetch) - (uri (bioconductor-uri "beachmat" version)) - (sha256 - (base32 - "1vl6jbf9ia78cm4ikdb8vz04jv4b46zhvg5i006c63a9pzw7zhxi")))) - (build-system r-build-system) - (propagated-inputs - `(("r-biocgenerics" ,r-biocgenerics) - ("r-delayedarray" ,r-delayedarray) - ("r-matrix" ,r-matrix))) - (native-inputs - `(("r-knitr" ,r-knitr))) - (home-page "https://bioconductor.org/packages/beachmat") - (synopsis "Compiling Bioconductor to handle each matrix type") - (description "This package provides a consistent C++ class interface for a -variety of commonly used matrix types, including sparse and HDF5-backed -matrices.") - (license license:gpl3))) - (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) From c61268c1b74557bf6b8a26a9c95a47b1bea39d20 Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:44 +0200 Subject: [PATCH 116/757] gnu: r-rhdf5lib: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-rhdf5lib): Move from here... * gnu/packages/bioconductor.scm (r-rhdf5lib): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 83 +++++++++++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 82 -------------------------------- 2 files changed, 83 insertions(+), 82 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 2796f4f90e..e7db82741d 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2019 Simon Tournier ;;; Copyright © 2020 Peter Lo ;;; Copyright © 2020 Mădălin Ionel Patrașcu +;;; Copyright © 2020 Jakub Kądziołka ;;; ;;; This file is part of GNU Guix. ;;; @@ -8347,6 +8348,88 @@ routines.") objects from the @code{graph} package.") (license license:epl1.0))) +(define-public r-rhdf5lib + (package + (name "r-rhdf5lib") + (version "1.10.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "Rhdf5lib" version)) + (sha256 + (base32 + "0f45sqrvzj6x4mckalyp8366hm8v0rrmzklx3xd4gs6l2wallcn9")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete bundled binaries + (delete-file-recursively "src/wininclude/") + (delete-file-recursively "src/winlib-4.9.3/") + (delete-file-recursively "src/winlib-8.3.0/") + (delete-file "src/hdf5small_cxx_hl_1.10.6.tar.gz") + #t)))) + (properties `((upstream-name . "Rhdf5lib"))) + (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'do-not-use-bundled-hdf5 + (lambda* (#:key inputs #:allow-other-keys) + (for-each delete-file '("configure" "configure.ac")) + ;; Do not make other packages link with the proprietary libsz. + (substitute* "R/zzz.R" + ((" \"%s/libsz.a\"") "")) + (with-directory-excursion "src" + (invoke "tar" "xvf" (assoc-ref inputs "hdf5-source")) + (rename-file (string-append "hdf5-" ,(package-version hdf5-1.10)) + "hdf5") + ;; Remove timestamp and host system information to make + ;; the build reproducible. + (substitute* "hdf5/src/libhdf5.settings.in" + (("Configured on: @CONFIG_DATE@") + "Configured on: Guix") + (("Uname information:.*") + "Uname information: Linux\n") + ;; Remove unnecessary store reference. + (("C Compiler:.*") + "C Compiler: GCC\n")) + (rename-file "Makevars.in" "Makevars") + (substitute* "Makevars" + (("@ZLIB_LIB@") "-lz") + (("@ZLIB_INCLUDE@") "") + (("HDF5_CXX_LIB=.*") + (string-append "HDF5_CXX_LIB=" + (assoc-ref inputs "hdf5") "/lib/libhdf5_cpp.a\n")) + (("HDF5_LIB=.*") + (string-append "HDF5_LIB=" + (assoc-ref inputs "hdf5") "/lib/libhdf5.a\n")) + (("HDF5_CXX_INCLUDE=.*") "HDF5_CXX_INCLUDE=./hdf5/c++/src\n") + (("HDF5_INCLUDE=.*") "HDF5_INCLUDE=./hdf5/src\n") + (("HDF5_HL_INCLUDE=.*") "HDF5_HL_INCLUDE=./hdf5/hl/src\n") + (("HDF5_HL_CXX_INCLUDE=.*") "HDF5_HL_CXX_INCLUDE=./hdf5/hl/c++/src\n") + (("HDF5_HL_LIB=.*") + (string-append "HDF5_HL_LIB=" + (assoc-ref inputs "hdf5") "/lib/libhdf5_hl.a\n")) + (("HDF5_HL_CXX_LIB=.*") + (string-append "HDF5_HL_CXX_LIB=" + (assoc-ref inputs "hdf5") "/lib/libhdf5_hl_cpp.a\n")) + ;; szip is non-free software + (("cp \"\\$\\{SZIP_LIB\\}.*") "") + (("PKG_LIBS =.*") "PKG_LIBS = -lz -lhdf5\n"))) + #t))))) + (inputs + `(("zlib" ,zlib))) + (propagated-inputs + `(("hdf5" ,hdf5-1.10))) + (native-inputs + `(("hdf5-source" ,(package-source hdf5-1.10)) + ("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/Rhdf5lib") + (synopsis "HDF5 library as an R package") + (description "This package provides C and C++ HDF5 libraries for use in R +packages.") + (license license:artistic2.0))) + (define-public r-beachmat (package (name "r-beachmat") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a84d19727c..8bd42c9429 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10684,88 +10684,6 @@ access and manipulation of HDF5 datasets. It supports delayed operations and block processing.") (license license:artistic2.0))) -(define-public r-rhdf5lib - (package - (name "r-rhdf5lib") - (version "1.10.1") - (source - (origin - (method url-fetch) - (uri (bioconductor-uri "Rhdf5lib" version)) - (sha256 - (base32 - "0f45sqrvzj6x4mckalyp8366hm8v0rrmzklx3xd4gs6l2wallcn9")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Delete bundled binaries - (delete-file-recursively "src/wininclude/") - (delete-file-recursively "src/winlib-4.9.3/") - (delete-file-recursively "src/winlib-8.3.0/") - (delete-file "src/hdf5small_cxx_hl_1.10.6.tar.gz") - #t)))) - (properties `((upstream-name . "Rhdf5lib"))) - (build-system r-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'do-not-use-bundled-hdf5 - (lambda* (#:key inputs #:allow-other-keys) - (for-each delete-file '("configure" "configure.ac")) - ;; Do not make other packages link with the proprietary libsz. - (substitute* "R/zzz.R" - ((" \"%s/libsz.a\"") "")) - (with-directory-excursion "src" - (invoke "tar" "xvf" (assoc-ref inputs "hdf5-source")) - (rename-file (string-append "hdf5-" ,(package-version hdf5-1.10)) - "hdf5") - ;; Remove timestamp and host system information to make - ;; the build reproducible. - (substitute* "hdf5/src/libhdf5.settings.in" - (("Configured on: @CONFIG_DATE@") - "Configured on: Guix") - (("Uname information:.*") - "Uname information: Linux\n") - ;; Remove unnecessary store reference. - (("C Compiler:.*") - "C Compiler: GCC\n")) - (rename-file "Makevars.in" "Makevars") - (substitute* "Makevars" - (("@ZLIB_LIB@") "-lz") - (("@ZLIB_INCLUDE@") "") - (("HDF5_CXX_LIB=.*") - (string-append "HDF5_CXX_LIB=" - (assoc-ref inputs "hdf5") "/lib/libhdf5_cpp.a\n")) - (("HDF5_LIB=.*") - (string-append "HDF5_LIB=" - (assoc-ref inputs "hdf5") "/lib/libhdf5.a\n")) - (("HDF5_CXX_INCLUDE=.*") "HDF5_CXX_INCLUDE=./hdf5/c++/src\n") - (("HDF5_INCLUDE=.*") "HDF5_INCLUDE=./hdf5/src\n") - (("HDF5_HL_INCLUDE=.*") "HDF5_HL_INCLUDE=./hdf5/hl/src\n") - (("HDF5_HL_CXX_INCLUDE=.*") "HDF5_HL_CXX_INCLUDE=./hdf5/hl/c++/src\n") - (("HDF5_HL_LIB=.*") - (string-append "HDF5_HL_LIB=" - (assoc-ref inputs "hdf5") "/lib/libhdf5_hl.a\n")) - (("HDF5_HL_CXX_LIB=.*") - (string-append "HDF5_HL_CXX_LIB=" - (assoc-ref inputs "hdf5") "/lib/libhdf5_hl_cpp.a\n")) - ;; szip is non-free software - (("cp \"\\$\\{SZIP_LIB\\}.*") "") - (("PKG_LIBS =.*") "PKG_LIBS = -lz -lhdf5\n"))) - #t))))) - (inputs - `(("zlib" ,zlib))) - (propagated-inputs - `(("hdf5" ,hdf5-1.10))) - (native-inputs - `(("hdf5-source" ,(package-source hdf5-1.10)) - ("r-knitr" ,r-knitr))) - (home-page "https://bioconductor.org/packages/Rhdf5lib") - (synopsis "HDF5 library as an R package") - (description "This package provides C and C++ HDF5 libraries for use in R -packages.") - (license license:artistic2.0))) - (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) From 63b75c01c2374edc38437215278f50b617a12c08 Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:47 +0200 Subject: [PATCH 117/757] gnu: r-hdf5array: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-hdf5array): Move from here... * gnu/packages/bioconductor.scm (r-hdf5array): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 30 ++++++++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 30 ------------------------------ 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index e7db82741d..b2247e8cb6 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8348,6 +8348,36 @@ routines.") objects from the @code{graph} package.") (license license:epl1.0))) +(define-public r-hdf5array + (package + (name "r-hdf5array") + (version "1.16.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "HDF5Array" version)) + (sha256 + (base32 + "01767v90nl0499jcicpxngbbs0af5p9c5aasi5va01w3v5bnqddn")))) + (properties `((upstream-name . "HDF5Array"))) + (build-system r-build-system) + (inputs + `(("zlib" ,zlib))) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-delayedarray" ,r-delayedarray) + ("r-iranges" ,r-iranges) + ("r-matrix" ,r-matrix) + ("r-rhdf5" ,r-rhdf5) + ("r-rhdf5lib" ,r-rhdf5lib) + ("r-s4vectors" ,r-s4vectors))) + (home-page "https://bioconductor.org/packages/HDF5Array") + (synopsis "HDF5 back end for DelayedArray objects") + (description "This package provides an array-like container for convenient +access and manipulation of HDF5 datasets. It supports delayed operations and +block processing.") + (license license:artistic2.0))) + (define-public r-rhdf5lib (package (name "r-rhdf5lib") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 8bd42c9429..d874fe9a13 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10654,36 +10654,6 @@ quality controls, normalization, visualization, and further analysis are also provided.") (license license:artistic2.0))) -(define-public r-hdf5array - (package - (name "r-hdf5array") - (version "1.16.1") - (source - (origin - (method url-fetch) - (uri (bioconductor-uri "HDF5Array" version)) - (sha256 - (base32 - "01767v90nl0499jcicpxngbbs0af5p9c5aasi5va01w3v5bnqddn")))) - (properties `((upstream-name . "HDF5Array"))) - (build-system r-build-system) - (inputs - `(("zlib" ,zlib))) - (propagated-inputs - `(("r-biocgenerics" ,r-biocgenerics) - ("r-delayedarray" ,r-delayedarray) - ("r-iranges" ,r-iranges) - ("r-matrix" ,r-matrix) - ("r-rhdf5" ,r-rhdf5) - ("r-rhdf5lib" ,r-rhdf5lib) - ("r-s4vectors" ,r-s4vectors))) - (home-page "https://bioconductor.org/packages/HDF5Array") - (synopsis "HDF5 back end for DelayedArray objects") - (description "This package provides an array-like container for convenient -access and manipulation of HDF5 datasets. It supports delayed operations and -block processing.") - (license license:artistic2.0))) - (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) From 7df42d3774778dfbb92e935df720f6eb52965e66 Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:45 +0200 Subject: [PATCH 118/757] gnu: r-hitc: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-hitc): Move from here... * gnu/packages/bioconductor.scm (r-hitc): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 29 +++++++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 29 ----------------------------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index b2247e8cb6..aeb89ae237 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8348,6 +8348,35 @@ routines.") objects from the @code{graph} package.") (license license:epl1.0))) +(define-public r-hitc + (package + (name "r-hitc") + (version "1.32.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "HiTC" version)) + (sha256 + (base32 + "1jx2pfa7sbdz7xi466lz1h5xv126g56z73n0a5l2wrq28k47qaxy")))) + (properties `((upstream-name . "HiTC"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biostrings" ,r-biostrings) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-matrix" ,r-matrix) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-rtracklayer" ,r-rtracklayer))) + (home-page "https://bioconductor.org/packages/HiTC") + (synopsis "High throughput chromosome conformation capture analysis") + (description + "The HiTC package was developed to explore high-throughput \"C\" data +such as 5C or Hi-C. Dedicated R classes as well as standard methods for +quality controls, normalization, visualization, and further analysis are also +provided.") + (license license:artistic2.0))) + (define-public r-hdf5array (package (name "r-hdf5array") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index d874fe9a13..6bbcc3fe00 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10625,35 +10625,6 @@ intra-chromosomal contact maps produced by genome-wide genome architecture assays such as Hi-C.") (license license:gpl2+))) -(define-public r-hitc - (package - (name "r-hitc") - (version "1.32.0") - (source (origin - (method url-fetch) - (uri (bioconductor-uri "HiTC" version)) - (sha256 - (base32 - "1jx2pfa7sbdz7xi466lz1h5xv126g56z73n0a5l2wrq28k47qaxy")))) - (properties `((upstream-name . "HiTC"))) - (build-system r-build-system) - (propagated-inputs - `(("r-biostrings" ,r-biostrings) - ("r-genomeinfodb" ,r-genomeinfodb) - ("r-genomicranges" ,r-genomicranges) - ("r-iranges" ,r-iranges) - ("r-matrix" ,r-matrix) - ("r-rcolorbrewer" ,r-rcolorbrewer) - ("r-rtracklayer" ,r-rtracklayer))) - (home-page "https://bioconductor.org/packages/HiTC") - (synopsis "High throughput chromosome conformation capture analysis") - (description - "The HiTC package was developed to explore high-throughput \"C\" data -such as 5C or Hi-C. Dedicated R classes as well as standard methods for -quality controls, normalization, visualization, and further analysis are also -provided.") - (license license:artistic2.0))) - (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) From 3292f6eda0a89f65a0e3d5c0dc9fee71895dfa25 Mon Sep 17 00:00:00 2001 From: zimoun Date: Mon, 14 Sep 2020 18:07:46 +0200 Subject: [PATCH 119/757] gnu: r-fithic: Move to (gnu packages bioconductor). * gnu/packages/bioinformatics.scm (r-fithic): Move from here... * gnu/packages/bioconductor.scm (r-fithic): ...to here. Signed-off-by: Ricardo Wurmus --- gnu/packages/bioconductor.scm | 26 ++++++++++++++++++++++++++ gnu/packages/bioinformatics.scm | 26 -------------------------- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index aeb89ae237..f52025da91 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8348,6 +8348,32 @@ routines.") objects from the @code{graph} package.") (license license:epl1.0))) +(define-public r-fithic + (package + (name "r-fithic") + (version "1.14.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "FitHiC" version)) + (sha256 + (base32 + "1dffkdxm08wq4kjd9j2v2625x3p6vbrk33a2zx94pwpgkghr72yp")))) + (properties `((upstream-name . "FitHiC"))) + (build-system r-build-system) + (propagated-inputs + `(("r-data-table" ,r-data-table) + ("r-fdrtool" ,r-fdrtool) + ("r-rcpp" ,r-rcpp))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/FitHiC") + (synopsis "Confidence estimation for intra-chromosomal contact maps") + (description + "Fit-Hi-C is a tool for assigning statistical confidence estimates to +intra-chromosomal contact maps produced by genome-wide genome architecture +assays such as Hi-C.") + (license license:gpl2+))) + (define-public r-hitc (package (name "r-hitc") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 6bbcc3fe00..71369affaf 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10599,32 +10599,6 @@ EMBL-EBI GWAS catalog.") visualizations for publication-quality multi-panel figures.") (license license:gpl2+))) -(define-public r-fithic - (package - (name "r-fithic") - (version "1.14.0") - (source (origin - (method url-fetch) - (uri (bioconductor-uri "FitHiC" version)) - (sha256 - (base32 - "1dffkdxm08wq4kjd9j2v2625x3p6vbrk33a2zx94pwpgkghr72yp")))) - (properties `((upstream-name . "FitHiC"))) - (build-system r-build-system) - (propagated-inputs - `(("r-data-table" ,r-data-table) - ("r-fdrtool" ,r-fdrtool) - ("r-rcpp" ,r-rcpp))) - (native-inputs - `(("r-knitr" ,r-knitr))) - (home-page "https://bioconductor.org/packages/FitHiC") - (synopsis "Confidence estimation for intra-chromosomal contact maps") - (description - "Fit-Hi-C is a tool for assigning statistical confidence estimates to -intra-chromosomal contact maps produced by genome-wide genome architecture -assays such as Hi-C.") - (license license:gpl2+))) - (define-public r-dropbead (let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247") (revision "2")) From 3159fcf14519f02c79ad84b441985982cb1efeb9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Sep 2020 21:37:22 +0200 Subject: [PATCH 120/757] gnu: r-wgcna: Move to (gnu packages bioconductor). This is a follow-up to commit 6e0ab26f31cd2bb7e5d88719d3d458df68c1963e. * gnu/packages/cran.scm (r-wgcna): Move from here... * gnu/packages/bioconductor.scm (r-wgcna): ...to here. --- gnu/packages/bioconductor.scm | 40 +++++++++++++++++++++++++++++++++++ gnu/packages/cran.scm | 38 --------------------------------- 2 files changed, 40 insertions(+), 38 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index f52025da91..9d5c69e45e 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8310,6 +8310,46 @@ generated.") routines.") (license license:lgpl2.0+))) +;; This is a CRAN package, but it depends on preprocessorcore, which is a +;; Bioconductor package. +(define-public r-wgcna + (package + (name "r-wgcna") + (version "1.69") + (source + (origin + (method url-fetch) + (uri (cran-uri "WGCNA" version)) + (sha256 + (base32 + "022hkprnrafvggi8pkjffkvk1qlnibmbbxxrni00wkrdbga5589f")))) + (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-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-rgraphviz (package (name "r-rgraphviz") diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 5169800fef..684244456b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -14477,44 +14477,6 @@ authoring books and technical documents with R Markdown.") that accept short and long options.") (license license:gpl2+))) -(define-public r-wgcna - (package - (name "r-wgcna") - (version "1.69") - (source - (origin - (method url-fetch) - (uri (cran-uri "WGCNA" version)) - (sha256 - (base32 - "022hkprnrafvggi8pkjffkvk1qlnibmbbxxrni00wkrdbga5589f")))) - (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-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-kernlab (package (name "r-kernlab") From 819ead3592e70bbb9c4451462ce7806368e0d41a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 21:32:10 +0300 Subject: [PATCH 121/757] gnu: java-hdrhistogram: Don't use unstable tarball. * gnu/packages/java.scm (java-hdrhistogram)[source]: Download using git-fetch. [arguments]: Add phase to make source writable. --- gnu/packages/java.scm | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 3590ea9c1e..1ef2ab3584 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -9538,18 +9538,24 @@ make data-binding work.") (name "java-hdrhistogram") (version "2.1.9") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/HdrHistogram/HdrHistogram/" - "archive/HdrHistogram-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/HdrHistogram/HdrHistogram") + (commit (string-append "HdrHistogram-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1sicbmc3sr42nw93qbkb26q9rn33ag33k6k77phjc3j5h5gjffqv")))) + "1cw8aa1vk258k42xs6wpy72m4gbai540jq032qsa7c5586iawx2d")))) (build-system ant-build-system) (arguments `(#:jar-name "java-hdrhistogram.jar" #:source-dir "src/main/java" #:phases (modify-phases %standard-phases + (add-after 'unpack 'make-files-writable + (lambda _ + (for-each make-file-writable (find-files ".")) + #t)) (add-before 'configure 'set-version (lambda _ (let* ((version-java "src/main/java/org/HdrHistogram/Version.java") From 05cd8837ebffd67179fbabf24f59e69ba9f3cad6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 22:28:14 +0300 Subject: [PATCH 122/757] gnu: maven-jar-plugin: Don't use unstable tarball. * gnu/packages/maven.scm (maven-jar-plugin)[source]: Download using git-fetch. --- gnu/packages/maven.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm index e0cc98d408..561ff2ee5b 100644 --- a/gnu/packages/maven.scm +++ b/gnu/packages/maven.scm @@ -3620,13 +3620,14 @@ reports in two different file formats, plain text and xml."))) (name "maven-jar-plugin") (version "3.2.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/apache/" - "maven-jar-plugin/archive/" - "maven-jar-plugin-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/apache/maven-jar-plugin") + (commit (string-append "maven-jar-plugin-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "032042n3kfb4g5jf6khzxywn22xfy3jpx57lkq88xsv0lwx9np96")))) + "04y2rlmcabmc55ljqlkgbb5xx94a59cz1dvrnpfj1vzz024pqkyg")))) (build-system ant-build-system) (arguments `(#:jar-name "maven-jar-plugin.jar" From 7cd50ad7faef745dc6c68e749ae97dc6b526ffca Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 22:32:59 +0300 Subject: [PATCH 123/757] gnu: maven-resources-plugin: Don't use unstable tarball. * gnu/packages/maven.scm (maven-resources-plugin)[source]: Download using git-fetch. --- gnu/packages/maven.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm index 561ff2ee5b..10adcda822 100644 --- a/gnu/packages/maven.scm +++ b/gnu/packages/maven.scm @@ -2944,13 +2944,14 @@ projects.") (name "maven-resources-plugin") (version "3.1.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/apache/" - "maven-resources-plugin/archive/" - "maven-resources-plugin-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/apache/maven-resources-plugin") + (commit (string-append "maven-resources-plugin-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1f5gnjg2xmqfxml6k0ydyd1sxxwzgnb24qn6avcc4mijwd8a84pl")))) + "090k5j2y7ak54czfjjg3v7pdmdlgd96fbs91d1fd3vslm9zzndg8")))) (build-system ant-build-system) (arguments `(#:jar-name "maven-resources-plugin.jar" From 276ab588a8a2617f84753158f59465a6865a2c77 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 22:37:01 +0300 Subject: [PATCH 124/757] gnu: maven-compiler-plugin: Don't use unstable tarball. * gnu/packages/maven.scm (maven-compiler-plugin)[source]: Download using git-fetch. --- gnu/packages/maven.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm index 10adcda822..ad14c1aa62 100644 --- a/gnu/packages/maven.scm +++ b/gnu/packages/maven.scm @@ -3053,13 +3053,14 @@ components for supporting incremental build functionality in maven plugins.") (name "maven-compiler-plugin") (version "3.8.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/apache/" - "maven-compiler-plugin/archive/" - "maven-compiler-plugin-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/apache/maven-compiler-plugin") + (commit (string-append "maven-compiler-plugin-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "018d9qwc4cd6k7a8kvhvxjmzbzd2ifdf7m36wqjfq42010js1mv1")))) + "0jkbq02vykd09ws8k9bzqxv6fjrpmir8gcxydbmj05kkhl242bma")))) (build-system ant-build-system) (arguments `(#:jar-name "maven-compiler-plugin.jar" From a404716d411cf7cd49ff02e3100f0bbf6622d6d5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Sep 2020 23:21:20 +0300 Subject: [PATCH 125/757] services: docker: Fix service definition. This is a follow-up to 8422a67dc16af4dd5eb82180463aa7a0b362d5b9. * gnu/services/docker.scm (docker-service-type): Use a composed list for packages in profile-service-type. --- gnu/services/docker.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/services/docker.scm b/gnu/services/docker.scm index 2fb2ae2c47..1cce767675 100644 --- a/gnu/services/docker.scm +++ b/gnu/services/docker.scm @@ -136,7 +136,7 @@ bundles in Docker containers.") (list ;; Make sure the 'docker' command is available. (service-extension profile-service-type - (list docker-cli)) + (compose list docker-cli)) (service-extension activation-service-type %docker-activation) (service-extension shepherd-root-service-type From 6cb573889b1ca183c1c0c1ddcb191b919e6c1ea8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 14 Sep 2020 22:42:48 +0200 Subject: [PATCH 126/757] gnu: guix: Update to 846403e. * gnu/packages/package-management.scm (guix): Update to 846403e. --- 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 bcd7c6982f..4a159b992d 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -130,8 +130,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "1.1.0") - (commit "44c6e6f590b706f1ecfea6a7e7406bbd7cb70736") - (revision 25)) + (commit "846403ef62066b23c87b6f8a99fd8a551001fc52") + (revision 26)) (package (name "guix") @@ -147,7 +147,7 @@ (commit commit))) (sha256 (base32 - "17kmn9yrk9pxi88v4d48h9q3m5dpd2j0pf15fhxzh4k915jv8n6k")) + "1899mfy4hwnz8m9zzjpdvp6fr69j0mn7n9l51l1avrmpdmwnk4sz")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments From 0d63abebd149de0c5261ea12cbf7d5850ace5aee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= Date: Mon, 14 Sep 2020 10:44:34 +0200 Subject: [PATCH 127/757] gnu: Add ripmime. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/mail.scm (ripmime): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/mail.scm | 48 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 2244653724..3e6d975ee4 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -690,6 +690,54 @@ mailpack. What can alterMIME do? (license (list (license:non-copyleft "file://LICENSE") license:bsd-3)))) +(define-public ripmime + ;; Upstream does not tag or otherwise provide any releases (only a version + ;; number in the source) + (let ((commit "a556ffe08d620602475c976732e8e1a82f3169e9") + (revision "1")) + (package + (name "ripmime") + (version (git-version "1.4.0.10" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/inflex/ripMIME") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1z8ar8flvkd9q3ax4x28sj5pyq8ykk5pq249y967lj2406lxparh")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; Source has no configure script + (delete 'configure) + ;; Buildcodes make the build non-reproducible; remove them + (add-after 'unpack 'strip-buildcodes + (lambda _ + (substitute* "generate-buildcodes.sh" + (("`date \\+%s`") "0") + (("`date`") "0") + (("`uname -a`") "Guix")) + #t)) + ;; https://github.com/inflex/ripMIME/pull/16 makes 'mkdir-p-bin-man unnecessary + (add-before 'install 'mkdir-p-bin-man + (lambda _ + (mkdir-p (string-append (assoc-ref %outputs "out") "/bin")) + (mkdir-p (string-append (assoc-ref %outputs "out") "/man")) + #t))) + ;; Makefile has no tests + #:tests? #f + #:make-flags (list (string-append "LOCATION=" (assoc-ref %outputs "out")) + "CC=gcc"))) + (synopsis "Extract attachments from MIME-encoded email") + (description + "ripMIME is a small program to extract the attached files out of a +MIME-encoded email package.") + (home-page "https://github.com/inflex/ripMIME") + (license license:bsd-3)))) + (define-public bogofilter (package (name "bogofilter") From e33a1e546a52aa70ffe0c8389f29ff3288cc4510 Mon Sep 17 00:00:00 2001 From: Prafulla Giri Date: Wed, 9 Sep 2020 14:02:24 +0545 Subject: [PATCH 128/757] gnu: kde: kdenlive: Make breeze theme available at runtime. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/kde.scm (kdenlive): [inputs]: Add breeze. [arguments]: In wrap-program phase, add XDG_DATA_DIRS to include the 'share' sub-directory of the package breeze. Signed-off-by: Ludovic Courtès --- gnu/packages/kde.scm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index a9ac23e049..b22c3f0d8f 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -177,6 +177,7 @@ This package contains GUI widgets for baloo.") ("qtquickcontrols" ,qtquickcontrols) ("qtquickcontrols2" ,qtquickcontrols2) ("kiconthemes" ,kiconthemes) + ("breeze" ,breeze) ("qtgraphicaleffects" ,qtgraphicaleffects) ("kplotting" ,kplotting))) (arguments @@ -192,10 +193,13 @@ This package contains GUI widgets for baloo.") (qtdeclarative (assoc-ref inputs "qtdeclarative")) (frei0r (assoc-ref inputs "frei0r-plugins")) (ffmpeg (assoc-ref inputs "ffmpeg")) + (breeze (assoc-ref inputs "breeze")) (qml "/lib/qt5/qml")) (wrap-program (string-append out "/bin/kdenlive") `("PATH" ":" prefix ,(list (string-append ffmpeg "/bin"))) + `("XDG_DATA_DIRS" ":" prefix + ,(list (string-append breeze "/share"))) `("QT_PLUGIN_PATH" ":" prefix ,(map (lambda (label) (string-append (assoc-ref inputs label) From 8ba70a6ad306bdef3f03221f7883fb36abe595ab Mon Sep 17 00:00:00 2001 From: Prafulla Giri Date: Wed, 9 Sep 2020 14:55:22 +0545 Subject: [PATCH 129/757] gnu: kdenlive: Change source URL to follow permanent redirection. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/kde.scm (kdenlive)[source]: Change url to follow permanent redirection. Signed-off-by: Ludovic Courtès --- gnu/packages/kde.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index b22c3f0d8f..75e7f39c4b 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -142,7 +142,7 @@ This package contains GUI widgets for baloo.") (origin (method git-fetch) (uri (git-reference - (url "https://anongit.kde.org/kdenlive.git") + (url "https://invent.kde.org/multimedia/kdenlive") (commit (string-append "v" version)))) (file-name (string-append name "-" version "-checkout")) (sha256 From f6dfe42129d005662d91e1acb1c75eafe7b9b33e Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 15 Sep 2020 01:10:55 +0300 Subject: [PATCH 130/757] services: docker: Fix service definition. This commit follows a404716d411cf7cd49ff02e3100f0bbf6622d6d5. * gnu/services/docker.scm (docker-configuration)[docker-cli]: New record field. (docker-service-type): Use this. * doc/guix.texi (Miscellaneous Services)[Docker Service]: Document this. --- doc/guix.texi | 5 ++++- gnu/services/docker.scm | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index bfffb4ac2a..88128a4b3a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -27990,7 +27990,10 @@ This is the data type representing the configuration of Docker and Containerd. @table @asis @item @code{package} (default: @code{docker}) -The Docker package to use. +The Docker daemon package to use. + +@item @code{package} (default: @code{docker-cli}) +The Docker client package to use. @item @code{containerd} (default: @var{containerd}) The Containerd package to use. diff --git a/gnu/services/docker.scm b/gnu/services/docker.scm index 1cce767675..a4eccc7928 100644 --- a/gnu/services/docker.scm +++ b/gnu/services/docker.scm @@ -45,6 +45,9 @@ (docker (package docker) "Docker daemon package.") + (docker-cli + (package docker-cli) + "Docker client package.") (containerd (package containerd) "containerd package.") @@ -136,7 +139,7 @@ bundles in Docker containers.") (list ;; Make sure the 'docker' command is available. (service-extension profile-service-type - (compose list docker-cli)) + (compose list docker-configuration-docker-cli)) (service-extension activation-service-type %docker-activation) (service-extension shepherd-root-service-type From 818237d947f0f48eaa1033bca9e090ceeeb5a9ab Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Sep 2020 01:40:39 +0200 Subject: [PATCH 131/757] gnu: bsequencer: Update to 1.8.0. * gnu/packages/music.scm (bsequencer): Update to 1.8.0. --- 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 a3e38dd1c8..6285dee420 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1233,7 +1233,7 @@ device supports.") (define-public bsequencer (package (name "bsequencer") - (version "1.6.0") + (version "1.8.0") (source (origin (method git-fetch) (uri (git-reference @@ -1242,7 +1242,7 @@ device supports.") (file-name (git-file-name name version)) (sha256 (base32 - "0w21kzq695xy4i1r6xvvh7sad5m0rlmdgc7ykmrlzfsm1252dz80")))) + "0w7iwzz2r4a699fi24qk71vv2k3jpl9ylzlgmvyc3rlgad0m01k1")))) (build-system gnu-build-system) (arguments `(#:make-flags From 8aea855ac1fe05fc462206adb607d639a06b50a5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Sep 2020 09:37:18 +0300 Subject: [PATCH 132/757] gnu: roffit: Wrap binary. Fixes . * gnu/packages/groff.scm (roffit)[arguments]: Add 'wrap-binary phase to help find perl libraries. --- gnu/packages/groff.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm index 3a44497594..0daf614302 100644 --- a/gnu/packages/groff.scm +++ b/gnu/packages/groff.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2016 Ricardo Wurmus ;;; Copyright © 2017 Ludovic Courtès -;;; Copyright © 2019 Efraim Flashner +;;; Copyright © 2019, 2020 Efraim Flashner ;;; Copyright © 2019 Eric Bavier ;;; Copyright © 2019 Mathieu Othacehe ;;; Copyright © 2020 Michael Rohleder @@ -201,7 +201,13 @@ is usually the formatter of \"man\" documentation pages.") (lambda* (#:key outputs #:allow-other-keys) (mkdir-p (string-append (assoc-ref outputs "out") "/bin")) - #t))))) + #t)) + (add-after 'install 'wrap-program + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/roffit") + `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB")))) + #t)))))) (native-inputs `(("html-tree" ,perl-html-tree))) ; for test (inputs `(("perl" ,perl))) From af4c633bbb96e6c5311248970efbab5f98790900 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Sep 2020 09:41:37 +0300 Subject: [PATCH 133/757] gnu: roffit: Adjust install phase. * gnu/packages/groff.scm (roffit)[arguments]: Remove make-flags. Remove custom 'pre-install phase. Replace 'install phase to also install manpage. --- gnu/packages/groff.scm | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm index 0daf614302..0803a2a7f5 100644 --- a/gnu/packages/groff.scm +++ b/gnu/packages/groff.scm @@ -191,17 +191,15 @@ is usually the formatter of \"man\" documentation pages.") (build-system gnu-build-system) (arguments `(#:test-target "test" - #:make-flags - (list (string-append "INSTALLDIR=" - (assoc-ref %outputs "out") "/bin")) #:phases (modify-phases %standard-phases (delete 'configure) - (add-before 'install 'pre-install + (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (mkdir-p (string-append (assoc-ref outputs "out") - "/bin")) - #t)) + (let ((out (assoc-ref outputs "out"))) + (install-file "roffit" (string-append out "/bin")) + (install-file "roffit.1" (string-append out "/share/man/man1")) + #t))) (add-after 'install 'wrap-program (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) From b10edcb9d41ad2da0cf2232519a8f6d61ccec776 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 15 Sep 2020 09:21:15 +0200 Subject: [PATCH 134/757] gnu: emacs-org: Update to 9.4. * gnu/packages/emacs-xyz.scm (emacs-org): Update to 9.4. (emacs-org-contrib): Update to 20200914. --- gnu/packages/emacs-xyz.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 342adc6dd0..46af73456b 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -9677,13 +9677,13 @@ passive voice.") (name "emacs-org") ;; emacs-org-contrib inherits from this package. Please update it as ;; well. - (version "9.3.8") + (version "9.4") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/org-" version ".tar")) (sha256 - (base32 "1az00pi9rw3ibx4061jyqr6ll27kvs99yvd7nk5dckjh0ajd0gni")))) + (base32 "1awkrh3y90q7c0as3327rqj0zylf5cpjzr1pyvbzymli16irhwb6")))) (build-system emacs-build-system) (arguments `(#:phases @@ -9708,14 +9708,14 @@ programming and reproducible research.") (package (inherit emacs-org) (name "emacs-org-contrib") - (version "20200907") + (version "20200914") (source (origin (method url-fetch) (uri (string-append "https://orgmode.org/elpa/" "org-plus-contrib-" version ".tar")) (sha256 - (base32 "1rgk3pwhsmbmwlncg60ahwrrkm1ks4xpwy2wzv9q7myl1aihjj54")))) + (base32 "1naq25g4d95cx29axx428rnpc4m9hd0j7w1l0vqwkdjyr5qfj0ab")))) (arguments `(#:modules ((guix build emacs-build-system) (guix build utils) From a8360892d734b6c7418dd600b838faf2b2eda30c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Sep 2020 11:55:57 +0300 Subject: [PATCH 135/757] gnu: waybar: Fix build. Reported by bdju. * gnu/packages/pretty-print.scm (fmt-6): New variable. * gnu/packages/wm.scm (waybar)[inputs]: Replace fmt with fmt-6. --- gnu/packages/pretty-print.scm | 15 ++++++++++++++- gnu/packages/wm.scm | 4 ++-- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm index eeae472f08..12ec1f7889 100644 --- a/gnu/packages/pretty-print.scm +++ b/gnu/packages/pretty-print.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2019 Efraim Flashner +;;; Copyright © 2016, 2019, 2020 Efraim Flashner ;;; Copyright © 2016 Ricardo Wurmus ;;; Copyright © 2017 Marius Bakke ;;; Copyright © 2017 Ludovic Courtès @@ -190,6 +190,19 @@ to @code{IOStreams}.") ;; The library is bsd-2, but documentation and tests include other licenses. (license (list bsd-2 bsd-3 psfl)))) +(define-public fmt-6 + (package + (inherit fmt) + (name "fmt") + (version "6.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/fmtlib/fmt/releases/download/" + version "/fmt-" version ".zip")) + (sha256 + (base32 "06l8g59frbsbwj15kg6x2bbn6p8yidh6wzsigdhbdjncvm1agzll")))))) + (define-public source-highlight (package (name "source-highlight") diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 15fbf43ec7..000ec8bd27 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015 xd1le ;;; Copyright © 2015 Paul van der Walt ;;; Copyright © 2016 Danny Milosavljevic -;;; Copyright © 2016, 2019 Efraim Flashner +;;; Copyright © 2016, 2019, 2020 Efraim Flashner ;;; Copyright © 2016 Al McElrath ;;; Copyright © 2016 Carlo Zancanaro ;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès @@ -1526,7 +1526,7 @@ modules for building a Wayland compositor.") (base32 "0ks719khhg2zwpyiwa2079i6962qcxpapm28hmr4ckpsp2n659ck")))) (build-system meson-build-system) (inputs `(("date" ,date) - ("fmt" ,fmt) + ("fmt" ,fmt-6) ("gtk-layer-shell" ,gtk-layer-shell) ("gtkmm" ,gtkmm) ("jsoncpp" ,jsoncpp) From 6e05adbb8f0396ef2bffef9cf56248e68aa8a3df Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 15 Sep 2020 13:26:00 +0200 Subject: [PATCH 136/757] gnu: sbcl-trivial-clipboard: Update to 20200904. * gnu/packages/lisp-xyz.scm (sbcl-trivial-clipboard): Update to 20200904. --- gnu/packages/lisp-xyz.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index f73709515f..cef1e9e5b0 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -3472,10 +3472,10 @@ client and server.") (sbcl-package->ecl-package sbcl-s-xml-rpc)) (define-public sbcl-trivial-clipboard - (let ((commit "5af3415d1484e6d69a1b5c178f24680d9fd01796")) + (let ((commit "afcd3743b842f5a81fc86dba60f9db59970f49c5")) (package (name "sbcl-trivial-clipboard") - (version (git-version "0.0.0.0" "2" commit)) + (version (git-version "0.0.0.0" "3" commit)) (source (origin (method git-fetch) @@ -3485,7 +3485,7 @@ client and server.") (file-name (git-file-name "trivial-clipboard" version)) (sha256 (base32 - "1gb515z5yq6h5548pb1fwhmb0hhq1ssyb78pvxh4alq799xipxs9")))) + "1qfbvkzmvkbqpc5s3sx31c5653sy6qlcixafgzd10qpykb843prr")))) (build-system asdf-build-system/sbcl) (inputs `(("xclip" ,xclip))) From 1b157bbef0032121c88be2bbb834846115ce9341 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 15 Sep 2020 12:30:39 +0200 Subject: [PATCH 137/757] services: bitlbee: Support libpurple plugins. * gnu/services/messaging.scm (bitlbee-shepherd-service): Pass PURPLE_PLUGIN_PATH as #:environment-variables. --- gnu/services/messaging.scm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/gnu/services/messaging.scm b/gnu/services/messaging.scm index 11b41f2bf6..8f2f3914cf 100644 --- a/gnu/services/messaging.scm +++ b/gnu/services/messaging.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017, 2018 Clément Lassieur ;;; Copyright © 2017 Mathieu Othacehe -;;; Copyright © 2015, 2017, 2018, 2019 Ludovic Courtès +;;; Copyright © 2015, 2017, 2018, 2019, 2020 Ludovic Courtès ;;; Copyright © 2018 Pierre-Antoine Rouby ;;; ;;; This file is part of GNU Guix. @@ -813,14 +813,15 @@ string, you could instantiate a prosody service like this: (match-lambda (($ bitlbee interface port plugins extra-settings) - (let ((conf (mixed-text-file "bitlbee.conf" + (let* ((plugins (directory-union "bitlbee-plugins" plugins)) + (conf (mixed-text-file "bitlbee.conf" " [settings] User = bitlbee ConfigDir = /var/lib/bitlbee DaemonInterface = " interface " DaemonPort = " (number->string port) " - PluginDir = " (directory-union "bitlbee-plugins" plugins) "/lib/bitlbee + PluginDir = " plugins "/lib/bitlbee " extra-settings))) (with-imported-modules (source-module-closure @@ -840,6 +841,11 @@ string, you could instantiate a prosody service like this: (list #$(file-append bitlbee "/sbin/bitlbee") "-n" "-F" "-u" "bitlbee" "-c" #$conf) + ;; Allow 'bitlbee-purple' to use libpurple plugins. + #:environment-variables + (list (string-append "PURPLE_PLUGIN_PATH=" + #$plugins "/lib/purple-2")) + #:pid-file "/var/run/bitlbee.pid" #:mappings (list (file-system-mapping (source "/var/lib/bitlbee") From b911d6547444b5f8d17b224bafa5ee1b5aafaff5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 15 Sep 2020 14:24:05 +0200 Subject: [PATCH 138/757] authenticate: Encode strings as ISO-8859-1. Fixes . * guix/scripts/authenticate.scm (read-command): Decode strings as ISO-8859-1, not UTF-8. (guix-authenticate)[send-reply]: Encode strings as ISO-8859-1, not UTF-8. * tests/guix-authenticate.sh: Add test. --- guix/scripts/authenticate.scm | 8 +++++--- tests/guix-authenticate.sh | 9 +++++++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/guix/scripts/authenticate.scm b/guix/scripts/authenticate.scm index 0bac13edee..45f62f6ebc 100644 --- a/guix/scripts/authenticate.scm +++ b/guix/scripts/authenticate.scm @@ -31,6 +31,7 @@ #:use-module (ice-9 rdelim) #:use-module (ice-9 match) #:use-module (ice-9 vlist) + #:use-module (ice-9 iconv) #:export (guix-authenticate)) ;;; Commentary: @@ -122,8 +123,9 @@ by colon, followed by the given number of characters." (reverse result)) (else (let* ((len (string->number (read-delimited ":" port))) - (str (utf8->string - (get-bytevector-n port len)))) + (str (bytevector->string + (get-bytevector-n port len) + "ISO-8859-1" 'error))) (loop (cons str result)))))))))) (define-syntax define-enumerate-type ;TODO: factorize @@ -150,7 +152,7 @@ by colon, followed by the given number of characters." (define (send-reply code str) ;; Send CODE and STR as a reply to our client. - (let ((bv (string->utf8 str))) + (let ((bv (string->bytevector str "ISO-8859-1" 'error))) (format #t "~a ~a:" code (bytevector-length bv)) (put-bytevector (current-output-port) bv) (force-output (current-output-port)))) diff --git a/tests/guix-authenticate.sh b/tests/guix-authenticate.sh index f3b36ee41d..3a05b232c1 100644 --- a/tests/guix-authenticate.sh +++ b/tests/guix-authenticate.sh @@ -61,6 +61,15 @@ sed -i "$sig" \ code="$(echo "verify $(cat $sig)" | guix authenticate | cut -f1 -d ' ')" test "$code" -ne 0 +# Make sure byte strings are correctly encoded. The hash string below is +# "café" repeated 8 times. Libgcrypt would normally choose to write it as a +# string rather than a hex sequence. We want that string to be Latin-1 +# encoded independently of the current locale: . +hash="636166e9636166e9636166e9636166e9636166e9636166e9636166e9636166e9" +latin1_cafe="caf$(printf '\351')" +echo "sign 21:tests/signing-key.sec 64:$hash" | guix authenticate \ + | LC_ALL=C grep "hash sha256 \"$latin1_cafe" + # Test for : make sure 'guix authenticate' produces # valid signatures when run in the C locale. hash="5eff0b55c9c5f5e87b4e34cd60a2d5654ca1eb78c7b3c67c3179fed1cff07b4c" From 1c21468c7a7d09fbe065d1ceebf5f542537c877c Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Sat, 12 Sep 2020 17:33:32 +0800 Subject: [PATCH 139/757] gnu: Add goxel. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/graphics.scm (goxel): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/graphics.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index cf52984183..d0bf577139 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -22,6 +22,7 @@ ;;; Copyright © 2020 Nicolas Goaziou ;;; Copyright © 2020 Raghav Gururajan ;;; Copyright © 2020 Maxim Cournoyer +;;; Copyright © 2020 Gabriel Arazas ;;; ;;; This file is part of GNU Guix. ;;; @@ -614,6 +615,39 @@ NOTE: This older version of Blender is the last release that does not require OpenGL 3. It is retained for use with older computers.") (license license:gpl2+))) +(define-public goxel + (package + (name "goxel") + (version "0.10.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/guillaumechereau/goxel") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1wmxy5wfk1xrqgz0y0zcr4vkddylqc70cv4vzk117x6whjnldsm3")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f + #:phases (modify-phases %standard-phases (delete 'configure)) + #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) + "release"))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("gtk3" ,gtk+) + ("glfw" ,glfw) + ("scons" ,scons))) + (home-page "https://goxel.xyz/") + (synopsis "Voxel editor") + (description + "Goxel is a voxel editor that features unlimited scene size, unlimited +history buffer, 24-bit RGB colors, layers, procedural rendering, ray tracing, +and export to various formats including the format used by Magicavoxel.") + (license license:gpl3+))) + (define-public assimp (package (name "assimp") From 9d1af83e0b87cde6dd914eba8e2eeb84ceda3bc0 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 14 Sep 2020 09:18:39 +0200 Subject: [PATCH 140/757] import: cpan: Export cpan-release-module. * guix/import/cpan.scm: Fix typo. --- guix/import/cpan.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/import/cpan.scm b/guix/import/cpan.scm index fd940415a2..514417f781 100644 --- a/guix/import/cpan.scm +++ b/guix/import/cpan.scm @@ -49,7 +49,7 @@ cpan-release-license cpan-release-author cpan-release-version - cpan-release-modle + cpan-release-module cpan-release-distribution cpan-release-download-url cpan-release-abstract From 6493d0eec43f4e2950c3d19f26b278fbbc6e3192 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 15 Sep 2020 14:08:16 +0200 Subject: [PATCH 141/757] gnu: htop: Update to 3.0.2. * gnu/packages/admin.scm (htop): Update to 3.0.2. [native-inputs]: Remove python-wrapper. --- gnu/packages/admin.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 4e470abd8a..5ab6cdb3e1 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -514,7 +514,7 @@ or via the @code{facter} Ruby library.") (define-public htop (package (name "htop") - (version "3.0.1") + (version "3.0.2") (source (origin (method git-fetch) @@ -522,15 +522,14 @@ or via the @code{facter} Ruby library.") (url "https://github.com/htop-dev/htop") (commit version))) (sha256 - (base32 "0kjlphdvwwbj91kk91s4ksc954d3c2bznddzx2223jmb1bn9rcsa")) + (base32 "1qmqhbnc5yw4brd24yrp85k09770c1c00nl03mkv5pdz2bvqivk7")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses))) (native-inputs `(("autoconf" ,autoconf) - ("automake" ,automake) - ("python" ,python-wrapper))) ; for scripts/MakeHeader.py + ("automake" ,automake))) (home-page "https://htop.dev") (synopsis "Interactive process viewer") (description From e880e63740645e3ece981c555d8c51ae68b26cdc Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 15 Sep 2020 14:09:51 +0200 Subject: [PATCH 142/757] gnu: fio: Update to 3.23. * gnu/packages/benchmark.scm (fio): Update to 3.23. --- gnu/packages/benchmark.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm index f61fb86f75..f9648b5f7c 100644 --- a/gnu/packages/benchmark.scm +++ b/gnu/packages/benchmark.scm @@ -46,14 +46,14 @@ (define-public fio (package (name "fio") - (version "3.22") + (version "3.23") (source (origin (method url-fetch) (uri (string-append "https://brick.kernel.dk/snaps/" "fio-" version ".tar.bz2")) (sha256 (base32 - "0f2x917600y6k0xs34ixgfjm4v1ylbh8svpkqi07xy3474g5s2rv")))) + "0cy32431hv0i84yrryna5byj4r610n6i1rm8nfflnrznbf051axs")))) (build-system gnu-build-system) (arguments '(#:test-target "test" From f5163902d7c3cfed5a97033f38e92d7158b19fa8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 15 Sep 2020 15:29:11 +0200 Subject: [PATCH 143/757] gnu: guix: Update to 1c21468. * gnu/packages/package-management.scm (guix): Update to 1c21468. --- 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 4a159b992d..ec87226197 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -130,8 +130,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "1.1.0") - (commit "846403ef62066b23c87b6f8a99fd8a551001fc52") - (revision 26)) + (commit "1c21468c7a7d09fbe065d1ceebf5f542537c877c") + (revision 27)) (package (name "guix") @@ -147,7 +147,7 @@ (commit commit))) (sha256 (base32 - "1899mfy4hwnz8m9zzjpdvp6fr69j0mn7n9l51l1avrmpdmwnk4sz")) + "0bprn9inpqmc41ldcykl5pnybgz3slflrnb9pywfn3gsr4r48lbm")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments From 52139ce5b7f54fea930a4ae15815ecb75a3fbdb6 Mon Sep 17 00:00:00 2001 From: Mike Rosset Date: Tue, 15 Sep 2020 01:33:23 -0700 Subject: [PATCH 144/757] gnu: jack-2: Update to 1.9.14. * gnu/packages/audio.scm (jack-2): Update to 1.9.14. [arguments]: Add environment variable to phase 'set-linkflags. Signed-off-by: Andreas Enge --- gnu/packages/audio.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 38ee4f8bcc..fb98777290 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -2030,7 +2030,7 @@ synchronous execution of all clients, and low latency operation.") (define-public jack-2 (package (inherit jack-1) (name "jack2") - (version "1.9.13") + (version "1.9.14") (source (origin (method url-fetch) (uri (string-append "https://github.com/jackaudio/jack2/releases/" @@ -2039,7 +2039,7 @@ synchronous execution of all clients, and low latency operation.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1d1d403jn4366mqig6g8ghr8057b3rn7gs26b5p3rkal34j20qw2")))) + "0z11hf55a6mi8h50hfz5wry9pshlwl4mzfwgslghdh40cwv342m2")))) (build-system waf-build-system) (arguments `(#:tests? #f ; no check target @@ -2049,6 +2049,10 @@ synchronous execution of all clients, and low latency operation.") (modify-phases %standard-phases (add-before 'configure 'set-linkflags (lambda _ + ;; Ensure -lstdc++ is the tail of LDFLAGS or the simdtests.cpp + ;; will not link with undefined reference to symbol + ;; '__gxx_personality_v0@@CXXABI_1.3' + (setenv "LDFLAGS" "-lstdc++") ;; Add $libdir to the RUNPATH of all the binaries. (substitute* "wscript" ((".*CFLAGS.*-Wall.*" m) From 9ede39d64ff8a3f6facb8128a02a722b44ea75e5 Mon Sep 17 00:00:00 2001 From: Leo Prikler Date: Sat, 12 Sep 2020 19:51:59 +0200 Subject: [PATCH 145/757] gnu: Add libgda. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (libgda): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 79 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 85b95a7507..bc49d37179 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -11438,3 +11438,82 @@ integrated profiler via Sysprof, debugging support, and more.") (description "Komikku is an online/offline manga reader for GNOME, developed with the aim of being used with the Librem 5 phone.") (license license:gpl3+))) + +(define-public libgda + (package + (name "libgda") + (version "5.2.9") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.gnome.org/GNOME/libgda.git/") + (commit "LIBGDA_5_2_9"))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "122anbk15vj2dfxrw7s48b6zwlpp7cyppshxizynvf3zmc0ygw3j")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags '("--enable-vala") + ;; There's a race between check_cnc_lock and check_threaded_cnc + ;; in tests/multi-threading. + #:parallel-tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-glade-install + (lambda _ + (substitute* "configure.ac" + (("`\\$PKG_CONFIG --variable=catalogdir gladeui-2\\.0`") + "${datadir}/glade/catalogs") + (("`\\$PKG_CONFIG --variable=pixmapdir gladeui-2\\.0`") + "${datadir}/glade/pixmaps")) + #t)) + (add-before 'check 'pre-check + (lambda* (#:key inputs #:allow-other-keys) + ;; Tests require a running X server. + (system "Xvfb :1 &") + (setenv "DISPLAY" ":1") + #t)) + (add-after 'install 'symlink-glade-module + (lambda* (#:key outputs #:allow-other-keys) + (let* ((shlib "libgda-ui-5.0.so") + (out (assoc-ref outputs "out")) + (out/lib (string-append out "/lib")) + (moduledir (string-append out/lib "/glade/modules"))) + (mkdir-p moduledir) + (symlink (string-append out/lib "/" shlib) + (string-append moduledir "/" shlib)) + #t)))))) + (propagated-inputs + `(("libxml2" ,libxml2))) ; required by libgda-5.0.pc + (inputs + `(("glib" ,glib) + ("glade" ,glade3) + ("gtk+" ,gtk+) + ("libsecret" ,libsecret) + ("libxslt" ,libxslt) + ("openssl" ,openssl) + ("vala" ,vala))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("glib:bin" ,glib "bin") + ("gnome-common" ,gnome-common) + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("intltool" ,intltool) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("vala" ,vala) + ("which" ,which) + ("xorg-server" ,xorg-server-for-tests) + ("yelp-tools" ,yelp-tools))) + (home-page "https://gitlab.gnome.org/GNOME/libgda") + (synopsis "Uniform data access") + (description + "GNU Data Access (GDA) is an attempt to provide uniform access to +different kinds of data sources (databases, information servers, mail spools, +etc). It is a complete architecture that provides all you need to access +your data.") + (license license:lgpl2.1+))) From 757764b797395e737ab13084407461540692f410 Mon Sep 17 00:00:00 2001 From: Leo Prikler Date: Sat, 12 Sep 2020 20:35:35 +0200 Subject: [PATCH 146/757] gnu: Add gtranslator. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (gtranslator): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 48 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index bc49d37179..0df7391de0 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -11517,3 +11517,51 @@ different kinds of data sources (databases, information servers, mail spools, etc). It is a complete architecture that provides all you need to access your data.") (license license:lgpl2.1+))) + +(define-public gtranslator + (package + (name "gtranslator") + (version "3.36.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1lxd2nkji4jk8g2xmyc1a1r3ww710ddk91zh9psmx8xlb4xivaid")))) + (build-system meson-build-system) + (inputs + `(("json-glib" ,json-glib) + ("jsonrpc-glib" ,jsonrpc-glib) + ("gettext" ,gettext-minimal) + ("glib" ,glib) + ("gtk+" ,gtk+) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gspell" ,gspell) + ("libdazzle" ,libdazzle) + ("libgda" ,libgda) + ("libsoup" ,libsoup))) + (native-inputs + `(("glib:bin" ,glib "bin") + ("itstool" ,itstool) + ("pkg-config" ,pkg-config))) + (propagated-inputs + `(("gtksourceview" ,gtksourceview))) ; required for source view + (arguments + `(#:build-type "release" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'skip-gtk-update-icon-cache + (lambda _ + (substitute* "build-aux/meson/meson_post_install.py" + (("gtk-update-icon-cache") (which "true"))) + #t))))) + (home-page "https://wiki.gnome.org/Apps/Gtranslator") + (synopsis "Translation making program") + (description + "gtranslator is a quite comfortable gettext po/po.gz/(g)mo files editor +for the GNOME 3.x platform with many features. It aims to be a very complete +editing environment for translation issues within the GNU gettext/GNOME desktop +world.") + (license license:gpl3+))) From 04912d4f9f927ae47742011857cc637f399069a0 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 15 Sep 2020 15:06:38 +0200 Subject: [PATCH 147/757] gnu: cryptsetup: Update to 2.3.4. * gnu/packages/cryptsetup.scm (cryptsetup): Update to 2.3.4. --- gnu/packages/cryptsetup.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/cryptsetup.scm b/gnu/packages/cryptsetup.scm index 57333ea13d..a12ac93b25 100644 --- a/gnu/packages/cryptsetup.scm +++ b/gnu/packages/cryptsetup.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2016 Ludovic Courtès -;;; Copyright © 2019 Tobias Geerinckx-Rice +;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,7 +35,7 @@ (define-public cryptsetup (package (name "cryptsetup") - (version "2.3.3") + (version "2.3.4") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/utils/cryptsetup/v" @@ -43,7 +43,7 @@ "/cryptsetup-" version ".tar.xz")) (sha256 (base32 - "1pw2bq4nv2z3xyycckxkbp7dp9kkp2n6bspna3plryg277z4zjiv")))) + "0wrpz2fzbsszmsgxxbssxjgylpyiindh24z8g13m2fxmjsxyw5lx")))) (build-system gnu-build-system) (arguments `(#:configure-flags From 49478f9dbdf4a6ed49123b1f9fb158248b06dcae Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 14 Sep 2020 12:28:08 +0200 Subject: [PATCH 148/757] gnu: dump: Fix typo in description. * gnu/packages/backup.scm (dump)[description]: Fix typo. --- gnu/packages/backup.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 9cb8e1bd00..e388265179 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -1066,7 +1066,7 @@ other storage medium. Subsequent incremental backups can then be layered on top of the full backup. The restore command performs the inverse function of dump; it can restore a full backup of a file system. Single files and directory subtrees may also be restored from full or partial backups in -interractive mode.") +interactive mode.") (license license:bsd-3))) (define-public burp From e4574a66fe310c67029442568881cb9d2df5d365 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 14 Sep 2020 12:29:28 +0200 Subject: [PATCH 149/757] gnu: python-pbkdf2: Fix typo in description. * gnu/packages/python-xyz.scm (python-pbkdf2)[description]: Fix typo. --- gnu/packages/python-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3e66e5a7eb..593bb3f468 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -14443,7 +14443,7 @@ PKCS#5 v2.0 Password-Based Key Derivation is a key derivation function which is part of the RSA Public Key Cryptography Standards series. The provided implementation takes a password or a passphrase and a salt value (and optionally a iteration count, a digest module, and a MAC module) and provides -a file-like object from which an arbitrarly-sized key can be read.") +a file-like object from which an arbitrarily-sized key can be read.") (license license:expat))) (define-public python2-pbkdf2 From afb3fed9c751c98e52715f58deaf3da243e09a3c Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 15 Sep 2020 21:25:22 +0200 Subject: [PATCH 150/757] gnu: dico: Update to 2.10. * gnu/packages/dico.scm (dico): Update to 2.10. --- gnu/packages/dico.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/dico.scm b/gnu/packages/dico.scm index 44a7a21b6b..ec897d1a8a 100644 --- a/gnu/packages/dico.scm +++ b/gnu/packages/dico.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016, 2018 Ludovic Courtès ;;; Copyright © 2016, 2018 Efraim Flashner -;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2020 Vincent Legoll ;;; ;;; This file is part of GNU Guix. @@ -39,14 +39,14 @@ (define-public dico (package (name "dico") - (version "2.9") + (version "2.10") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/dico/dico-" version ".tar.xz")) (sha256 (base32 - "0i9xqhy3h5nlizcmav4mv5ay8ivdgn4l4k0k7fxix3fsc87nijyr")))) + "0qag47mzs00d53hnrmh381r0jay42766vp5xrffmzmsn2307x8vl")))) (build-system gnu-build-system) (arguments '(#:configure-flags (list (string-append "--with-guile-site-dir=" %output From fac43c9259691137d38dc0f79c025f6caa0cf528 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 15 Sep 2020 21:34:12 +0200 Subject: [PATCH 151/757] gnu: homebank: Update to 5.4.3. * gnu/packages/finance.scm (homebank): Update to 5.4.3. --- gnu/packages/finance.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 111069cb08..3167e10164 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -173,14 +173,14 @@ line client and a client based on Qt.") (define-public homebank (package (name "homebank") - (version "5.4.2") + (version "5.4.3") (source (origin (method url-fetch) (uri (string-append "http://homebank.free.fr/public/homebank-" version ".tar.gz")) (sha256 (base32 - "0bkjvd819kw9cwmr3macggbg8yil3yc8v2za8pjrl6g746s89kn6")))) + "02wd569viwy6ncy0144z9nxr3zmpl4shkqhz7zzwyky4gknxf8lj")))) (build-system glib-or-gtk-build-system) (native-inputs `(("pkg-config" ,pkg-config) From c4593535ea61146390c6c7e662217061029ca67f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 15 Sep 2020 22:49:34 +0200 Subject: [PATCH 152/757] gnu: waylandpp: Update to 0.2.8. * gnu/packages/freedesktop.scm (waylandpp): Update to 0.2.8. --- gnu/packages/freedesktop.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 481cb3cd1d..dbfb88b471 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -796,7 +796,7 @@ applications, X servers (rootless or fullscreen) or other display servers.") (define-public waylandpp (package (name "waylandpp") - (version "0.2.7") + (version "0.2.8") (home-page "https://github.com/NilsBrause/waylandpp") (source (origin (method git-fetch) @@ -804,10 +804,10 @@ applications, X servers (rootless or fullscreen) or other display servers.") (file-name (git-file-name name version)) (sha256 (base32 - "1r4m0xhvwpcqxrqvp3hz1bzlkxqj2jiymd5r6hj8xjzz536hyprz")))) + "1kxiqab48p0n97pwg8c2zx56wqq32m3rcq7qd2pjj33ipcanb3qq")))) (build-system cmake-build-system) (arguments - `(#:tests? #f)) ;no tests + `(#:tests? #f)) ; no tests (native-inputs `(("pkg-config" ,pkg-config))) (inputs From 6564ffd7ad4bc170f9726ee88ea300b24ba738eb Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 15 Sep 2020 23:13:38 +0200 Subject: [PATCH 153/757] gnu: surgescript: Update to 0.5.4.4. * gnu/packages/game-development.scm (surgescript): Update to 0.5.4.4. --- 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 c8e0e94099..3252eb322e 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -581,7 +581,7 @@ sounds from presets such as \"explosion\" or \"powerup\".") (define-public surgescript (package (name "surgescript") - (version "0.5.4.3") + (version "0.5.4.4") (source (origin (method git-fetch) @@ -590,7 +590,7 @@ sounds from presets such as \"explosion\" or \"powerup\".") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "13q81439zg1bn7gskligskjgcfq0rdapp6f3llmrlk48vnyq49s0")))) + (base32 "1vck1wk6r6jrrw5xzpqldplz601dfgpk5s5p45fam00nfsid0p7p")))) (build-system cmake-build-system) (arguments '(#:configure-flags From 6a638349a0488785a10c657b8b66eca2b78bf212 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 15 Sep 2020 23:32:48 +0200 Subject: [PATCH 154/757] gnu: tor: Update to 0.4.4.5. * gnu/packages/tor.scm (tor): Update to 0.4.4.5. --- gnu/packages/tor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index c852c54a5b..9bde4a4c23 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -54,14 +54,14 @@ (define-public tor (package (name "tor") - (version "0.4.3.6") + (version "0.4.4.5") (source (origin (method url-fetch) (uri (string-append "https://dist.torproject.org/tor-" version ".tar.gz")) (sha256 (base32 - "0qmcrkjip0ywq77232m73pjwqiaj0q2klwklqlpbw575shvhcbba")))) + "09lr6l98qmc69pzsi8r02z86v969dbfwjrwphfm3npknzq5a0p54")))) (build-system gnu-build-system) (arguments `(#:configure-flags From d6f1e8135676a4d38fda9927434999312b60ba21 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 16 Sep 2020 00:29:01 +0200 Subject: [PATCH 155/757] gnu: libimagequant: Update to 2.12.6. * gnu/packages/image.scm (libimagequant): Update to 2.12.6. --- gnu/packages/image.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 4606cc77b2..ff434bb6c9 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -336,7 +336,7 @@ Currently all documentation resides in @file{pnglite.h}.") (define-public libimagequant (package (name "libimagequant") - (version "2.12.5") + (version "2.12.6") (source (origin (method git-fetch) @@ -345,7 +345,7 @@ Currently all documentation resides in @file{pnglite.h}.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0cp68w04ja5pv77ssfafsn958w9hh9zb8crrlb5j3gsrcmdc032k")))) + (base32 "00w7fny3xf14cfyhbdnmqyh9ddqdh1irvgzxd35a2z65kp7vnvj0")))) (build-system gnu-build-system) (arguments '(#:tests? #f)) ; no check target From 3c9294c05fa0c57884c94f809f3f9762b6f55f85 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 16 Sep 2020 00:29:11 +0200 Subject: [PATCH 156/757] gnu: gnome-bluetooth: Update to 3.34.1. * gnu/packages/gnome.scm (gnome-bluetooth): Update to 3.34.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 0df7391de0..ac8e955e31 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -7895,7 +7895,7 @@ usage and information about running processes.") (define-public gnome-bluetooth (package (name "gnome-bluetooth") - (version "3.34.0") + (version "3.34.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -7903,7 +7903,7 @@ usage and information about running processes.") name "-" version ".tar.xz")) (sha256 (base32 - "1bvbxcsjkyl0givy8nfm7112bq3c0vn1v89fdk2pip714dsfcrz8")))) + "11nk8nvz5yrbx7wp75vsiaf4rniv7ik2g3nwmgwx2b42q9v11j9y")))) (build-system meson-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc. From cca5720f410ce01e2b3ed7e4fde593e118f08f07 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 15 Sep 2020 19:57:48 -0400 Subject: [PATCH 157/757] gnu: Fix fetching the linux-libre deblobbing script. This is a followup to commit 105a037090d9a970a2c2336341d6673eff29e4cf. * gnu/packages/linux.scm (linux-libre-deblob-scripts): Truncate the version in the file-name, not the source URI. --- 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 59ffb334e0..2e47b81cf6 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -195,9 +195,9 @@ defconfig. Return the appropriate make target if applicable, otherwise return (method url-fetch) (uri (string-append "https://linux-libre.fsfla.org" "/pub/linux-libre/releases/" version "-gnu/" - "deblob-" version)) + "deblob-" (version-major+minor version))) (file-name (string-append "linux-libre-deblob-" - (version-major+minor version))) + version)) (sha256 deblob-hash)) (origin (method url-fetch) From 833dfde76e9058a22b80526a73038dc341947c5b Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Tue, 15 Sep 2020 08:52:24 +0800 Subject: [PATCH 158/757] gnu: Add rust-lab-0.8, rust-lab-0.7, rust-lab-0.4. * gnu/packages/crates-io.scm (rust-lab-0.8, rust-lab-0.7, rust-lab-0.4): New variables. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 69 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 0f0f0c28c9..eee1432f94 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2019, 2020 Hartmut Goebel ;;; Copyright © 2020 Jakub Kądziołka ;;; Copyright © 2020 Leo Famulari +;;; Copyright © 2020 Gabriel Arazas ;;; ;;; This file is part of GNU Guix. ;;; @@ -12220,6 +12221,74 @@ currently supports parsing (fully conformant parser), formatting and comparing language tags.") (license license:expat))) +(define-public rust-lab-0.8 + (package + (name "rust-lab") + (version "0.8.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "lab" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ysnbviwi35mq6xyz9c59mpgigyfp4s4y2mispxzrms4vk83bx15")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-approx" ,rust-approx-0.3) + ("rust-criterion" ,rust-criterion-0.3) + ("rust-lazy-static" ,rust-lazy-static-1) + ("rust-pretty-assertions" ,rust-pretty-assertions-0.6) + ("rust-rand" ,rust-rand-0.5)))) + (home-page "https://github.com/TooManyBees/lab") + (synopsis "Convert RGB to CIE-LAB for Rust") + (description + "This package contains tools for converting RGB colors to the CIE-LAB color +space, and comparing differences in color.") + (license license:expat))) + +(define-public rust-lab-0.7 + (package + (inherit rust-lab-0.8) + (name "rust-lab") + (version "0.7.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "lab" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0g692d489lq01pv3mzfhxd98j0r22lw28l6bk112m74djlfzxdmw")))) + (arguments + `(#:tests? #f ; test suite assumes avx2 support + #:cargo-development-inputs + (("rust-criterion" ,rust-criterion-0.3) + ("rust-lazy-static" ,rust-lazy-static-1) + ("rust-pretty-assertions" ,rust-pretty-assertions-0.6) + ("rust-rand" ,rust-rand-0.5)))))) + +(define-public rust-lab-0.4 + (package + (inherit rust-lab-0.8) + (name "rust-lab") + (version "0.4.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "lab" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0h4ig5bvzmwlzd74zj7b4sh7kzi3c6mjjnw7yjz8ijxvr4mrcr1s")))) + (arguments + `(#:cargo-development-inputs + (("rust-rand" ,rust-rand-0.3)))))) + (define-public rust-lalrpop-0.17 (package (name "rust-lalrpop") From c034fcd27f848708ad09ac03bc0ff3d32ffba063 Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Tue, 15 Sep 2020 16:36:27 +0800 Subject: [PATCH 159/757] gnu: Add rust-delta-e-0.2. * gnu/packages/crates-io.scm (rust-delta-e-0.2): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index eee1432f94..80c46edea1 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -5445,6 +5445,29 @@ and arithmetic.") (base32 "17giv0n0n1r64z0dahfvkjy3ys517jxyhs8sd9lmgvcljpjyryxa")))))) +(define-public rust-delta-e-0.2 + (package + (name "rust-delta-e") + (version "0.2.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "delta_e" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "18rxibmi27ark8vj367qm2iqmv5x293l8fm9ang4y2sv3l251sf5")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs (("rust-lab" ,rust-lab-0.7)))) + (home-page "https://github.com/elliotekj/DeltaE") + (synopsis "Pure Rust implementation of the CIEDE2000 algorithm") + (description "DeltaE is a pure-Rust implementation of the +@url{http://en.wikipedia.org/wiki/Color_difference#CIEDE2000, CIEDE2000} +algorithm which serves to quantify the difference between two colors.") + (license license:expat))) + (define-public rust-demo-hack-0.0 (package (name "rust-demo-hack") From feb657d24463fa00e526185d792aaafd39c2a844 Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Tue, 15 Sep 2020 16:36:28 +0800 Subject: [PATCH 160/757] gnu: Add rust-ansi-colours-1. * gnu/packages/crates-io.scm (rust-ansi-colours-1): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 80c46edea1..1257d6160a 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -443,6 +443,37 @@ shapes, lines and text to buffers.") (description "This package provides the glue for the Android JNI.") (license license:expat))) +(define-public rust-ansi-colours-1 + (package + (name "rust-ansi-colours") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "ansi_colours" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1dnqmpk68mzvncj37jlv0362kdgsgjxg010c6psagimgh4m303qx")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cc" ,rust-cc-1)) + #:cargo-development-inputs + (("rust-delta-e" ,rust-delta-e-0.2) + ("rust-lab" ,rust-lab-0.4)))) + (home-page "https://github.com/mina86/ansi_colours") + (synopsis "Palette converter between true-colour and ANSI terminal") + (description + "@code{ansi_colours} is a library which converts between 24-bit sRGB +colours and 8-bit colour palette used by ANSI terminals such as @code{xterm} on +@code{rxvt-unicode} in 256-colour mode. +The most common use case is when using 24-bit colours in a terminal emulator +which only support 8-bit colour palette. This package allows true-colours to be +approximated by values supported by the terminal.") + (license license:lgpl3+))) + (define-public rust-ansi-term-0.12 (package (name "rust-ansi-term") From 9e7b2658d97493a5be01fb3d8c32762354c411dc Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Wed, 16 Sep 2020 09:53:57 +0200 Subject: [PATCH 161/757] gnu: sbcl-hu.dwim.common: Fix missing description. * gnu/packages/lisp-xyz.scm (sbcl-hu.dwim.common)[description]: Repeat the synopsis since there is nothing more to say about this library. --- gnu/packages/lisp-xyz.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index cef1e9e5b0..c4ae02d429 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -13613,7 +13613,8 @@ package that includes a number of renames and shadows. ") ("metabang-bind" ,sbcl-metabang-bind))) (home-page "http://dwim.hu/") (synopsis "Common Lisp library shared by other hu.dwim systems") - (description "") + (description "This package contains a support library for other +hu.dwim systems.") (license license:public-domain))) (define-public cl-hu.dwim.common From b85863f7ce99d05205e57358b36ff50656cca08b Mon Sep 17 00:00:00 2001 From: "Jan (janneke) Nieuwenhuizen" Date: Wed, 16 Sep 2020 06:57:51 +0200 Subject: [PATCH 162/757] gnu: commencement: bash-mesboot0: Break store file-name in comment. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes . Reported by Vagrant Cascadian . * gnu/packages/commencement.scm (bash-mesboot0)[arguments]: Break store file name in comment and add unquoted string-append to silence the ’assert-no-store-file-names’ check. The store file name check is really meant for code; this file name was unfortunately used is a comment. --- gnu/packages/commencement.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 565799c611..8a0864f26a 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -788,14 +788,17 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (substitute* "config.h" (("#define GETCWD_BROKEN 1") "#undef GETCWD_BROKEN")) (let ((config.h (open-file "config.h" "a"))) - (display (string-append " + (display (string-append + ;; XXX TODO: remove nested ,(string-append ...) and + ;; store file name on next rebuild cycle + ,(string-append " // tcc: error: undefined symbol 'enable_hostname_completion' #define enable_hostname_completion(on_or_off) 0 -// /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice +// /gnu/store/" "cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice #define HAVE_POSIX_SIGNALS 1 #define endpwent(x) 0 -") +")) config.h) (close config.h)) #t)) From 5674ea45a3faf87cc44eb7c63a97e7fc55fc0c3c Mon Sep 17 00:00:00 2001 From: Paul Garlick Date: Wed, 16 Sep 2020 12:18:54 +0100 Subject: [PATCH 163/757] gnu: Add texlive-todonotes. * gnu/packages/tex.scm (texlive-todonotes): New variable. --- gnu/packages/tex.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 63b144c45b..35f2049dbf 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -7380,3 +7380,24 @@ subdivided bibliographies, such as bibliographies per chapter or section. @end enumerate\n") (license license:lppl1.3c)))) + +(define-public texlive-todonotes + (let ((template (simple-texlive-package + "texlive-todonotes" + (list "/doc/latex/todonotes/" + "/tex/latex/todonotes/") + (base32 + "0lvxsskz4bdfxhd59hf77kiq8k4nh2spb66vc6hifdgi21z8r8wm") + #:trivial? #t))) + (package + (inherit template) + (propagated-inputs + `(("texlive-latex-pgf" ,texlive-latex-pgf) + ("texlive-latex-xkeyval" ,texlive-latex-xkeyval))) + (home-page "http://www.ctan.org/pkg/todonotes") + (synopsis "Marking things to do in a LaTeX document") + (description "The @code{todonotes} package lets the user mark +things to do later, in a simple and visually appealing way. The +package takes several options to enable customization and finetuning +of the visual appearance.") + (license license:lppl1.3+)))) From 7194b63833f3cbcd29a65bae0ecd6876cdb1f197 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 16 Sep 2020 11:53:05 +0200 Subject: [PATCH 164/757] gnu: youtube-dl: Refer to ffmpeg. Addresses . * gnu/packages/video.scm (youtube-dl)[inputs]: Add ffmpeg. [arguments]: Fall back to input ffmpeg instead of searching $PATH. --- gnu/packages/video.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 8ebe7dbcdf..78604628f1 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -2184,6 +2184,16 @@ To load this plugin, specify the following option when starting mpv: ;; 'youtube-dl.bash-completion'. `(#:tests? #f ; Many tests fail. The test suite can be run with pytest. #:phases (modify-phases %standard-phases + (add-after 'unpack 'default-to-the-ffmpeg-input + (lambda _ + ;; See . + ;; ffmpeg is big but required to request free formats + ;; from, e.g., YouTube so pull it in unconditionally. + ;; Continue respecting the --ffmpeg-location argument. + (substitute* "youtube_dl/postprocessor/ffmpeg.py" + (("\\.get\\('ffmpeg_location'\\)" match) + (format #f "~a or '~a'" match (which "ffmpeg")))) + #t)) (add-before 'install 'fix-the-data-directories (lambda* (#:key outputs #:allow-other-keys) (let ((prefix (assoc-ref outputs "out"))) @@ -2207,6 +2217,8 @@ To load this plugin, specify the following option when starting mpv: (copy-file "youtube-dl.zsh" (string-append zsh "/_youtube-dl")) #t)))))) + (inputs + `(("ffmpeg" ,ffmpeg))) (synopsis "Download videos from YouTube.com and other sites") (description "Youtube-dl is a small command-line program to download videos from From d7f7ed39be3be926b3c46c0ea15d416c593ef61f Mon Sep 17 00:00:00 2001 From: Konrad Hinsen Date: Fri, 11 Sep 2020 13:13:26 +0200 Subject: [PATCH 165/757] repl: Look for script files in (getcwd). MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes . * guix/scripts/repl.scm (guix-repl): Replace "." by (getcwd) * tests/guix-repl.sh: Add test. Co-authored-by: Ludovic Courtès --- guix/scripts/repl.scm | 5 ++++- tests/guix-repl.sh | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/guix/scripts/repl.scm b/guix/scripts/repl.scm index 3c79e89f8d..7d4e474e92 100644 --- a/guix/scripts/repl.scm +++ b/guix/scripts/repl.scm @@ -178,7 +178,10 @@ call THUNK." (lambda () (set-program-arguments script) (set-user-module) - (load-in-vicinity "." (car script))))) + + ;; When passed a relative file name, 'load-in-vicinity' searches the + ;; file in %LOAD-PATH. Thus, pass (getcwd) instead of ".". + (load-in-vicinity (getcwd) (car script))))) (when (null? script) ;; Start REPL diff --git a/tests/guix-repl.sh b/tests/guix-repl.sh index e1c2b8241f..d4ebb5f6c6 100644 --- a/tests/guix-repl.sh +++ b/tests/guix-repl.sh @@ -45,6 +45,10 @@ EOF test "`guix repl "$tmpfile"`" = "coreutils" +# Make sure that the file can also be loaded when passed as a relative file +# name. +(cd "$(dirname "$tmpfile")"; test "$(guix repl "$(basename "$tmpfile")")" = "coreutils") + cat > "$module_dir/foo.scm"< Date: Sun, 13 Sep 2020 13:02:52 +0100 Subject: [PATCH 166/757] gnu: mailutils: Fix unitialized variable in readmsg. Fixes . * gnu/packages/patches/mailutils-fix-uninitialized-variable.patch: New file. * gnu/packages/mail.scm (mailutils)[source]: Add patch. * gnu/local.mk (dist_patch_DATA): Register patch. --- gnu/local.mk | 1 + gnu/packages/mail.scm | 5 +++- ...mailutils-fix-uninitialized-variable.patch | 26 +++++++++++++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/mailutils-fix-uninitialized-variable.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1baa8405c5..6cdbe0d778 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1291,6 +1291,7 @@ dist_patch_DATA = \ %D%/packages/patches/luajit-no_ldconfig.patch \ %D%/packages/patches/luit-posix.patch \ %D%/packages/patches/lvm2-static-link.patch \ + %D%/packages/patches/mailutils-fix-uninitialized-variable.patch \ %D%/packages/patches/make-impure-dirs.patch \ %D%/packages/patches/mariadb-client-test-32bit.patch \ %D%/packages/patches/mars-install.patch \ diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 3e6d975ee4..06b04d6024 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -197,7 +197,10 @@ example, modify the message headers or body, or encrypt or sign the message.") version ".tar.xz")) (sha256 (base32 - "17smrxjdgbbzbzakik30vj46q4iib85ksqhb82jr4vjp57akszh9")))) + "17smrxjdgbbzbzakik30vj46q4iib85ksqhb82jr4vjp57akszh9")) + (patches + ;; Fixes https://issues.guix.gnu.org/43088. + (search-patches "mailutils-fix-uninitialized-variable.patch")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/patches/mailutils-fix-uninitialized-variable.patch b/gnu/packages/patches/mailutils-fix-uninitialized-variable.patch new file mode 100644 index 0000000000..2a1c81648b --- /dev/null +++ b/gnu/packages/patches/mailutils-fix-uninitialized-variable.patch @@ -0,0 +1,26 @@ +From 5ca6382fe8adb5bc436a6d873c8b86c69d5abfd1 Mon Sep 17 00:00:00 2001 +From: Sergey Poznyakoff +Date: Sun, 13 Sep 2020 14:43:46 +0300 +Subject: [PATCH] Fix uninitialized variable in readmsg + +* readmsg/readmsg.c (main): Initialize weedc. +--- + readmsg/readmsg.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/readmsg/readmsg.c b/readmsg/readmsg.c +index 9f305bb9c..3a9f420db 100644 +--- a/readmsg/readmsg.c ++++ b/readmsg/readmsg.c +@@ -466,7 +466,7 @@ main (int argc, char **argv) + mu_mailbox_t mbox = NULL; + struct mu_wordsplit ws; + char **weedv; +- int weedc; ++ int weedc = 0; + int unix_header = 0; + + /* Native Language Support */ +-- +2.28.0 + From 67b1ca4283533abebeea715d90f67f353748e1f2 Mon Sep 17 00:00:00 2001 From: Morgan Smith Date: Tue, 15 Sep 2020 08:57:34 -0400 Subject: [PATCH 167/757] gnu: Add emacs-eshell-syntax-highlighting. * gnu/packages/emacs-xyz.scm (emacs-eshell-syntax-highlighting): New variable. Signed-off-by: Nicolas Goaziou --- gnu/packages/emacs-xyz.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 46af73456b..f27c6fa6eb 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -16924,6 +16924,27 @@ visiting the bookmark, a new @code{eshell} session will be opened in the appropriate directory if no @code{eshell} session is active.") (license license:gpl3+))) +(define-public emacs-eshell-syntax-highlighting + (package + (name "emacs-eshell-syntax-highlighting") + (version "0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/akreisher/eshell-syntax-highlighting") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0id27874wsb5y169030x8g1ldpa1mnskv1s2j3ygqiyh5fvpfash")))) + (build-system emacs-build-system) + (home-page "https://github.com/akreisher/eshell-syntax-highlighting") + (synopsis "Add syntax highlighting to Eshell") + (description + "This package highlights user commands at the Eshell interactive prompt +to provide feedback on the validity of commands and syntax.") + (license license:gpl3+))) + (define-public emacs-eshell-z (package (name "emacs-eshell-z") From 98dc073afc8e12e510ead5437cc720d51bcdbb22 Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Wed, 16 Sep 2020 16:28:31 -0300 Subject: [PATCH 168/757] gnu: emacs-fountain-mode: Update to 3.3.0. * gnu/packages/emacs-xyz.scm (emacs-fountain-mode): Update to 3.3.0. Signed-off-by: Nicolas Goaziou --- 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 f27c6fa6eb..e5347f7d19 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3059,7 +3059,7 @@ files and directories.") (define-public emacs-fountain-mode (package (name "emacs-fountain-mode") - (version "3.2.2") + (version "3.3.0") (source (origin (method git-fetch) @@ -3068,7 +3068,7 @@ files and directories.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0rwdwbw9cq8ljvbmgmz9izank8dqjki79l1bw127lli69fs72gyi")))) + (base32 "04jrv6i4ah3i8c9hcd9wyaw2vrxr46f50qb9qwna2v7qa5vaway3")))) (build-system emacs-build-system) (home-page "https://github.com/rnkn/fountain-mode") (synopsis "Major mode for screenwriting in Fountain markup") From 8d557d4167ea98dfbc200fd20f64b8da36da35a2 Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Wed, 16 Sep 2020 16:39:52 -0300 Subject: [PATCH 169/757] gnu: Add emacs-sbt-mode. * gnu/packages/emacs-xyz.scm (emacs-sbt-mode): New variable. Signed-off-by: Nicolas Goaziou --- 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 e5347f7d19..28a0ee7536 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -5275,6 +5275,29 @@ commands and highlighting.") ;; indicates GPL3. (license license:gpl3))) +(define-public emacs-sbt-mode + (package + (name "emacs-sbt-mode") + (version "2.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hvesalai/emacs-sbt-mode") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0lv9ridzk9x6rkf7lj21srnszypyq04vqg05vl10zhpz1yqlnbjd")))) + (build-system emacs-build-system) + (home-page "https://github.com/hvesalai/emacs-sbt-mode") + (synopsis "Basic functionality for interacting with sbt inside Emacs") + (description + "This mode provides basic functionality required for successfully +interacting with sbt inside Emacs. The core functionality includes +interacting with the sbt shell and Scala console, compiling code and +navigation to errors.") + (license license:gpl3+))) + (define-public emacs-scheme-complete (let ((commit "9b5cf224bf2a5994bc6d5b152ff487517f1a9bb5")) (package From a765b7b043826b83d048f96b37883ed235244d3b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 16 Sep 2020 23:20:59 +0200 Subject: [PATCH 170/757] gnu: bind: Update to 9.16.7. * gnu/packages/dns.scm (isc-bind): Update to 9.16.7. --- gnu/packages/dns.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 8bb34111d2..65f1c632b4 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -313,7 +313,7 @@ and BOOTP/TFTP for network booting of diskless machines.") (package (name "bind") ;; When updating, check whether isc-dhcp's bundled copy should be as well. - (version "9.16.6") + (version "9.16.7") (source (origin (method url-fetch) (uri (string-append @@ -321,7 +321,7 @@ and BOOTP/TFTP for network booting of diskless machines.") "/bind-" version ".tar.xz")) (sha256 (base32 - "1jvi6ms51vyrhpflx05xlb7gblyd59zsyj28b8s3pl3xnkrv0rxm")))) + "1l8lhgnkj3fnl1101bs3pzj5gv2x5m9ahvrbyscsc9mxxc91hzcz")))) (build-system gnu-build-system) (outputs `("out" "utils")) (inputs From 6feb7a2107000f9ded547543dcda9d64402c6081 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 17 Sep 2020 00:25:28 +0300 Subject: [PATCH 171/757] gnu: vim-airline: Don't install tests. * gnu/packages/vim.scm (vim-airline)[arguments]: Adjust install-plan to not install tests. --- gnu/packages/vim.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 083f9da3a4..5814eb421f 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -499,8 +499,7 @@ commit or run any Git arbitrary command.") '(#:install-plan '(("autoload" "share/vim/vimfiles/") ("doc" "share/vim/vimfiles/") - ("plugin" "share/vim/vimfiles/") - ("t" "share/vim/vimfiles/")))) + ("plugin" "share/vim/vimfiles/")))) (synopsis "Statusline for Vim") (description "@code{vim-airline} is an extensible statusline for Vim. From cc5f9348b834a91ca88ed22c39146d52d0e8ad24 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 17 Sep 2020 10:36:00 +0200 Subject: [PATCH 172/757] gnu: cuirass: Update to 0.0.1-46.89f0dbc. * gnu/packages/ci.scm (cuirass): Update to 0.0.1-46.89f0dbc. --- gnu/packages/ci.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index 5f7baebe20..411b7a7e5e 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -47,8 +47,8 @@ #:use-module (guix build-system gnu)) (define-public cuirass - (let ((commit "cf11b73db00678b45b70108768138d0fb74d9506") - (revision "45")) + (let ((commit "d22ffdfa2ab2e692e41dbc8c2e6c4d25a79ee9cd") + (revision "46")) (package (name "cuirass") (version (git-version "0.0.1" revision commit)) @@ -60,7 +60,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "1f7jqnscy8vjqrpgl4cyynrvbx6zp3slsd82fykap6qvvwwn7xj8")))) + "00649cjc7a1dny2xpqa2qa5hjqdbxyqwfhdbf5ax02ncnn6vwkas")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) From 731354b8d7fb7dccb72354f73aff901734966f1e Mon Sep 17 00:00:00 2001 From: Konrad Hinsen Date: Wed, 16 Sep 2020 18:37:39 +0200 Subject: [PATCH 173/757] gnu: Add python-pypandoc. * gnu/packages/python-xyz.scm (python-pypandoc): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/python-xyz.scm | 43 +++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 593bb3f468..bb65cf2149 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -129,6 +129,7 @@ #:use-module (gnu packages gsasl) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) + #:use-module (gnu packages haskell-xyz) #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) @@ -21979,3 +21980,45 @@ dates in almost any string formats commonly found on web pages.") (description "Safety checks installed dependencies for known vulnerabilities. By default it uses the open Python vulnerability database Safety DB.") (license license:expat))) + +(define-public python-pypandoc + (package + (name "python-pypandoc") + (version "1.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pypandoc" version)) + (sha256 + (base32 + "1zvn9764cf7kkjkmr9gw6wc8adpk06qxr1rhxwa9pg0zmdvrk90l")))) + (build-system python-build-system) + (inputs + `(("pandoc" ,pandoc) + ("pandoc-citeproc" ,pandoc-citeproc))) + (propagated-inputs + `(("wheel" ,python-wheel))) + (native-inputs + `(("texlive" ,(texlive-union (list texlive-amsfonts + texlive-fonts-ec + texlive-latex-hyperref + texlive-latex-oberdiek + texlive-lm + texlive-xcolor))))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'disable-tests + (lambda _ + ;; Disable test requiring network access + (substitute* "tests.py" + (("test_basic_conversion_from_http_url") + "skip_test_basic_conversion_from_http_url")) + ;; Needed by texlive-union to generate fonts + (setenv "HOME" "/tmp") + #t))))) + (home-page "https://github.com/bebraw/pypandoc") + (synopsis "Python wrapper for pandoc") + (description "pypandoc is a thin Python wrapper around pandoc +and pandoc-citeproc.") + (license license:expat))) From 8b030edf021039e87cf27af4ff350dd505957768 Mon Sep 17 00:00:00 2001 From: Arne Babenhauserheide Date: Wed, 16 Sep 2020 23:59:49 +0200 Subject: [PATCH 174/757] gnu: guile-wisp: Update to 1.0.3 * gnu/packages/guile-xyz.scm (guile-wisp): Update to 1.0.3. [source]: Access via hg and change from bitbucket to hg.sr.ht. [arguments]: Replace 'bootstrap phase; remove Guile 3 patch because Guile 3 is supported in 1.0.3. [native-inputs]: Add autoconf and automake. Signed-off-by: Ricardo Wurmus --- gnu/packages/guile-xyz.scm | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 3090c6078b..f4a1e40a18 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -1621,15 +1621,16 @@ The library is shipped with documentation in Info format and usage examples.") (define-public guile-wisp (package (name "guile-wisp") - (version "1.0.2") + (version "1.0.3") (source (origin - (method url-fetch) - (uri (string-append "https://bitbucket.org/ArneBab/" - "wisp/downloads/wisp-" - version ".tar.gz")) + (method hg-fetch) + (uri (hg-reference + (url "https://hg.sr.ht/~arnebab/wisp") + (changeset (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "03pz7pj9jyallynhflp5s7qax8dj1fs8la434wrfgz7g1kgjnvf6")))) + "10g97jz3ahpb5mg933ajsc3pa9jxlg14f42yf01qwx0dwq1b06d5")))) (build-system gnu-build-system) (arguments `(#:modules ((guix build gnu-build-system) @@ -1643,11 +1644,9 @@ The library is shipped with documentation in Info format and usage examples.") (guix build emacs-utils)) #:phases (modify-phases %standard-phases - (add-after 'unpack 'support-guile-3.0 + (replace 'bootstrap (lambda _ - (substitute* "configure" - (("_guile_versions_to_search=\"2.2") - "_guile_versions_to_search=\"3.0 2.2")) + (invoke "autoreconf" "-vif") #t)) (add-before 'configure 'patch-/usr/bin/env (lambda _ @@ -1689,7 +1688,9 @@ The library is shipped with documentation in Info format and usage examples.") (inputs `(("guile" ,guile-3.0))) (native-inputs - `(("emacs" ,emacs-minimal) + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("emacs" ,emacs-minimal) ("python" ,python) ("pkg-config" ,pkg-config))) (synopsis "Whitespace to lisp syntax for Guile") From dc2f0e703aeaee8ab2d410683031007d7d983d81 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 17 Sep 2020 13:58:58 +0200 Subject: [PATCH 175/757] gnu: python-psycopg2: Update to 2.8.6. * gnu/packages/databases.scm (python-psycopg2): Update to 2.8.6. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index fe9978587c..e34b305268 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -2897,13 +2897,13 @@ designed to be easy and intuitive to use.") (define-public python-psycopg2 (package (name "python-psycopg2") - (version "2.8.5") + (version "2.8.6") (source (origin (method url-fetch) (uri (pypi-uri "psycopg2" version)) (sha256 - (base32 "06081jk9srkd4ra9j8b93x9ld3a2yxsbsf5bbbcivbm1yx065m7p")))) + (base32 "0hzmk6b1hb5riqkljr5xics6p4zbvmis6knbczb7zhq7273zc8zv")))) (build-system python-build-system) (arguments ;; Tests would require a postgresql database "psycopg2_test" From 1306283843c6a933e0dc3bc1eedbc38b687c0d73 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 17 Sep 2020 14:06:12 +0200 Subject: [PATCH 176/757] gnu: easyrpg-player: Update to 0.6.2.2. * gnu/packages/easyrpg.scm (easyrpg-player): Update to 0.6.2.2. --- gnu/packages/easyrpg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/easyrpg.scm b/gnu/packages/easyrpg.scm index 7bd5935b19..6cb7b7ae88 100644 --- a/gnu/packages/easyrpg.scm +++ b/gnu/packages/easyrpg.scm @@ -76,7 +76,7 @@ It can read and write LCF and XML files.") (define-public easyrpg-player (package (name "easyrpg-player") - (version "0.6.2.1") + (version "0.6.2.2") (source (origin (method url-fetch) (uri (string-append @@ -84,7 +84,7 @@ It can read and write LCF and XML files.") "/easyrpg-player-" version ".tar.gz")) (sha256 (base32 - "1bai0mxjw1qvl2vcwgssycbyn0crk0b5l69ld9rawcs2nczb44s5")))) + "02nrqrb6klynwrq6z0639qnlhr2z900b0y94xr96i12icr7ihm5m")))) (build-system gnu-build-system) (arguments '(#:configure-flags From f72bafe32d539ddc4c53bc6ff5db04d3138ff818 Mon Sep 17 00:00:00 2001 From: Morgan Smith Date: Thu, 17 Sep 2020 13:02:19 +0200 Subject: [PATCH 177/757] guix-install.sh: Be POSIX-compliant. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * etc/guix-install.sh (guix_get_bin_list): Call grep with an extended regular expression instead of a non-POSIX Perl regular expression. (sys_create_store): Remove ‘--warning=no-timestamp’ argument to tar. Signed-off-by: Tobias Geerinckx-Rice --- etc/guix-install.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/etc/guix-install.sh b/etc/guix-install.sh index aa77d42615..9768f1c620 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -212,7 +212,7 @@ guix_get_bin_list() | sort -Vu)") latest_ver="$(echo "$bin_ver_ls" \ - | grep -oP "([0-9]{1,2}\.){2}[0-9]{1,2}" \ + | grep -oE "([0-9]{1,2}\.){2}[0-9]{1,2}" \ | tail -n1)" default_ver="guix-binary-${latest_ver}.${ARCH_OS}" @@ -268,8 +268,7 @@ sys_create_store() _debug "--- [ $FUNCNAME ] ---" cd "$tmp_path" - tar --warning=no-timestamp \ - --extract \ + tar --extract \ --file "$pkg" && _msg "${PAS}unpacked archive" From cabac732deffafc796537658a6c33c6c4aec821e Mon Sep 17 00:00:00 2001 From: Morgan Smith Date: Thu, 17 Sep 2020 13:03:09 +0200 Subject: [PATCH 178/757] guix-install.sh: Support OpenRC. * etc/guix-install.sh (chk_init_sys): Detect OpenRC. (sys_enable_guix_daemon): Install & enable the Guix daemon on such systems. * etc/openrc/guix-daemon.in: New file. * nix/local.mk: Add a rule for it. (openrcservicedir, nodist_openrcservice_DATA): New variables. (CLEANFILES, EXTRA_DIST): Add them. * .gitignore: Ignore etc/openrc/guix-daemon. Signed-off-by: Tobias Geerinckx-Rice --- .gitignore | 1 + etc/guix-install.sh | 15 +++++++++++++++ etc/openrc/guix-daemon.in | 28 ++++++++++++++++++++++++++++ nix/local.mk | 17 +++++++++++++++-- 4 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 etc/openrc/guix-daemon.in diff --git a/.gitignore b/.gitignore index f630444a0f..e2f745b42a 100644 --- a/.gitignore +++ b/.gitignore @@ -74,6 +74,7 @@ /etc/guix-publish.conf /etc/guix-publish.service /etc/init.d/guix-daemon +/etc/openrc/guix-daemon /guix-daemon /guix/config.scm /libformat.a diff --git a/etc/guix-install.sh b/etc/guix-install.sh index 9768f1c620..eb7205a261 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -4,6 +4,7 @@ # Copyright © 2018 Ricardo Wurmus # Copyright © 2018 Efraim Flashner # Copyright © 2019, 2020 Tobias Geerinckx-Rice +# Copyright © 2020 Morgan Smith # # This file is part of GNU Guix. # @@ -150,6 +151,10 @@ chk_init_sys() _msg "${INF}init system is: sysv-init" INIT_SYS="sysv-init" return 0 + elif [[ $(openrc --version 2>/dev/null) =~ \(OpenRC\) ]]; then + _msg "${INF}init system is: OpenRC" + INIT_SYS="openrc" + return 0 else INIT_SYS="NA" _err "${ERR}Init system could not be detected." @@ -383,6 +388,16 @@ sys_enable_guix_daemon() service guix-daemon start; } && _msg "${PAS}enabled Guix daemon via sysv" ;; + openrc) + { mkdir -p /etc/init.d; + cp "${ROOT_HOME}/.config/guix/current/etc/openrc/guix-daemon" \ + /etc/init.d/guix-daemon; + chmod 775 /etc/init.d/guix-daemon; + + rc-update add guix-daemon default && + rc-service guix-daemon start; } && + _msg "${PAS}enabled Guix daemon via OpenRC" + ;; NA|*) _msg "${ERR}unsupported init system; run the daemon manually:" echo " ${ROOT_HOME}/.config/guix/current/bin/guix-daemon --build-users-group=guixbuild" diff --git a/etc/openrc/guix-daemon.in b/etc/openrc/guix-daemon.in new file mode 100644 index 0000000000..110a58b88d --- /dev/null +++ b/etc/openrc/guix-daemon.in @@ -0,0 +1,28 @@ +#!/sbin/openrc-run +# GNU Guix --- Functional package management for GNU +# Copyright © 2020 Morgan Smith +# +# 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 . + +export GUIX_LOCPATH=@localstatedir@/guix/profiles/per-user/root/guix-profile/lib/locale +export LC_ALL=en_US.utf8 +command="@localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon" +command_args="--build-users-group=guixbuild" +command_background="yes" +pidfile="/var/run/guix-daemon.pid" + +output_log="/var/log/guix-daemon-stdout.log" +error_log="/var/log/guix-daemon-stderr.log" diff --git a/nix/local.mk b/nix/local.mk index 005cde5563..2bb01041b9 100644 --- a/nix/local.mk +++ b/nix/local.mk @@ -180,6 +180,17 @@ etc/init.d/guix-daemon: etc/init.d/guix-daemon.in \ "$<" > "$@.tmp"; \ mv "$@.tmp" "$@" +# The service script for openrc. +openrcservicedir = $(sysconfdir)/init.d +nodist_openrcservice_DATA = etc/openrc/guix-daemon + +etc/openrc/guix-daemon: etc/openrc/guix-daemon.in \ + $(top_builddir)/config.status + $(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \ + $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' < \ + "$<" > "$@.tmp"; \ + mv "$@.tmp" "$@" + # The '.conf' jobs for Upstart. upstartjobdir = $(libdir)/upstart/system nodist_upstartjob_DATA = etc/guix-daemon.conf etc/guix-publish.conf @@ -194,7 +205,8 @@ etc/guix-%.conf: etc/guix-%.conf.in \ CLEANFILES += \ $(nodist_systemdservice_DATA) \ $(nodist_upstartjob_DATA) \ - $(nodist_sysvinitservice_DATA) + $(nodist_sysvinitservice_DATA) \ + $(nodist_openrcservice_DATA) EXTRA_DIST += \ %D%/AUTHORS \ @@ -203,7 +215,8 @@ EXTRA_DIST += \ etc/guix-daemon.conf.in \ etc/guix-publish.service.in \ etc/guix-publish.conf.in \ - etc/init.d/guix-daemon.in + etc/init.d/guix-daemon.in \ + etc/openrc/guix-daemon.in if CAN_RUN_TESTS From 88c71751619ae5f6ae13ad057d3862f29cb942a4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 17 Sep 2020 13:53:32 +0200 Subject: [PATCH 179/757] gnu: grammalecte: Update to 1.12.2. * gnu/packages/dictionaries.scm (grammalecte): Update to 1.12.2. --- gnu/packages/dictionaries.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm index ddc0440d73..f60b3f38d6 100644 --- a/gnu/packages/dictionaries.scm +++ b/gnu/packages/dictionaries.scm @@ -205,14 +205,14 @@ It comes with a German-English dictionary with approximately 270,000 entries.") (define-public grammalecte (package (name "grammalecte") - (version "1.12.0") + (version "1.12.2") (source (origin (method url-fetch/zipbomb) (uri (string-append "https://grammalecte.net/grammalecte/zip/" "Grammalecte-fr-v" version ".zip")) (sha256 - (base32 "1aifa7rj8zyxgk5cgmlgcws2hip7a7y6sr7kddjdnpfgdgy4jjgh")))) + (base32 "1qny2l5dr08pfj2dnzmvm5gmwqz8m879ryxfaw4k8dhaacrrrf62")))) (build-system python-build-system) (home-page "https://grammalecte.net") (synopsis "French spelling and grammar checker") From 9e59ae320e1eebde7ccb4aec599b1a9a5765fb19 Mon Sep 17 00:00:00 2001 From: Jelle Licht Date: Thu, 17 Sep 2020 14:19:41 +0200 Subject: [PATCH 180/757] gnu: emacs-counsel-projectile: Update to 0.3.1. * gnu/packages/emacs-xyz.scm (emacs-counsel-projectile): Update to 0.3.1. --- 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 28a0ee7536..ae95b15c12 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -7384,7 +7384,7 @@ asynchronously, with Counsel and Ivy. Simply call (define-public emacs-counsel-projectile (package (name "emacs-counsel-projectile") - (version "0.3.0") + (version "0.3.1") (source (origin (method git-fetch) (uri (git-reference @@ -7393,7 +7393,7 @@ asynchronously, with Counsel and Ivy. Simply call (file-name (git-file-name name version)) (sha256 (base32 - "1inc4ndl0ysfwvxk4avbgpj4qi9rc93da6476a5c81xmwpsv8wmq")))) + "1k4n5lw6wwbgpwv0dg9dw0bjzi0hvbgkzrs1zmq36yhfz6y8gwnh")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-counsel" ,emacs-counsel) From b96f4f0995de80032bd6e0f0b3232d426436a130 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Tue, 15 Sep 2020 09:59:43 -0400 Subject: [PATCH 181/757] gnu: openmpi: Update to 4.0.5. * gnu/packages/mpi.scm (openmpi): Update to 4.0.5. Signed-off-by: Mathieu Othacehe --- gnu/packages/mpi.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index b39c50779a..d831766ef2 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -177,7 +177,7 @@ bind processes, and much more.") (define-public openmpi (package (name "openmpi") - (version "4.0.3") + (version "4.0.5") (source (origin (method url-fetch) @@ -185,7 +185,7 @@ bind processes, and much more.") (version-major+minor version) "/downloads/openmpi-" version ".tar.bz2")) (sha256 - (base32 "00zxcw99gr5n693cmcmn4f6a47vx1ywna895p0x7p163v37gw0hl")) + (base32 "02f0r9d3xgs08svkmj8v7lzviyxqnkk4yd3z0wql550xnriki3y5")) (patches (search-patches "openmpi-mtl-priorities.patch")))) (build-system gnu-build-system) (inputs From 9911dc10e2faed7f26dc115a0722803a479dbd2a Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Wed, 16 Sep 2020 16:25:46 -0300 Subject: [PATCH 182/757] gnu: python-libsass: Update to 0.20.1. * gnu/packages/python-xyz.scm (python-libsass): Update to 0.20.1. [arguments]: Enable test that failed in the previous version. Signed-off-by: Mathieu Othacehe --- gnu/packages/python-xyz.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index bb65cf2149..8b657ad542 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -9165,7 +9165,7 @@ specification.") (define-public python-libsass (package (name "python-libsass") - (version "0.20.0") + (version "0.20.1") (source (origin ;; PyPI tarball is missing some test files. @@ -9175,7 +9175,7 @@ specification.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0h9rj4k9izkfdvli8ip72bbvh6a7bvrv5pxz6zay2bq235gpfgfc")))) + (base32 "1r0kgl7i6nnhgjl44sjw57k08gh2qr7l8slqih550dyxbf1akbxh")))) (build-system python-build-system) (arguments `(#:phases @@ -9188,10 +9188,7 @@ specification.") (replace 'check (lambda* (#:key inputs outputs #:allow-other-keys) (add-installed-pythonpath inputs outputs) - (invoke "pytest" "sasstests.py" "-k" - ;; See https://github.com/sass/libsass/issues/3092. - ;; This test may work in a future release of libsass. - "not test_stack_trace_formatting")))))) + (invoke "pytest" "sasstests.py")))))) (native-inputs `(("python-pytest" ,python-pytest) ("python-werkzeug" ,python-werkzeug))) From 94ca1e19b3ad8c9366a5e14a1fa1bbacca711a92 Mon Sep 17 00:00:00 2001 From: Paul Garlick Date: Thu, 17 Sep 2020 16:18:39 +0100 Subject: [PATCH 183/757] gnu: Add texlive-units. * gnu/packages/tex.scm (texlive-units): New variable. --- gnu/packages/tex.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 35f2049dbf..78dd37733d 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -7401,3 +7401,21 @@ things to do later, in a simple and visually appealing way. The package takes several options to enable customization and finetuning of the visual appearance.") (license license:lppl1.3+)))) + +(define-public texlive-units + (let ((template (simple-texlive-package + "texlive-units" + (list "/doc/latex/units/" + "/tex/latex/units/") + (base32 + "1ia1vzy8dp7pdvmawwnmh9lmkajmpnnh62dixrjpb6mnxq118bfd") + #:trivial? #t))) + (package + (inherit template) + (home-page "http://www.ctan.org/pkg/units") + (synopsis "Typeset physical units and fractions") + (description "@code{units} is a package for typesetting physical +units in a standard-looking way. The package is based upon +@code{nicefrac}, a package for typing fractions. @code{nicefrac} is +included in the @code{units} bundle.") + (license license:gpl3+)))) From 34d150dcb29b85f69982c75f584857adbc52e60d Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 17 Sep 2020 11:36:04 -0500 Subject: [PATCH 184/757] gnu: hdf5: Update to 1.10.7. Fixes CVE-2018-13870, CVE-2018-13869 and CVE-2018-17435. * gnu/packages/maths.scm (hdf5-1.10): Update to 1.10.7. --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index df4d39f900..ce393cba80 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1183,7 +1183,7 @@ extremely large and complex data collections.") (define-public hdf5-1.10 (package/inherit hdf5-1.8 - (version "1.10.6") + (version "1.10.7") (source (origin (method url-fetch) @@ -1197,7 +1197,7 @@ extremely large and complex data collections.") (take (string-split version #\.) 2)) "/src/hdf5-" version ".tar.bz2"))) (sha256 - (base32 "1gf38x51128hn00744358w27xgzjk0ff4wra4yxh2lk804ck1mh9")) + (base32 "0pm5xxry55i0h7wmvc7svzdaa90rnk7h78rrjmnlkz2ygsn8y082")) (patches (search-patches "hdf5-config-date.patch")))))) (define-public hdf5 From a96873565da1e9a7ef95ab06a5774b1207b86ead Mon Sep 17 00:00:00 2001 From: Konrad Hinsen Date: Thu, 17 Sep 2020 09:27:09 +0200 Subject: [PATCH 185/757] gnu: Add python-requests-ftp. * gnu/packages/python-web.scm (python-requests-ftp): New variable. Signed-off-by: Leo Famulari --- gnu/packages/python-web.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 7926539233..6bd413efca 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -2029,6 +2029,28 @@ with python-requests.") `(;; FIXME: Some tests require network access. #:tests? #f)))) +(define-public python-requests-ftp + (package + (name "python-requests-ftp") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "requests-ftp" version)) + (sha256 + (base32 + "0yh5v21v36dsjsgv4y9dx4mmz35741l5jf6pbq9w19d8rfsww13m")))) + (build-system python-build-system) + (propagated-inputs + `(("python-requests" ,python-requests))) + (home-page + "https://github.com/Lukasa/requests-ftp") + (synopsis "FTP Transport Adapter for Requests") + (description + "Requests-FTP is an implementation of a simple FTP transport +adapter for use with the Requests library.") + (license license:asl2.0))) + (define-public python-oauthlib (package (name "python-oauthlib") From 679d5e6b3dcac4ee1f419c04b3719fead0bd9ee5 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 17 Sep 2020 13:27:14 -0400 Subject: [PATCH 186/757] gnu: Properly credit Konrad Hinsen. This is a followup to commit a96873565da1e9a7ef95ab06a5774b1207b86ead. * gnu/packages/python-web.scm: Update list of copyright holders. --- gnu/packages/python-web.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 6bd413efca..c694426c1c 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -38,6 +38,7 @@ ;;; Copyright © 2020 Noisytoot ;;; Copyright © 2020 Edouard Klein ;;; Copyright © 2020 Vinicius Monego +;;; Copyright © 2020 Konrad Hinsen ;;; ;;; This file is part of GNU Guix. ;;; From 13a5d9f9e32fadb99d0e7415a179050bf337811d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 17 Sep 2020 09:53:35 +0200 Subject: [PATCH 187/757] gnu: purple-mattermost: Update to 1.2-0.158ce20. * gnu/packages/messaging.scm (purple-mattermost): Update to commit 158ce20. --- gnu/packages/messaging.scm | 86 ++++++++++++++++++++------------------ 1 file changed, 45 insertions(+), 41 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index f8bb673734..43f54d3c18 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -350,49 +350,53 @@ access to servers running the Discord protocol.") (license license:gpl2+))) (define-public purple-mattermost - (package - (name "purple-mattermost") - (version "1.2") - (home-page "https://github.com/EionRobb/purple-mattermost") - (source (origin - (method git-fetch) - (uri (git-reference (url home-page) - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0fm49iv58l09qpy8vkca3am642fxiwcrrh6ykimyc2mas210b5g2")))) - (build-system gnu-build-system) - (arguments - `(#:phases (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Adjust the makefile to install files in the right - ;; place. - (let ((out (assoc-ref outputs "out"))) - (substitute* "Makefile" - (("MATTERMOST_DEST = .*") - (string-append "MATTERMOST_DEST = " out - "/lib/purple-2\n")) ;XXX: hardcoded - (("MATTERMOST_ICONS_DEST = .*") - (string-append "MATTERMOST_ICONS_DEST = " - out - "/share/pixmaps/pidgin/protocols\n"))) - #t)))) - #:make-flags (list "CC=gcc" - ,(string-append "PLUGIN_VERSION=" version)) - #:tests? #f)) - (inputs `(("glib" ,glib) - ("json-glib" ,json-glib) - ("discount" ,discount) - ("pidgin" ,pidgin))) - (native-inputs `(("pkg-config" ,pkg-config))) - (synopsis "Purple plug-in to access Mattermost instant messaging") - (description - "Purple-Mattermost is a plug-in for Purple, the instant messaging library + ;; The latest release (1.2) only supports Mattermost's /api/v3. Choose a + ;; commit that supports /api/v4. + (let ((commit "158ce2052af9aaf3d1f6f045f0cfba276e0e91cf") + (revision "0")) + (package + (name "purple-mattermost") + (version (git-version "1.2" revision commit)) + (home-page "https://github.com/EionRobb/purple-mattermost") + (source (origin + (method git-fetch) + (uri (git-reference (url home-page) + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1481zm20pnfq52ncg7hxayjq8cw3a6yh9m4jm1m5s8chsq04015l")))) + (build-system gnu-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Adjust the makefile to install files in the right + ;; place. + (let ((out (assoc-ref outputs "out"))) + (substitute* "Makefile" + (("MATTERMOST_DEST = .*") + (string-append "MATTERMOST_DEST = " out + "/lib/purple-2\n")) ;XXX: hardcoded + (("MATTERMOST_ICONS_DEST = .*") + (string-append "MATTERMOST_ICONS_DEST = " + out + "/share/pixmaps/pidgin/protocols\n"))) + #t)))) + #:make-flags (list "CC=gcc" + ,(string-append "PLUGIN_VERSION=" version)) + #:tests? #f)) + (inputs `(("glib" ,glib) + ("json-glib" ,json-glib) + ("discount" ,discount) + ("pidgin" ,pidgin))) + (native-inputs `(("pkg-config" ,pkg-config))) + (synopsis "Purple plug-in to access Mattermost instant messaging") + (description + "Purple-Mattermost is a plug-in for Purple, the instant messaging library used by Pidgin and Bitlbee, among others, to access @uref{https://mattermost.com/, Mattermost} servers.") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public hexchat (package From 5ce6c2d91dd4dfaa48b3ece0f6a94a8c90415458 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 17 Sep 2020 14:20:39 +0200 Subject: [PATCH 188/757] gnu: gnome-settings-daemon: Record absolute file name of Baobab. * gnu/packages/gnome.scm (gnome-settings-daemon)[arguments]: Add 'set-baobab-file-name' phase. [inputs]: Add BAOBAB. --- gnu/packages/gnome.scm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ac8e955e31..15719ef8e7 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5127,6 +5127,21 @@ services for numerous locations.") (string-append "-Dc_link_args=-Wl,-rpath=" (assoc-ref %outputs "out") "/lib/gnome-settings-daemon-3.0")) + + #:phases (modify-phases %standard-phases + (add-before 'configure 'set-baobab-file-name + (lambda* (#:key inputs #:allow-other-keys) + ;; Hard-code the file name of Baobab instead of looking + ;; it up in $PATH. This ensures users get the "Examine" + ;; button in the low disk space notification of GDM even + ;; if they don't have GNOME in their main profile. + (let ((baobab (assoc-ref inputs "baobab"))) + (substitute* "plugins/housekeeping/gsd-disk-space.c" + (("g_find_program_in_path \\(DISK_SPACE_ANALYZER\\)") + (string-append "g_strdup (\"" baobab + "/bin/baobab\")"))) + #t)))) + ;; Color management test can't reach the colord system service. #:tests? #f)) (native-inputs @@ -5139,6 +5154,7 @@ services for numerous locations.") ("docbook-xsl" ,docbook-xsl))) (inputs `(("alsa-lib" ,alsa-lib) + ("baobab" ,baobab) ("colord" ,colord) ("libgudev" ,libgudev) ("upower" ,upower) From 98b89f432103b66efacee0bcba41a94148b8e870 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 18 Sep 2020 00:04:49 +0200 Subject: [PATCH 189/757] gnu: gnome-settings-daemon: Add "guix gc" to low disk space notification. * gnu/packages/patches/gnome-settings-daemon-gc.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/gnome.scm (gnome-settings-daemon)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/gnome.scm | 3 +- .../patches/gnome-settings-daemon-gc.patch | 43 +++++++++++++++++++ 3 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/gnome-settings-daemon-gc.patch diff --git a/gnu/local.mk b/gnu/local.mk index 6cdbe0d778..1a1a6488f9 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1068,6 +1068,7 @@ dist_patch_DATA = \ %D%/packages/patches/gmp-faulty-test.patch \ %D%/packages/patches/gnome-shell-theme.patch \ %D%/packages/patches/gnome-shell-disable-test.patch \ + %D%/packages/patches/gnome-settings-daemon-gc.patch \ %D%/packages/patches/gnome-todo-delete-esource-duplicate.patch \ %D%/packages/patches/gnome-tweaks-search-paths.patch \ %D%/packages/patches/gnupg-default-pinentry.patch \ diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 15719ef8e7..aebb81419c 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5114,7 +5114,8 @@ services for numerous locations.") name "-" version ".tar.xz")) (sha256 (base32 - "07y1gbicz0pbxmdgwrdzyc4byy30wfwpbqgvnx27gnpqmc5s50cr")))) + "07y1gbicz0pbxmdgwrdzyc4byy30wfwpbqgvnx27gnpqmc5s50cr")) + (patches (search-patches "gnome-settings-daemon-gc.patch")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t diff --git a/gnu/packages/patches/gnome-settings-daemon-gc.patch b/gnu/packages/patches/gnome-settings-daemon-gc.patch new file mode 100644 index 0000000000..688544b418 --- /dev/null +++ b/gnu/packages/patches/gnome-settings-daemon-gc.patch @@ -0,0 +1,43 @@ +This patch adds a "guix gc" button to the low disk space notification +that 'gsd-housekeeping' emits. + +diff --git a/plugins/housekeeping/gsd-disk-space.c b/plugins/housekeeping/gsd-disk-space.c +index bd3437e..89027d8 100644 +--- a/plugins/housekeeping/gsd-disk-space.c ++++ b/plugins/housekeeping/gsd-disk-space.c +@@ -546,6 +546,21 @@ empty_trash_callback (NotifyNotification *n, + notify_notification_close (n, NULL); + } + ++static void ++guix_gc_callback (NotifyNotification *n, ++ const char *action) ++{ ++ const gchar *argv[] = { "guix", "gc", NULL }; ++ ++ g_assert (action != NULL); ++ g_assert (strcmp (action, "run-guix-gc") == 0); ++ ++ g_spawn_async (NULL, (gchar **) argv, NULL, G_SPAWN_SEARCH_PATH, ++ NULL, NULL, NULL, NULL); ++ ++ notify_notification_close (n, NULL); ++} ++ + static void + on_notification_closed (NotifyNotification *n) + { +@@ -591,6 +606,13 @@ ldsm_notify (const char *summary, + g_free); + } + ++ notify_notification_add_action (notification, ++ "run-guix-gc", ++ _("Collect Unused Guix Items"), ++ (NotifyActionCallback) guix_gc_callback, ++ NULL, ++ NULL); ++ + has_trash = ldsm_mount_has_trash (mount_path); + + if (has_trash) { From c59e9f0a03241ef3c7b8042054fd54e327f7539a Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Thu, 17 Sep 2020 11:47:55 -0400 Subject: [PATCH 190/757] gnu: openblas: Update to 0.3.10. * gnu/packages/maths.scm (openblas): Update to 0.3.10. [source]: Fetch from github. Signed-off-by: Mathieu Othacehe --- gnu/packages/maths.scm | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index ce393cba80..dd4d34615b 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -40,6 +40,7 @@ ;;; Copyright © 2020 Nicolò Balzarotti ;;; Copyright © 2020 B. Wilson ;;; Copyright © 2020 Vinicius Monego +;;; Copyright © 2020 Greg Hogan ;;; ;;; This file is part of GNU Guix. ;;; @@ -3609,16 +3610,17 @@ parts of it.") (define-public openblas (package (name "openblas") - (version "0.3.9") + (version "0.3.10") (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/openblas/v" version "/OpenBLAS%20" - version "%20version.tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/xianyi/OpenBLAS") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "14iz9xnrb9xiwgj84j94mc74gg0zn2vsy9fmsijxxma1n7dck4w3")))) + "174id98ga82bhz2v7sy9yj6pqy0h0088p3mkdikip69p9rh3d17b")))) (build-system gnu-build-system) (arguments `(#:test-target "test" From 13ba3dc8a3fed66dbdc317f0d97357bbb47e1175 Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Thu, 17 Sep 2020 17:40:29 -0300 Subject: [PATCH 191/757] gnu: Add cozy. * gnu/packages/ebook.scm (cozy): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/ebook.scm | 105 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index b7c78b6a64..a8212df031 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2017 Roel Janssen ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2020 Marius Bakke +;;; Copyright © 2020 Vinicius Monego ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,26 +27,32 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix utils) #:use-module (guix git-download) #:use-module (guix build-system gnu) + #:use-module (guix build-system meson) #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages databases) + #:use-module (gnu packages file) #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) #:use-module (gnu packages fribidi) #:use-module (gnu packages gcc) + #:use-module (gnu packages gettext) #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) #:use-module (gnu packages glib) + #:use-module (gnu packages gstreamer) #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages javascript) #:use-module (gnu packages libusb) #:use-module (gnu packages libreoffice) + #:use-module (gnu packages music) #:use-module (gnu packages pdf) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -405,6 +412,104 @@ following formats: @end enumerate") (license license:gpl2+))) +(define-public cozy + (package + (name "cozy") + (version "0.6.19") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/geigi/cozy") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1f1qydjs8sz39yhlg9qdjf31vrsmdk2pxiimw4fzsy1k2zr5dr34")))) + (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-desktop-file + (lambda _ + (substitute* "data/com.github.geigi.cozy.desktop.in" + (("com.github.geigi.cozy") "cozy")) + #t)) + (add-after 'install 'patch-executable-name + (lambda* (#:key outputs #:allow-other-keys) + (with-directory-excursion + (string-append (assoc-ref outputs "out") "/bin") + (rename-file "com.github.geigi.cozy" "cozy")) + #t)) + (add-after 'wrap 'wrap-libs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (pylib (string-append + out "/lib/python" + ,(version-major+minor + (package-version python)) + "/site-packages")) + (gi-typelib-path (getenv "GI_TYPELIB_PATH")) + (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")) + (libmagic-path (string-append + (assoc-ref %build-inputs "file") + "/lib")) + (python-path (getenv "PYTHONPATH"))) + (wrap-program (string-append out "/bin/cozy") + `("LD_LIBRARY_PATH" ":" prefix (,libmagic-path)) + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)) + `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)) + `("PYTHONPATH" ":" prefix (,python-path ,pylib)))) + #t))))) + (native-inputs + `(("desktop-file-utils" ,desktop-file-utils) + ("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk+:bin" ,gtk+ "bin") + ("pkg-config" ,pkg-config) + ("python" ,python-wrapper))) + (inputs + `(("file" ,file) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gst-libav" ,gst-libav) + ("gst-plugins-bad" ,gst-plugins-bad) + ("gst-plugins-good" ,gst-plugins-good) + ("gst-plugins-ugly" ,gst-plugins-ugly) + ("gtk+" ,gtk+) + ("python-apsw" ,python-apsw) + ("python-distro" ,python-distro) + ("python-gst" ,python-gst) + ("python-mutagen" ,python-mutagen) + ("python-peewee" ,python-peewee) + ("python-pycairo" ,python-pycairo) + ("python-pygobject" ,python-pygobject) + ("python-pytz" ,python-pytz) + ("python-requests" ,python-requests))) + (home-page "https://cozy.geigi.de/") + (synopsis "Modern audiobook player using GTK+") + (description + "Cozy is a modern audiobook player written in GTK+. + +Some of the current features: + +@itemize +@item Import your audiobooks into Cozy to browse them comfortably +@item Sort your audio books by author, reader & name +@item Remembers your playback position +@item Sleep timer +@item Playback speed control +@item Search your library +@item Offline mode +@item Add multiple storage locations +@item Drag & Drop to import new audio books +@item Support for DRM free mp3, m4a (aac, ALAC, …), flac, ogg, opus, wav files +@item Mpris integration (Media keys & playback info for desktop environment) +@end itemize") + ;; TODO: Unbundle python-inject. + (license (list license:gpl3+ ;cozy + license:asl2.0)))) ;python-inject (bundled dependency) + (define-public xchm (package (name "xchm") From ff128dc6332fddfc65658a8462796fc7ecd1bdd2 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Thu, 17 Sep 2020 11:56:13 -0400 Subject: [PATCH 192/757] gnu: python-networkx: Update to 2.5. * gnu/packages/python-xyz.scm (python-networkx): Update to 2.5. Signed-off-by: Mathieu Othacehe --- 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 8b657ad542..085d88da57 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -7329,13 +7329,13 @@ interfaces in an easy and portable manner.") (define-public python-networkx (package (name "python-networkx") - (version "2.4") + (version "2.5") (source (origin (method url-fetch) (uri (pypi-uri "networkx" version)) (sha256 - (base32 "0r2wr7aqay9fwjrgk35fkjzk8lvvb4i4df7ndaqzkr4ndw5zzx7q")))) + (base32 "00hnii2lplig2s324k1hvi29pyfab6z7i22922f67jgv4da9ay3r")))) (build-system python-build-system) (arguments '(#:phases (modify-phases %standard-phases From de4705d92dd6c97abf9cca16023a35f0100a096d Mon Sep 17 00:00:00 2001 From: Morgan Smith Date: Tue, 15 Sep 2020 14:07:03 -0400 Subject: [PATCH 193/757] gnu: adms: Update to 2.3.7. * gnu/packages/engineering.scm (adms): Update to 2.3.7. [source]: Change the url to github and use the git-fetch method. [native-inputs]: Add "autoconf", "automake", "libtool", "perl" and "perl-xml-libxml". [home-page]: Use the github page. Signed-off-by: Mathieu Othacehe --- gnu/packages/engineering.scm | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index bd89cef70c..266013f45a 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -20,6 +20,7 @@ ;;; Copyright © 2020 Ekaitz Zarraga ;;; Copyright © 2020 B. Wilson ;;; Copyright © 2020 Vinicius Monego +;;; Copyright © 2020 Morgan Smith ;;; ;;; This file is part of GNU Guix. ;;; @@ -1328,21 +1329,26 @@ developed at MIT to model electromagnetic systems.") (define-public adms (package (name "adms") - (version "2.3.6") + (version "2.3.7") (source (origin - (method url-fetch) - (uri - (string-append - "mirror://sourceforge/mot-adms/adms-source/" - (version-major+minor version) "/adms-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/Qucs/ADMS") + (commit (string-append "release-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1rn98l6jxcjhi6ai5f7p588khra9z80m0m0lql4n4sb7773fh1vk")))) + "0i37c9k6q1iglmzp9736rrgsnx7sw8xn3djqbbjw29zsyl3pf62c")))) (build-system gnu-build-system) (native-inputs - `(("flex" ,flex) - ("bison" ,bison))) - (home-page "https://sourceforge.net/projects/mot-adms") + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("bison" ,bison) + ("flex" ,flex) + ("libtool" ,libtool) + ("perl" ,perl) + ("perl-xml-libxml" ,perl-xml-libxml))) + (home-page "https://github.com/Qucs/ADMS") (synopsis "Automatic device model synthesizer") (description "ADMS is a code generator that converts electrical compact device models From 125fc37e5f32afdbd1e5fca119c9eb41e7ad8ec1 Mon Sep 17 00:00:00 2001 From: Florian Pelz Date: Wed, 16 Sep 2020 15:18:08 +0200 Subject: [PATCH 194/757] doc: Clarify what propagated inputs are. Fixes . * doc/guix.texi (package Reference)[package-propagated-inputs]: Clarify. --- doc/guix.texi | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 88128a4b3a..f7e2204b53 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -59,7 +59,7 @@ Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby@* Copyright @copyright{} 2018, 2019 Gábor Boskovits@* -Copyright @copyright{} 2018, 2019 Florian Pelz@* +Copyright @copyright{} 2018, 2019, 2020 Florian Pelz@* Copyright @copyright{} 2018 Laura Lazzati@* Copyright @copyright{} 2018 Alex Vong@* Copyright @copyright{} 2019 Josh Holland@* @@ -6370,21 +6370,22 @@ this area (@pxref{Invoking guix lint}). @anchor{package-propagated-inputs} Lastly, @code{propagated-inputs} is similar to @code{inputs}, but the -specified packages will be automatically installed alongside the package +specified packages will be automatically installed to profiles +(@pxref{Features, the role of profiles in Guix}) alongside the package they belong to (@pxref{package-cmd-propagated-inputs, @command{guix package}}, for information on how @command{guix package} deals with propagated inputs). -For example this is necessary when a C/C++ library needs headers of -another library to compile, or when a pkg-config file refers to another -one @i{via} its @code{Requires} field. +For example this is necessary when packaging a C/C++ library that needs +headers of another library to compile, or when a pkg-config file refers +to another one @i{via} its @code{Requires} field. Another example where @code{propagated-inputs} is useful is for languages that lack a facility to record the run-time search path akin to the @code{RUNPATH} of ELF files; this includes Guile, Python, Perl, and -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}. +more. When packaging libraries written in those languages, ensure they +can find library code they depend on at run time by listing run-time +dependencies in @code{propagated-inputs} rather than @code{inputs}. @item @code{outputs} (default: @code{'("out")}) The list of output names of the package. @xref{Packages with Multiple From a1f4c48721456aae4129b1a4ffcdc052ccd953aa Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Fri, 18 Sep 2020 04:36:49 +0200 Subject: [PATCH 195/757] gnu: emacs-vterm: Update to 0-3.14e4afd. * gnu/packages/emacs-xyz.scm (emacs-vterm): Update to 0-3.14e4afd. Signed-off-by: Mathieu Othacehe --- gnu/packages/emacs-xyz.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index ae95b15c12..74a6bb16fe 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -19522,8 +19522,8 @@ stored playlists.") (define-public emacs-vterm (let ((version "0") - (revision "2") - (commit "f41849c2c9c1899f22d1c3d4f871ec47c82627ce")) + (revision "3") + (commit "14e4afdfc160b2e625c3e483d169786ac00cb4fe")) (package (name "emacs-vterm") (version (git-version version revision commit)) @@ -19535,7 +19535,7 @@ stored playlists.") (file-name (git-file-name name version)) (sha256 (base32 - "1b5s1101n7a2lnpkbadm1h4k6z295fpijx0rdpmd05dkhyarax6n")))) + "0wl613rxw493i3397n34qwqnd5fkyqrnn1fx3y2040xhvjl9rx70")))) (build-system emacs-build-system) (arguments `(#:modules ((guix build emacs-build-system) From 6182897c98e11676b9a370da297a688c311f4cab Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Fri, 18 Sep 2020 05:26:27 +0200 Subject: [PATCH 196/757] gnu: plantuml: Update to 1.2020.16. * gnu/packages/uml.scm (plantuml): Update to 1.2020.16. Signed-off-by: Mathieu Othacehe --- gnu/packages/uml.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/uml.scm b/gnu/packages/uml.scm index ecf8fe0c45..f231b28fe5 100644 --- a/gnu/packages/uml.scm +++ b/gnu/packages/uml.scm @@ -31,14 +31,14 @@ (define-public plantuml (package (name "plantuml") - (version "1.2020.15") + (version "1.2020.16") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/plantuml/" version "/plantuml-" version ".tar.gz")) (sha256 (base32 - "0n9zrdylc79kdzq7i42kd38bndrhgs7p24bmcm7l09nzv8w8j5r0")))) + "10ski6qq99rx98n5m9qs387c61jp40l7gqnbk290kay94x44phs7")))) (build-system ant-build-system) (arguments `(#:tests? #f ; no tests From e1e577e088b36438887410d931fc128ef80f34a4 Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Wed, 16 Sep 2020 16:54:41 -0300 Subject: [PATCH 197/757] gnu: Add python-apiron. * gnu/packages/python-web.scm (python-apiron): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/python-web.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index c694426c1c..27000c9fda 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -1880,6 +1880,39 @@ WebSocket usage in Python programs.") "Purl is a Python package for handling URLs.") (license license:expat))) +(define-public python-apiron + (package + (name "python-apiron") + (version "5.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "apiron" version)) + (sha256 + (base32 "1qwbqn47sf0aqznj1snbv37v8ijx476qqkjf5l9pac7xjkxsr8qk")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key inputs outputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs) + (invoke "pytest" "-vv" "--cov" "-k" + ;; This test tries to connect to the internet. + "not test_call")))))) + (propagated-inputs + `(("python-requests" ,python-requests))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov))) + (home-page "https://github.com/ithaka/apiron") + (synopsis "Python wrapper for interacting with RESTful APIs") + (description + "@code{apiron} provides a declarative, structured configuration of +services and endpoints with a unified interface for interacting with RESTful +APIs.") + (license license:expat))) + (define-public python-requests (package (name "python-requests") From 7802875abc2cdefae89bf67b7701988efb7936be Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Wed, 16 Sep 2020 16:57:06 -0300 Subject: [PATCH 198/757] gnu: Add python-beren. * gnu/packages/python-web.scm (python-beren): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/python-web.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 27000c9fda..b5d4a62c7d 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -1913,6 +1913,28 @@ services and endpoints with a unified interface for interacting with RESTful APIs.") (license license:expat))) +(define-public python-beren + (package + (name "python-beren") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "beren" version)) + (sha256 + (base32 "1v3mdwfqsyza892zvs124ym9w1bkng1j56b7l4dwfjir3723xcgf")))) + (build-system python-build-system) + (arguments + ;; The test tries to open a connection to a remote server. + `(#:tests? #f)) + (propagated-inputs + `(("python-apiron" ,python-apiron))) + (home-page "https://github.com/teffalump/beren") + (synopsis "REST client for Orthanc DICOM servers") + (description + "@code{beren} provides a REST client for Orthanc, a DICOM server.") + (license license:gpl3+))) + (define-public python-requests (package (name "python-requests") From 18bf33a7c0da95545e6b9a72a5122635bea50cf6 Mon Sep 17 00:00:00 2001 From: Prafulla Giri Date: Wed, 16 Sep 2020 22:10:18 +0545 Subject: [PATCH 199/757] gnu: kdenlive: Update to 20.08.1. * gnu/packages/kde.scm (kdenlive): Update to 20.08.1. Signed-off-by: Mathieu Othacehe --- gnu/packages/kde.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index 75e7f39c4b..522907da9c 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2019, 2020 Ludovic Courtès ;;; Copyright © 2020 Marius Bakke ;;; Copyright © 2020 Michael Rohleder +;;; Copyright © 2020 Prafulla Giri ;;; ;;; This file is part of GNU Guix. ;;; @@ -134,7 +135,7 @@ This package contains GUI widgets for baloo.") (list license:lgpl2.1+ license:fdl1.2+)))) (define-public kdenlive - (let ((version "20.04.1")) + (let ((version "20.08.1")) (package (name "kdenlive") (version version) @@ -147,7 +148,7 @@ This package contains GUI widgets for baloo.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0n0x34xmcn0k87rqnz0mk462b3al4gq56kn4m00rr428hafscdz7")))) + "15mpw1sysy7mky8fcj0x4zbspz0na7q76xdfj0j8hsggg9d3yq8l")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) From 34b6dd36bb63e75a2e64a2c9b008c098162b7558 Mon Sep 17 00:00:00 2001 From: Prafulla Giri Date: Wed, 16 Sep 2020 23:29:09 +0545 Subject: [PATCH 200/757] gnu: kdenlive: Add missing dependencies. This allows to browse the file-system using kdenlive's own file-chooser. * gnu/packages/kde.scm (kdenlive) [native-inputs]: Add pkg-config. [inputs]: Add purpose and qtwebkit. Signed-off-by: Mathieu Othacehe --- gnu/packages/kde.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index 522907da9c..d661b7445b 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -152,6 +152,7 @@ This package contains GUI widgets for baloo.") (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) ("qttools" ,qttools))) (inputs `(("shared-mime-info" ,shared-mime-info) @@ -179,6 +180,8 @@ This package contains GUI widgets for baloo.") ("qtquickcontrols2" ,qtquickcontrols2) ("kiconthemes" ,kiconthemes) ("breeze" ,breeze) + ("purpose" ,purpose) + ("qtwebkit" ,qtwebkit) ("qtgraphicaleffects" ,qtgraphicaleffects) ("kplotting" ,kplotting))) (arguments From cd6ec6706c4da76866b83d830ed686b9d036641c Mon Sep 17 00:00:00 2001 From: Prafulla Giri Date: Thu, 17 Sep 2020 00:55:58 +0545 Subject: [PATCH 201/757] gnu: kdenlive: Simplify 'wrap-executable phase. * gnu/packages/kde.scm (kdenlive)[arguments]: Use getenv to set the values of QT_PLUGIN_PATH and QML2_IMPORT_PATH in the wrapper during the 'wrap-executable phase. Signed-off-by: Mathieu Othacehe --- gnu/packages/kde.scm | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index d661b7445b..add33b77fe 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -191,32 +191,23 @@ This package contains GUI widgets for baloo.") (add-after 'install 'wrap-executable (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (qtquickcontrols (assoc-ref inputs "qtquickcontrols")) - (qtquickcontrols2 (assoc-ref inputs "qtquickcontrols2")) (qtbase (assoc-ref inputs "qtbase")) - (qtdeclarative (assoc-ref inputs "qtdeclarative")) (frei0r (assoc-ref inputs "frei0r-plugins")) (ffmpeg (assoc-ref inputs "ffmpeg")) - (breeze (assoc-ref inputs "breeze")) - (qml "/lib/qt5/qml")) + (breeze (assoc-ref inputs "breeze"))) (wrap-program (string-append out "/bin/kdenlive") `("PATH" ":" prefix ,(list (string-append ffmpeg "/bin"))) `("XDG_DATA_DIRS" ":" prefix ,(list (string-append breeze "/share"))) `("QT_PLUGIN_PATH" ":" prefix - ,(map (lambda (label) - (string-append (assoc-ref inputs label) - "/lib/qt5/plugins/")) - '("qtbase" "qtsvg"))) + ,(list (getenv "QT_PLUGIN_PATH"))) `("FREI0R_PATH" ":" = (,(string-append frei0r "/lib/frei0r-1/"))) `("QT_QPA_PLATFORM_PLUGIN_PATH" ":" = (,(string-append qtbase "/lib/qt5/plugins/platforms"))) `("QML2_IMPORT_PATH" ":" prefix - (,(string-append qtquickcontrols qml) - ,(string-append qtquickcontrols2 qml) - ,(string-append qtdeclarative qml))) + ,(list (getenv "QML2_IMPORT_PATH"))) `("MLT_PREFIX" ":" = (,(assoc-ref inputs "mlt"))))) #t))))) From ade7638d84779b58d5a4c961666bcb35ebf43394 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Fri, 18 Sep 2020 14:05:51 +0200 Subject: [PATCH 202/757] Revert "gnu: openblas: Update to 0.3.10." This reverts commit c59e9f0a03241ef3c7b8042054fd54e327f7539a because it triggers too many rebuilds. --- gnu/packages/maths.scm | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index dd4d34615b..ce393cba80 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -40,7 +40,6 @@ ;;; Copyright © 2020 Nicolò Balzarotti ;;; Copyright © 2020 B. Wilson ;;; Copyright © 2020 Vinicius Monego -;;; Copyright © 2020 Greg Hogan ;;; ;;; This file is part of GNU Guix. ;;; @@ -3610,17 +3609,16 @@ parts of it.") (define-public openblas (package (name "openblas") - (version "0.3.10") + (version "0.3.9") (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/xianyi/OpenBLAS") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) + (method url-fetch) + (uri (string-append "mirror://sourceforge/openblas/v" version "/OpenBLAS%20" + version "%20version.tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "174id98ga82bhz2v7sy9yj6pqy0h0088p3mkdikip69p9rh3d17b")))) + "14iz9xnrb9xiwgj84j94mc74gg0zn2vsy9fmsijxxma1n7dck4w3")))) (build-system gnu-build-system) (arguments `(#:test-target "test" From bea98f9a0b40f4b86103e195bf2fcd4efbdb8c84 Mon Sep 17 00:00:00 2001 From: Alexandros Theodotou Date: Tue, 15 Sep 2020 10:17:15 +0100 Subject: [PATCH 203/757] gnu: Add libsoundio. * gnu/packages/audio.scm (libsoundio): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/audio.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index fb98777290..ea6c982075 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -4468,6 +4468,36 @@ supports both of ID3v1/v2 and APEv2 tags.") (home-page "http://tausoft.org/") (license license:gpl2+))) +(define-public libsoundio + (package + (name "libsoundio") + (version "2.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/andrewrk/libsoundio") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "12l4rvaypv87vigdrmjz48d4d6sq4gfxf5asvnc4adyabxb73i4x")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f)) ; no tests included + (inputs + `(("alsa-lib" ,alsa-lib) + ("jack" ,jack-1) + ("pulseaudio" ,pulseaudio))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://libsound.io") + (synopsis "C library for real-time audio input and output") + (description "libsoundio is a C library providing audio input and output. +The API is suitable for real-time software such as digital audio workstations +as well as consumer software such as music players.") + (license license:expat))) + (define-public redkite (package (name "redkite") From 66c83960a5cc5736f1c9aea581136f1ca7055335 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Fri, 18 Sep 2020 15:00:19 +0200 Subject: [PATCH 204/757] gnu: libsoundio: Fix indentation. * gnu/packages/audio.scm (libsoundio): Fix indentation. --- gnu/packages/audio.scm | 44 +++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index ea6c982075..45431be2b1 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -4470,33 +4470,33 @@ supports both of ID3v1/v2 and APEv2 tags.") (define-public libsoundio (package - (name "libsoundio") - (version "2.0.0") - (source + (name "libsoundio") + (version "2.0.0") + (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/andrewrk/libsoundio") - (commit version))) + (url "https://github.com/andrewrk/libsoundio") + (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 - "12l4rvaypv87vigdrmjz48d4d6sq4gfxf5asvnc4adyabxb73i4x")))) - (build-system cmake-build-system) - (arguments - `(#:tests? #f)) ; no tests included - (inputs - `(("alsa-lib" ,alsa-lib) - ("jack" ,jack-1) - ("pulseaudio" ,pulseaudio))) - (native-inputs - `(("pkg-config" ,pkg-config))) - (home-page "http://libsound.io") - (synopsis "C library for real-time audio input and output") - (description "libsoundio is a C library providing audio input and output. -The API is suitable for real-time software such as digital audio workstations -as well as consumer software such as music players.") - (license license:expat))) + (base32 + "12l4rvaypv87vigdrmjz48d4d6sq4gfxf5asvnc4adyabxb73i4x")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f)) ;no tests included + (inputs + `(("alsa-lib" ,alsa-lib) + ("jack" ,jack-1) + ("pulseaudio" ,pulseaudio))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://libsound.io") + (synopsis "C library for real-time audio input and output") + (description "@code{libsoundio} is a C library providing audio input and +output. The API is suitable for real-time software such as digital audio +workstations as well as consumer software such as music players.") + (license license:expat))) (define-public redkite (package From 47640ca67d2bf33d061a1a48527e0a6bf3fbdcf8 Mon Sep 17 00:00:00 2001 From: Jelle Licht Date: Fri, 18 Sep 2020 15:10:37 +0200 Subject: [PATCH 205/757] gnu: emacs-helpful: Update to 0.17-1.be0e937f. * gnu/packages/emacs-xyz.scm (emacs-helpful): Update to 0.17-1.b0e937f. --- gnu/packages/emacs-xyz.scm | 61 ++++++++++++++++++++------------------ 1 file changed, 32 insertions(+), 29 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 74a6bb16fe..15f24cda5d 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -15763,34 +15763,37 @@ downloading manager for Emacs.") (license license:gpl3+)))) (define-public emacs-helpful - (package - (name "emacs-helpful") - (version "0.17") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/Wilfred/helpful") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0v2y0x9pwi08y2mgjjiw5brfb5haa7pbmy4540glw904ffxxcblj")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-elisp-refs" ,emacs-elisp-refs) - ("emacs-dash" ,emacs-dash) - ("emacs-s" ,emacs-s) - ("emacs-f" ,emacs-f) - ("emacs-shut-up" ,emacs-shut-up))) - (native-inputs - `(("emacs-ert-runner" ,emacs-ert-runner) - ("emacs-undercover" ,emacs-undercover))) - (arguments - `(#:tests? #t - #:test-command '("ert-runner"))) - (home-page "https://github.com/Wilfred/helpful") - (synopsis "More contextual information in Emacs help") - (description "@code{helpful} is an alternative to the built-in Emacs help + (let ((version "0.17") + (commit "b0e937fff71dc0a5d34066bfd25310e76f284621") + (revision "1")) + (package + (name "emacs-helpful") + (version (git-version version revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Wilfred/helpful") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "048qvlyj2vkgi872z8l07diwqnq21ziycv8slxzzy7rflw3wx0b2")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-elisp-refs" ,emacs-elisp-refs) + ("emacs-dash" ,emacs-dash) + ("emacs-s" ,emacs-s) + ("emacs-f" ,emacs-f) + ("emacs-shut-up" ,emacs-shut-up))) + (native-inputs + `(("emacs-ert-runner" ,emacs-ert-runner) + ("emacs-undercover" ,emacs-undercover))) + (arguments + `(#:tests? #t + #:test-command '("ert-runner"))) + (home-page "https://github.com/Wilfred/helpful") + (synopsis "More contextual information in Emacs help") + (description "@code{helpful} is an alternative to the built-in Emacs help that provides much more contextual information. @itemize @@ -15809,7 +15812,7 @@ functions. @item Trace, disassemble functions from inside Helpful. This is discoverable and doesn't require memorisation of commands. @end itemize\n") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public emacs-logview (package From d9dec1473d676dd22285e84552d4a8e0a879f0d4 Mon Sep 17 00:00:00 2001 From: Prafulla Giri Date: Tue, 15 Sep 2020 17:13:36 +0545 Subject: [PATCH 206/757] gnu: calibre: Clean up 'wrap phase. Based on the suggestion of the author, this commit cleans up the changes introduced by fd3eac4dd774597d493e6d8aae7b1c2653070bc7 For more information, see: https://issues.guix.gnu.org/43249 * gnu/packages/e-book.scm (calibre): [arguments]: Remove the manual 'wrap phase replacement and add a 'wrap-program phase after standard 'wrap phase to make the runtime dependency QtWebEngineProcess available to the binaries. Signed-off-by: Mathieu Othacehe --- gnu/packages/ebook.scm | 46 +++++++++++++++++++++--------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index a8212df031..922a524346 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -252,29 +252,7 @@ "--path-to-mathjax" (string-append (assoc-ref inputs "js-mathjax") "/share/javascript/mathjax")) - (invoke "python2" "setup.py" "rapydscript"))) - (replace 'wrap - ;; Here we wrap PYTHONPATH exactly as it would be in - ;; python-build-system, plus the addition of - ;; QTWEBENGINEPROCESS_PATH, fixing a bug where Calibre would not - ;; find Qtwebengine. - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (python (assoc-ref inputs "python")) - (site-packages - (cons (string-append out "/lib/python" - (python-version python) - "/site-packages") - (search-path-as-string->list (getenv "PYTHONPATH")))) - (qtwebengineprocess - (string-append (assoc-ref inputs "qtwebengine") - "/lib/qt5/libexec/QtWebEngineProcess"))) - (for-each (lambda (program) - (wrap-program program - `("QTWEBENGINEPROCESS_PATH" = (,qtwebengineprocess)) - `("PYTHONPATH" prefix ,site-packages))) - (find-files bin "."))) + (invoke "python2" "setup.py" "rapydscript") #t)) (add-after 'install 'install-man-pages (lambda* (#:key outputs #:allow-other-keys) @@ -292,6 +270,28 @@ "/share/fonts/truetype"))) (delete-file-recursively font-dest) (symlink font-src font-dest)) + #t)) + ;; Make run-time dependencies available to the binaries. + (add-after 'wrap 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (qtwebengine (assoc-ref inputs "qtwebengine"))) + (with-directory-excursion (string-append out "/bin") + (for-each + (lambda (binary) + (wrap-program binary + ;; Make QtWebEngineProcess available. + `("QTWEBENGINEPROCESS_PATH" ":" = + ,(list (string-append + qtwebengine + "/lib/qt5/libexec/QtWebEngineProcess"))))) + ;; Wrap all the binaries shipping with the package, except + ;; for the wrappings created during the 'wrap standard + ;; phase. This extends existing .calibre-real wrappers + ;; rather than create ..calibre-real-real-s. For more + ;; information see: https://issues.guix.gnu.org/43249. + (find-files "." (lambda (file stat) + (not (wrapper? file))))))) #t))))) (home-page "https://calibre-ebook.com/") (synopsis "E-book library management software") From dac3fc069287ca2233e941c12d305954ad30f947 Mon Sep 17 00:00:00 2001 From: Leo Prikler Date: Fri, 18 Sep 2020 13:56:58 +0200 Subject: [PATCH 207/757] gnu: komikku: Update to 0.20.0. * gnu/packages/gnome.scm (komikku): Update to 0.20.0. Signed-off-by: Mathieu Othacehe --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index aebb81419c..d727f18ed8 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -11392,7 +11392,7 @@ integrated profiler via Sysprof, debugging support, and more.") (define-public komikku (package (name "komikku") - (version "0.19.0") + (version "0.20.0") (source (origin (method git-fetch) @@ -11402,7 +11402,7 @@ integrated profiler via Sysprof, debugging support, and more.") (file-name (git-file-name name version)) (sha256 (base32 - "16d7k500nd9klnjqqcgk3glhv2sy78yndkz3n0x7lynvblsy45kk")))) + "0m5dvqh2as5ffi9fmp3452kw44jwm6pl1jw0r5mdkpdxhid15aw8")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t From 3b5b14d381e3817dbc30bc2ef882c9c0bfc2a997 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 17 Sep 2020 18:35:43 -0400 Subject: [PATCH 208/757] gnu: linux-libre: Update to 5.8.10. * gnu/packages/linux.scm (linux-libre-5.8-version): Update to 5.8.10. (linux-libre-5.8-pristine-source): 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 2e47b81cf6..1210cde256 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -349,7 +349,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The current "stable" kernel. That is, the most recently released major ;; version. -(define-public linux-libre-5.8-version "5.8.7") +(define-public linux-libre-5.8-version "5.8.10") (define deblob-scripts-5.8 (linux-libre-deblob-scripts linux-libre-5.8-version @@ -357,7 +357,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0j6jba5fcddqlb42f95gjl78jisfla4nswqila074gglcrbnl9q7"))) (define-public linux-libre-5.8-pristine-source (let ((version linux-libre-5.8-version) - (hash (base32 "1zhpzlhl2ykna2nc70m72wlgyv1pkvkpfssb4k8p5pwlkh1ga2vv"))) + (hash (base32 "1wjsdc93xilag0pk205m2q0ixmpp93ql5qj0fm3qlqddgxm14vlx"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.8))) From e2fad8d4946dc544f7423965feebe407c72bd1d8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 17 Sep 2020 21:11:50 -0400 Subject: [PATCH 209/757] gnu: linux-libre@5.4: Update to 5.4.66. * gnu/packages/linux.scm (linux-libre-5.4-version): Update to 5.4.66. (linux-libre-5.4-pristine-source): Update hash. --- gnu/packages/linux.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 1210cde256..691aa1aca1 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -365,15 +365,15 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The "longterm" kernels — the older releases with long-term upstream support. ;; Here are the support timelines: ;; -(define-public linux-libre-5.4-version "5.4.64") +(define-public linux-libre-5.4-version "5.4.66") (define deblob-scripts-5.4 (linux-libre-deblob-scripts - "5.4.63" + linux-libre-5.4-version (base32 "0ckxn7k5zgcqk30dq943bnamr6a6zjbw2aqjl3x30f4kvh5f6k25") (base32 "1b3q88i2qfdxyvpi9f7jds0qlb8hfpw87mgia096ax6822c2cmyb"))) (define-public linux-libre-5.4-pristine-source (let ((version linux-libre-5.4-version) - (hash (base32 "1vymhl6p7i06gfgpw9iv75bvga5sj5kgv46i1ykqiwv6hj9w5lxr"))) + (hash (base32 "1cnsrz21kcf0h7krpv9p1a7n59mybr5ii0jdi3yc3x3lcwvk06gz"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.4))) From a91d5b6c0530c627acb0d99c9e36dc9db8be9879 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 17 Sep 2020 21:12:53 -0400 Subject: [PATCH 210/757] gnu: linux-libre@4.19: Update to 4.19.146. * gnu/packages/linux.scm (linux-libre-4.19-version): Update to 4.19.146. (linux-libre-4.19-pristine-source): Update hash. --- gnu/packages/linux.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 691aa1aca1..ab1e5f798d 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -378,15 +378,15 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (%upstream-linux-source version hash) deblob-scripts-5.4))) -(define-public linux-libre-4.19-version "4.19.144") +(define-public linux-libre-4.19-version "4.19.146") (define deblob-scripts-4.19 (linux-libre-deblob-scripts - "4.19.143" + linux-libre-4.19-version (base32 "02zs405awaxydbapka4nz8h6lmnc0dahgczqsrs5s2bmzjyyqkcy") (base32 "1jiaw0as1ippkrjdpd52657w5mz9qczg3y2hlra7m9k0xawwiqlf"))) (define-public linux-libre-4.19-pristine-source (let ((version linux-libre-4.19-version) - (hash (base32 "0jnj65bdy5y9lcj5zhrn4iaszpww8z41ac66j00l75sd931l1g9k"))) + (hash (base32 "0jl17yk3fpz0sx203l9l1fj5bly3jgsyr8hy5qa6py99fbk0qnim"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.19))) From 76ab528d017442203f6bce4b0b1d8395a786ce0f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 17 Sep 2020 21:13:40 -0400 Subject: [PATCH 211/757] gnu: linux-libre@4.14: Update to 4.14.198. * gnu/packages/linux.scm (linux-libre-4.14-version): Update to 4.14.198. (linux-libre-4.14-pristine-source): Update hash. --- gnu/packages/linux.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index ab1e5f798d..8e4774c173 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -391,15 +391,15 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (%upstream-linux-source version hash) deblob-scripts-4.19))) -(define-public linux-libre-4.14-version "4.14.197") +(define-public linux-libre-4.14-version "4.14.198") (define deblob-scripts-4.14 (linux-libre-deblob-scripts - "4.14.196" + linux-libre-4.14-version (base32 "091jk9jkn9jf39bxpc7395bhcb7p96nkg3a8047380ki06lnfxh6") (base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky"))) (define-public linux-libre-4.14-pristine-source (let ((version linux-libre-4.14-version) - (hash (base32 "029h46yki2hxdbn7afmnf3yar1pnwrpszx76irsa5mf8gnrasyp0"))) + (hash (base32 "00xmij2l4qmx1s07hplxkn9ddlwiyalh2l5fqdk6d8v031cbmyhy"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.14))) From 8b92de7ee60b3981ce0744a89acb2c77646e1e75 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 17 Sep 2020 21:15:27 -0400 Subject: [PATCH 212/757] gnu: linux-libre@4.9: Update to 4.9.236. * gnu/packages/linux.scm (linux-libre-4.9-version): Update to 4.9.236. (linux-libre-4.9-pristine-source): 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 8e4774c173..a165a39300 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -404,7 +404,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (%upstream-linux-source version hash) deblob-scripts-4.14))) -(define-public linux-libre-4.9-version "4.9.235") +(define-public linux-libre-4.9-version "4.9.236") (define deblob-scripts-4.9 (linux-libre-deblob-scripts linux-libre-4.9-version @@ -412,7 +412,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2"))) (define-public linux-libre-4.9-pristine-source (let ((version linux-libre-4.9-version) - (hash (base32 "1hqcb3zw4546h6x5xy2mywdznha8813lx15mxbgfbvwm4qhsc9g6"))) + (hash (base32 "1ma2z0nvby4qyxzi3vxa28f0wvlnl74njk6cryjrqaksq6161qp7"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.9))) From 62f9921c830129ff9f484472a078cf0a35e526dc Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 17 Sep 2020 21:16:10 -0400 Subject: [PATCH 213/757] gnu: linux-libre@4.4: Update to 4.4.236. * gnu/packages/linux.scm (linux-libre-4.4-version): Update to 4.4.236. (linux-libre-4.4-pristine-source): 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 a165a39300..5329d70ccf 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -417,7 +417,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (%upstream-linux-source version hash) deblob-scripts-4.9))) -(define-public linux-libre-4.4-version "4.4.235") +(define-public linux-libre-4.4-version "4.4.236") (define deblob-scripts-4.4 (linux-libre-deblob-scripts linux-libre-4.4-version @@ -425,7 +425,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf"))) (define-public linux-libre-4.4-pristine-source (let ((version linux-libre-4.4-version) - (hash (base32 "0w5pkv936zb0shjgnpv17gcp5n8f91djznzq54p6j1bl5q2qdyqd"))) + (hash (base32 "1v1mx16x1crnxf4pix0bhw40lq89n7wpd66gjc2mhxi75h6x6i80"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.4))) From 389b71aa0f756608236565067f2f77ee1f9390da Mon Sep 17 00:00:00 2001 From: Paul Garlick Date: Fri, 18 Sep 2020 15:07:27 +0100 Subject: [PATCH 214/757] gnu: Add texlive-microtype. * gnu/packages/tex.scm (texlive-microtype): New variable. --- gnu/packages/tex.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 78dd37733d..3ac6e5e63f 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -7419,3 +7419,27 @@ units in a standard-looking way. The package is based upon @code{nicefrac}, a package for typing fractions. @code{nicefrac} is included in the @code{units} bundle.") (license license:gpl3+)))) + +(define-public texlive-microtype + (let ((template (simple-texlive-package + "texlive-microtype" + (list "/doc/latex/microtype/" + "/tex/latex/microtype/") + (base32 + "0xmjpzbj4nqmnl5m7xx1bshdk2c8n57rmbvn0j479ypj4wdlq9iy") + #:trivial? #t))) + (package + (inherit template) + (home-page "http://www.ctan.org/pkg/microtype") + (synopsis "Subliminal refinements towards typographical perfection") + (description "@code{microtype} provides a LaTeX interface to the +micro-typographic extensions that were introduced by pdfTeX and have +since propagated to XeTeX and LuaTeX: most prominently character +protrusion and font expansion, the adjustment of kerning and interword +spacing, hyphenatable letterspacing and the possibility to disable all +or selected ligatures. These features may be applied to customisable +sets of fonts. All micro-typographic aspects of the fonts can be +configured in a straight-forward and flexible way. Settings for +various fonts are provided. An alternative package @code{letterspace}, +which also works with plain TeX, is included in the bundle.") + (license license:lppl1.3c)))) From 469e6aaea08d539c8e715c69cdb45f937f068741 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Fri, 18 Sep 2020 10:22:11 -0400 Subject: [PATCH 215/757] gnu: Add cxxopts. * gnu/packages/cpp.scm (cxxopts): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/cpp.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 003883e1a5..90e139e9eb 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2020 Marius Bakke ;;; Copyright © 2020 Michael Rohleder ;;; Copyright © 2020 Alexandros Theodotou +;;; Copyright © 2020 Greg Hogan ;;; ;;; This file is part of GNU Guix. ;;; @@ -647,3 +648,24 @@ Google's C++ code base.") a zero-dependency C++ header-only parser combinator library for creating parsers according to a Parsing Expression Grammar (PEG).") (license license:expat))) + +(define-public cxxopts + (package + (name "cxxopts") + (version "2.2.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jarro2783/cxxopts") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0d3y747lsh1wkalc39nxd088rbypxigm991lk3j91zpn56whrpha")))) + (build-system cmake-build-system) + (synopsis "Lightweight C++ command line option parser") + (description + "A lightweight header-only C++ option parser library, supporting the +standard GNU style syntax for options.") + (home-page "https://github.com/jarro2783/cxxopts/wiki") + (license license:expat))) From 9ef590dc8a049adaffada12bc8a0b0dd0ee40c29 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 18 Sep 2020 14:06:06 +0300 Subject: [PATCH 216/757] gnu: xxd: Use cc-for-target. * gnu/packages/vim.scm (xxd)[arguments]: Replace hard-coded gcc with cc-for-target in make-flags. --- gnu/packages/vim.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 5814eb421f..c6b1092e71 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -166,7 +166,7 @@ configuration files.") (package (inherit vim) (name "xxd") (arguments - `(#:make-flags '("CC=gcc") + `(#:make-flags (list ,(string-append "CC=" (cc-for-target))) #:tests? #f ; there are none #:phases (modify-phases %standard-phases From aa9ba865deadf8b95c629daca6e57eb4f3edefbe Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Fri, 18 Sep 2020 14:29:05 -0400 Subject: [PATCH 217/757] doc: Fix broken hyperlinks in the contribution instructions. * doc/contributing.texi (Packaging Guidelines, Submitting Patches): Change URLs from relative to absolute links. --- doc/contributing.texi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/contributing.texi b/doc/contributing.texi index b18ffa1e57..535cfc2a6f 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -353,7 +353,7 @@ Once your package builds correctly, please send us a patch (@pxref{Submitting Patches}). Well, if you need help, we will be happy to help you too. Once the patch is committed in the Guix repository, the new package automatically gets built on the supported platforms by -@url{@value{SUBSTITUTE-SERVER}, our continuous integration system}. +@url{@value{SUBSTITUTE-URL}, our continuous integration system}. @cindex substituter Users can obtain the new package definition simply by running @@ -1016,7 +1016,7 @@ changes). This branch is intended to be merged in @code{master} every 6 months or so. @end table -All these branches are @uref{@value{SUBSTITUTE-SERVER}, +All these branches are @uref{@value{SUBSTITUTE-URL}, tracked by our build farm} and merged into @code{master} once everything has been successfully built. This allows us to fix issues before they hit users, and to reduce the window during which pre-built From 7e25147e15e7fc69e8064dbe266e3a683fa48d54 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 17 Sep 2020 19:44:27 +0200 Subject: [PATCH 218/757] gnu: Add rust-packed-struct. * gnu/packages/crates-io.scm (rust-packed-struct): New variable. --- gnu/packages/crates-io.scm | 41 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 1257d6160a..5b1c435c98 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -30762,3 +30762,44 @@ implementation that works everywhere, even WASM!") (description "This package provides a library for parsing compiled zoneinfo files.") (license license:expat))) + +(define-public rust-packed-struct + (package + (name "rust-packed-struct") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "packed_struct" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "10b2fmxchmcigwagnhi42frj74dl02wyv0xwmbr9839qfh7gijlh")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-serde" ,rust-serde-1) + ("rust-serde-derive" ,rust-serde-derive-1)))) + (home-page "http://www.hashmismatch.net/libraries/packed-struct/") + (synopsis "Binary-level structure packing and unpacking generator") + (description "This package provides bit-level packing an unpacking +of structs. The library provides a meta-programming approach, using +attributes to define fields and how they should be packed. The resulting +trait implementations provide safe packing, unpacking and runtime debugging +formatters with per-field documentation generated for each structure. + +@itemize +@item Plain Rust structures, decorated with attributes +@item MSB or LSB integers of user-defined bit widths +@item Primitive enum code generation helper +@item MSB0 or LSB0 bit positioning +@item Documents the field's packing table +@item Runtime packing visualization +@item Nested packed types +@item Arrays of packed structures as fields +@item Reserved fields, their bits are always 0 or 1 +@end itemize") + ;; User can choose either license. + (license (list license:expat license:asl2.0)))) + From 24bbc237416fe1a6ee9e2c78dcfdca5cdf51f225 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 18 Sep 2020 22:13:40 +0200 Subject: [PATCH 219/757] gnu: Add rust-xml-rs@0.7.1. * gnu/packages/crates-io.scm (rust-xml-rs-0.7): New variable. --- gnu/packages/crates-io.scm | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 5b1c435c98..68b9c34e77 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -30541,6 +30541,36 @@ to XDG Base Directory specification.") (description "An XML library in pure Rust.") (license license:expat))) +(define-public rust-xml-rs-0.7 + (package + (name "rust-xml-rs") + (version "0.7.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "xml-rs" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1wv7izl41jf3ylhqhw23y1h0m729v2g5k4mgfw72v4kmgvvawiin")) + (modules '((guix build utils))) + (snippet + '(begin + ;; 'doctest' isn't stable until rust-1.40 + (substitute* "src/lib.rs" + (("\\(doctest") "(test")) + #t)))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-doc-comment" ,rust-doc-comment-0.3) + ("rust-lazy-static" ,rust-lazy-static-1)))) + (home-page "https://github.com/netvl/xml-rs") + (synopsis "XML library in pure Rust") + (description "An XML library in pure Rust.") + (license license:expat))) + (define-public rust-xml5ever-0.16 (package (name "rust-xml5ever") @@ -30802,4 +30832,3 @@ formatters with per-field documentation generated for each structure. @end itemize") ;; User can choose either license. (license (list license:expat license:asl2.0)))) - From 2345c39e6c3bc46b34d517e926bc9900dd6c32b5 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 18 Sep 2020 22:14:57 +0200 Subject: [PATCH 220/757] gnu: Add rust-xmltree@0.8.0. * gnu/packages/crates-io.scm (rust-xmltree-0.8): New variable. --- gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 68b9c34e77..a45793d8fa 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -30832,3 +30832,28 @@ formatters with per-field documentation generated for each structure. @end itemize") ;; User can choose either license. (license (list license:expat license:asl2.0)))) + +(define-public rust-xmltree-0.8 + (package + (name "rust-xmltree") + (version "0.8.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "xmltree" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0w0y0jz7lhxg05ca6ngfj0lj8sbrjh4vaqv13q7qaqkhs7lsx3pz")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-indexmap" ,rust-indexmap-1) + ("rust-xml-rs" ,rust-xml-rs-0.7)))) + (home-page #f) + (synopsis + "Parse an XML file into a simple tree-like structure") + (description + "Parse an XML file into a simple tree-like structure") + (license license:expat))) From 54f1f72c4390477bebbece1c9beb3065e94fe13a Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 18 Sep 2020 22:15:48 +0200 Subject: [PATCH 221/757] gnu: Add rust-svd-parser@0.9.0. * gnu/packages/crates-io.scm (rust-svd-parser-0.9): New variable. --- gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index a45793d8fa..218c53c416 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -30857,3 +30857,32 @@ formatters with per-field documentation generated for each structure. (description "Parse an XML file into a simple tree-like structure") (license license:expat))) + +(define-public rust-svd-parser-0.9 + (package + (name "rust-svd-parser") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "svd-parser" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1qhvdz3k76i3sfypcy8c84hhb8sqixrckba21kalzcpgy6an45ml")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-anyhow" ,rust-anyhow-1.0) + ("rust-either" ,rust-either-1.5) + ("rust-serde" ,rust-serde-1) + ("rust-thiserror" ,rust-thiserror-1.0) + ("rust-xmltree" ,rust-xmltree-0.8)) + #:cargo-development-inputs + (("rust-serde-json" ,rust-serde-json-1)))) + (home-page #f) + (synopsis "A CMSIS-SVD file parser") + (description + "This package provides a CMSIS-SVD file parser") + (license (list license:expat license:asl2.0)))) From efdd545fa74301b7c80cf1758ebcbacd1ed8177a Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 18 Sep 2020 22:17:22 +0200 Subject: [PATCH 222/757] gnu: Add rust-inflections@1.1.1. * gnu/packages/crates-io.scm (rust-inflections-1.1): New variable. --- gnu/packages/crates-io.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 218c53c416..a1316f963f 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -30886,3 +30886,24 @@ formatters with per-field documentation generated for each structure. (description "This package provides a CMSIS-SVD file parser") (license (list license:expat license:asl2.0)))) + +(define-public rust-inflections-1.1 + (package + (name "rust-inflections") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "inflections" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0yl3gas612q25c72lwf04405i87yxr02vgv3ckcnz2fyvhpmhmx2")))) + (build-system cargo-build-system) + (home-page #f) + (synopsis + "High performance inflection transformation library for changing properties of words like the case.") + (description + "High performance inflection transformation library for changing properties of words like the case.") + (license license:expat))) From e6ba735d685886e747a831e43a501488e15d97c7 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 18 Sep 2020 22:17:52 +0200 Subject: [PATCH 223/757] gnu: Add svd2rust. * gnu/packages/crates-io.scm (svd2rust): New variable. --- gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index a1316f963f..31f6e674f5 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -30907,3 +30907,37 @@ formatters with per-field documentation generated for each structure. (description "High performance inflection transformation library for changing properties of words like the case.") (license license:expat))) + +(define-public svd2rust + (package + (name "svd2rust") + (version "0.17.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "svd2rust" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0850pn92a5pmrlavdsm4s9wgrgx9gz0vylf9i594nj8sixmddjd9")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cast" ,rust-cast-0.2) + ("rust-clap" ,rust-clap-2) + ("rust-env-logger" ,rust-env-logger-0.7) + ("rust-error-chain" ,rust-error-chain-0.12) + ("rust-inflections" ,rust-inflections-1.1) + ("rust-log" ,rust-log-0.4) + ("rust-proc-macro2" ,rust-proc-macro2-0.4) + ("rust-quote" ,rust-quote-1) + ("rust-svd-parser" ,rust-svd-parser-0.9) + ("rust-syn" ,rust-syn-1)))) + (home-page #f) + (synopsis + "Generate Rust register maps (`struct`s) from SVD files") + (description + "Generate Rust register maps (`struct`s) from SVD files") + (license (list license:expat license:asl2.0)))) + From 4c962fabe9909e9f25e56abf935997bb26a1c073 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 17 Sep 2020 14:28:54 +0200 Subject: [PATCH 224/757] gnu: libfprint: Update to 1.90.3. * gnu/packages/freedesktop.scm (libfprint): Update to 1.90.3. --- 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 dbfb88b471..721feb1e69 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -1398,7 +1398,7 @@ wish to perform colour calibration.") (define-public libfprint (package (name "libfprint") - (version "1.90.1") + (version "1.90.3") (source (origin (method git-fetch) @@ -1407,7 +1407,7 @@ wish to perform colour calibration.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0fdaak7qjr9b4482g7fhhqpyfdqpxq5kpmyzkp7f5i7qq2ynb78a")))) + (base32 "1fs0qrfrqnvc6kcsg81l5p89n8jnsx9dr1pzxpb8ghwas8c9v52i")))) (build-system meson-build-system) (arguments '(#:configure-flags From dc5ccd2e4d380728ecdd3f8510db86b8a9916154 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 17 Sep 2020 14:36:23 +0200 Subject: [PATCH 225/757] gnu: libmanette: Update to 0.2.5. * gnu/packages/games.scm (libmanette): Update to 0.2.5. --- 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 f6819873df..5903a31bd8 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -7767,7 +7767,7 @@ their own levels.") (define-public libmanette (package (name "libmanette") - (version "0.2.4") + (version "0.2.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/libmanette/" @@ -7775,7 +7775,7 @@ their own levels.") "libmanette-" version ".tar.xz")) (sha256 (base32 - "1xrc6rh73v5w3kbkflzv1yg8sbxk4wf06hfk95raxhxlssza9q2g")))) + "0awsl0d34k3w18jdiyh377r7qi00s4kmh5gc97vx9jy0h22f01l0")))) (build-system meson-build-system) (native-inputs `(("glib" ,glib "bin") ; for glib-compile-resources From 84da8f7feede61c63dd359fc5dfb5e8d6ea09ef4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 19 Sep 2020 01:00:17 +0200 Subject: [PATCH 226/757] gnu: knot: Update to 3.0.0. * gnu/packages/dns.scm (knot): Update to 3.0.0. Order fields more conventionally. [source]: Remove obsolete snippet. --- gnu/packages/dns.scm | 57 +++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 32 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 65f1c632b4..d730b14c1d 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -803,37 +803,25 @@ Extensions} (DNSSEC).") (define-public knot (package (name "knot") - (version "2.9.6") + (version "3.0.0") (source (origin (method url-fetch) (uri (string-append "https://secure.nic.cz/files/knot-dns/" "knot-" version ".tar.xz")) (sha256 - (base32 "1rxjjisr6rz1wa4279ghvj5zzhgyjhncmb9dkzqm8nw2qs1jhx5z")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Delete bundled libraries. - (with-directory-excursion "src/contrib" - (delete-file-recursively "lmdb")) - #t)))) + (base32 "1i76zflc49jbsaj3idxx7a6x87c0lzal294c3fdjyfl7dvznmjgi")))) (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config))) - (inputs - `(("fstrm" ,fstrm) - ("gnutls" ,gnutls) - ("jansson" ,jansson) - ("libcap-ng" ,libcap-ng) - ("libedit" ,libedit) - ("libidn" ,libidn) - ("liburcu" ,liburcu) - ("lmdb" ,lmdb) - ("ncurses" ,ncurses) - ("protobuf-c" ,protobuf-c))) (arguments - `(#:phases + `(#:configure-flags + (list "--sysconfdir=/etc" + "--localstatedir=/var" + "--enable-dnstap" ; let tools read/write capture files + "--with-module-dnstap=yes" ; detailed query capturing & logging + (string-append "--with-bash-completions=" + (assoc-ref %outputs "out") + "/etc/bash_completion.d")) + #:phases (modify-phases %standard-phases (add-before 'configure 'disable-directory-pre-creation (lambda _ @@ -848,15 +836,20 @@ Extensions} (DNSSEC).") (etc (string-append doc "/examples/etc"))) (invoke "make" (string-append "config_dir=" etc) - "install"))))) - #:configure-flags - (list "--sysconfdir=/etc" - "--localstatedir=/var" - "--enable-dnstap" ; let tools read/write capture files - "--with-module-dnstap=yes" ; detailed query capturing & logging - (string-append "--with-bash-completions=" - (assoc-ref %outputs "out") - "/etc/bash_completion.d")))) + "install"))))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("fstrm" ,fstrm) + ("gnutls" ,gnutls) + ("jansson" ,jansson) + ("libcap-ng" ,libcap-ng) + ("libedit" ,libedit) + ("libidn" ,libidn) + ("liburcu" ,liburcu) + ("lmdb" ,lmdb) + ("ncurses" ,ncurses) + ("protobuf-c" ,protobuf-c))) (home-page "https://www.knot-dns.cz/") (synopsis "Authoritative DNS name server") (description "Knot DNS is an authoritative name server for the @dfn{Domain From 70ef8b24550c54cc8e9f20026bfd24b8680499b4 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Sat, 19 Sep 2020 09:22:08 +0200 Subject: [PATCH 227/757] gnu: electron-cash: Update to 4.1.1. * gnu/packages/finance.scm (electron-cash): Update to 4.1.1. --- gnu/packages/finance.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 3167e10164..de3b687410 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -480,7 +480,7 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.") (define-public electron-cash (package (name "electron-cash") - (version "4.1.0") + (version "4.1.1") (source (origin (method git-fetch) @@ -489,7 +489,7 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1ccfm6kkmbkvykfdzrisxvr0lx9kgq4l43ixk6v3xnvhnbfwz4s2")))) + (base32 "1fllz2s20lg4hrppzmnlgjy9mrq7gaq66l2apb3vz1avzvsjw3gm")))) (build-system python-build-system) (inputs `(("libevent" ,libevent) From 6a1c3a908c8aadfde5b5fe405132839683a01776 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 19 Sep 2020 09:29:22 +0100 Subject: [PATCH 228/757] gnu: sqitch: Add more database drivers to inputs. These are optional dependencies, but including them in the inputs and thus the wrapped sqitch script makes using sqitch easier. * gnu/packages/databases.scm (sqitch)[inputs]: Add perl-dbd-mysql and perl-dbd-sqlite. --- gnu/packages/databases.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index e34b305268..45a9b8b965 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1391,7 +1391,9 @@ for example from a shell script.") ("perl-config-gitlike" ,perl-config-gitlike) ("perl-datetime" ,perl-datetime) ("perl-datetime-timezone" ,perl-datetime-timezone) + ("perl-dbd-mysql" ,perl-dbd-mysql) ("perl-dbd-pg" ,perl-dbd-pg) + ("perl-dbd-sqlite" ,perl-dbd-sqlite) ("perl-dbi" ,perl-dbi) ("perl-devel-stacktrace" ,perl-devel-stacktrace) ("perl-encode-locale" ,perl-encode-locale) From adcad54743aac0da6032a2b1af9b200e8cfa3594 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 19 Sep 2020 09:35:41 +0100 Subject: [PATCH 229/757] gnu: sqitch: Update to 1.1.0. * gnu/packages/databases.scm (sqitch): Update to 1.1.0. [native-inputs]: Add perl-test-mockobject. --- gnu/packages/databases.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 45a9b8b965..c982da1f79 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1343,7 +1343,7 @@ for example from a shell script.") (define-public sqitch (package (name "sqitch") - (version "1.0.0") + (version "1.1.0") (source (origin (method url-fetch) @@ -1351,7 +1351,7 @@ for example from a shell script.") "mirror://cpan/authors/id/D/DW/DWHEELER/App-Sqitch-v" version ".tar.gz")) (sha256 - (base32 "0p4wraqiscvwmmsvfqfy65blgsilwpvd9zj4d2zvm2xdx70ncr7l")))) + (base32 "1ayiwg9kh3w0nbacbcln7h944z94vq5vnnd5diz86033bpbnq57f")))) (build-system perl-build-system) (arguments '(#:phases @@ -1383,6 +1383,7 @@ for example from a shell script.") ("perl-test-file" ,perl-test-file) ("perl-test-file-contents" ,perl-test-file-contents) ("perl-test-mockmodule" ,perl-test-mockmodule) + ("perl-test-mockobject" ,perl-test-mockobject) ("perl-test-nowarnings" ,perl-test-nowarnings) ("perl-test-warn" ,perl-test-warn))) (inputs From 0996fcc657593955845c2761d7eb0f656149fe11 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Sat, 19 Sep 2020 14:24:59 +0200 Subject: [PATCH 230/757] system: image: Rename ISO9660 files. * gnu/system/image.scm (system-iso9660-image): Change the default file output name to "image.iso". --- gnu/system/image.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/system/image.scm b/gnu/system/image.scm index 97c7021454..49cdd9e7de 100644 --- a/gnu/system/image.scm +++ b/gnu/system/image.scm @@ -340,7 +340,7 @@ image ~a { (define* (system-iso9660-image image #:key - (name "iso9660-image") + (name "image.iso") bootcfg bootloader register-closures? From 1b179d7876f19f04009a2f9e248ac10711f4c660 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 19 Sep 2020 16:26:44 +0200 Subject: [PATCH 231/757] describe: Save the original value of (program-arguments). Fixes . Reported by pkill9 . This ensures that 'guix repl -s SCRIPT' give SCRIPT the right value of (current-profile), which in turn ensures that (%package-module-path) is initialized with the right set of channels. * guix/describe.scm (initial-program-arguments): New variable. (current-profile): Use it. * guix/scripts/repl.scm (guix-repl): Call 'current-profile' before 'set-program-arguments'. --- guix/describe.scm | 10 ++++++++-- guix/scripts/repl.scm | 8 ++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/guix/describe.scm b/guix/describe.scm index 6b9b219113..05bf99eb58 100644 --- a/guix/describe.scm +++ b/guix/describe.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2018, 2019 Ludovic Courtès +;;; Copyright © 2018, 2019, 2020 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -43,11 +43,17 @@ ;;; ;;; Code: +(define initial-program-arguments + ;; Save the initial program arguments. This allows us to see the "real" + ;; 'guix' program, even if 'guix repl -s' calls 'set-program-arguments' + ;; later on. + (program-arguments)) + (define current-profile (mlambda () "Return the profile (created by 'guix pull') the calling process lives in, or #f if this is not applicable." - (match (command-line) + (match initial-program-arguments ((program . _) (and (string-suffix? "/bin/guix" program) ;; Note: We want to do _lexical dot-dot resolution_. Using ".." diff --git a/guix/scripts/repl.scm b/guix/scripts/repl.scm index 7d4e474e92..9f20803efc 100644 --- a/guix/scripts/repl.scm +++ b/guix/scripts/repl.scm @@ -27,6 +27,7 @@ #:use-module (srfi srfi-37) #:use-module (ice-9 match) #:use-module (rnrs bytevectors) + #:autoload (guix describe) (current-profile) #:autoload (system repl repl) (start-repl) #:autoload (system repl server) (make-tcp-server-socket make-unix-domain-server-socket) @@ -176,6 +177,13 @@ call THUNK." ;; Run script (save-module-excursion (lambda () + ;; Invoke 'current-profile' so that it memoizes the correct value + ;; based on (program-arguments), before we call + ;; 'set-program-arguments'. This in turn ensures that + ;; (%package-module-path) will contain entries for the channels + ;; available in the current profile. + (current-profile) + (set-program-arguments script) (set-user-module) From cfcccc8a2afd13eaf103098e4d1611cef3b7123e Mon Sep 17 00:00:00 2001 From: Joseph LaFreniere Date: Sun, 26 Jul 2020 11:06:19 -0500 Subject: [PATCH 232/757] gnu: Add emacs-standard-dirs. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-standard-dirs): New variable. Signed-off-by: Ludovic Courtès --- 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 15f24cda5d..d47b1ca36e 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3792,6 +3792,30 @@ particular, the minor mode works quite well with Org or Markdown modes, or other markup language major modes.") (license license:gpl3+)))) +(define-public emacs-standard-dirs + (package + (name "emacs-standard-dirs") + (version "2.0.0") + (home-page "https://github.com/lafrenierejm/standard-dirs.el") + (source + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0r814qcrhvx4qlx4sdzwdmrhiryslqclx0bnpp0qcrbx6g8qfl25")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-f" ,emacs-f) + ("emacs-s" ,emacs-s))) + (synopsis "Platform-specific paths for config, cache, and other data") + (description + "This package provides platform-specific paths for reading and writing +configuration, cache, and other data.") + (license license:gpl3+))) + (define-public emacs-string-inflection (package (name "emacs-string-inflection") From 1bc5a77f0a346c3c4156d8443de4d709a652e6e1 Mon Sep 17 00:00:00 2001 From: Alexandros Theodotou Date: Thu, 10 Sep 2020 20:07:32 +0100 Subject: [PATCH 233/757] gnu: Add surge-synth. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/music.scm (surge-synth): New variable. Co-authored-by: Ludovic Courtès --- gnu/packages/music.scm | 70 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 6285dee420..899cc6a0e0 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -147,6 +147,7 @@ #:use-module (gnu packages vim) ;for 'xxd' #:use-module (gnu packages web) #:use-module (gnu packages wxwidgets) + #:use-module (gnu packages xdisorg) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (gnu packages xiph) @@ -777,6 +778,75 @@ are helpful when working in problem spaces where timing is important (such as audio and video).") (license license:bsd-2))) +(define-public surge-synth + (package + (name "surge-synth") + (version "1.7.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/surge-synthesizer/surge") + (commit (string-append "release_" version)) + (recursive? #t))) ; build system expects modules to be there + (file-name (git-file-name name version)) + (sha256 + (base32 + "1jhk8iaqh89dnci4446b47315v2lc8gclraygk8m9jl20zpjxl0l")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; no tests included + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'replace-python + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "CMakeLists.txt" + ((" python ") + (string-append " " (assoc-ref inputs "python") + "/bin/python3 "))) + #t)) + (add-after 'unpack 'fix-data-directory-name + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "src/common/SurgeStorage.cpp" + (("/usr") (assoc-ref outputs "out"))) + #t)) + (replace 'install ; no install target + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((src (assoc-ref inputs "source")) + (out (assoc-ref outputs "out")) + (share (string-append out "/share")) + (lib (string-append out "/lib")) + (lv2 (string-append lib "/lv2")) + (vst3 (string-append lib "/vst3"))) + (mkdir-p lv2) + (mkdir-p vst3) + ;; Install LV2 plugin. + (copy-recursively "surge_products/Surge.lv2" + (string-append lv2 "/Surge.lv2")) + ;; Install VST3 plugin. + (copy-recursively "surge_products/Surge.vst3" + (string-append vst3 "/Surge.vst3")) + ;; Install data. + (copy-recursively (string-append src "/resources/data") + (string-append share "/Surge")) + #t)))))) + (inputs + `(("cairo" ,cairo) + ("libxkbcommon" ,libxkbcommon) + ("python" ,python) + ("xcb-util" ,xcb-util) + ("xcb-util-cursor" ,xcb-util-cursor) + ("xcb-util-keysyms" ,xcb-util-keysyms))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://surge-synthesizer.github.io/") + (synopsis "Synthesizer plugin") + (description + "Surge is a subtractive hybrid digital synthesizer. Each patch contains +two @dfn{scenes} which are separate instances of the entire synthesis +engine (except effects) that can be used for layering or split patches.") + (license license:gpl3+))) + (define-public klick (package (name "klick") From 6b1253718d1d660e7a91bd59a96bdb16d7c5e0b3 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sat, 19 Sep 2020 21:51:44 +0200 Subject: [PATCH 234/757] gnu: u-boot: Reomve sdl2 dependency on non-GUI builds. * gnu/packages/bootloaders.scm (u-boot)[native-inputs]: Remove sdl2. (u-boot-tools)[native-inputs]: Add sdl2. --- gnu/packages/bootloaders.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 769238203c..d1de5cea4e 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -465,7 +465,6 @@ tree binary files. These are board description files used by Linux and BSD.") ("python" ,python) ("python-coverage" ,python-coverage) ("python-pytest" ,python-pytest) - ("sdl2" ,sdl2) ("swig" ,swig))) (build-system gnu-build-system) (home-page "https://www.denx.de/wiki/U-Boot/") @@ -478,6 +477,9 @@ also initializes the boards (RAM etc).") (package (inherit u-boot) (name "u-boot-tools") + (native-inputs + `(("sdl2" ,sdl2) + ,@(package-native-inputs u-boot))) (arguments `(#:make-flags '("HOSTCC=gcc") #:test-target "tests" From d5d80a62b72353300b3a3e52f02b5ff12a6c2dea Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 17 Sep 2020 22:37:51 -0400 Subject: [PATCH 235/757] gnu: qemu: Update to 5.1.0. * gnu/packages/virtualization.scm (qemu): Update to 5.1.0. --- gnu/packages/virtualization.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 8e634ba6c6..cf7380268f 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2020 Brice Waegeneire ;;; Copyright © 2020 Mathieu Othacehe ;;; Copyright © 2020 Marius Bakke +;;; Copyright © 2020 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -129,14 +130,14 @@ (define-public qemu (package (name "qemu") - (version "5.0.0") + (version "5.1.0") (source (origin (method url-fetch) (uri (string-append "https://download.qemu.org/qemu-" version ".tar.xz")) (sha256 (base32 - "1dlcwyshdp94fwd30pddxf9bn2q8dfw5jsvry2gvdj551wmaj4rg")))) + "1rd41wwlvp0vpialjp2czs6i3lsc338xc72l3zkbb7ixjfslw5y9")))) (build-system gnu-build-system) (arguments `(;; Running tests in parallel can occasionally lead to failures, like: From afeed71ae447ea18f7bc1b0b331e73e995308251 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 18 Sep 2020 08:46:27 -0400 Subject: [PATCH 236/757] gnu: qemu: Disable the bios-tables-test test. This works around . * gnu/packages/virtualization.scm (qemu)[phases]{disable-unusable-tests}: Move after unpack. Combine the existing substitute patterns on a single usage of substitute*. Disable the bios-tables-test test in tests/qtest/Makefile.include. --- gnu/packages/virtualization.scm | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index cf7380268f..9955045efb 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -179,6 +179,24 @@ '("include") input-directories) #t))) + (add-after 'unpack 'disable-unusable-tests + (lambda _ + (substitute* "tests/Makefile.include" + ;; Comment out the test-qga test, which needs /sys and + ;; fails within the build environment. + (("check-unit-.* tests/test-qga" all) + (string-append "# " all)) + ;; Comment out the test-char test, which needs networking and + ;; fails within the build environment. + (("check-unit-.* tests/test-char" all) + (string-append "# " all))) + (substitute* "tests/qtest/Makefile.include" + ;; Disable the following test, which triggers a crash on some + ;; x86 CPUs (see https://issues.guix.info/43048 and + ;; https://bugs.launchpad.net/qemu/+bug/1896263). + (("check-qtest-i386-y \\+= bios-tables-test" all) + (string-append "# " all))) + #t)) (add-after 'patch-source-shebangs 'patch-/bin/sh-references (lambda _ ;; Ensure the executables created by these source files reference @@ -243,19 +261,6 @@ exec smbd $@"))) (chmod "samba-wrapper" #o755) (install-file "samba-wrapper" libexec)) - #t)) - (add-before 'check 'disable-unusable-tests - (lambda* (#:key inputs outputs #:allow-other-keys) - (substitute* "tests/Makefile.include" - ;; Comment out the test-qga test, which needs /sys and - ;; fails within the build environment. - (("check-unit-.* tests/test-qga" all) - (string-append "# " all))) - (substitute* "tests/Makefile.include" - ;; Comment out the test-char test, which needs networking and - ;; fails within the build environment. - (("check-unit-.* tests/test-char" all) - (string-append "# " all))) #t))))) (inputs ; TODO: Add optional inputs. `(("alsa-lib" ,alsa-lib) From 229091385aa146aec36e48fccc341c69cd316014 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 18 Sep 2020 09:04:46 -0400 Subject: [PATCH 237/757] gnu: qemu: Fix indentation. * gnu/packages/virtualization.scm (qemu): Fix indentation. --- gnu/packages/virtualization.scm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 9955045efb..c77bc39da9 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -132,12 +132,12 @@ (name "qemu") (version "5.1.0") (source (origin - (method url-fetch) - (uri (string-append "https://download.qemu.org/qemu-" - version ".tar.xz")) - (sha256 - (base32 - "1rd41wwlvp0vpialjp2czs6i3lsc338xc72l3zkbb7ixjfslw5y9")))) + (method url-fetch) + (uri (string-append "https://download.qemu.org/qemu-" + version ".tar.xz")) + (sha256 + (base32 + "1rd41wwlvp0vpialjp2czs6i3lsc338xc72l3zkbb7ixjfslw5y9")))) (build-system gnu-build-system) (arguments `(;; Running tests in parallel can occasionally lead to failures, like: @@ -207,7 +207,7 @@ #t)) (replace 'configure (lambda* (#:key inputs outputs (configure-flags '()) - #:allow-other-keys) + #:allow-other-keys) ;; The `configure' script doesn't understand some of the ;; GNU options. Thus, add a new phase that's compatible. (let ((out (assoc-ref outputs "out"))) From 710fd17ad5ccc55d61b483f90cd1e26d015b4bcc Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 18 Sep 2020 08:54:05 -0400 Subject: [PATCH 238/757] gnu: qemu: Enable parallel tests. I've built QEMU 5.1.0 tens of times on a 24 logical core machines, and haven't encountered a failure. Tentatively re-enabling parallel tests. * gnu/packages/virtualization.scm (qemu)[arguments]: Drop the \#:parallel-tests? #f argument. [phases]{configure}: Fix indentation. --- gnu/packages/virtualization.scm | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index c77bc39da9..12117ec462 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -140,11 +140,7 @@ "1rd41wwlvp0vpialjp2czs6i3lsc338xc72l3zkbb7ixjfslw5y9")))) (build-system gnu-build-system) (arguments - `(;; Running tests in parallel can occasionally lead to failures, like: - ;; boot_sector_test: assertion failed (signature == SIGNATURE): (0x00000000 == 0x0000dead) - #:parallel-tests? #f - - ;; FIXME: Disable tests on i686 to work around + `(;; FIXME: Disable tests on i686 to work around ;; . #:tests? ,(or (%current-target-system) (not (string=? "i686-linux" (%current-system)))) From 38197bb50973c9e49e8ae04bb240cdbf3f057bfd Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 18 Sep 2020 09:10:12 -0400 Subject: [PATCH 239/757] gnu: qemu: Install the full documentation as an info manual. * gnu/packages/patches/qemu-build-info-manual.patch: Add patch. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/virtualization.scm (qemu)[source]: Use it. [phases]{install-info}: Remove phase. {create-samba-wrapper}: Add after 'install. --- gnu/local.mk | 1 + .../patches/qemu-build-info-manual.patch | 139 ++++++++++++++++++ gnu/packages/virtualization.scm | 16 +- 3 files changed, 143 insertions(+), 13 deletions(-) create mode 100644 gnu/packages/patches/qemu-build-info-manual.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1a1a6488f9..f249fa3d55 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1508,6 +1508,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-unittest2-remove-argparse.patch \ %D%/packages/patches/python-waitress-fix-tests.patch \ %D%/packages/patches/pypy3-7.3.1-fix-tests.patch \ + %D%/packages/patches/qemu-build-info-manual.patch \ %D%/packages/patches/qemu-glibc-2.27.patch \ %D%/packages/patches/qrcodegen-cpp-make-install.patch \ %D%/packages/patches/qt4-ldflags.patch \ diff --git a/gnu/packages/patches/qemu-build-info-manual.patch b/gnu/packages/patches/qemu-build-info-manual.patch new file mode 100644 index 0000000000..d57b26ea00 --- /dev/null +++ b/gnu/packages/patches/qemu-build-info-manual.patch @@ -0,0 +1,139 @@ +From 07303a0a4daa83a0555ac4abad7a5d65584307ad Mon Sep 17 00:00:00 2001 +From: Maxim Cournoyer +Date: Thu, 17 Sep 2020 13:28:19 -0400 +Subject: [PATCH] build: Build and install the info manual. + +Take advantage of the Sphinx texinfo backend to generate a QEMU info +manual. The texinfo format allows for more structure and info readers +provide more advanced navigation capabilities compared to manpages +readers. + +* configure (infodir): Add the --infodir option, which allows +configuring the directory under which the info manuals are installed. +* docs/index.rst: Include the top level documents to prevent +warnings (treated as errors by sphinx-build). +* Makefile (sphinxdocs-info, $(MANUAL_BUILDDIR)/QEMU.texi)): New targets. +(info): Depend on sphinxdocs-info. +(install-doc): Install the info manual. +--- + Makefile | 13 +++++++++++-- + configure | 7 +++++++ + docs/index.rst | 2 ++ + 3 files changed, 20 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 13dd708c..da78612d 100644 +--- a/Makefile ++++ b/Makefile +@@ -864,12 +864,14 @@ endef + # Note that we deliberately do not install the "devel" manual: it is + # for QEMU developers, and not interesting to our users. + .PHONY: install-sphinxdocs +-install-sphinxdocs: sphinxdocs ++install-sphinxdocs: sphinxdocs sphinxdocs-info + $(call install-manual,interop) + $(call install-manual,specs) + $(call install-manual,system) + $(call install-manual,tools) + $(call install-manual,user) ++ $(INSTALL_DIR) "$(DESTDIR)$(infodir)" ++ $(INSTALL_DATA) $(MANUAL_BUILDDIR)/QEMU.info "$(DESTDIR)$(infodir)" + + install-doc: $(DOCS) install-sphinxdocs + $(INSTALL_DIR) "$(DESTDIR)$(qemu_docdir)" +@@ -1067,6 +1069,13 @@ sphinxdocs: $(MANUAL_BUILDDIR)/devel/index.html \ + $(MANUAL_BUILDDIR)/tools/index.html \ + $(MANUAL_BUILDDIR)/user/index.html + ++# Build the complete info manual. ++.PHONE: sphinxdocs-info ++sphinxdocs-info: $(MANUAL_BUILDDIR)/QEMU.info ++ ++$(MANUAL_BUILDDIR)/QEMU.texi: $(call manual-deps,*) $(wildcard $(SRC_PATH)/docs/*.rst) ++ $(call build-manual,,texinfo) ++ + # Canned command to build a single manual + # Arguments: $1 = manual name, $2 = Sphinx builder ('html' or 'man') + # Note the use of different doctree for each (manual, builder) tuple; +@@ -1126,7 +1135,7 @@ docs/interop/qemu-ga-qapi.texi: qga/qapi-generated/qga-qapi-doc.texi + @cp -p $< $@ + + html: docs/interop/qemu-qmp-ref.html docs/interop/qemu-ga-ref.html sphinxdocs +-info: docs/interop/qemu-qmp-ref.info docs/interop/qemu-ga-ref.info ++info: docs/interop/qemu-qmp-ref.info docs/interop/qemu-ga-ref.info sphinxdocs-info + pdf: docs/interop/qemu-qmp-ref.pdf docs/interop/qemu-ga-ref.pdf + txt: docs/interop/qemu-qmp-ref.txt docs/interop/qemu-ga-ref.txt + +diff --git a/configure b/configure +index 2acc4d14..3691bd2e 100755 +--- a/configure ++++ b/configure +@@ -415,6 +415,7 @@ LDFLAGS_SHARED="-shared" + modules="no" + module_upgrades="no" + prefix="/usr/local" ++infodir="\${prefix}/share/info" + mandir="\${prefix}/share/man" + datadir="\${prefix}/share" + firmwarepath="\${prefix}/share/qemu-firmware" +@@ -987,6 +988,7 @@ if test "$mingw32" = "yes" ; then + LIBS="-liberty $LIBS" + fi + prefix="c:/Program Files/QEMU" ++ infodir="\${prefix}" + mandir="\${prefix}" + datadir="\${prefix}" + qemu_docdir="\${prefix}" +@@ -1087,6 +1089,8 @@ for opt do + static="yes" + QEMU_PKG_CONFIG_FLAGS="--static $QEMU_PKG_CONFIG_FLAGS" + ;; ++ --infodir=*) infodir="$optarg" ++ ;; + --mandir=*) mandir="$optarg" + ;; + --bindir=*) bindir="$optarg" +@@ -1780,6 +1784,7 @@ Advanced options (experts only): + --smbd=SMBD use specified smbd [$smbd] + --with-git=GIT use specified git [$git] + --static enable static build [$static] ++ --infodir=PATH install info manual in PATH + --mandir=PATH install man pages in PATH + --datadir=PATH install firmware in PATH$confsuffix + --docdir=PATH install documentation in PATH$confsuffix +@@ -6836,6 +6841,7 @@ echo "include directory $(eval echo $includedir)" + echo "config directory $(eval echo $sysconfdir)" + if test "$mingw32" = "no" ; then + echo "local state directory $(eval echo $local_statedir)" ++echo "Info manual directory $(eval echo $infodir)" + echo "Manual directory $(eval echo $mandir)" + echo "ELF interp prefix $interp_prefix" + else +@@ -7059,6 +7065,7 @@ echo "bindir=$bindir" >> $config_host_mak + echo "libdir=$libdir" >> $config_host_mak + echo "libexecdir=$libexecdir" >> $config_host_mak + echo "includedir=$includedir" >> $config_host_mak ++echo "infodir=$infodir" >> $config_host_mak + echo "mandir=$mandir" >> $config_host_mak + echo "sysconfdir=$sysconfdir" >> $config_host_mak + echo "qemu_confdir=$qemu_confdir" >> $config_host_mak +diff --git a/docs/index.rst b/docs/index.rst +index 763e3d04..4f155b51 100644 +--- a/docs/index.rst ++++ b/docs/index.rst +@@ -9,6 +9,7 @@ Welcome to QEMU's documentation! + .. toctree:: + :maxdepth: 2 + :caption: Contents: ++ :glob: + + system/index + user/index +@@ -16,3 +17,4 @@ Welcome to QEMU's documentation! + interop/index + specs/index + devel/index ++ * +-- +2.28.0 + diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 12117ec462..ebfec6cb25 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -137,7 +137,8 @@ version ".tar.xz")) (sha256 (base32 - "1rd41wwlvp0vpialjp2czs6i3lsc338xc72l3zkbb7ixjfslw5y9")))) + "1rd41wwlvp0vpialjp2czs6i3lsc338xc72l3zkbb7ixjfslw5y9")) + (patches (search-patches "qemu-build-info-manual.patch")))) (build-system gnu-build-system) (arguments `(;; FIXME: Disable tests on i686 to work around @@ -233,21 +234,10 @@ ,(string-append "--prefix=" out) ,(string-append "--sysconfdir=/etc") ,@configure-flags))))) - (add-after 'install 'install-info - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Install the Info manual, unless Texinfo is missing. - (when (assoc-ref inputs "texinfo") - (let* ((out (assoc-ref outputs "out")) - (dir (string-append out "/share/info"))) - (invoke "make" "info") - (for-each (lambda (info) - (install-file info dir)) - (find-files "." "\\.info")))) - #t)) ;; Create a wrapper for Samba. This allows QEMU to use Samba without ;; pulling it in as an input. Note that you need to explicitly install ;; Samba in your Guix profile for Samba support. - (add-after 'install-info 'create-samba-wrapper + (add-after 'install 'create-samba-wrapper (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref %outputs "out")) (libexec (string-append out "/libexec"))) From 4d82e8e5c5f7e43dbaf5d009697915717d15b155 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 18 Sep 2020 09:35:13 -0400 Subject: [PATCH 240/757] gnu: qemu: Move HTML documentation to the doc output. * gnu/packages/virtualization.scm (qemu)[outputs]: Add "doc" output. [phases]{create-samba-wrapper}: Correctly refer to the outputs keyword argument. {move-html-doc}: Add phase. --- gnu/packages/virtualization.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index ebfec6cb25..53e9dde125 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -139,6 +139,7 @@ (base32 "1rd41wwlvp0vpialjp2czs6i3lsc338xc72l3zkbb7ixjfslw5y9")) (patches (search-patches "qemu-build-info-manual.patch")))) + (outputs '("out" "doc")) ;4.7 MiB of HTML docs (build-system gnu-build-system) (arguments `(;; FIXME: Disable tests on i686 to work around @@ -239,7 +240,7 @@ ;; Samba in your Guix profile for Samba support. (add-after 'install 'create-samba-wrapper (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref %outputs "out")) + (let* ((out (assoc-ref outputs "out")) (libexec (string-append out "/libexec"))) (call-with-output-file "samba-wrapper" (lambda (port) @@ -247,6 +248,15 @@ exec smbd $@"))) (chmod "samba-wrapper" #o755) (install-file "samba-wrapper" libexec)) + #t)) + (add-after 'install 'move-html-doc + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc")) + (qemu-doc (string-append doc "/share/doc/qemu-" ,version))) + (mkdir-p qemu-doc) + (rename-file (string-append out "/share/doc/qemu") + (string-append qemu-doc "/html"))) #t))))) (inputs ; TODO: Add optional inputs. `(("alsa-lib" ,alsa-lib) From 1d630fe0f64d16d7428a78ee4bf94e8179ce4a94 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 20 Sep 2020 03:01:09 +0200 Subject: [PATCH 241/757] gnu: Add java-treelayout. * gnu/packages/java.scm (java-treelayout): New variable. --- gnu/packages/java.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 1ef2ab3584..e05cc6b28c 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -8146,6 +8146,37 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;")) (propagated-inputs `(("stringtemplate" ,java-stringtemplate-3))))) +(define-public java-treelayout + (package + (name "java-treelayout") + (version "1.0.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/abego/treelayout") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "18my8ql9b1y0n0zrvkih7xfhf3dpgfhyfifvkcfhmwcvw3divxak")))) + (build-system ant-build-system) + (arguments + `(#:jar-name (string-append ,name "-" ,version ".jar") + #:source-dir "org.abego.treelayout/src/main/java" + #:test-dir "org.abego.treelayout/src/test")) + (inputs + `(("java-junit" ,java-junit))) + (native-inputs + `(("java-hamcrest-core" ,java-hamcrest-core))) + (home-page "http://treelayout.sourceforge.net") + (synopsis "Tree Layout Algorithm in Java") + (description "TreeLayout creates tree layouts for arbitrary trees. It is +not restricted to a specific output or format, but can be used for any kind of +two dimensional diagram. Examples are Swing based components, SVG files, etc. +This is possible because TreeLayout separates the layout of a tree from the +actual rendering.") + (license license:bsd-3))) + (define-public java-commons-cli-1.2 ;; This is a bootstrap dependency for Maven2. (package From 5d115440c20817a63d4ee12d627ff24c0717b6e1 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 20 Sep 2020 03:06:48 +0200 Subject: [PATCH 242/757] gnu: Add java-antlr4-runtime. * gnu/packages/java.scm (java-antlr4-runtime): New variable. * gnu/packages/patches/java-antlr4-Add-standalone-generator.patch: New file. * gnu/packages/patches/java-antlr4-fix-code-too-large.java: New file. * gnu/local.mk (dist_patch_DATA): Add them. --- gnu/local.mk | 2 + gnu/packages/java.scm | 34 +++++++ ...java-antlr4-Add-standalone-generator.patch | 52 +++++++++++ .../java-antlr4-fix-code-too-large.java | 90 +++++++++++++++++++ 4 files changed, 178 insertions(+) create mode 100644 gnu/packages/patches/java-antlr4-Add-standalone-generator.patch create mode 100644 gnu/packages/patches/java-antlr4-fix-code-too-large.java diff --git a/gnu/local.mk b/gnu/local.mk index f249fa3d55..ba7c7f373d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1158,6 +1158,8 @@ dist_patch_DATA = \ %D%/packages/patches/jacal-fix-texinfo.patch \ %D%/packages/patches/jamvm-2.0.0-disable-branch-patching.patch \ %D%/packages/patches/jamvm-arm.patch \ + %D%/packages/patches/java-antlr4-Add-standalone-generator.patch \ + %D%/packages/patches/java-antlr4-fix-code-too-large.java \ %D%/packages/patches/java-apache-ivy-port-to-latest-bouncycastle.patch \ %D%/packages/patches/java-commons-collections-fix-java8.patch \ %D%/packages/patches/java-jeromq-fix-tests.patch \ diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index e05cc6b28c..b3a0bfcb65 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -8177,6 +8177,40 @@ This is possible because TreeLayout separates the layout of a tree from the actual rendering.") (license license:bsd-3))) +(define-public java-antlr4-runtime + (package + (name "java-antlr4-runtime") + (version "4.8") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/antlr/antlr4") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1qal3add26qxskm85nk7r758arladn5rcyjinmhlhznmpbbv9j8m")) + (patches + (search-patches "java-antlr4-Add-standalone-generator.patch" + "java-antlr4-fix-code-too-large.java")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-antlr4-runtime.jar" + #:source-dir "runtime/Java/src/org" + #:tests? #f; tests depend on java-antlr4 itself + #:phases + (modify-phases %standard-phases + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "runtime/Java/src/main/dot" + "build/classes") + #t))))) + (home-page "https://antlr.org") + (synopsis "ANTLR runtime library") + (description "This package contains the runtime library used with generated +sources by ANTLR.") + (license license:bsd-3))) + (define-public java-commons-cli-1.2 ;; This is a bootstrap dependency for Maven2. (package diff --git a/gnu/packages/patches/java-antlr4-Add-standalone-generator.patch b/gnu/packages/patches/java-antlr4-Add-standalone-generator.patch new file mode 100644 index 0000000000..75b6dce39f --- /dev/null +++ b/gnu/packages/patches/java-antlr4-Add-standalone-generator.patch @@ -0,0 +1,52 @@ +From 3b43b79da15be994348f13035474925ba592fe1f Mon Sep 17 00:00:00 2001 +From: Julien Lepiller +Date: Fri, 15 Sep 2017 10:06:42 +0200 +Subject: [PATCH] Add standalone template generator + +--- + tool/src/org/antlr/v4/unicode/UnicodeRenderer.java | 33 ++++++++++++++++++++++ + 1 file changed, 33 insertions(+) + create mode 100644 tool/src/org/antlr/v4/unicode/UnicodeRenderer.java + +diff --git a/tool/src/org/antlr/v4/unicode/UnicodeRenderer.java b/tool/src/org/antlr/v4/unicode/UnicodeRenderer.java +new file mode 100644 +index 0000000..9e53213 +--- /dev/null ++++ b/tool/src/org/antlr/v4/unicode/UnicodeRenderer.java +@@ -0,0 +1,33 @@ ++package org.antlr.v4.unicode; ++ ++import org.stringtemplate.v4.*; ++import org.stringtemplate.v4.misc.ErrorBuffer; ++import org.antlr.v4.unicode.UnicodeDataTemplateController; ++ ++import java.io.File; ++import java.io.FileWriter; ++import java.io.IOException; ++import java.util.Map; ++import java.util.Map.Entry; ++ ++public class UnicodeRenderer extends UnicodeDataTemplateController { ++ public static void main(String[] arg) ++ throws IOException { ++ String inputdir = arg[0]; ++ String input = arg[1]; ++ String output = arg[2]; ++ ++ FileWriter fileWriter = new FileWriter(new File(output)); ++ ErrorBuffer listener = new ErrorBuffer(); ++ ++ STGroupDir group = new STGroupDir(inputdir); ++ ST st = group.getInstanceOf(input); ++ ++ for(Entry entry : getProperties().entrySet()) ++ st.add(entry.getKey(), entry.getValue()); ++ ++ st.write(new AutoIndentWriter(fileWriter), listener); ++ fileWriter.flush(); ++ fileWriter.close(); ++ } ++} +-- +2.13.5 + diff --git a/gnu/packages/patches/java-antlr4-fix-code-too-large.java b/gnu/packages/patches/java-antlr4-fix-code-too-large.java new file mode 100644 index 0000000000..9e9f92349d --- /dev/null +++ b/gnu/packages/patches/java-antlr4-fix-code-too-large.java @@ -0,0 +1,90 @@ +From d22db2048534bdf3d9615117291f9d86564ff10d Mon Sep 17 00:00:00 2001 +From: Julien Lepiller +Date: Sat, 19 Sep 2020 21:05:48 +0200 +Subject: [PATCH] Separate addPropertyAliases in two methods + +The quantity of data used to generate addPropertyAliases creates a big +method, that is too big for java and results in "error: code too large". +This is most likely due to added data between the expected version of +icu and the actual version of icu in Guix. +--- + .../org/antlr/v4/tool/templates/unicodedata.st | 17 ++++++++++++++--- + .../unicode/UnicodeDataTemplateController.java | 18 ++++++++++-------- + 2 files changed, 24 insertions(+), 11 deletions(-) + +diff --git a/tool/resources/org/antlr/v4/tool/templates/unicodedata.st b/tool/resources/org/antlr/v4/tool/templates/unicodedata.st +index 0f22c73..3573873 100644 +--- a/tool/resources/org/antlr/v4/tool/templates/unicodedata.st ++++ b/tool/resources/org/antlr/v4/tool/templates/unicodedata.st +@@ -1,4 +1,4 @@ +-unicodedata(propertyCodePointRanges, propertyAliases) ::= << ++unicodedata(propertyCodePointRanges, propertyAliasesA, propertyAliasesB) ::= << + package org.antlr.v4.unicode; + + import java.util.Arrays; +@@ -15,7 +15,7 @@ import org.antlr.v4.runtime.misc.Interval; + */ + public abstract class UnicodeData { + private static final Map\ propertyCodePointRanges = new HashMap\<\>(); +- private static final Map\ propertyAliases = new HashMap\<\>(); ++ private static final Map\ propertyAliases = new HashMap\<\>( + ); + + // Work around Java 64k bytecode method limit by splitting up static + // initialization into one method per Unicode property +@@ -30,9 +30,20 @@ static private void addProperty() { + propertyCodePointRanges.put("".toLowerCase(Locale.US), codePointRanges); + \}}; separator="\n\n"> + ++ // Property aliases ++ static private void addPropertyAliases1() { ++ ".toLowerCase(Locale.US), "".toLowerCase(Locale.US)); }; separator="\n"> ++ } ++ ++ // Property aliases ++ static private void addPropertyAliases2() { ++ ".toLowerCase(Locale.US), "".toLowerCase(Locale.US)); }; separator="\n"> ++ } ++ + // Property aliases + static private void addPropertyAliases() { +- ".toLowerCase(Locale.US), "".toLowerCase(Locale.US)); }; separator="\n"> ++ addPropertyAliases1(); ++ addPropertyAliases2(); + } + + // Put it all together +diff --git a/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java b/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java +index da244a3..dc591cb 100644 +--- a/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java ++++ b/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java +@@ -78,17 +78,19 @@ public abstract class UnicodeDataTemplateController { + addTR35ExtendedPictographicPropertyCodesToCodePointRanges(propertyCodePointRanges); + addEmojiPresentationPropertyCodesToCodePointRanges(propertyCodePointRanges); + +- Map propertyAliases = new LinkedHashMap<>(); +- addUnicodeCategoryCodesToNames(propertyAliases); +- addUnicodeBinaryPropertyCodesToNames(propertyAliases); +- addUnicodeScriptCodesToNames(propertyAliases); +- addUnicodeBlocksToNames(propertyAliases); +- addUnicodeIntPropertyCodesToNames(propertyAliases); +- propertyAliases.put("EP", "Extended_Pictographic"); ++ Map propertyAliases1 = new LinkedHashMap<>(); ++ Map propertyAliases2 = new LinkedHashMap<>(); ++ addUnicodeCategoryCodesToNames(propertyAliases1); ++ addUnicodeBinaryPropertyCodesToNames(propertyAliases1); ++ addUnicodeScriptCodesToNames(propertyAliases1); ++ addUnicodeBlocksToNames(propertyAliases2); ++ addUnicodeIntPropertyCodesToNames(propertyAliases2); ++ propertyAliases2.put("EP", "Extended_Pictographic"); + + Map properties = new LinkedHashMap<>(); + properties.put("propertyCodePointRanges", propertyCodePointRanges); +- properties.put("propertyAliases", propertyAliases); ++ properties.put("propertyAliasesA", propertyAliases1); ++ properties.put("propertyAliasesB", propertyAliases2); + return properties; + } + +-- +2.28.0 + From f9a6e3894b1648e32371e1916dfdf820de496050 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 20 Sep 2020 03:09:23 +0200 Subject: [PATCH 243/757] gnu: Add antlr4. * gnu/packages/java.scm (antlr4): New variable. --- gnu/packages/java.scm | 161 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 161 insertions(+) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index b3a0bfcb65..8c594f5fe2 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -8211,6 +8211,167 @@ actual rendering.") sources by ANTLR.") (license license:bsd-3))) +(define-public antlr4 + (package + (inherit java-antlr4-runtime) + (name "antlr4") + (arguments + `(#:jar-name "antlr4.jar" + #:source-dir "tool/src" + #:test-dir "tool-testsuite/test:runtime-testsuite/test:runtime-testsuite/annotations/src" + #:test-include (list "**/Test*.java") + #:test-exclude (list + ;; no runnable method + "**/TestOutputReading.java" + ;; no @Test methods + "**/TestParserErrors.java" + "**/TestSemPredEvalParser.java" + "**/TestSets.java" + "**/TestListeners.java" + "**/TestParseTrees.java" + "**/TestParserExec.java" + "**/TestLexerErrors.java" + "**/TestPerformance.java" + "**/TestCompositeParsers.java" + "**/TestLexerExec.java" + "**/TestSemPredEvalLexer.java" + "**/TestLeftRecursion.java" + "**/TestFullContextParsing.java" + "**/TestCompositeLexers.java" + ;; Null pointer exception + "**/TestCompositeGrammars.java" + ;; Wrong assumption on emoji + "**/TestUnicodeData.java") + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-build.xml + (lambda _ + ;; tests are not in a java subdirectory + (substitute* "build.xml" + (("\\$\\{test.home\\}/java") "${test.home}")) + #t)) + ;; tests require to have a working antlr4 binary + (delete 'check) + (add-after 'bin-install 'check + (lambda _ + (invoke "ant" "compile-tests") + (invoke "ant" "check" "-Dtest.home=runtime-testsuite/annotations/src") + (invoke "ant" "check" "-Dtest.home=runtime-testsuite/test") + (invoke "ant" "check" "-Dtest.home=tool-testsuite/test") + #t)) + (add-before 'check 'remove-unrelated-languages + (lambda _ + ;; There are tests for other languages that ANTLR can generate, but + ;; we don't have the infrastructure for that yet. Let's test Java + ;; generation only. + (for-each + (lambda (language) + (delete-file-recursively + (string-append "runtime-testsuite/test/org/antlr/v4/test/runtime/" + language))) + '("cpp" "csharp" "go" "javascript" "php" "python" "python2" + "python3" "swift")) + #t)) + (add-before 'check 'generate-test-parsers + (lambda* (#:key outputs #:allow-other-keys) + (define (run-antlr dir filename package) + (invoke "antlr4" "-lib" dir "-visitor" "-no-listener" + "-package" package (string-append dir "/" filename) + "-Xlog")) + (setenv "PATH" (string-append (getenv "PATH") ":" + (assoc-ref outputs "out") "/bin")) + (run-antlr "runtime-testsuite/test/org/antlr/v4/test/runtime/java/api" + "Java.g4" "org.antlr.v4.test.runtime.java.api") + (run-antlr "runtime-testsuite/test/org/antlr/v4/test/runtime/java/api" + "VisitorBasic.g4" "org.antlr.v4.test.runtime.java.api") + (run-antlr "runtime-testsuite/test/org/antlr/v4/test/runtime/java/api" + "VisitorCalc.g4" "org.antlr.v4.test.runtime.java.api") + #t)) + (add-before 'check 'remove-graphemes + (lambda _ + ;; When running antlr on grahemes.g4, we get a runtime exception: + ;; set is empty. So delete the file that depends on it. + (delete-file + "runtime-testsuite/test/org/antlr/v4/test/runtime/java/api/perf/TimeLexerSpeed.java") + #t)) + (add-after 'install 'bin-install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((jar (string-append (assoc-ref outputs "out") "/share/java")) + (bin (string-append (assoc-ref outputs "out") "/bin"))) + (mkdir-p bin) + (with-output-to-file (string-append bin "/antlr4") + (lambda _ + (display + (string-append "#!" (which "sh") "\n" + "java -cp " jar "/antlr4.jar:" + (string-join + (apply + append + (map + (lambda (input) + (find-files (assoc-ref inputs input) + ".*\\.jar")) + '("antlr3" "java-stringtemplate" + "java-antlr4-runtime" "java-treelayout" + "java-jsonp-api" "java-icu4j"))) + ":") + " org.antlr.v4.Tool $*")))) + (chmod (string-append bin "/antlr4") #o755) + #t))) + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "tool/resources/" "build/classes") + #t)) + (add-before 'build 'generate-unicode + (lambda _ + ;; First: build the generator + (invoke "javac" "-cp" (getenv "CLASSPATH") + "tool/src/org/antlr/v4/unicode/UnicodeRenderer.java" + "tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java") + ;; Then use it + (invoke "java" "-cp" (string-append (getenv "CLASSPATH") + ":tool/src:runtime/Java") + "org.antlr.v4.unicode.UnicodeRenderer" + "tool/resources/org/antlr/v4/tool/templates" + "unicodedata" + "tool/src/org/antlr/v4/unicode/UnicodeData.java") + ;; It seems there is a bug with our ST4 + (substitute* "tool/src/org/antlr/v4/unicode/UnicodeData.java" + (("\\\\>") ">")) + ;; Remove the additional file + (delete-file "tool/src/org/antlr/v4/unicode/UnicodeRenderer.java") + #t)) + (add-before 'build 'generate-grammar + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "tool/src/org/antlr/v4/parse" + (for-each (lambda (file) + (display file) + (newline) + (invoke "antlr3" file)) + '("ANTLRLexer.g" "ANTLRParser.g" "BlockSetTransformer.g" + "GrammarTreeVisitor.g" "ATNBuilder.g" + "ActionSplitter.g" "LeftRecursiveRuleWalker.g"))) + (with-directory-excursion "tool/src/org/antlr/v4/codegen" + (install-file "../parse/ANTLRParser.tokens" ".") + (display "SourceGenTriggers.g\n") + (invoke "antlr3" "SourceGenTriggers.g")) + #t))))) + (inputs + `(("antlr3" ,antlr3) + ("java-antlr4-runtime" ,java-antlr4-runtime) + ("java-icu4j" ,java-icu4j) + ("java-jsonp-api" ,java-jsonp-api) + ("java-stringtemplate" ,java-stringtemplate) + ("java-treelayout" ,java-treelayout))) + (native-inputs + `(("java-junit" ,java-junit))) + (synopsis "Parser and lexer generator in Java") + (description "ANTLR (ANother Tool for Language Recognition) is a powerful +parser generator for reading, processing, executing, or translating structured +text or binary files. It's widely used to build languages, tools, and +frameworks. From a grammar, ANTLR generates a parser that can build and walk +parse trees."))) + (define-public java-commons-cli-1.2 ;; This is a bootstrap dependency for Maven2. (package From 84e2853147d3fd683af2b62ad2c5c639c4894fee Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 19 Sep 2020 03:22:20 +0200 Subject: [PATCH 244/757] gnu: libbpf: Propagate pkg-config Requirements. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/linux.scm (libbpf)[inputs]: Rename to, making libelf and zlib, … [propagated-inputs]: …this. --- gnu/packages/linux.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 5329d70ccf..bbe801bad3 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -7363,11 +7363,12 @@ persistent over reboots.") (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) - (inputs + (propagated-inputs + ;; In Requires.private of libbpf.pc. `(("libelf" ,libelf) ("zlib" ,zlib))) (arguments - `(#:tests? #f ; No tests + `(#:tests? #f ; no tests #:make-flags (list (string-append "PREFIX=''") From fb420edd20511dd408a1adb18eb1d025f73e2554 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 19 Sep 2020 21:14:31 +0200 Subject: [PATCH 245/757] gnu: knot-resolver: Update to 5.1.3. * gnu/packages/dns.scm (knot-resolver): Update to 5.1.3. [inputs]: Remove lua5.1-cqueues, lua5.1-filesystem, lua5.1-sec, and lua5.1-socket. --- gnu/packages/dns.scm | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index d730b14c1d..6b61afafad 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -871,14 +871,14 @@ synthesis, and on-the-fly re-configuration.") (define-public knot-resolver (package (name "knot-resolver") - (version "4.3.0") + (version "5.1.3") (source (origin (method url-fetch) (uri (string-append "https://secure.nic.cz/files/knot-resolver/" "knot-resolver-" version ".tar.xz")) (sha256 (base32 - "09ffmqx79lv5psr433x4n946njgsn071b9b7161pcb9bmrqz380c")))) + "12s5070nqqf599s1mb6rjas2as481rjf751qk5yrz6p34y885k90")))) (build-system meson-build-system) (arguments '(#:configure-flags '("-Ddoc=enabled") @@ -925,11 +925,7 @@ synthesis, and on-the-fly re-configuration.") ("lmdb" ,lmdb) ("luajit" ,luajit) ;; TODO: Add optional lua modules: basexx and psl. - ("lua-bitop" ,lua5.1-bitop) - ("lua-cqueues" ,lua5.1-cqueues) - ("lua-filesystem" ,lua5.1-filesystem) - ("lua-sec" ,lua5.1-sec) - ("lua-socket" ,lua5.1-socket))) + ("lua-bitop" ,lua5.1-bitop))) (home-page "https://www.knot-resolver.cz/") (synopsis "Caching validating DNS resolver") (description From 5d351adaca9327f126f4996f29ebc041edb47c31 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Fri, 18 Sep 2020 09:23:52 -0400 Subject: [PATCH 246/757] gnu: retux: Update to 1.4.1-1. * gnu/packages/games.scm (retux): Add let binding and update to 1.4.1-1. [version]: Update version string. [source]: Update URL. --- gnu/packages/games.scm | 103 +++++++++++++++++++++-------------------- 1 file changed, 54 insertions(+), 49 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 5903a31bd8..80d1659258 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1811,58 +1811,63 @@ Every puzzle has a complete solution, although there may be more than one.") (license license:gpl2+))) (define-public retux - (package - (name "retux") - (version "1.4") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/retux-game/retux/" - "releases/download/v" - (version-major+minor version) "/retux-" - version "-src.tar.gz")) - (sha256 - (base32 - "1hxy1pvlxhk0ci3wh2i3mmr82faqdjnnxsiwwr5gcr93nfnw9w5f")))) - (build-system python-build-system) - (arguments - `(#:tests? #f ; no check target - #:phases - (modify-phases %standard-phases - ;; no setup.py script - (delete 'build) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (data (string-append out "/share/retux"))) - (mkdir-p bin) + (let ((release "1.4.1") + (revision 1)) + (package + (name "retux") + (version (if (zero? revision) + release + (string-append release "-" + (number->string revision)))) + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/retux-game/retux/" + "releases/download/v" + version "/retux-" + release "-src.tar.gz")) + (sha256 + (base32 + "1vrldg2qh2gqfswj7vkpc589ldrrjd903j6cnfdik9zh0jhlq4h2")))) + (build-system python-build-system) + (arguments + `(#:tests? #f ; no check target + #:phases + (modify-phases %standard-phases + ;; no setup.py script + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (data (string-append out "/share/retux"))) + (mkdir-p bin) - (substitute* "retux.py" - ;; Use the correct data directory. - (("os\\.path\\.join\\(os\\.path\\.dirname\\(__file__\\), \"data\"\\),") - (string-append "\"" data "\","))) + (substitute* "retux.py" + ;; Use the correct data directory. + (("os\\.path\\.join\\(os\\.path\\.dirname\\(__file__\\), \"data\"\\),") + (string-append "\"" data "\","))) - (copy-file "retux.py" (string-append bin "/retux")) - (copy-recursively "data" data) - #t)))))) - (inputs - `(("python-sge-pygame" ,python-sge-pygame) - ("python-six" ,python-six) - ("python-xsge" ,python-xsge))) - (home-page "https://retux-game.github.io/") - (synopsis "Action platformer game") - (description - "ReTux is an action platformer loosely inspired by the Mario games, + (copy-file "retux.py" (string-append bin "/retux")) + (copy-recursively "data" data) + #t)))))) + (inputs + `(("python-sge-pygame" ,python-sge-pygame) + ("python-six" ,python-six) + ("python-xsge" ,python-xsge))) + (home-page "https://retux-game.github.io/") + (synopsis "Action platformer game") + (description + "ReTux is an action platformer loosely inspired by the Mario games, utilizing the art assets from the @code{SuperTux} project.") - ;; GPL version 3 or later is the license for the code and some art. - ;; The rest of the licenses are for the art exclusively, as listed in - ;; data/LICENSES. - (license (list license:cc0 - license:cc-by3.0 - license:cc-by-sa3.0 - license:cc-by-sa4.0 - license:gpl2+ - license:gpl3+)))) + ;; GPL version 3 or later is the license for the code and some art. + ;; The rest of the licenses are for the art exclusively, as listed in + ;; data/LICENSES. + (license (list license:cc0 + license:cc-by3.0 + license:cc-by-sa3.0 + license:cc-by-sa4.0 + license:gpl2+ + license:gpl3+))))) (define-public roguebox-adventures (package From ff7bba573ac6b51836718cfdc81b638caf11488b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 20 Sep 2020 22:34:53 +0300 Subject: [PATCH 247/757] gnu: gnu-pw-mgr: Update to 2.7. * gnu/packages/gnu-pw-mgr.scm (gnu-pw-mgr): Update to 2.7. [arguments]: Add new phase to work around /dev/tty not being available in the build environment. --- gnu/packages/gnu-pw-mgr.scm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gnu-pw-mgr.scm b/gnu/packages/gnu-pw-mgr.scm index 6eb8224cef..321a7f87d7 100644 --- a/gnu/packages/gnu-pw-mgr.scm +++ b/gnu/packages/gnu-pw-mgr.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Eric Bavier ;;; Copyright © 2015 Mark H Weaver -;;; Copyright © 2016, 2018 Efraim Flashner +;;; Copyright © 2016, 2018, 2020 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,7 +30,7 @@ (define-public gnu-pw-mgr (package (name "gnu-pw-mgr") - (version "2.4.2") + (version "2.7") (source (origin (method url-fetch) @@ -38,7 +38,7 @@ version ".tar.xz")) (sha256 (base32 - "1yvdzc5w37qrjrkby5699ygj9bhkvgi3zk9k9jcjry1j6b7wdl17")))) + "1ra8in91qx6n8jydb8kwl2rnqaa2hix5pyawn6nvyqs815h9gx17")))) (build-system gnu-build-system) (arguments '(#:phases @@ -47,6 +47,12 @@ (lambda _ (substitute* "tests/dom.test" (("/usr/bin/printf") (which "printf"))) + #t)) + (add-before 'check 'pre-check + (lambda _ + ;; In build environment, There is no /dev/tty + (substitute* "tests/base.test" + (("/dev/tty") "/dev/null")) #t))))) (native-inputs `(("which" ,which))) From 822c19b920c9d66543515cf30a28a4b551c28dfc Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 20 Sep 2020 22:36:15 +0200 Subject: [PATCH 248/757] gnu: emacs-bluetooth: Update to 0.2. * gnu/packages/emacs-xyz.scm (emacs-bluetooth): Update to 0.2. --- 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 d47b1ca36e..39a8846f89 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1724,14 +1724,14 @@ mode, Rmail, Gnus, MH-E, and VM). BBDB is fully customizable.") (define-public emacs-bluetooth (package (name "emacs-bluetooth") - (version "0.1.2") + (version "0.2") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "bluetooth-" version ".el")) (sha256 - (base32 "1vp2vpyq0ybjni35ics1mg1kiwgvc7x12dlmvygy78sqp52sfkcv")))) + (base32 "1dq04p6ms0zx4awlypp4crkz7dzal4xg8ac7p8fqacz196rczssp")))) (build-system emacs-build-system) (inputs `(("bluez" ,bluez))) From fd5cace4c99a26ec51bf3a47d8af672f0ac2d4eb Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 20 Sep 2020 22:38:32 +0200 Subject: [PATCH 249/757] gnu: emacs-beginend: Update to 2.2.0. * gnu/packages/emacs-xyz.scm (emacs-beginend): Update to 2.2.0. --- 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 39a8846f89..4634836b89 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -15298,7 +15298,7 @@ until the top-level form is no longer a macro call.") (define-public emacs-beginend (package (name "emacs-beginend") - (version "2.1.0") + (version "2.2.0") (source (origin (method git-fetch) @@ -15307,7 +15307,7 @@ until the top-level form is no longer a macro call.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1ic5z3qb5sc3mjrjdlg0rqm2l59a43gwnakagns4cilln2a3xdg8")))) + (base32 "1r9033zlx2q2dk3bjz004flxdiw79qiswq0zqdjnlzwassvk0f35")))) ;; TODO: Run tests. (build-system emacs-build-system) (inputs From 02406d5c51a8c38136ff8036dd1e62865b8714d1 Mon Sep 17 00:00:00 2001 From: Ryan Prior Date: Sun, 20 Sep 2020 03:28:02 +0000 Subject: [PATCH 250/757] gnu: oil: Update to 0.8.0. * gnu/packages/shells.scm (oil): Update to 0.8.0. Signed-off-by: Efraim Flashner --- gnu/packages/shells.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 7868dc40f0..affc98a6e6 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -813,15 +813,14 @@ Shell (pdksh).") (define-public oil (package (name "oil") - ;; https://www.oilshell.org/blog/2020/04/release-0.8.pre4.html#comment-on-version-numbering - (version "0.8.pre6") + (version "0.8.0") (source (origin (method url-fetch) (uri (string-append "https://www.oilshell.org/download/oil-" version ".tar.gz")) (sha256 - (base32 "11nfwn5b1w74hv78065jg2zm45mqzi59381b0f649j7n3g7yp3iq")))) + (base32 "1455hy61prznzp05vigh96ypyz9zarhvvzmmxvf8cnpa39s39a8c")))) (build-system gnu-build-system) (arguments `(#:strip-binaries? #f ; strip breaks the binary @@ -838,7 +837,7 @@ Shell (pdksh).") (replace 'check ;; The tests are not distributed in the tarballs but upstream ;; recommends running this smoke test. - ;; https://github.com/oilshell/oil/blob/release/0.8.pre6/INSTALL.txt#L38-L48 + ;; https://github.com/oilshell/oil/blob/release/0.8.0/INSTALL.txt#L38-L48 (lambda _ (let* ((oil "_bin/oil.ovm")) (invoke/quiet oil "osh" "-c" "echo hi") From ae144ec797cebf6f00f80177101020e92e8f2c47 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 20 Sep 2020 23:40:46 +0300 Subject: [PATCH 251/757] gnu: oil: Don't hardcode gcc. * gnu/packages/shells.scm (oil)[arguments]: In custom 'configure phase use cc-for-target instead of hardcoding gcc. --- gnu/packages/shells.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index affc98a6e6..5225e12064 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -829,7 +829,7 @@ Shell (pdksh).") (replace 'configure (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) - (setenv "CC" "gcc") + (setenv "CC" ,(cc-for-target)) (substitute* "configure" ((" cc ") " $CC ")) (invoke "./configure" (string-append "--prefix=" out) From e1f3788944ee154ba9b33c891c4ccf039a1ff39a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 20 Sep 2020 21:05:23 +0200 Subject: [PATCH 252/757] installer: Fix docstring typoes. * gnu/installer/connman.scm (connman-state, run-locale-page) (start-swapping, stop-swapping, run-installer-steps): Fix typo in docstring. --- gnu/installer/connman.scm | 2 +- gnu/installer/newt/locale.scm | 2 +- gnu/installer/parted.scm | 4 ++-- gnu/installer/steps.scm | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/installer/connman.scm b/gnu/installer/connman.scm index 386f431ced..2f33b58453 100644 --- a/gnu/installer/connman.scm +++ b/gnu/installer/connman.scm @@ -180,7 +180,7 @@ Return the corresponding association list of '((KEY . VALUE) (KEY2 . VALUE2) (define (connman-state) "Return the state of connman. The nominal states are 'offline, 'idle, 'ready, 'oneline. If an unexpected state is read, 'unknown is -returned. Finally, an error is raised if the comman output could not be +returned. Finally, an error is raised if the connman output could not be parsed, usually because the connman daemon is not responding." (let* ((output (connman "state")) (state-keys (parse-keys output))) diff --git a/gnu/installer/newt/locale.scm b/gnu/installer/newt/locale.scm index 7108e2960b..bfd89aca2c 100644 --- a/gnu/installer/newt/locale.scm +++ b/gnu/installer/newt/locale.scm @@ -106,7 +106,7 @@ symbol.") territory, codeset and modifier. Use SUPPORTED-LOCALES as the list of glibc available locales. ISO639-LANGUAGES is an association list associating a locale code to a locale name. ISO3166-TERRITORIES is an association list -associating a territory code with a territory name. The formated locale, under +associating a territory code with a territory name. The formatted locale, under glibc format is returned." (define (break-on-locale-found locales) diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scm index ff5f6afd19..b0c73b837e 100644 --- a/gnu/installer/parted.scm +++ b/gnu/installer/parted.scm @@ -1201,13 +1201,13 @@ the FS-TYPE field set to 'swap, return the empty list if none found." user-partitions)) (define (start-swapping user-partitions) - "Start swaping on records with FS-TYPE equal to 'swap." + "Start swapping on records with FS-TYPE equal to 'swap." (let* ((swap-user-partitions (find-swap-user-partitions user-partitions)) (swap-devices (map user-partition-file-name swap-user-partitions))) (for-each swapon swap-devices))) (define (stop-swapping user-partitions) - "Stop swaping on records with FS-TYPE equal to 'swap." + "Stop swapping on records with FS-TYPE equal to 'swap." (let* ((swap-user-partitions (find-swap-user-partitions user-partitions)) (swap-devices (map user-partition-file-name swap-user-partitions))) (for-each swapoff swap-devices))) diff --git a/gnu/installer/steps.scm b/gnu/installer/steps.scm index 0b6d8e4649..16d74c207f 100644 --- a/gnu/installer/steps.scm +++ b/gnu/installer/steps.scm @@ -88,7 +88,7 @@ (rewind-strategy 'previous) (menu-proc (const #f))) "Run the COMPUTE procedure of all records in STEPS -sequencially. If the &installer-step-abort condition is raised, fallback to a +sequentially. If the &installer-step-abort condition is raised, fallback to a previous install-step, accordingly to the specified REWIND-STRATEGY. REWIND-STRATEGY possible values are 'previous, 'menu and 'start. If 'previous From 5e17ae7fbd38917264627701b73e7f38061402f0 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 20 Sep 2020 21:09:19 +0200 Subject: [PATCH 253/757] installer: Rename RUN-PARTIONING-PAGE. * gnu/installer/newt/partition.scm (run-partioning-page): Rename to run-partitioning-page. Adjust all callers. --- gnu/installer/newt.scm | 2 +- gnu/installer/newt/partition.scm | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/installer/newt.scm b/gnu/installer/newt.scm index a24a152984..fdab721b2f 100644 --- a/gnu/installer/newt.scm +++ b/gnu/installer/newt.scm @@ -107,7 +107,7 @@ problem. The backtrace is displayed below. Please report it by email to \ (run-user-page)) (define (partition-page) - (run-partioning-page)) + (run-partitioning-page)) (define (services-page) (run-services-page)) diff --git a/gnu/installer/newt/partition.scm b/gnu/installer/newt/partition.scm index 54d595f54e..ed38287fe8 100644 --- a/gnu/installer/newt/partition.scm +++ b/gnu/installer/newt/partition.scm @@ -32,7 +32,7 @@ #:use-module (srfi srfi-35) #:use-module (newt) #:use-module (parted) - #:export (run-partioning-page)) + #:export (run-partitioning-page)) (define (button-exit-action) "Raise the &installer-step-abort condition." @@ -725,7 +725,7 @@ by pressing the Exit button.~%~%"))) (run-disk-page result-disks new-user-partitions #:guided? guided?))))) -(define (run-partioning-page) +(define (run-partitioning-page) "Run a page asking the user for a partitioning method." (define (run-page devices) (let* ((items From b864ddb6905a1c4e3a88a6e8214b58f42ff5bf19 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 20 Sep 2020 22:01:25 +0200 Subject: [PATCH 254/757] services: dicod: Reduce irony. * gnu/services/dict.scm (dicod-service): Fix docstring typo. --- gnu/services/dict.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/services/dict.scm b/gnu/services/dict.scm index 519ed3eca2..a97ad8f608 100644 --- a/gnu/services/dict.scm +++ b/gnu/services/dict.scm @@ -187,7 +187,7 @@ of DICT server (@pxref{Dicod,,, dico, GNU Dico Manual}). The optional @var{config} argument specifies the configuration for @command{dicod}, which should be a @code{} object, by -default it serves the GNU Collaborative International Dictonary of English. +default it serves the GNU Collaborative International Dictionary of English. You can add @command{open localhost} to your @file{~/.dico} file to make @code{localhost} the default server for @command{dico} From 6b6dbff44ee3063c2fce5b5245a0a4046b3145d2 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Sep 2020 02:23:41 +0200 Subject: [PATCH 255/757] gnu: eschalot: Fix build. * gnu/packages/crypto.scm (eschalot)[inputs]: Use openssl-1.0. --- gnu/packages/crypto.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 028c140185..c30c949dc0 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -359,7 +359,7 @@ secure operations. ") (base32 "0lj38ldh8vzi11wp4ghw4k0fkwp0s04zv8k8d473p1snmbh7mx98")))) (inputs - `(("openssl" ,openssl))) ; It needs: openssl/{bn,pem,rsa,sha}.h + `(("openssl" ,openssl-1.0))) ; for openssl/{bn,pem,rsa,sha}.h (build-system gnu-build-system) (arguments `(#:make-flags (list "CC=gcc" From 0a385196942bdd73b834b892b600a0fade076933 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Sep 2020 02:23:53 +0200 Subject: [PATCH 256/757] gnu: eschalot: Cross-compile. * gnu/packages/crypto.scm (eschalot)[arguments]: Use CC-FOR-TARGET. --- gnu/packages/crypto.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index c30c949dc0..4654be17b3 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -362,7 +362,7 @@ secure operations. ") `(("openssl" ,openssl-1.0))) ; for openssl/{bn,pem,rsa,sha}.h (build-system gnu-build-system) (arguments - `(#:make-flags (list "CC=gcc" + `(#:make-flags (list (string-append "CC=" ,(cc-for-target)) (string-append "PREFIX=" (assoc-ref %outputs "out")) (string-append "INSTALL=" "install")) ;; XXX: make test would run a !VERY! long hashing of names with the use From c1e73d074c72d4427dde2c60ab47abeebec474a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20M=C3=A9lotte?= Date: Thu, 17 Sep 2020 18:58:05 +0200 Subject: [PATCH 257/757] gnu: supertuxkart: Update to 1.2. * gnu/packages/games.scm (supertuxkart): Update to 1.2. [source]: Update snippet, some of the previously bundled libraries are gone. Also update URL. [arguments]: Remove unneeded configure flags. [inputs]: Add sdl2. Signed-off-by: Efraim Flashner --- gnu/packages/games.scm | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 80d1659258..d04f702b34 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3464,15 +3464,15 @@ This game is based on the GPL version of the famous game TuxRacer.") (define-public supertuxkart (package (name "supertuxkart") - (version "1.1") + (version "1.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/supertuxkart/SuperTuxKart/" - version "/supertuxkart-" version "-src.tar.xz")) + version "/SuperTuxKart-" version "-src.tar.xz")) (sha256 (base32 - "1s0ai07g3sswck9mr0142989mrgzzq1njc1qxk5als5b245jpc79")) + "0dvx56hmy6wdhl7m9dw8zc1n3jqfp05gnxl6zs1rbfdyzl5dybh5")) (modules '((guix build utils))) (snippet ;; Delete bundled library sources @@ -3480,12 +3480,9 @@ This game is based on the GPL version of the famous game TuxRacer.") ;; Supertuxkart uses modified versions of the Irrlicht engine ;; and the bullet library. The developers gave an explanation ;; here: http://forum.freegamedev.net/viewtopic.php?f=17&t=3906 - ;; FIXME: try to unbundle angelscript and libraqm + ;; FIXME: try to unbundle angelscript, libmcpp and libraqm (for-each delete-file-recursively - '("lib/zlib" - "lib/libpng" - "lib/jpeglib" - "lib/glew" + '("lib/glew" "lib/wiiuse" "lib/enet")) #t)))) @@ -3494,19 +3491,16 @@ This game is based on the GPL version of the famous game TuxRacer.") `(#:tests? #f ; no check target #:configure-flags (list "-DUSE_WIIUSE=0" - ;; Do not use the bundled zlib, glew and enet. - "-DNO_IRR_COMPILE_WITH_ZLIB_=TRUE" "-DUSE_SYSTEM_GLEW=TRUE" "-DUSE_SYSTEM_ENET=TRUE" ;; In order to use the system ENet library, IPv6 support (added in ;; SuperTuxKart version 1.1) must be disabled. "-DUSE_IPV6=FALSE" ;; FIXME: needs libopenglrecorder - "-DBUILD_RECORDER=0" - ;; Irrlicht returns an integer instead of a boolean - "-DCMAKE_C_FLAGS=-fpermissive"))) + "-DBUILD_RECORDER=0"))) (inputs `(("glew" ,glew) + ("sdl2" ,sdl2) ("zlib" ,zlib) ("openal" ,openal) ("libvorbis" ,libvorbis) From c515bbae0cbb19f7afbc1c732ac725a57bd1964d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 21 Sep 2020 10:01:02 +0300 Subject: [PATCH 258/757] gnu: supertuxkart: Sort inputs alphabetically. * gnu/packages/games.scm (supertuxkart)[inputs]: Sort alphabetically. --- gnu/packages/games.scm | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index d04f702b34..d54a3bd1a9 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3499,23 +3499,23 @@ This game is based on the GPL version of the famous game TuxRacer.") ;; FIXME: needs libopenglrecorder "-DBUILD_RECORDER=0"))) (inputs - `(("glew" ,glew) - ("sdl2" ,sdl2) - ("zlib" ,zlib) - ("openal" ,openal) - ("libvorbis" ,libvorbis) + `(("curl" ,curl) ("freetype" ,freetype) ("fribidi" ,fribidi) + ("glew" ,glew) ("harfbuzz" ,harfbuzz) - ("mesa" ,mesa) + ("libvorbis" ,libvorbis) ("libx11" ,libx11) ("libxrandr" ,libxrandr) - ("curl" ,curl) + ("mesa" ,mesa) + ("openal" ,openal) + ("sdl2" ,sdl2) + ("zlib" ,zlib) ;; The following input is needed to build the bundled and modified ;; version of irrlicht. + ("enet" ,enet) ("libjpeg" ,libjpeg-turbo) - ("openssl" ,openssl) - ("enet" ,enet))) + ("openssl" ,openssl))) (native-inputs `(("pkg-config" ,pkg-config))) (home-page "https://supertuxkart.net/Main_Page") From 6453915cf7729203ef9552c13cb4528c6f4ed122 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 21 Sep 2020 10:11:17 +0200 Subject: [PATCH 259/757] build: shepherd: Check for container support. Fixes: . * gnu/build/shepherd.scm (fork+exec-command/container): Check if containers are supported before joining PID namespaces. --- gnu/build/shepherd.scm | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/gnu/build/shepherd.scm b/gnu/build/shepherd.scm index 65141bd60f..91646288d5 100644 --- a/gnu/build/shepherd.scm +++ b/gnu/build/shepherd.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017, 2018, 2019, 2020 Ludovic Courtès +;;; Copyright © 2020 Mathieu Othacehe ;;; ;;; This file is part of GNU Guix. ;;; @@ -196,11 +197,16 @@ namespace, in addition to essential bind-mounts such /proc." #:allow-other-keys #:rest args) "This is a variant of 'fork+exec-command' procedure, that joins the -namespaces of process PID beforehand." - (container-excursion* pid - (lambda () - (apply fork+exec-command command - (strip-keyword-arguments '(#:pid) args))))) +namespaces of process PID beforehand. If there is no support for containers, +on Hurd systems for instance, fallback to direct forking." + (let ((container-support? + (file-exists? "/proc/self/ns")) + (fork-proc (lambda () + (apply fork+exec-command command + (strip-keyword-arguments '(#:pid) args))))) + (if container-support? + (container-excursion* pid fork-proc) + (fork-proc)))) ;; Local Variables: ;; eval: (put 'container-excursion* 'scheme-indent-function 1) From 1a0da8b4f38c11b70acbc641068d8e01144b8180 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 21 Sep 2020 10:48:16 +0200 Subject: [PATCH 260/757] services: base: Improve container related comments. * gnu/services/base.scm (guix-shepherd-service): Clarify the usage of a container for guix-daemon. --- gnu/services/base.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index d560ad5a13..bef4eef241 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1570,6 +1570,9 @@ proxy of 'guix-daemon'...~%") ;; the 'set-http-proxy' action. (or (getenv "http_proxy") #$http-proxy)) + ;; Start the guix-daemon from a container, when supported, + ;; to solve an installation issue. See the comment below for + ;; more details. (fork+exec-command/container (cons* #$(file-append guix "/bin/guix-daemon") "--build-users-group" #$build-group @@ -1600,6 +1603,8 @@ proxy of 'guix-daemon'...~%") ;; operate from within the same MNT namespace as the ;; installation container. In that case only, enter the ;; namespace of the process PID passed as start argument. + ;; Otherwise, for symmetry purposes enter the caller + ;; namespaces which is a no-op. #:pid (match args ((pid) (string->number pid)) (else (getpid))) From 42a3db8cb795a9ef136e217902df6bd8e4c3e2eb Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sun, 20 Sep 2020 17:34:00 -0400 Subject: [PATCH 261/757] gnu: Rename 'v' to 'vlang'. * gnu/packages/vlang.scm (v, vlang): Rename 'v' to 'vlang', keeping 'v' as a deprecated-package. --- gnu/packages/vlang.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vlang.scm b/gnu/packages/vlang.scm index d1296c1c2f..70133bb233 100644 --- a/gnu/packages/vlang.scm +++ b/gnu/packages/vlang.scm @@ -23,9 +23,9 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages)) -(define-public v +(define-public vlang (package - (name "v") + (name "vlang") (version "0.1.27") (source (origin @@ -111,3 +111,7 @@ "V is a systems programming language. It provides memory safety and thread safety guarantees with minimal abstraction.") (license license:expat))) + +(define-public v + ;; We used to provide 'vlang' under the name 'v'. + (deprecated-package "v" vlang)) From e6b6e834903f001d4f2ae9bf0511bf7953c0f80b Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sun, 20 Sep 2020 14:41:56 -0400 Subject: [PATCH 262/757] gnu: webkitgtk: Update to 2.30.0. * gnu/packages/webkit.scm (webkitgtk): Update to 2.30.0. [arguments]: Add "-DUSE_SYSTEMD=OFF" to the configure flags. --- gnu/packages/webkit.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index d3fee105ef..0801bf7fa9 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -224,14 +224,14 @@ acceleration in mind, leveraging common 3D graphics APIs for best performance.") (define-public webkitgtk (package (name "webkitgtk") - (version "2.28.4") + (version "2.30.0") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" "webkitgtk-" version ".tar.xz")) (sha256 (base32 - "0r4lkk21pny2g4mmsw0ds14m5hhjys1l47gvy59dfgihr7l546c2")) + "04axfmzsb9gnyqaz5v7ljapiycxnzwpiya1l9rhp4c1qsbrdpwya")) (patches (search-patches "webkitgtk-share-store.patch" "webkitgtk-bind-all-fonts.patch")))) (build-system cmake-build-system) @@ -242,6 +242,7 @@ acceleration in mind, leveraging common 3D graphics APIs for best performance.") #:configure-flags (list "-DPORT=GTK" "-DENABLE_GTKDOC=ON" ; No doc by default + "-DUSE_SYSTEMD=OFF" (string-append ; uses lib64 by default "-DLIB_INSTALL_DIR=" (assoc-ref %outputs "out") "/lib") From 921fad1a5adc3e0fc4fadc544f8994475f27436d Mon Sep 17 00:00:00 2001 From: Paul Garlick Date: Mon, 21 Sep 2020 11:12:00 +0100 Subject: [PATCH 263/757] gnu: texlive-microtype: Tweak description. * gnu/packages/tex.scm (texlive-microtype)[description]: Fill paragraph to standard width. --- gnu/packages/tex.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 3ac6e5e63f..f521c36b8e 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -7440,6 +7440,7 @@ spacing, hyphenatable letterspacing and the possibility to disable all or selected ligatures. These features may be applied to customisable sets of fonts. All micro-typographic aspects of the fonts can be configured in a straight-forward and flexible way. Settings for -various fonts are provided. An alternative package @code{letterspace}, -which also works with plain TeX, is included in the bundle.") +various fonts are provided. An alternative package +@code{letterspace}, which also works with plain TeX, is included in +the bundle.") (license license:lppl1.3c)))) From 87a13a5e302f64e3ab6c7494242375f96dc83d6a Mon Sep 17 00:00:00 2001 From: Jesse Dowell Date: Sat, 19 Sep 2020 12:08:27 -0400 Subject: [PATCH 264/757] gnu: docker: Synchronize docker dependencies with the current version of docker. * gnu/packages/docker.scm (docker-libnetwork): Update to 19.03-1.026aaba. [source]: Follow URI redirection. [arguments]: Adjust import-path accordingly. [home-page]: Same. * gnu/packages/networking.scm (go-sctp): Update to 0.0.0-2.6e2cb13. [arguments]: Skip test suite. Signed-off-by: Efraim Flashner --- gnu/packages/docker.scm | 22 ++++++++++++++-------- gnu/packages/networking.scm | 11 +++++++---- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm index bc7e02ec46..783e19db9b 100644 --- a/gnu/packages/docker.scm +++ b/gnu/packages/docker.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2019 Maxim Cournoyer ;;; Copyright © 2020 Michael Rohleder ;;; Copyright © 2020 Katherine Cox-Buday +;;; Copyright © 2020 Jesse Dowell ;;; ;;; This file is part of GNU Guix. ;;; @@ -48,6 +49,8 @@ #:use-module (gnu packages version-control) #:use-module (gnu packages virtualization)) +;; Note - when changing Docker versions it is important to update the versions +;; of several associated packages (docker-libnetwork and go-sctp). (define %docker-version "19.03.12") (define-public python-docker @@ -246,22 +249,25 @@ network attachments.") (define docker-libnetwork ;; There are no recent release for libnetwork, so choose the last commit of ;; the branch that Docker uses, as can be seen in the Docker source file - ;; 'hack/dockerfile/install/proxy.installer'. - (let ((commit "4725f2163fb214a6312f3beae5991f838ec36326") - (version "18.09") + ;; 'hack/dockerfile/install/proxy.installer'. NOTE - It is important that + ;; this version is kept in sync with the version of Docker being used. + ;; This commit is the "bump_19.03" branch, as mentioned in Docker's vendor.conf. + (let ((commit "026aabaa659832804b01754aaadd2c0f420c68b6") + (version (version-major+minor %docker-version)) (revision "1")) (package (name "docker-libnetwork") - (version (git-version version "1" commit)) + (version (git-version version revision commit)) (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/docker/libnetwork") + ;; Redirected from github.com/docker/libnetwork. + (url "https://github.com/moby/libnetwork") (commit commit))) (file-name (git-file-name name version)) (sha256 (base32 - "1zpnxki8qfzha6ljahpwd3vkzmjhsvkmf73w6crm4ilxxw5vnpfb")) + "0bli21vn5v7bssw3ydym4jfdjsldhb47fld88kng7d138wl70lkw")) ;; Delete bundled ("vendored") free software source code. (modules '((guix build utils))) (snippet '(begin @@ -269,8 +275,8 @@ network attachments.") #t)))) (build-system go-build-system) (arguments - `(#:import-path "github.com/docker/libnetwork/")) - (home-page "https://github.com/docker/libnetwork/") + `(#:import-path "github.com/moby/libnetwork/")) + (home-page "https://github.com/moby/libnetwork/") (synopsis "Networking for containers") (description "Libnetwork provides a native Go implementation for connecting containers. The goal of @code{libnetwork} is to deliver a robust diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 1c2e7cf979..89e47a6726 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -39,6 +39,7 @@ ;;; Copyright © 2020 Vincent Legoll ;;; Copyright © 2020 Brice Waegeneire ;;; Copyright © 2020 Jakub Kądziołka +;;; Copyright © 2020 Jesse Dowell ;;; ;;; This file is part of GNU Guix. ;;; @@ -1436,8 +1437,9 @@ handling network namespaces in Go.") (define-public go-sctp ;; docker-libnetwork-cmd-proxy requires this exact commit. - (let ((commit "07191f837fedd2f13d1ec7b5f885f0f3ec54b1cb") - (revision "1")) + ;; This commit is mentioned in docker-libnetwork-cmd-proxy's vendor.conf. + (let ((commit "6e2cb1366111dcf547c13531e3a263a067715847") + (revision "2")) (package (name "go-sctp") (version (git-version "0.0.0" revision commit)) @@ -1449,10 +1451,11 @@ handling network namespaces in Go.") (file-name (git-file-name name version)) (sha256 (base32 - "1mk9ncm10gwi5pn5wcw4skbyf4qg7n5qdf1mim4gf3mrckvi6g6h")))) + "1ba90fmpdwxa1ba4hrsjhi3gfy3pwmz7x8amw1p5dc9p5a7nnqrb")))) (build-system go-build-system) (arguments - `(#:import-path "github.com/ishidawataru/sctp")) + `(#:tests? #f ; Test suite is flakey. + #:import-path "github.com/ishidawataru/sctp")) (home-page "https://github.com/ishidawataru/sctp") (synopsis "SCTP library for the Go programming language") (description "This library provides methods for using the stream control From f0a09310e6ff2ed63770cb585c551ba94ce4a9d0 Mon Sep 17 00:00:00 2001 From: Jesse Dowell Date: Sat, 19 Sep 2020 12:40:38 -0400 Subject: [PATCH 265/757] services: docker: Fix enable-proxy? option. The userland proxy option does not properly disable the userland proxy when set to false. Docker defaults to enabling the userland proxy if the option is unset on the command line. * gnu/services/docker.scm (docker-shepherd-service): Properly handle the 'enable-proxy?' option. Signed-off-by: Efraim Flashner --- gnu/services/docker.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/services/docker.scm b/gnu/services/docker.scm index a4eccc7928..c7296d5b1b 100644 --- a/gnu/services/docker.scm +++ b/gnu/services/docker.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2020 Jakub Kądziołka ;;; Copyright © 2020 Maxim Cournoyer ;;; Copyright © 2020 Efraim Flashner +;;; Copyright © 2020 Jesse Dowell ;;; ;;; This file is part of GNU Guix. ;;; @@ -121,9 +122,11 @@ loop-back communications.") #$@(if debug? '("--debug" "--log-level=debug") '()) - (if #$enable-proxy? "--userland-proxy" "") - "--userland-proxy-path" (string-append #$proxy - "/bin/proxy") + #$@(if enable-proxy? + '("--userland-proxy=true" + (string-append + "--userland-proxy-path=" proxy "/bin/proxy")) + '("--userland-proxy=false")) (if #$enable-iptables? "--iptables" "--iptables=false")) From 90492a9f13b4b8eaa6025d5a18e0b130cf257dbe Mon Sep 17 00:00:00 2001 From: Jesse Dowell Date: Sat, 19 Sep 2020 12:34:47 -0400 Subject: [PATCH 266/757] gnu: docker: Compile with seccomp enabled. * gnu/packages/docker.scm (docker)[arguments]: Adjust custom 'configure phase to enable seccomp support. Signed-off-by: Efraim Flashner --- gnu/packages/docker.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm index 783e19db9b..e4fc88b8c0 100644 --- a/gnu/packages/docker.scm +++ b/gnu/packages/docker.scm @@ -520,6 +520,7 @@ built-in registry server of Docker.") #t)) (replace 'configure (lambda _ + (setenv "DOCKER_BUILDTAGS" "seccomp") (setenv "DOCKER_GITCOMMIT" (string-append "v" ,%docker-version)) (setenv "VERSION" (string-append ,%docker-version "-ce")) ;; Automatically use bundled dependencies. From 475e3768fc466f5cd826c2c7964072e10d9c9af1 Mon Sep 17 00:00:00 2001 From: Paul Garlick Date: Mon, 21 Sep 2020 12:44:23 +0100 Subject: [PATCH 267/757] gnu: Add texlive-caption. * gnu/packages/tex.scm (texlive-caption): New variable. --- gnu/packages/tex.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index f521c36b8e..8ecdbf140c 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -7444,3 +7444,27 @@ various fonts are provided. An alternative package @code{letterspace}, which also works with plain TeX, is included in the bundle.") (license license:lppl1.3c)))) + +(define-public texlive-caption + (let ((template (simple-texlive-package + "texlive-caption" + (list "/doc/latex/caption/" + "/tex/latex/caption/") + (base32 + "09gmh8yjj9f5zak8r18g87w9p5jn7flnvmlhxmvdq6992mbdc6hg") + #:trivial? #t))) + (package + (inherit template) + (home-page "http://www.ctan.org/pkg/caption") + (synopsis "Customising captions in floating environments") + (description "The @code{caption} package provides many ways to +customise the captions in floating environments like figure and table. +Facilities include rotating captions, sideways captions and continued +captions (for tables or figures that come in several parts). A list +of compatibility notes, for other packages, is provided in the +documentation. The package also provides the \"caption outside +float\" facility, in the same way that simpler packages like +@code{capt-ofcapt-of} do. The package supersedes @code{caption2}. +Packages @code{bicaption}, @code{ltcaption}, @code{newfloat}, +@code{subcaption} and @code{totalcount} are included in the bundle.") + (license license:lppl1.3+)))) From e04b90607ac903359c90c9bad1b67fb7ce2f0eb6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 21 Sep 2020 15:02:23 +0300 Subject: [PATCH 268/757] services: Docker: Fix typo in configuration. This is a follow-up to f0a09310e6ff2ed63770cb585c551ba94ce4a9d0. * gnu/services/docker.scm (docker-shepherd-service): Properly reference variables in service definition. --- gnu/services/docker.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/services/docker.scm b/gnu/services/docker.scm index c7296d5b1b..2f13c270ab 100644 --- a/gnu/services/docker.scm +++ b/gnu/services/docker.scm @@ -122,11 +122,11 @@ loop-back communications.") #$@(if debug? '("--debug" "--log-level=debug") '()) - #$@(if enable-proxy? - '("--userland-proxy=true" - (string-append - "--userland-proxy-path=" proxy "/bin/proxy")) - '("--userland-proxy=false")) + (if #$enable-proxy? + '("--userland-proxy=true" + (string-append + "--userland-proxy-path=" #$proxy "/bin/proxy")) + '("--userland-proxy=false")) (if #$enable-iptables? "--iptables" "--iptables=false")) From f23e439f9f89b8dbcc5bf76135842a1e49f8526a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Sep 2020 14:21:02 +0200 Subject: [PATCH 269/757] gnu: php: Disable unreliable test. * gnu/packages/php.scm (php)[arguments]: Delete bug73837.phpt. --- gnu/packages/php.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index 18fc9f1b2c..779b7eadcd 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -311,7 +311,11 @@ ;; ("ISO-8859-1"=>"UTF-8") unknown error. "ext/standard/tests/file/bug43008.phpt" ;; Table data not created in sqlite(?). - "ext/pdo_sqlite/tests/bug_42589.phpt")) + "ext/pdo_sqlite/tests/bug_42589.phpt" + + ;; This tests whether microseconds ‘differ enough’ and + ;; fails inconsistently on ‘fast’ machines. + "ext/date/tests/bug73837.phpt")) ;; Skip tests requiring network access. (setenv "SKIP_ONLINE_TESTS" "1") From 17d30d1f6e63054f3c9006ae110009d99156e7c8 Mon Sep 17 00:00:00 2001 From: "Boris A. Dekshteyn" Date: Sat, 19 Sep 2020 20:33:11 +1200 Subject: [PATCH 270/757] gnu: inkscape-1.0: Update to 1.0.1. * gnu/packages/inkscape.scm (inkscape-1.0): Update to 1.0.1. Signed-off-by: Efraim Flashner --- gnu/packages/inkscape.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/inkscape.scm b/gnu/packages/inkscape.scm index 85b0ba9fcf..4ac3cf3966 100644 --- a/gnu/packages/inkscape.scm +++ b/gnu/packages/inkscape.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017, 2020 Marius Bakke ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2020 Maxim Cournoyer +;;; Copyright © 2020 Boris A. Dekshteyn ;;; ;;; This file is part of GNU Guix. ;;; @@ -117,7 +118,7 @@ as the native format.") (define-public inkscape-1.0 (package (name "inkscape") - (version "1.0") + (version "1.0.1") (source (origin (method url-fetch) @@ -126,7 +127,7 @@ as the native format.") "inkscape-" version ".tar.xz")) (sha256 (base32 - "1fwl7yjkykqb86555k4fm24inhc40mrvxqwgl2v2vi9alv8j7hc9")) + "1hjp5nnyx2m3miji6q4lcb6zgbi498v641dc7apkqqvayknrb4ng")) (modules '((guix build utils) (ice-9 format))) (snippet From 635bf73d2f1b5e8bd913de4e673273a39830a7c2 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Sep 2020 20:28:35 +0200 Subject: [PATCH 271/757] gnu: sudo: Update to 1.9.3. * gnu/packages/admin.scm (sudo): Update to 1.9.3. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 5ab6cdb3e1..c73e4843eb 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1397,7 +1397,7 @@ system administrator.") (define-public sudo (package (name "sudo") - (version "1.9.2") + (version "1.9.3") (source (origin (method url-fetch) (uri @@ -1407,7 +1407,7 @@ system administrator.") version ".tar.gz"))) (sha256 (base32 - "05432672iilb7s52j9l9xzrlambb1wg3k7qvf5973i41y40x563w")) + "0dsq7xf55060cx88286h71l74fia76mf6gbw5j6fs59v7g68k60x")) (modules '((guix build utils))) (snippet '(begin From 1b8be80e5f41ffc484141b6925da9fb428179e64 Mon Sep 17 00:00:00 2001 From: Brendan Tildesley Date: Sat, 19 Sep 2020 15:59:47 +1000 Subject: [PATCH 272/757] gnu: metapixel: Fix typo in description. * gnu/packages/image-processing.scm (metapixel)[description]: Fix typo. Signed-off-by: Efraim Flashner --- gnu/packages/image-processing.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm index 9158e14938..2edf2e0cac 100644 --- a/gnu/packages/image-processing.scm +++ b/gnu/packages/image-processing.scm @@ -1011,7 +1011,7 @@ full-featured UI aimed at clinical researchers.") (description "Metapixel is a program for generating photomosaics. It can generate classical photomosaics, in which the source image is viewed as a matrix of equally sized rectangles for each of which a matching image is -substitued, as well as collage-style photomosaics, in which rectangular parts +substituted, as well as collage-style photomosaics, in which rectangular parts of the source image at arbitrary positions (i.e. not aligned to a matrix) are substituted by matching images.") (license license:gpl2)))) From a2b25890ee37c017bc77a6b923577f258fa3fba0 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Mon, 21 Sep 2020 19:50:08 +0100 Subject: [PATCH 273/757] gnu: samba: Update to 4.12.7 [security fixes]. Fixes CVE-2020-1472 with 4.12.7. Fixes CVE-2020-10730, CVE-2020-10745, CVE-2020-10760 and CVE-2020-14303 with 4.12.4. * gnu/packages/samba.org (samba): Update to 4.12.7. --- gnu/packages/samba.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 84e389340b..c04426c49c 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2018 Ricardo Wurmus ;;; Copyright © 2019 Rutger Helling +;;; Copyright © 2020 Pierre Langlois ;;; ;;; This file is part of GNU Guix. ;;; @@ -173,14 +174,14 @@ external dependencies.") (define-public samba (package (name "samba") - (version "4.12.3") + (version "4.12.7") (source (origin (method url-fetch) (uri (string-append "https://download.samba.org/pub/samba/stable/" "samba-" version ".tar.gz")) (sha256 - (base32 "09w7aap1cjc41ayhaksm1igc7p7gl40fad4a1l6q4ds9a2jbrb9z")) + (base32 "1lkgih0vrarf5zy6chspkwarqdylzwr63nxr3qjkpazrs86nlm9h")) (modules '((guix build utils))) (snippet '(begin From 9b65281de51bcb56714509524f5ae0731c9b96d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 14 Sep 2020 22:49:06 +0200 Subject: [PATCH 274/757] environment: '--link-profile' uses ~/.guix-profile for environment variables. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Before this patch, we had: $ guix environment -CP --ad-hoc coreutils [env]$ echo $PATH /gnu/store/…-profile/bin [env]$ echo $GUIX_ENVIRONMENT /gnu/store/…-profile After this patch: $ guix environment -CP --ad-hoc coreutils [env]$ echo $PATH /home/ludo/.guix-profile/bin [env]$ echo $GUIX_ENVIRONMENT /home/ludo/.guix-profile * guix/scripts/environment.scm (launch-environment/container): When LINK-PROFILE? is true, pass ~/.guix-profile as the second argument to 'launch-environment'. * tests/guix-environment-container.sh: Adjust test accordingly. * doc/guix.texi (Invoking guix environment): Update accordingly. --- doc/guix.texi | 5 +++-- guix/scripts/environment.scm | 6 +++++- tests/guix-environment-container.sh | 10 +++++++--- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index f7e2204b53..949551a163 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5420,8 +5420,9 @@ device. @item --link-profile @itemx -P For containers, link the environment profile to @file{~/.guix-profile} -within the container. This is equivalent to running the command -@samp{ln -s $GUIX_ENVIRONMENT ~/.guix-profile} within the container. +within the container and set @code{GUIX_ENVIRONMENT} to that. +This is equivalent to making @file{~/.guix-profile} a symlink to the +actual profile within the container. Linking will fail and abort the environment if the directory already exists, which will certainly be the case if @command{guix environment} was invoked in the user's home directory. diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm index ad50281eb2..e2e481dd02 100644 --- a/guix/scripts/environment.scm +++ b/guix/scripts/environment.scm @@ -564,7 +564,11 @@ WHILE-LIST." (primitive-exit/status ;; A container's environment is already purified, so no need to ;; request it be purified again. - (launch-environment command profile manifest #:pure? #f))) + (launch-environment command + (if link-profile? + (string-append home-dir "/.guix-profile") + profile) + manifest #:pure? #f))) #:guest-uid uid #:guest-gid gid #:namespaces (if network? diff --git a/tests/guix-environment-container.sh b/tests/guix-environment-container.sh index 45264d4978..040f32cce9 100644 --- a/tests/guix-environment-container.sh +++ b/tests/guix-environment-container.sh @@ -127,11 +127,15 @@ grep -e "$NIX_STORE_DIR/.*-bash" $tmpdir/mounts # bootstrap bash rm $tmpdir/mounts -# Make sure 'GUIX_ENVIRONMENT' is linked to '~/.guix-profile' when requested +# Make sure 'GUIX_ENVIRONMENT' is set to '~/.guix-profile' when requested # within a container. ( - linktest='(exit (string=? (getenv "GUIX_ENVIRONMENT") -(readlink (string-append (getenv "HOME") "/.guix-profile"))))' + linktest=' +(exit (and (string=? (getenv "GUIX_ENVIRONMENT") + (string-append (getenv "HOME") "/.guix-profile")) + (string-prefix? "'"$NIX_STORE_DIR"'" + (readlink (string-append (getenv "HOME") + "/.guix-profile")))))' cd "$tmpdir" \ && guix environment --bootstrap --container --link-profile \ From 74cb33c22818b25d1b9c6d576352fc8249832d34 Mon Sep 17 00:00:00 2001 From: zimoun Date: Tue, 15 Sep 2020 16:03:43 +0200 Subject: [PATCH 275/757] gnu: gdsl: Replace 'url-fetch' by 'git-fetch'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes . * gnu/packages/datastructures.scm (gdsl)[source]: Replace 'url-fetch' by 'git-fetch'. [home-page]: Update. Co-authored-by: Ludovic Courtès --- gnu/packages/datastructures.scm | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/gnu/packages/datastructures.scm b/gnu/packages/datastructures.scm index 3203f91608..cd4126b22d 100644 --- a/gnu/packages/datastructures.scm +++ b/gnu/packages/datastructures.scm @@ -37,14 +37,16 @@ (name "gdsl") (version "1.8") (source (origin - (method url-fetch) - (uri (string-append "http://download.gna.org/gdsl/" - "gdsl-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://example.org") ;only hosted on Software Heritage + (commit "6adb53be8b8f9f2e4bbfc92d357eedeefb4c7430"))) + (file-name (git-file-name name version)) (sha256 (base32 - "1v64jvlnj8jfpphphgjgb36p0kv50kwfyqncf0y12f16v8ydyiaw")))) + "0a52g12d9sf9hhcyvwfd7xdazj2a9i9jh97cnlqf2ymvwnvjk1g0")))) (build-system gnu-build-system) - (home-page "http://home.gna.org/gdsl/") + (home-page "https://web.archive.org/web/20170502005430/http://home.gna.org/gdsl/") (synopsis "Generic data structures library") (description "The Generic Data Structures Library (GDSL) is a collection of routines for generic data structures manipulation. It is a re-entrant From 620681534a2a6f0505cb7a3e1b66e6c138b28769 Mon Sep 17 00:00:00 2001 From: zimoun Date: Wed, 16 Sep 2020 00:17:29 +0200 Subject: [PATCH 276/757] guix: scripts: build: Mention 'PACKAGE' in '--with-source' option. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * guix/scripts/build.scm (show-transformation-options-help): Mention 'PACKAGE' in '--with-source' option. Co-authored-by: Ludovic Courtès --- guix/scripts/build.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm index 25418661b9..38e0516c95 100644 --- a/guix/scripts/build.scm +++ b/guix/scripts/build.scm @@ -427,7 +427,7 @@ a checkout of the Git repository at the given URL." (define (show-transformation-options-help) (display (G_ " - --with-source=SOURCE + --with-source=[PACKAGE=]SOURCE use SOURCE when building the corresponding package")) (display (G_ " --with-input=PACKAGE=REPLACEMENT From de8cc74749525aa4266137c25a38d46361dacb9b Mon Sep 17 00:00:00 2001 From: Konrad Hinsen Date: Wed, 16 Sep 2020 12:19:22 +0200 Subject: [PATCH 277/757] gnu: Add python-rnc2rng. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/python-xyz.scm (python-rnc2rng): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/python-xyz.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 085d88da57..004f07cec2 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -22019,3 +22019,30 @@ By default it uses the open Python vulnerability database Safety DB.") (description "pypandoc is a thin Python wrapper around pandoc and pandoc-citeproc.") (license license:expat))) + +(define-public python-rnc2rng + (package + (name "python-rnc2rng") + (version "2.6.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "rnc2rng" version)) + (sha256 + (base32 + "1kmp3iwxxyzjsd47j2sprd47ihhkwhb3yydih3af5bbfq0ibh1w8")))) + (build-system python-build-system) + (propagated-inputs + `(("python-rply" ,python-rply))) + (arguments + `(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "python" "test.py")))))) + (home-page "https://github.com/djc/rnc2rng") + (synopsis "Convert RELAX NG Compact to regular syntax") + (description + "This package provides the @command{rnc2rng} command-line tool as well as +a Python library to convert RELAX NG schemata in Compact syntax (rnc) to +equivalent schemata in the XML-based default RELAX NG syntax.") + (license license:expat))) From d076ddc560b61c77b63ae84059782cf2330893cc Mon Sep 17 00:00:00 2001 From: Konrad Hinsen Date: Wed, 16 Sep 2020 12:20:08 +0200 Subject: [PATCH 278/757] gnu: Add python-citeproc-py. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/python-xyz.scm (python-citeproc-py): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 004f07cec2..e14f4c79ee 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -22046,3 +22046,28 @@ and pandoc-citeproc.") a Python library to convert RELAX NG schemata in Compact syntax (rnc) to equivalent schemata in the XML-based default RELAX NG syntax.") (license license:expat))) + +(define-public python-citeproc-py + (package + (name "python-citeproc-py") + (version "0.5.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "citeproc-py" version)) + (sha256 + (base32 + "00aaff50jy4j0nakdzq9258z1gzrac9baarli2ymgspj88jg5968")))) + (build-system python-build-system) + (propagated-inputs + `(("python-lxml" ,python-lxml) + ("python-rnc2rng" ,python-rnc2rng))) + (home-page + "https://github.com/brechtm/citeproc-py") + (synopsis "Citations and bibliography formatter") + (description + "Citeproc-py is a CSL processor for Python. It aims to implement the +CSL 1.0.1 specification. citeproc-py can output styled citations and +bibliographies in a number of different output formats. Currently supported +are plain text, reStructuredText and HTML.") + (license license:bsd-2))) From 92951bf46c42021f6f6521839c9c4ff2f88b8386 Mon Sep 17 00:00:00 2001 From: Fulbert Date: Wed, 16 Sep 2020 18:10:56 +0200 Subject: [PATCH 279/757] bash completion: Complete file names after 'guix package -p'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * etc/completion/bash/guix (_guix_complete): Add _guix_is_dash_p. Signed-off-by: Ludovic Courtès --- etc/completion/bash/guix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix index 98d20484f7..aa217bd318 100644 --- a/etc/completion/bash/guix +++ b/etc/completion/bash/guix @@ -181,7 +181,7 @@ _guix_complete () *) if _guix_is_command "package" then - if _guix_is_dash_L || _guix_is_dash_m + if _guix_is_dash_L || _guix_is_dash_m || _guix_is_dash_p then _guix_complete_file elif _guix_is_removing From 6366e7cac5bf3b1a75c799f320cb91fa6b41b9a6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Sep 2020 11:13:14 +0300 Subject: [PATCH 280/757] gnu: Add rust-gettext-rs-0.5. * gnu/packages/crates-io.scm (rust-gettext-rs-0.5): New variable. (rust-gettext-rs-0.4): Inherit from rust-gettext-rs-0.5. --- gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++---- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 31f6e674f5..ce39a17c43 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -8986,10 +8986,10 @@ API library @code{gdi32}.") retrieving random data from system source.") (license (list license:expat license:asl2.0)))) -(define-public rust-gettext-rs-0.4 +(define-public rust-gettext-rs-0.5 (package (name "rust-gettext-rs") - (version "0.4.4") + (version "0.5.0") (source (origin (method url-fetch) @@ -8998,12 +8998,12 @@ retrieving random data from system source.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0z6fcsn1g3w9mlgfj6ln6qvqf8610w3zwvk6g062h657v114lifz")))) + "1qc9a63i54b9ad3jx951hn7xb6xf76c9f3hmi2cdy2m7rhczm58v")))) (build-system cargo-build-system) (arguments `(#:cargo-inputs (("rust-gettext-sys" ,rust-gettext-sys-0.19) - ("rust-locale-config" ,rust-locale-config-0.2)) + ("rust-locale-config" ,rust-locale-config-0.3)) #:phases (modify-phases %standard-phases (add-after 'configure 'use-system-gettext @@ -9018,6 +9018,32 @@ retrieving random data from system source.") (description "This package provides GNU Gettext FFI bindings for Rust.") (license license:expat))) +(define-public rust-gettext-rs-0.4 + (package + (inherit rust-gettext-rs-0.5) + (name "rust-gettext-rs") + (version "0.4.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "gettext-rs" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0z6fcsn1g3w9mlgfj6ln6qvqf8610w3zwvk6g062h657v114lifz")))) + (arguments + `(#:cargo-inputs + (("rust-gettext-sys" ,rust-gettext-sys-0.19) + ("rust-locale-config" ,rust-locale-config-0.2)) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'use-system-gettext + (lambda* (#:key inputs #:allow-other-keys) + (let ((gettext (assoc-ref inputs "gettext"))) + (setenv "GETTEXT_SYSTEM" gettext) + #t)))))))) + (define-public rust-gettext-sys-0.19 (package (name "rust-gettext-sys") From 50de4bfe208b36e8cac56eb9942730d88b1e20e0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Sep 2020 11:30:15 +0300 Subject: [PATCH 281/757] gnu: Add rust-cloudabi-0.1. * gnu/packages/crates-io.scm (rust-cloudabi-0.1): New variable. (rust-cloudabi-0.0): Inherit from rust-cloudabi-0.1. --- gnu/packages/crates-io.scm | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index ce39a17c43..6f5387c766 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -3552,10 +3552,10 @@ colorization.") pitfalls in Rust.") (license (list license:expat license:asl2.0)))) -(define-public rust-cloudabi-0.0 +(define-public rust-cloudabi-0.1 (package (name "rust-cloudabi") - (version "0.0.3") + (version "0.1.0") (source (origin (method url-fetch) @@ -3563,7 +3563,7 @@ pitfalls in Rust.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0kxcg83jlihy0phnd2g8c2c303px3l2p3pkjz357ll6llnd5pz6x")))) + "0rv4yf5jlldfkynzrw687s00f4x12ypw7axv71vawhy6h4i52i23")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -3575,6 +3575,24 @@ pitfalls in Rust.") "Low level interface to CloudABI. Contains all syscalls and related types.") (license license:bsd-2))) +(define-public rust-cloudabi-0.0 + (package + (inherit rust-cloudabi-0.1) + (name "rust-cloudabi") + (version "0.0.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "cloudabi" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "0kxcg83jlihy0phnd2g8c2c303px3l2p3pkjz357ll6llnd5pz6x")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-bitflags" ,rust-bitflags-1)))))) + (define-public rust-cloudflare-zlib-sys-0.2 (package (name "rust-cloudflare-zlib-sys") From 1ee22f1053963972440ad55ead69d4a4ceef02e5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Sep 2020 11:32:13 +0300 Subject: [PATCH 282/757] gnu: Add rust-scopeguard-1. * gnu/packages/crates-io.scm (rust-scopeguard-1): New variable. (rust-scopeguard-1.0): Inherit from rust-scopeguard-1. --- gnu/packages/crates-io.scm | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 6f5387c766..aa248258bf 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -22627,8 +22627,32 @@ library's old @code{scoped_thread_local!} macro for providing scoped access to (base32 "0a2bn9d2mb07c6l16sadijy4p540g498zddfxyiq4rsqpwrglbrk")))))) +(define-public rust-scopeguard-1 + (package + (name "rust-scopeguard") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "scopeguard" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "1kbqm85v43rq92vx7hfiay6pmcga03vrjbbfwqpyj3pwsg3b16nj")))) + (build-system cargo-build-system) + (home-page "https://github.com/bluss/scopeguard") + (synopsis "Scope guard which will run a closure even out of scope") + (description "This package provides a RAII scope guard that will run a +given closure when it goes out of scope, even if the code between panics +(assuming unwinding panic). Defines the macros @code{defer!}, +@code{defer_on_unwind!}, @code{defer_on_success!} as shorthands for guards +with one of the implemented strategies.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-scopeguard-1.0 (package + (inherit rust-scopeguard-1) (name "rust-scopeguard") (version "1.0.0") (source @@ -22639,17 +22663,7 @@ library's old @code{scoped_thread_local!} macro for providing scoped access to (sha256 (base32 "03aay84r1f6w87ckbpj6cc4rnsxkxcfs13n5ynxjia0qkgjiabml")))) - (build-system cargo-build-system) - (arguments '(#:skip-build? #t)) - (home-page "https://github.com/bluss/scopeguard") - (synopsis "Scope guard which will run a closure even out of scope") - (description "This package provides a RAII scope guard that will run a -given closure when it goes out of scope, even if the code between panics -(assuming unwinding panic). Defines the macros @code{defer!}, -@code{defer_on_unwind!}, @code{defer_on_success!} as shorthands for guards -with one of the implemented strategies.") - (license (list license:asl2.0 - license:expat)))) + (arguments '(#:skip-build? #t)))) (define-public rust-scopeguard-0.3 (package From 9ad3c86fe563da3967a9630e6ea5732df6a58727 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Sep 2020 11:35:21 +0300 Subject: [PATCH 283/757] gnu: rust-owning-ref-0.4: Update to 0.4.1. * gnu/packages/crates-io.scm (rust-owning-ref-0.4): Update to 0.4.1. --- gnu/packages/crates-io.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index aa248258bf..ba02406848 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -16514,7 +16514,7 @@ under its new name.") (define-public rust-owning-ref-0.4 (package (name "rust-owning-ref") - (version "0.4.0") + (version "0.4.1") (source (origin (method url-fetch) @@ -16522,7 +16522,7 @@ under its new name.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "04zgwy77lin8qz398s6g44467pd6kjhbrlqifkia5rkr47mbi929")))) + "1kjj9m28wjv452jw49p1mp3d8ql058x78v4bz00avr7rvsnmpxbg")))) (build-system cargo-build-system) (arguments `(#:cargo-inputs From b655f34eb4b0c43ee18eaf3b346c18fa6d9620f6 Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Thu, 17 Sep 2020 19:44:33 +0200 Subject: [PATCH 284/757] gnu: emacs-lice-el: Update to 0.2-2.482e58a. [[PGP Signed Part:No public key for 7C7AFFBEFEF2CB25 created at 2020-09-17T19:44:34+0200 using RSA]] Here is a rebased (to current master) patch. > From bc2163d6da160b58591f77f352cf4ea8543454e2 Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Sun, 6 Sep 2020 11:30:57 +0200 Subject: [PATCH] gnu: emacs-lice-el: Update to 0.2-2.482e58a. * gnu/packages/emacs-xyz.scm (emacs-lice-el): Update to 0.2-2.482e58a. [arguments]: Add phase 'patch-template-directory and 'install-templates. Signed-off-by: Nicolas Goaziou --- gnu/packages/emacs-xyz.scm | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 4634836b89..72fc185e10 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -16014,10 +16014,10 @@ Magit.") (license license:gpl3+))) (define-public emacs-lice-el - (let ((commit "4339929927c62bd636f89bb39ea999d18d269250")) + (let ((commit "482e58ab83fff86ed754b00be27b62a219597e7c")) (package (name "emacs-lice-el") - (version (git-version "0.2" "1" commit)) + (version (git-version "0.2" "2" commit)) (source (origin (method git-fetch) (uri (git-reference @@ -16026,8 +16026,26 @@ Magit.") (file-name (git-file-name name version)) (sha256 (base32 - "0879z761b7gajkhq176ps745xpdrivch349crransv8fnsc759yb")))) + "0yxkjyhfk8kpr8yqz54gdx6xwkj4s8bnbz60162jh12crj0bs5n7")))) (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-template-directory + (lambda* (#:key outputs #:allow-other-keys) + (chmod "lice.el" #o666) + (emacs-substitute-variables "lice.el" + ("lice:system-template-directory" + (string-append (assoc-ref outputs "out") + "/share/emacs-lice-el/template"))) + #t)) + (add-after 'install 'install-templates + (lambda* (#:key outputs #:allow-other-keys) + (copy-recursively + "template" + (string-append (assoc-ref outputs "out") + "/share/emacs-lice-el/template")) + #t))))) (home-page "https://github.com/buzztaiki/lice-el") (synopsis "License and header template for Emacs") (description "@code{lice.el} provides following features: From 69a5738796de88dbf63334dd76c952586b1852ae Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Mon, 21 Sep 2020 07:44:19 +0200 Subject: [PATCH 285/757] gnu: mkvtoolnix: Update to 50.0.0. * gnu/packages/video.scm (mkvtoolnix): Update to 50.0.0. [inputs]: Add pcre2. Signed-off-by: Mathieu Othacehe --- gnu/packages/video.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 78604628f1..e621492649 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -134,6 +134,7 @@ #:use-module (gnu packages ncurses) #:use-module (gnu packages networking) #:use-module (gnu packages ocr) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) #:use-module (gnu packages perl-web) @@ -878,14 +879,14 @@ H.264 (MPEG-4 AVC) video streams.") (define-public mkvtoolnix (package (name "mkvtoolnix") - (version "37.0.0") + (version "50.0.0") (source (origin (method url-fetch) (uri (string-append "https://mkvtoolnix.download/sources/" "mkvtoolnix-" version ".tar.xz")) (sha256 - (base32 "0r4d9318ymb9a0mkc0shi9p4kjy3m70s49v4f8dmjhvj63silhix")) + (base32 "09485qfbdirr9g536shglzdm271yipb1669r3dm3hxp46k0x59aq")) (modules '((guix build utils))) (snippet '(begin ;; Delete bundled libraries. @@ -911,6 +912,7 @@ H.264 (MPEG-4 AVC) video streams.") ("libogg" ,libogg) ("libvorbis" ,libvorbis) ("lzo" ,lzo) + ("pcre2" ,pcre2) ("pugixml" ,pugixml) ("qtbase" ,qtbase) ("qtmultimedia" ,qtmultimedia) From 1f2076757a043c8b0c0af3a6faf249c650756dfc Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Sat, 19 Sep 2020 19:14:50 -0300 Subject: [PATCH 286/757] gnu: Add blanket. * gnu/packages/task-management.scm (blanket): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/task-management.scm | 68 +++++++++++++++++++++++++++++++- 1 file changed, 67 insertions(+), 1 deletion(-) diff --git a/gnu/packages/task-management.scm b/gnu/packages/task-management.scm index 601a3616f7..3c0efe13e2 100644 --- a/gnu/packages/task-management.scm +++ b/gnu/packages/task-management.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Tomáš Čech +;;; Copyright © 2020 Vinicius Monego ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,11 +20,22 @@ (define-module (gnu packages task-management) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gstreamer) + #:use-module (gnu packages gtk) #:use-module (gnu packages linux) #:use-module (gnu packages lua) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages tls) #:use-module (guix download) - #:use-module (guix build-system cmake)) + #:use-module (guix git-download) + #:use-module (guix utils) + #:use-module (guix build-system cmake) + #:use-module (guix build-system meson)) (define-public taskwarrior (package @@ -59,3 +71,57 @@ Done time management method. It supports network synchronization, filtering and querying data, exposing task data in multiple formats to other tools.") (license license:expat))) + +(define-public blanket + (package + (name "blanket") + (version "0.3.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rafaelmardojai/blanket/") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "13xip9b2p2ai2jchkck71c849s2rlxzfvlbsgpraw9hswi0rk0jg")))) + (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t + #:tests? #f ;the "Validate appstream file" test fails + #:phases + (modify-phases %standard-phases + (add-after 'wrap 'wrap-libs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (gi-typelib-path (getenv "GI_TYPELIB_PATH")) + (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")) + (python-path (getenv "PYTHONPATH"))) + (wrap-program (string-append out "/bin/blanket") + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)) + `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)) + `("PYTHONPATH" ":" prefix (,python-path)))) + #t))))) + (native-inputs + `(("desktop-file-utils" ,desktop-file-utils) + ("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk+:bin" ,gtk+ "bin") + ("pkg-config" ,pkg-config))) + (inputs + `(("appstream-glib" ,appstream-glib) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gst-plugins-bad" ,gst-plugins-bad) + ("gst-plugins-good" ,gst-plugins-good) ;for ScaleTempo plugin + ("gtk+" ,gtk+) + ("libhandy" ,libhandy) + ("python-gst" ,python-gst) + ("python-pygobject" ,python-pygobject))) + (home-page "https://github.com/rafaelmardojai/blanket") + (synopsis "Ambient sound and noise player") + (description + "Blanket provides different ambient sounds and types of noise to listen +to with the goal of improving your focus and enhancing your productivity. +You can also use it to fall asleep in a noisy environment.") + (license license:gpl3+))) From 9485a2e5c6d0ff83f316d01934b29fb240c0b43a Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Sat, 19 Sep 2020 18:35:17 +0200 Subject: [PATCH 287/757] gnu: emacs-shx: Update to 1.5.0. * gnu/packages/emacs-xyz.scm (emacs-shx): Update to 1.5.0. [arguments]: Removed unneeded modify-phases. Signed-off-by: Mathieu Othacehe --- gnu/packages/emacs-xyz.scm | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 72fc185e10..0e217d8c88 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -4167,7 +4167,7 @@ the speedbar window.") (define-public emacs-shx (package (name "emacs-shx") - (version "1.4.0") + (version "1.5.0") (source (origin (method git-fetch) (uri (git-reference @@ -4175,15 +4175,10 @@ the speedbar window.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0p9b621rgy34r1hl9xfzxh4xpx9gpsr3n330ypfxhlr0s5754j73")))) + (base32 "1cb5w6p9gnfxgh8qp7yj2f5ibpk1b4b5af3ynldaaj6yfpa8hqzn")))) (build-system emacs-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - ;; A docstring provides examples of mapping hosts to programs in /bin. - ;; These examples are valid as-is. - (delete 'patch-el-files)) - #:tests? #t + `(#:tests? #t #:test-command '("emacs" "--batch" "--quiet" "--script" "test/script.el"))) From a87d1f337d1cbbc9b8ccd05c4e614f8895e191b6 Mon Sep 17 00:00:00 2001 From: Simon South Date: Sat, 19 Sep 2020 17:01:37 -0400 Subject: [PATCH 288/757] gnu: emacs-elpher: Update to 2.10.2. * gnu/packages/emacs-xyz.scm (emacs-elpher): Update to 2.10.2. Signed-off-by: Nicolas Goaziou --- 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 0e217d8c88..55331ce52e 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -21945,7 +21945,7 @@ it forcibly (define-public emacs-elpher (package (name "emacs-elpher") - (version "2.9.1") + (version "2.10.2") (source (origin (method git-fetch) @@ -21954,7 +21954,7 @@ it forcibly (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0vyqmv7dycmad1726yb6yizd21x3kkz5cj33mca11r8nh38f1qzp")))) + (base32 "0xqiisirpvw4ka9417pq4r73x937wl3qbf8cpn2i03akm8d58smd")))) (build-system emacs-build-system) (native-inputs `(("texinfo" ,texinfo))) From d27ec8db70ac2fb41789140a7955d4fa26c61666 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 22 Sep 2020 11:12:52 +0200 Subject: [PATCH 289/757] gnu: mafft: Use HTTPS home page URI. * gnu/packages/bioinformatics.scm (mafft)[home-page, license]: Use HTTPS URI. --- 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 71369affaf..4376897d37 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4568,7 +4568,7 @@ sequencing tag position and orientation.") ("gawk" ,gawk) ("grep" ,grep) ("coreutils" ,coreutils))) - (home-page "http://mafft.cbrc.jp/alignment/software/") + (home-page "https://mafft.cbrc.jp/alignment/software/") (synopsis "Multiple sequence alignment program") (description "MAFFT offers a range of multiple alignment methods for nucleotide and @@ -4576,7 +4576,7 @@ protein sequences. For instance, it offers L-INS-i (accurate; for alignment of <~200 sequences) and FFT-NS-2 (fast; for alignment of <~30,000 sequences).") (license (license:non-copyleft - "http://mafft.cbrc.jp/alignment/software/license.txt" + "https://mafft.cbrc.jp/alignment/software/license.txt" "BSD-3 with different formatting")))) (define-public mash From 0b21bf6245b36ea21d2eeaf2340a99aa4d5894db Mon Sep 17 00:00:00 2001 From: Jesse Dowell Date: Sat, 19 Sep 2020 10:45:50 -0400 Subject: [PATCH 290/757] gnu: Add emacs-html-to-hiccup. * gnu/packages/emacs-xyz.scm (emacs-html-to-hiccup): New variable. Signed-off-by: Nicolas Goaziou --- gnu/packages/emacs-xyz.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 55331ce52e..43add530af 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -24660,3 +24660,35 @@ publically-accessible HTTP server.") label references and citations in LaTeX. It is based on RefTeX, which is included with Emacs.") (license license:gpl3+))) + +(define-public emacs-html-to-hiccup + ;; Package has no release. Version is extracted from "Version:" keyword in + ;; main file. + (let ((commit "50a52e2b0d13d865187acdf775b8203d5003f2f1") + (revision "0")) + (package + (name "emacs-html-to-hiccup") + (version (git-version "1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/plexus/html-to-hiccup") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1qi092mw2n08v6yr0j6hlpx0pnlcnhxjqbsrlw9pn4yin6zk91yp")))) + (build-system emacs-build-system) + (propagated-inputs + `(("dash" ,emacs-dash) + ("s" ,emacs-s))) + (home-page "https://github.com/plexus/html-to-hiccup") + (synopsis "Turn HTML into Hiccup syntax") + (description + "This is an Emacs package that turns HTML into Hiccup syntax +which is a popular notation to use when doing Clojure/ClojureScript +web development.") + ;; There is a conflict between the repository official LICENSE + ;; file and the header of the main elisp file which indicates + ;; that it is licensed under the GPL version 3 or later. + (license (list license:mpl2.0 license:gpl3+))))) From fdd066833ee88da41fd5c4aa17b05f34e0618b00 Mon Sep 17 00:00:00 2001 From: Paul Garlick Date: Tue, 22 Sep 2020 12:44:25 +0100 Subject: [PATCH 291/757] gnu: texlive-latex-psnfss: Ensure that font definition files are installed. * gnu/packages/tex.scm (texlive-latex-psnfss): Use simple-texlive-package to install font definition files and documentation. --- gnu/packages/tex.scm | 42 +++++++++++++++++++----------------------- 1 file changed, 19 insertions(+), 23 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 8ecdbf140c..2609d5ae60 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3336,29 +3336,25 @@ language that is written in a Cyrillic alphabet.") (license license:lppl1.3c+))) (define-public texlive-latex-psnfss - (package - (name "texlive-latex-psnfss") - (version (number->string %texlive-revision)) - (source (origin - (method svn-fetch) - (uri (texlive-ref "latex" "psnfss")) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "1920dcq8613yzprasbg80fh4fcjcidvvl54wkx438nimyxcri7qz")))) - (build-system texlive-build-system) - (arguments '(#:tex-directory "latex/psnfss")) - (home-page "https://www.ctan.org/pkg/psnfss") - (synopsis "Font support for common PostScript fonts") - (description - "The PSNFSS collection includes a set of files that provide a complete -working setup of the LaTeX font selection scheme (NFSS2) for use with common -PostScript fonts. It covers the so-called \"Base\" fonts (which are built -into any Level 2 PostScript printing device and the Ghostscript interpreter) -and a number of free fonts. It provides font definition files, macros and -font metrics. The bundle as a whole is part of the LaTeX required set of -packages.") - (license license:lppl1.2+))) + (let ((template (simple-texlive-package + "texlive-latex-psnfss" + (list "/doc/latex/psnfss/" + "/tex/latex/psnfss/") + (base32 + "12p23in2nz1n08hw3m6kf5mcbn9zbhjsvdx0nsb7zcvywbljb9i2") + #:trivial? #t))) + (package + (inherit template) + (home-page "https://www.ctan.org/pkg/psnfss") + (synopsis "Font support for common PostScript fonts") + (description "The PSNFSS collection includes a set of files that +provide a complete working setup of the LaTeX font selection +scheme (NFSS2) for use with common PostScript fonts. It covers the +so-called \"Base\" fonts (which are built into any Level 2 PostScript +printing device and the Ghostscript interpreter) and a number of free +fonts. It provides font definition files, macros and font metrics. +The bundle as a whole is part of the LaTeX required set of packages.") + (license license:lppl1.2+)))) ;; For user profiles (define-public texlive-base From 3fef44ed6c21e5bbc0da60d8a81d3973851ee3a2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Sep 2020 16:30:25 +0300 Subject: [PATCH 292/757] Revert "gnu: texlive-latex-psnfss: Ensure that font definition files are installed." This reverts commit fdd066833ee88da41fd5c4aa17b05f34e0618b00. This commit causes over 4000 package rebuilds. --- gnu/packages/tex.scm | 42 +++++++++++++++++++++++------------------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 2609d5ae60..8ecdbf140c 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3336,25 +3336,29 @@ language that is written in a Cyrillic alphabet.") (license license:lppl1.3c+))) (define-public texlive-latex-psnfss - (let ((template (simple-texlive-package - "texlive-latex-psnfss" - (list "/doc/latex/psnfss/" - "/tex/latex/psnfss/") - (base32 - "12p23in2nz1n08hw3m6kf5mcbn9zbhjsvdx0nsb7zcvywbljb9i2") - #:trivial? #t))) - (package - (inherit template) - (home-page "https://www.ctan.org/pkg/psnfss") - (synopsis "Font support for common PostScript fonts") - (description "The PSNFSS collection includes a set of files that -provide a complete working setup of the LaTeX font selection -scheme (NFSS2) for use with common PostScript fonts. It covers the -so-called \"Base\" fonts (which are built into any Level 2 PostScript -printing device and the Ghostscript interpreter) and a number of free -fonts. It provides font definition files, macros and font metrics. -The bundle as a whole is part of the LaTeX required set of packages.") - (license license:lppl1.2+)))) + (package + (name "texlive-latex-psnfss") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "psnfss")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1920dcq8613yzprasbg80fh4fcjcidvvl54wkx438nimyxcri7qz")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/psnfss")) + (home-page "https://www.ctan.org/pkg/psnfss") + (synopsis "Font support for common PostScript fonts") + (description + "The PSNFSS collection includes a set of files that provide a complete +working setup of the LaTeX font selection scheme (NFSS2) for use with common +PostScript fonts. It covers the so-called \"Base\" fonts (which are built +into any Level 2 PostScript printing device and the Ghostscript interpreter) +and a number of free fonts. It provides font definition files, macros and +font metrics. The bundle as a whole is part of the LaTeX required set of +packages.") + (license license:lppl1.2+))) ;; For user profiles (define-public texlive-base From ce642b8f066292b2ef382bb23a245ea7dffcbb65 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 22 Sep 2020 16:59:09 +0200 Subject: [PATCH 293/757] gnu: sbcl-cl-webkit: Update to 20200922. * gnu/packages/lisp-xyz.scm (sbcl-cl-webkit): Update to 20200922. --- gnu/packages/lisp-xyz.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index c4ae02d429..ef08960497 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -3135,10 +3135,10 @@ is a library for creating graphical user interfaces.") (sbcl-package->cl-source-package sbcl-cl-cffi-gtk)) (define-public sbcl-cl-webkit - (let ((commit "dccf9d25de4e9a69f716f8ed9578e58963ead967")) + (let ((commit "41d962aa258282f0a0c45d778e473424ad72afdd")) (package (name "sbcl-cl-webkit") - (version (git-version "2.4" "5" commit)) + (version (git-version "2.4" "6" commit)) (source (origin (method git-fetch) @@ -3148,7 +3148,7 @@ is a library for creating graphical user interfaces.") (file-name (git-file-name "cl-webkit" version)) (sha256 (base32 - "0cn43ks2mgqkfnalq1p997z6q5pr1sfvz99gvvr5fp7r1acn7v5w")))) + "0hlr5zbi6zimbr8mk4difnzx8ijhvzf6cz0ih1hki6jy8amd4l7f")))) (build-system asdf-build-system/sbcl) (inputs `(("cffi" ,sbcl-cffi) From c7011ff850420fdbe1319b3d218bd362f2f9d618 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sun, 6 Sep 2020 21:48:00 -0400 Subject: [PATCH 294/757] gnu: icecat: Update to 78.3.0-guix0-preview1 [security-fixes]. Includes fixes for CVE-2020-15673, CVE-2020-15676, CVE-2020-15677, and CVE-2020-15678. * gnu/packages/gnuzilla.scm (mozilla-compare-locales): Update to RELEASE_8_0_0. (all-mozilla-locales): Update to newer versions. (mozilla-patch): Remove vestigial procedure. (%icecat-version, %icecat-build-id): Update to 78.3.0-guix0-preview1. (icecat-source): Update 'upstream-icecat-base-version', 'gnuzilla-commit', and hashes. Reverse order of makeicecat-patch and gnuzilla-fixes-patch. (icecat)[inputs]: Remove libogg, libvorbis, libvpx, icu4c, sqlite, startup-notification, and zlib. Add several "UNBUNDLE-ME!" comments. [native-inputs]: Update 'rust' and 'cargo' dependencies to version 1.41. Update 'rust-cbindgen' dependency to version 0.14. Update 'node' dependency to 10.22. [arguments]: Change --enable-default-toolkit value to "cairo-gtk3-wayland". Change --with-unsigned-addon-scopes value to "app,system". Add "--allow-addon-sideload". Remove "--enable-startup-notification" and "--disable-gconf". Comment out "--with-system-zlib", "--with-system-bz2", and "--with-system-icu". : In the 'remove-bundled-libaries' phase, remove "modules/zlib" from the list of directories to delete. Update the 'patch-cargo-checksums' phase to update more modules. (mozilla-68-compare-locales, all-mozilla-68-locales, %icecat-68-version) (icecat-68-source): New variables preserving the previous icecat 68 source. (icedove)[source]: Use 'icecat-68-source'. * gnu/packages/patches/icecat-makeicecat.patch: Adapt to IceCat 78. * gnu/packages/patches/icecat-68-makeicecat.patch: New file containing the previous 'icecat-makeicecat.patch'. * gnu/local.mk: Add 'icecat-68-makeicecat.patch'. --- gnu/local.mk | 1 + gnu/packages/gnuzilla.scm | 583 +++++++++++++----- .../patches/icecat-68-makeicecat.patch | 110 ++++ gnu/packages/patches/icecat-makeicecat.patch | 14 +- 4 files changed, 555 insertions(+), 153 deletions(-) create mode 100644 gnu/packages/patches/icecat-68-makeicecat.patch diff --git a/gnu/local.mk b/gnu/local.mk index ba7c7f373d..34d950b3c2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1134,6 +1134,7 @@ dist_patch_DATA = \ %D%/packages/patches/hurd-xattr.patch \ %D%/packages/patches/hplip-remove-imageprocessor.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \ + %D%/packages/patches/icecat-68-makeicecat.patch \ %D%/packages/patches/icecat-makeicecat.patch \ %D%/packages/patches/icecat-avoid-bundled-libraries.patch \ %D%/packages/patches/icecat-use-older-reveal-hidden-html.patch \ diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 7d6ed6b11a..85ad9678d0 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -418,9 +418,9 @@ in C/C++.") (method hg-fetch) (uri (hg-reference (url "https://hg.mozilla.org/l10n/compare-locales/") - (changeset "RELEASE_3_3_0"))) + (changeset "RELEASE_8_0_0"))) (file-name "mozilla-compare-locales") - (sha256 (base32 "0biazbq7vbi99b99rfn4szwyx032dkpi09c9z4zs6f1br0f86iy1")))) + (sha256 (base32 "0052wq92sg4i776x407b5838jx9h3phl9xy69m2q34f31n3gdyk2")))) (define (mozilla-locale locale changeset hash-string) (origin @@ -440,108 +440,102 @@ in C/C++.") (mozilla-locales ;; sha256 changeset locale ;;--------------------------------------------------------------------------- - ("0pybx6j2ycbrr1xmv0spv19sd8a1dyzcs8kf6pzn71w8y6kiagcf" "35959cf2343c" "ach") - ("0dixmkha738w7fkx20nx95xkfyrqb9vczpy6m03qnqfvb76xaxj5" "e8dc1010f909" "af") - ("124j09va25gwfxdzyfixrli0skxv53c7niagjyp7g3a3kcv2lbhc" "4c67f6b96a7b" "an") - ("0flgqll3xx0ym0zj0w9j2jw3fmhs6h9m4l5da6m0bpnk5ff80r06" "34cbea5f44a5" "ar") - ("0kdb1yqfbfz508f4p77z3p1v6fwy190vs5ipj58hgdixjgbxkqay" "b4790b27633c" "ast") - ("1vm5xw6wg12pygswd3p0qpkaxyryah6nif5n15chb4sb42c1gqcm" "96d341bf49d4" "az") - ("1j2qrrws51qij6haz5b77n5vzqhsxgs1ppqqw4mdrkacwvz4ciwh" "4adaede00646" "be") - ("0ydr8f9lbd51prgcbjb5yacb461j8va0s5bqfs0rnglkvhmk6ard" "d1140972aefe" "bg") - ("0wyw90zjp8kpd1gljng00in9wr2cf59ww6z002lgx5k4gibnqcfd" "2b3ce92c2310" "bn") - ("0kkq621h1qdmimyrmms9g5p70m54z2ddw4cd962nqbkrnmabq9vn" "426896350893" "br") - ("0vibhnb3cbpbgf10db04g6vm372kb9i27p0jkwif019f7qprswd8" "7463f339ce07" "bs") - ("1l8cn2fqfvx7bswzfy9vavv8cd32ha9ygdxxdbxi64wcgw0f80bf" "dab3f05125e4" "ca") - ("0fik17y8zyg9w82lq501ic73a53c0q9r8v4zgn9bnzgsygig8qpq" "ebb9d989275a" "cak") - ("0sj29v6144h39wzb4rvxph3cwgvs4gzkgpr0463d3fcs6jdi0kjs" "522352780348" "cs") - ("1nz8jlx62l69jcdi59hlk8jysm15sh3d1cxqginjmx7w351wsidm" "0791b954c333" "cy") - ("1vc01q1vlq26xm1vm1x0119jawxxp975p9k8ashmiwncl1bvqb48" "121f5f876f4c" "da") - ("1iqny61rg57banfbbskc2y3pr6d35fabnxmynv7vxm9jd86pndz3" "95fb3e99a2bc" "de") - ("06v9j8acx5h8za7m65v6qm0wjbkx6vm46m8sigcp69phyg3fjc96" "90e681b74587" "dsb") - ("0lbk90x2dxdbh63fycqxspx6jqq2zlzys6grg45balw8yyvzqrkz" "58ba4c13fd42" "el") - ("0c2ypvy0z8g78s5158v6h9khckq1xps34r5wbiiciix289m43dgl" "8953d8c98a30" "en-CA") - ("0z3riz3w2z6p710p90ridmwwam4snnz5mn90gd4jc1h2n7vc9mr0" "5a2b9bca3f52" "en-GB") - ("102gn3h4ap8c3x1p7vfc88vapkfiz6264y6byhxy1axxjk3x3a77" "e87cb1c61d6e" "eo") - ("148wj6wsx0aq7cpaxk8njj7cb1wfjr2m96dgxq6b3qcv781ldvjn" "5db15fdf95d5" "es-AR") - ("0r11d8vzvbyz17n371byvkrnszcv1zhr7rg64i58xra3y6d7is7n" "ce2ee0e51a92" "es-CL") - ("1xmqa8p7lpqvkgg879hfnmf6kxcpawjk8z31cdzfp1hrdlmxg8n7" "7346617620f3" "es-ES") - ("0jxv3jh2018lnybr9mzqrffvwmr87yab9bh8lxqjj294fxw1hrxm" "687f05eb0c58" "es-MX") - ("1rpgv7pajv4xldsn1xxsia5j72vn3x8zl5wmbzkyw56lvn9fckvf" "839a5029c496" "et") - ("0hxp4fr3y05rkpamdb1hlmybn6d3bv3rcawjm3axbpqxbyfdpfzc" "54e8d87230c9" "eu") - ("1y50knymnmcihw8bhvahicc386mjm6dx4hx0j6fv8sl23wzx2h9m" "c5ffca960f9c" "fa") - ("0pj9zgi0c3yl3myhvb5afiijayp2lqzhlk630ahxn5hgjgkz0lx7" "75c000a8538d" "ff") - ("199jg0zv7wp1cq0ik2hf84j99jx5vq2jwac0gaayvjzkh2z83jqr" "f11b2e689e7b" "fi") - ("1vxkiwwni7470ywy99arxxa56ljkhjrhxslsp1l1l61g6gdbbspr" "49ec4f791806" "fr") - ("0d8gwdcj0jpjv03nhjds8jrg86pg371xpylaibwri76wlyl7m54i" "faa761a5cfdc" "fy-NL") - ("0nipbxx11a2sjadzhbi88vgknw5hzr4nqy2722q3kc1212jbi754" "5bd9466f9f9d" "ga-IE") - ("0bay8mrm65cvmnvqpwqgzr0h3cb18ifzg5kbsbxcvdfm9xv0zi9g" "a4f6a47e82dd" "gd") - ("00kn5w3nnpw1pxg6hhrn9asf9hgpjd6ia4038iwzcqs68w887qcy" "6c2aa01ada4e" "gl") - ("0jj13i0ach85c975vaz2rr83mibs29ipssa7qsjkb0y2ch6xya1k" "c2d607e36cb5" "gn") - ("1nhqbgzilcb0pr7941dxkhg079bf8v7ldikp1s5xli34wf9sabm2" "f34465d6ac1c" "gu-IN") - ("11bh0541d996cfin1zy72l66753q94i4idgv2waf0h40h9g3z1bm" "c2ecb2762274" "he") - ("1lslji7hh5lx5ig1xgfjh4cdindsgh3n2a7qlvzwz96gda43lvv4" "94d2bb10ee03" "hi-IN") - ("1nx5yw00l25i3m3grdm29mi9mi7h0cy5qx02pypir754pk3hiwcc" "08df0d94edd5" "hr") - ("19yc9dk2pwqycynmx58d1ik6x4mnyfxscgr6sg676dpl613xd7nq" "21b614e77025" "hsb") - ("0l3z64jlx6b6ivk1b5hwqyx9hm1m5721ywnb2m4zmg3g9fw4vn7f" "f82cad7170af" "hu") - ("1sn0dxbbf2zwcpybwcw77qb4p0hf6fxapnsnn4avaab5g55dlgz4" "d94c30920396" "hy-AM") - ("0c92cqxrhv4317kirmhpjk7mrq44yn6fp3v6syxnhz7xwxnhshjm" "6a5f176b0626" "ia") - ("03gyg9gqsd6pwb9nydglhm46fi2wk2p2qygmhmrf8hnav3ba7n0r" "94e4302e0f85" "id") - ("0ky8aaps92mn56rvkwn0i13wg8av8hzi1fvr0ahqhjcpj5sfgdwq" "eca348a59888" "is") - ("01py0sfg7nljcsgpivryrvai4p4wzbcvhgc2ymr19r579nv1vw7g" "d541a6197359" "it") - ("0iv7vmj43njmi7g1gjzsv68ax4j502d2wnkvbfz1rx11lrqs7yw1" "a5ab3a1d95b7" "ja") - ("1sr9ccshcw6agbj4hbnpblxixb1jz0m36glas6f9ahxmi7m605si" "63763ffa5a94" "ja-JP-mac") - ("1as33pzcsdkynrj16dv7w642vl6plbhk650am4l5djwm64f2rgms" "aa83e8555ddc" "ka") - ("1jwaqb5qps3i5y9iw8l2hrwa0n8lfnx1k9x0p54y3jkh6p3q3fzc" "0e0e25c26247" "kab") - ("0cjfiwv0q5i8d7fpwb4m2w5ahq687dqjlwlicgpa443yi2zsxr4s" "33117723ceb1" "kk") - ("0k5b56cv39aaxf9r0p9c27f3fp6yq2ffd4w6qmd0ibpl69sm629d" "aff7b2a7825e" "km") - ("1a0zg96jgq4zn9cz0h2qwc0vv1fbkfzs5qrgabg62wqgz286jvvv" "ea91638cb1dd" "kn") - ("0jhmv2n3yx55r6fg3myg7j1c1nhsv25g016m6lh2j023xbr723gp" "88821009b5b3" "ko") - ("06bybgv4m4i7r9p0qld65j31vbrnljhsdj649dl93msv2r69ilif" "88685d5f07b3" "lij") - ("1bzjf8smw6ngi88j5g3fawrg54m8fifbhshwjbgkpj7rnrpjgh4w" "e046c7ffa7d0" "lt") - ("18dmzmpavijb7fwzffas0j5nb6byqp8h6ki7hhf6qb35diqgfq6n" "c520ef4f576c" "lv") - ("055zf7xj5h1h8mzxj1cjzhngpcvg2p5vs2dmffsa5zfprj02d0dm" "9e43723f18ad" "mk") - ("1496fbyyzcl075gzcd3xy50h9jyhnzgb544k1scji56yhyfajacb" "ce615fef92c1" "mr") - ("1wc1q8ksry181pvnysqsq4dhhsg5adw5vgqafmmq5sf6i2bwn2z0" "4fefe88cfaee" "ms") - ("0awf6mrdwdhy2yvxynssvp1zg1nc2fqbmg2d2bhjcib69zx944xw" "3987a06866fd" "my") - ("1hycvz7i4jd40hfs5abx6sgfdkafg0jhdgqih9b7lb08aqcl35pj" "2b3b8997d9a1" "nb-NO") - ("048z1ib46izwryyy8l1x71kq4775n7l2ilbskhsyrbxqryma13k8" "f25324281615" "ne-NP") - ("1qkxqpyr4la9bn1bqsgc2h9869arglh9n2kwpkq6722jzdbynkz2" "04c7d32c57f6" "nl") - ("08gnmdll55dbqj7qs63gq1kljbvg24nzns6q4m0av3sszsic0jv5" "5587520e5019" "nn-NO") - ("1yh2p4ipj5p2b7gh0xxj0n7ndvwn5bw2773ibrh7vz932mkzhhjn" "499386b02695" "oc") - ("0kjbnixjzv9hvyba4ll20gs76vx84pviy134fvpjp9lfjpnpib55" "31c01c325675" "pa-IN") - ("0g61imvr4639bbydyi0kwc1il7l1gzlfij4ywx7hdcmq2x6vgb9v" "fb5f3b8dea09" "pl") - ("13n68d7z94d7943m6fwl4kizbqm3wp82xz69vng4w9vyqlvv7d41" "9a541cbdc748" "pt-BR") - ("1j8afvrl1afmj2zixrp91rrhag5w4xw90raca1ic6mxyih9kvdi4" "edc959a685c2" "pt-PT") - ("0wf4a6q9nvcmam2g8ksbymjdnrz59pdr5nirfpjprfhifjmxx4nn" "d2699db715cd" "rm") - ("1k9qalir5pbh490w1mxyq31yhy9hbxsyrrk11hwlwlgn6syp9nvp" "b5460a9017bc" "ro") - ("1avy6wyfa5lbvy36wai6mwhhh6x1y8a0jyjk8hvjn52yfxj1gypk" "59ffa8ad047a" "ru") - ("1cakhm4jxcw1ij0l1vhxw74hsp5wg68i3319dkdncyyc5a2s1qv9" "8b3c8a7ebdfa" "si") - ("0s534r09bqdfvw3q17y9b1035kzzlafjv656v73mqhyz3fkffsx5" "cb39dc77980e" "sk") - ("1s58vgmnb9aiaiaqwwcivq3iyzpzj527w2aqh2nrh6xmaw7f43sr" "17d7969b1d9a" "sl") - ("147qm7x5z8rkf24jpqvkdlqg0fjz1l3zwnaxvkh9y2jpzv7m0x7z" "c55b0e9ff99d" "son") - ("0nn4r1rxi8cy7x9nmn5ljd8gcsn2rjl2ma2j7waxkafkm4rs6n20" "2bb3808072da" "sq") - ("0jsb01b94z7qbm59yaj56nb7yx7a6hpgw8v6nzwhbvmnmcsird4p" "c323c0d02d61" "sr") - ("1n7vv9y4sk3gig56rgfd2jk8jr2160grxk31bd1wkm7fvbndd259" "4220ce487cbc" "sv-SE") - ("06270mq7gajxfrsb8gqd25v2dac68ask5vvlh6kkkp3hrgy02vid" "6a1dbc2fe1d3" "ta") - ("10az7pd3npa7n8wq0qywvsj2qrx9592i2wffs3rnc1fviv1i1q0y" "028505b5ecd1" "te") - ("0yj0c3iyibb3jyypvyiyhbr9asxa48v0nq21kcf9gphi8fnyp5if" "e44d38b6a67b" "th") - ("1qc4nvhw834lx7p304fxma0fjdr4xfj4lf69dhh6biqz795lx45p" "1e0771d95708" "tr") - ("1g4y2yq5xp61ncy7c08j7fqqr1jc0m1hjxmbg5659wzif3b3dkg4" "e3c96943e98f" "uk") - ("1zbi28z1c3p5il7ndixyjsv4nrimzq36zjvlmq10am38ycqr9df8" "f35da1b02691" "ur") - ("1jrxjjj8k771y0wljqbadxdj4pasg0771jmg4l3hvpgs929i3j9g" "6fd2084b3efe" "uz") - ("1f8sqgxzgqmw6vzjv3f49lg43q09i3j62f471864vr71815agl8n" "33b5dfd0cd63" "vi") - ("0ssnsbxw3q5k88fa081gkn1mbqn4j7bm6vb7yvz6h44j214xkz9x" "2d87c0740715" "xh") - ("0kd3mrvvgczhsmw4rvpxxxc71bb469ayr8r4azf7gc0y5nmlm950" "a2b6625688d3" "zh-CN") - ("0qy1asyfplkyc89z3g3gfm7b32aka92350b3ayv9d9dcgwxmfdwz" "4d6e959a13d1" "zh-TW"))) - -(define (mozilla-patch file-name changeset hash) - "Return an origin for CHANGESET from the mozilla-esr60 repository." - (origin - (method url-fetch) - (uri (string-append "https://hg.mozilla.org/releases/mozilla-esr60/raw-rev/" - changeset)) - (sha256 (base32 hash)) - (file-name file-name))) + ("1q1p7nl97478hkf1msbbcdh98k6fn87xwqihbw8np00ll5gk9k4v" "97cf3c155484" "ach") + ("0sajpblp639l448xywx7xlybjr5dm0rfrzx511a8pa9wn7dma4mf" "46929b4dda4e" "af") + ("04s756aaf1yyli1dn1vfdjymgyjs1pz2n7jvz76j27x4nzdgss7l" "96ffd2b04ba3" "an") + ("16nw7slm7irsnjf81r6zl273kbzri8sdbimzgzxwm0vh6xr61rgs" "1c4231166ddf" "ar") + ("0i0qrj4j8zjv55cisbmr21dp8mz933hc9wkpn3abz5k5pn84gpry" "bc4384b8be78" "ast") + ("1r77mmwg9x1jfa7g5lqa31rgyfrnix1zj80ibn5rq9gyhhsdrwbd" "dd56aead51fa" "az") + ("1kzjpy5bnvps8di72ksynhbhc9bpw1ml6hvphm74z8dz55ai4c18" "9d2bff64ddfb" "be") + ("1fygvjgph3siknfm7l0fh9y4ava72z1rxkip1zgmcdgq7jz8wzpf" "3808f4fe4db6" "bg") + ("1x9nlqia441xh04rhkmkw6qrgpwnyqw0grrf5n2qw96939wnmgl7" "5ca8752ed8df" "bn") + ("18yyxqzab44bgqx7h052d5nxyhv0l5bidgr16z1b3ak2crsfyx9q" "4c5d30ca9bf2" "br") + ("11bschjz7pgsm4r1qan5l4s3nkzm5jb0kivpp186wd1xsjci5bjb" "cf2478a7eae1" "bs") + ("12bak64nl6qi092l55xv330vh38mfsicrrf4wi693nn7zqb3mbpw" "4aa2cc349211" "ca") + ("0p97d7pnxqs971rr5c57i6cw3mx1mp3iasa0xdmdk0zpz9pjd3s4" "806914072144" "ca-valencia") + ("1rligf98h9r16mw3r3n5jalzi74xn2dnh6hkiixp7s2bvhjicwa4" "db2163383129" "cak") + ("18y5j8ljh72mj2nbx0m64mi3fyjbwyx992i004sv3zvs4d4z18w4" "d1d09eedddde" "cs") + ("12i4m9q6f8sl8arm8ja4gs4sl9m59p3kddlqi68srpz9mk66rqxz" "1caf58c64227" "cy") + ("16wacsd23zd4j0yi6vbj033wylia8hlpswx949x5hy1h9817j4vn" "9ef3b56aa243" "da") + ("1ddxnqpfi1wnciwmzkvvjinb51h22bg70r0dn7db17q64p4271rk" "a050b0eaec0a" "de") + ("0gw5h52rw3bc2lwffnv845sjwwj22gmabchmpa1rw2y6087dc7zk" "613135cb0759" "dsb") + ("0v17da37w1kbs73i6xql4c9xng6rfachyylpy3w8hpibpvi7i30n" "903db7c76b31" "el") + ("0ky1nj4kp070nriw0igsa64l39plcv2365zl8lqpbydyp6clwc3m" "6bb74673e9aa" "en-CA") + ("15jck6si2l4h5lrs8zjx56y97p70njpi26nnq6xfmvj1dk5qb4g2" "c06bd83a9295" "en-GB") + ("1gc400n8j8qk70vdw7fkf4m9yviia35cmj6361pxnyvsjrgm4qvm" "ae0fda5114c4" "eo") + ("0y01lahdrd3krsh6nrr3iw36r2x4advh5qw54vf92w11l3aiyvfz" "0c294dc9ce40" "es-AR") + ("16jjbsfa62dxk36ccziv7nmh26c1s0b05960in6zs5nnfrv4yh35" "7c30b2981fb4" "es-CL") + ("0qh8c8f8dsv1v56n1mcpn84l39bpnqfl8v8iacq12zh322srr549" "ad1444f4f833" "es-ES") + ("1vh3hm5r4ch6mk3ymbk12b9rppwc75fmbi0i7cml82kxsi77bzw5" "0a26cdb23536" "es-MX") + ("159l92jxx48lgba1g8ig3mdzhwsf3jpg3nx1g9blq4majk5hqr6q" "65a38a830795" "et") + ("1ha8y1wbgb66dqm26x1q2xwygy7bblkjz40y9vh5d2qlpr3fn0av" "21e0930b221d" "eu") + ("0rq4pcw6klm0bbljm1wdfvna8bpa35cm47hh2s63i2xdax4scahf" "5a4bb020cf09" "fa") + ("1py2594gsvpgrxnplz278ffb7grsf384kzjskrl1zyps0jw8fb1x" "4a4f712cd4aa" "ff") + ("1dyd55ngsglp1w2gh0yaacwb0vsq23gdvnj76f2x6g39h1li9s0z" "9c51cd915e2b" "fi") + ("0kimwivpq6pr63jh1k9fszsv8bi8vns3scg76mmnvbhh2ca8q7wj" "4f9e24a696ee" "fr") + ("1sbbnnp12lgy5qan2kix02942830b1969bd7jxrv7piwqfch9i06" "9e21a0eeb5b1" "fy-NL") + ("0dsvvyfrzkx5h44gqgdci7arb8h4lq48w20cnr8fc7j17grvnkzz" "999a995bc09d" "ga-IE") + ("1487msbsgrfzmyijhf6a4wbqdjpd7b7ki9nwrjjjjlnbw0h0ljpb" "6a9ddcab3240" "gd") + ("1kzc4fwr18kgisdzba2acj1ag8mxbifqpk5p30jv68nmvqfsvl8d" "51eb5e352db9" "gl") + ("13gy3wn44kcxr7j3sbl69fp415875f4vb0gm91hx0fysqlvryhcs" "b9de1ffe3224" "gn") + ("0w5nvzpjn5vr35c1852rlff581vpy71nc096cz125852kyqkzkc3" "5b3307475ada" "gu-IN") + ("1ycakc4qpy9vcy50j3ricryjfnjr9v3a5ijj6bbfl4y6aks157fy" "c742df968ffd" "he") + ("1b2jf83c500wm5wcdnijq0b7y4m8n6271smq8pygahn5nq17f0gq" "1a3039a52b8a" "hi-IN") + ("19bbw8ix5m83cf4yarcmjl7jqa8xfabwqnh3nj6vi52rwvn7whk5" "8dc50e269ef3" "hr") + ("12rrsvgg6bb2h8fhni7jbx8pv983q8ym5fhfjim957n9q2yp5db6" "67e40f48dec7" "hsb") + ("0apyh713p3hrlj8041xwblcssahbmsqp9v9hbmb50ayf4z850kr1" "40073a597b1b" "hu") + ("0q0r076lq250d3vmnz9d92wj137c2v8i362c2avmkgp5zr3mcl0z" "2ea33335afdb" "hy-AM") + ("0qza33gdc1i9259dwd2f7vd78s0a6rg34aqdkhcn7f2l6ybw6xd6" "930041db15eb" "ia") + ("1211h0gp7gianh3qf76w04gfzk4n2bnyc9i8dviyz0vh4cjbx11m" "08811a49b41c" "id") + ("12lcr841g1j7453s7gb51vrvxmshx4ha3h1jx4vh8wr891xv8l6a" "2f7a8d31e0ba" "is") + ("1x585g0r2kcv0d3phnxx85bk5g0pi1yl0hwp4idv19yc9hslr04s" "188357cc04b4" "it") + ("09v35g9v7j6x0p1hggydm3a1rmq2fh4z7g1l88z3w5k6wq2nhj1b" "45cee0ba4771" "ja") + ("0prs3vycfvvaffjigdgyxiq41ak2rc34lnan5a6cwdqjgy7z450s" "d60a19d9bf17" "ja-JP-mac") + ("1nskzm8rgczrbgcxlzzq5zqdfd456ad0cylq27nf0wjiyq6kjzcm" "00cb00e78672" "ka") + ("0g6zznmhiam172nm7g2qzfpk415mna8kiihm73z2sdns64xb3ymg" "77a293a4bced" "kab") + ("17dld9lrym7rpvpvnkssivp4wx1f11zpk86wczbq1h52qgd70p55" "2c9b33a56d5d" "kk") + ("1nlzl8930c8ql3yq425wyqlxvq8arrjv20xpm5g7yfxd54av89ac" "9cddd42af05c" "km") + ("07hkrcdksvrqk816yimd036dlw15nc4sjk4gmw16ywbp093v0mqq" "e0c2969a8398" "kn") + ("08aqggvk3qbv5bzks9i1iba9akhkpm01d2c9k0zf41mpr2r5yfg2" "827567d0dafc" "ko") + ("0vagaiwy80bs1k3gkacshlzb5zchkcshx0ypwirvayc63sw4yl8l" "694b2a24e868" "lij") + ("1r43kp1kzahrbza0hiyavqplk9h08pzsb6rpjy79jr6l1iqb89sy" "d6728db7e060" "lt") + ("0sq2wbsj79xl7fi454k6q5xdhxyck1whjz315rv37vphqpx86b9b" "61e9b33f4d94" "lv") + ("0q8jxg1af22hs9wjdf0jd3bqk4rafxyzvsjl35k75am7l2y1fl3c" "9e482f6dd72c" "mk") + ("1zsfzjrzbc58d30a9yz12h5vphywgpw8xg6y6zn3677a785dvr20" "1fd2763336a4" "mr") + ("1rzygkkpn1a59daygd3hdaqph2np6sqvpgh68j0xr4il958ymnsm" "67ddab62dab4" "ms") + ("16jp6w5gizfxs7jvncg3ly13m59vqvh4rlmjd0q23m5g5ff9sklc" "3ed015b51bf3" "my") + ("1wfv023j67lb4iyf49fsknwm4z3xy0xqcf25b2nzanggxj26n01x" "d01801233a8f" "nb-NO") + ("1946vfia58vbjfippb5pfsskbjj95w7hb340smn6ry2vmza99mxp" "582defb08fb2" "ne-NP") + ("12w5ywh4c3s55y3zqc48cp1gcpwwjg444yfh1bghhhb9ni1xkh5i" "05f6359a29a6" "nl") + ("17jb076320cgkw1ypwmws2vjxsqlv2ww8aaisa3j334vbrw1m4zx" "50b41a1ddded" "nn-NO") + ("1y840j0v5zdgj94cbacy6j1snf44rynmzxq3yk8i26arcar62akl" "a6a138531a44" "oc") + ("0jq1hq4xhqxpa26r8pb1bgbaljgfkhn9l6p5pbnslkllpbh70q6l" "e70a3afaef25" "pa-IN") + ("1hih138skwy2gb8q10ngg6zalrk3aa3d549mg79gqzxbi5zy19fw" "e035f33389eb" "pl") + ("1hhif4hx4k351wm1bzykzycfzb5q8msxmiwh5r1cy32rh8wkxwhh" "54098495f37f" "pt-BR") + ("0gkjs12rxjml1m3mljskpz1gr6aph0c31nwpwdqybfg54w9qslib" "3fdf021f624e" "pt-PT") + ("0anyvwd9v6mr8y3ww33s6qnxkawqn5lz65vrxx3m3kzky63ai1xk" "794f9374eb87" "rm") + ("1p4drj25gsfv7lwgm5saazh38iqrh53952n8i4bmxpn0nadbm2n5" "71ce18bcf6cc" "ro") + ("17yssf4axd3zvncl4ka4wkfnwcn0z0arp3390vb9cps67na29p36" "3a9587227699" "ru") + ("0xk6rksspcw1222v4rgk5a6gzrpx64k29hm7p9qkqwd70s34yj46" "c020582a72ce" "si") + ("1ax5ibydyn7sj208r66zcxlcr8dxdqrw28vqyjif4jx583rp4lfp" "745a699b7f51" "sk") + ("13rin7hm1dv8g0hbcv8mp2hiwpk1k5bhzvkqpqajkkik4lx523mc" "8e437e2351ef" "sl") + ("0yh5jkl5zw3f7x1w2w6zfj3dyvcl4wj1zv4di7qsq2nl2yyizf7x" "2d99e2eff94f" "son") + ("0vzq7s27jsdbw5k59wfykysg1kd8w229ab5d4zjdf30l59igkahh" "69bbdf07bd80" "sq") + ("1mwivvs8vrk6vjq6i33kwlrlisra7dy35521ayps9p2rz2dll4rr" "215df5c5125c" "sr") + ("0g97yz1rg5cfflj8vvq3sqliyvm06x818z9yldfh5rjg1y6n9fjd" "8be00a1a50d4" "sv-SE") + ("0ii02jn3lh2i6d0s95whx9aj6w3x8axc7w1rlzj0lc2s9n52krz3" "170a84339dbe" "ta") + ("1ss7symad2crapxjqc0xhc0n17l79r5vf7flvkgk7npjky4vb7nv" "72a79a304f7f" "te") + ("11iqmg8zamgscnvs4n2xpw3g9azn6w38qs313wiwm86pyx6694ss" "8e91ce3064c5" "th") + ("1zgkvn9flb8by62ip9r3gmpgxwgkww1zhml5mwa0djq3ppfdgi1c" "0f914d0cda56" "tl") + ("1filkhdak6dbrd83q602x1qw1703nlm53nm9gcyab8s16gsx6ylz" "62ca6a8eaeba" "tr") + ("0cgagdy0ixprk3knczdmkqxkmx4ybmshhh0956kxbd0iab0dfcf6" "f110ccac4cde" "trs") + ("1f1ghk67zwnwc5x3nk82vcv94nf8glngkfya1hg074q3088sj9pa" "56c0102d5f1c" "uk") + ("0iyw1b2jjylkdwxv9sxvj4ikxl64sx612b2dvvmf1di8bw86w74r" "7d53bce5ae98" "ur") + ("1q83cp5pfgs8l03zirwi8r5qp8qyh4zvxdx1ilgaqqlyg42yql7c" "9b500e1a054d" "uz") + ("1d4nkybz2hk64ay04k965b9lc5nhhpmzcs5ww3b6q4n93rf9c2z7" "2a000025928a" "vi") + ("1cnrsfnyl3sw3sxsggmjwydvphb2diy0vzknvxdhpnvq3ln18hga" "74724087c25b" "xh") + ("1j6l66v1xw27z8w78mpsnmqgv8m277mf4r0hgqcrb4zx7xc2vqyy" "527e5e090608" "zh-CN") + ("1frwx35klpyz3sdwrkz7945ivb2dwaawhhyfnz4092h9hn7rc4ky" "6cd366ad2947" "zh-TW"))) (define* (computed-origin-method gexp-promise hash-algo hash #:optional (name "source") @@ -556,8 +550,8 @@ from forcing GEXP-PROMISE." #:system system #:guile-for-build guile))) -(define %icecat-version "68.12.0-guix0-preview1") -(define %icecat-build-id "20200825000000") ;must be of the form YYYYMMDDhhmmss +(define %icecat-version "78.3.0-guix0-preview1") +(define %icecat-build-id "20200921000000") ;must be of the form YYYYMMDDhhmmss ;; 'icecat-source' is a "computed" origin that generates an IceCat tarball ;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat' @@ -579,11 +573,11 @@ from forcing GEXP-PROMISE." "firefox-" upstream-firefox-version ".source.tar.xz")) (sha256 (base32 - "1k17pi4zh9hrvkzbw4rzzw879a15hpvwriylp75wl22rl7r2nsdf")))) + "1xvvizv84v4w3mq56vphccpwagga1i9lgbvj1l0cs763sqi3w9w5")))) - (upstream-icecat-base-version "68.12.0") ; maybe older than base-version + (upstream-icecat-base-version "78.3.0") ; maybe older than base-version ;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version)) - (gnuzilla-commit "15a7c3d991a670b6489d4f432b52a188358f4ca5") + (gnuzilla-commit "df6b2146f13fc90ad3c11136115ada077383ee2a") (gnuzilla-source (origin (method git-fetch) @@ -595,12 +589,12 @@ from forcing GEXP-PROMISE." (string-take gnuzilla-commit 8))) (sha256 (base32 - "0n7p067yay413iy0gzprz0xrdkcxj5f8ywhkcghhhzw1nwajckba")))) + "0nmkb2d6jpfnx081w8gdbs264j9rg9whq2gna9d4wazdpds1pyfr")))) - (makeicecat-patch - (local-file (search-patch "icecat-makeicecat.patch"))) (gnuzilla-fixes-patch - (local-file (search-patch "icecat-use-older-reveal-hidden-html.patch")))) + (local-file (search-patch "icecat-use-older-reveal-hidden-html.patch"))) + (makeicecat-patch + (local-file (search-patch "icecat-makeicecat.patch")))) (origin (method computed-origin-method) @@ -644,10 +638,10 @@ from forcing GEXP-PROMISE." (with-directory-excursion "/tmp/gnuzilla" (make-file-writable "makeicecat") - (invoke "patch" "--force" "--no-backup-if-mismatch" - "-p1" "--input" #+makeicecat-patch) (invoke "patch" "--force" "--no-backup-if-mismatch" "-p1" "--input" #+gnuzilla-fixes-patch) + (invoke "patch" "--force" "--no-backup-if-mismatch" + "-p1" "--input" #+makeicecat-patch) (patch-shebang "makeicecat") (substitute* "makeicecat" (("^FFMAJOR=(.*)" all ffmajor) @@ -738,16 +732,16 @@ from forcing GEXP-PROMISE." ("glib" ,glib) ("gtk+" ,gtk+) ("gtk+-2" ,gtk+-2) - ("graphite2" ,graphite2) + ;; UNBUNDLE-ME! ("graphite2" ,graphite2) ("pango" ,pango) ("freetype" ,freetype) - ("harfbuzz" ,harfbuzz) + ;; UNBUNDLE-ME! ("harfbuzz" ,harfbuzz) ("libcanberra" ,libcanberra) ("libgnome" ,libgnome) ("libjpeg-turbo" ,libjpeg-turbo) - ("libogg" ,libogg) - ;; ("libtheora" ,libtheora) ; wants theora-1.2, not yet released - ("libvorbis" ,libvorbis) + ;; UNBUNDLE-ME! ("libogg" ,libogg) + ;; UNBUNDLE-ME! ("libtheora" ,libtheora) ; wants theora-1.2, not yet released + ;; UNBUNDLE-ME! ("libvorbis" ,libvorbis) ("libxft" ,libxft) ("libevent" ,libevent) ("libxinerama" ,libxinerama) @@ -756,8 +750,8 @@ from forcing GEXP-PROMISE." ("libxt" ,libxt) ("libffi" ,libffi) ("ffmpeg" ,ffmpeg) - ("libvpx" ,libvpx) - ("icu4c" ,icu4c) + ;; UNBUNDLE-ME! ("libvpx" ,libvpx) + ;; UNBUNDLE-ME! ("icu4c" ,icu4c) ("pixman" ,pixman) ("pulseaudio" ,pulseaudio) ("mesa" ,mesa) @@ -767,11 +761,11 @@ from forcing GEXP-PROMISE." ;; UNBUNDLE-ME! ("nspr" ,nspr) ;; UNBUNDLE-ME! ("nss" ,nss) ("shared-mime-info" ,shared-mime-info) - ("sqlite" ,sqlite) - ("startup-notification" ,startup-notification) + ;; UNBUNDLE-ME! ("sqlite" ,sqlite) ("unzip" ,unzip) ("zip" ,zip) - ("zlib" ,zlib))) + ;; UNBUNDLE-ME! ("zlib" ,zlib) + )) (native-inputs ;; The following patches are specific to the Guix packaging of IceCat, ;; and therefore we prefer to leave them out of 'source', which should be @@ -787,13 +781,13 @@ from forcing GEXP-PROMISE." ("patch" ,(canonical-package patch)) - ("rust" ,rust) - ("cargo" ,rust "cargo") - ("rust-cbindgen" ,rust-cbindgen) + ("rust" ,rust-1.41) + ("cargo" ,rust-1.41 "cargo") + ("rust-cbindgen" ,rust-cbindgen-0.14) ("llvm" ,llvm) ("clang" ,clang) ("perl" ,perl) - ("node" ,node) + ("node" ,node-10.22) ("python" ,python) ("python-2" ,python-2) ("python2-pysqlite" ,python2-pysqlite) @@ -812,22 +806,21 @@ from forcing GEXP-PROMISE." ;; practice somehow. See . #:validate-runpath? #f - #:configure-flags `("--enable-default-toolkit=cairo-gtk3" + #:configure-flags `("--enable-default-toolkit=cairo-gtk3-wayland" "--with-distribution-id=org.gnu" - ;; Do not require addons in the global app - ;; directory to be signed by Mozilla. - "--with-unsigned-addon-scopes=app" + ;; Do not require addons in the global app or + ;; system directories to be signed by Mozilla. + "--with-unsigned-addon-scopes=app,system" + "--allow-addon-sideload" - "--enable-startup-notification" "--enable-pulseaudio" "--disable-tests" "--disable-updater" "--disable-crashreporter" "--disable-eme" - "--disable-gconf" ;; Building with debugging symbols takes ~5GiB, so ;; disable it. @@ -853,22 +846,22 @@ from forcing GEXP-PROMISE." "--enable-official-branding" ;; Avoid bundled libraries. - "--with-system-zlib" - "--with-system-bz2" "--with-system-jpeg" ; must be libjpeg-turbo + ;; UNBUNDLE-ME! "--with-system-zlib" + ;; UNBUNDLE-ME! "--with-system-bz2" ;; UNBUNDLE-ME! "--with-system-libevent" ;; UNBUNDLE-ME! "--with-system-ogg" ;; UNBUNDLE-ME! "--with-system-vorbis" ;; UNBUNDLE-ME! "--with-system-theora" ; wants theora-1.2, not yet released ;; UNBUNDLE-ME! "--with-system-libvpx" - "--with-system-icu" + ;; UNBUNDLE-ME! "--with-system-icu" ;; See ;; and related comments in the ;; 'remove-bundled-libraries' phase below. ;; UNBUNDLE-ME! "--with-system-nspr" ;; UNBUNDLE-ME! "--with-system-nss" - + ;; UNBUNDLE-ME! "--with-system-harfbuzz" ;; UNBUNDLE-ME! "--with-system-graphite2" "--enable-system-pixman" @@ -951,8 +944,8 @@ from forcing GEXP-PROMISE." ;; * speex ;; "modules/freetype2" - "modules/zlib" ;; "media/libjpeg" ; needed for now, because media/libjpeg/moz.build is referenced from config/external/moz.build + ;; UNBUNDLE-ME! "modules/zlib" ;; UNBUNDLE-ME! "ipc/chromium/src/third_party/libevent" ;; UNBUNDLE-ME! "media/libvpx" ;; UNBUNDLE-ME! "media/libogg" @@ -1017,10 +1010,31 @@ from forcing GEXP-PROMISE." (lambda _ (use-modules (guix build cargo-utils)) (let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855")) - (substitute* '("Cargo.lock" "gfx/wr/Cargo.lock") - (("(\"checksum .* = )\".*\"" all name) - (string-append name "\"" null-hash "\""))) - (generate-all-checksums "third_party/rust")) + (for-each (lambda (file) + (format #t "patching checksums in ~a~%" file) + (substitute* (find-files "." "Cargo.lock$") + (("^checksum = \".*\"") + (string-append "checksum = \"" null-hash "\"")))) + (find-files "." "Cargo.lock$")) + (for-each generate-all-checksums + '("services" + "js" + "third_party/rust" + "dom/media" + "dom/webauthn" + "toolkit" + "gfx" + "storage" + "modules" + "xpcom/rust" + "media" + "mozglue/static/rust" + "netwerk" + "remote" + "intl" + "servo" + "security/manager/ssl" + "build"))) #t)) (replace 'configure ;; configure does not work followed by both "SHELL=..." and @@ -1120,6 +1134,10 @@ from forcing GEXP-PROMISE." (libxscrnsaver-lib (string-append libxscrnsaver "/lib"))) (wrap-program (car (find-files lib "^icecat$")) `("XDG_DATA_DIRS" prefix (,gtk-share)) + ;; The following line is commented out because the icecat + ;; package on guix has been observed to be unstable when + ;; using wayland, and the bundled extensions stop working. + ;; `("MOZ_ENABLE_WAYLAND" = ("1")) `("LD_LIBRARY_PATH" prefix (,pulseaudio-lib ,mesa-lib ,libxscrnsaver-lib))) #t)))))) (home-page "https://www.gnu.org/software/gnuzilla/") @@ -1129,7 +1147,7 @@ from forcing GEXP-PROMISE." software, which does not recommend non-free plugins and addons. It also features built-in privacy-protecting features. -WARNING: IceCat 68 has not yet been released by the upstream IceCat project. +WARNING: IceCat 78 has not yet been released by the upstream IceCat project. This is a preview release, and does not currently meet the privacy-respecting standards of the IceCat project.") (license license:mpl2.0) ;and others, see toolkit/content/license.html @@ -1138,13 +1156,286 @@ standards of the IceCat project.") (cpe-name . "firefox_esr") (cpe-version . ,(first (string-split version #\-))))))) +(define mozilla-68-compare-locales + (origin + (method hg-fetch) + (uri (hg-reference + (url "https://hg.mozilla.org/l10n/compare-locales/") + (changeset "RELEASE_3_3_0"))) + (file-name "mozilla-68-compare-locales") + (sha256 (base32 "0biazbq7vbi99b99rfn4szwyx032dkpi09c9z4zs6f1br0f86iy1")))) + +(define all-mozilla-68-locales + (mozilla-locales + ;; sha256 changeset locale + ;;--------------------------------------------------------------------------- + ("0pybx6j2ycbrr1xmv0spv19sd8a1dyzcs8kf6pzn71w8y6kiagcf" "35959cf2343c" "ach") + ("0dixmkha738w7fkx20nx95xkfyrqb9vczpy6m03qnqfvb76xaxj5" "e8dc1010f909" "af") + ("124j09va25gwfxdzyfixrli0skxv53c7niagjyp7g3a3kcv2lbhc" "4c67f6b96a7b" "an") + ("0flgqll3xx0ym0zj0w9j2jw3fmhs6h9m4l5da6m0bpnk5ff80r06" "34cbea5f44a5" "ar") + ("0kdb1yqfbfz508f4p77z3p1v6fwy190vs5ipj58hgdixjgbxkqay" "b4790b27633c" "ast") + ("1vm5xw6wg12pygswd3p0qpkaxyryah6nif5n15chb4sb42c1gqcm" "96d341bf49d4" "az") + ("1j2qrrws51qij6haz5b77n5vzqhsxgs1ppqqw4mdrkacwvz4ciwh" "4adaede00646" "be") + ("0ydr8f9lbd51prgcbjb5yacb461j8va0s5bqfs0rnglkvhmk6ard" "d1140972aefe" "bg") + ("0wyw90zjp8kpd1gljng00in9wr2cf59ww6z002lgx5k4gibnqcfd" "2b3ce92c2310" "bn") + ("0kkq621h1qdmimyrmms9g5p70m54z2ddw4cd962nqbkrnmabq9vn" "426896350893" "br") + ("0vibhnb3cbpbgf10db04g6vm372kb9i27p0jkwif019f7qprswd8" "7463f339ce07" "bs") + ("1l8cn2fqfvx7bswzfy9vavv8cd32ha9ygdxxdbxi64wcgw0f80bf" "dab3f05125e4" "ca") + ("0fik17y8zyg9w82lq501ic73a53c0q9r8v4zgn9bnzgsygig8qpq" "ebb9d989275a" "cak") + ("0sj29v6144h39wzb4rvxph3cwgvs4gzkgpr0463d3fcs6jdi0kjs" "522352780348" "cs") + ("1nz8jlx62l69jcdi59hlk8jysm15sh3d1cxqginjmx7w351wsidm" "0791b954c333" "cy") + ("1vc01q1vlq26xm1vm1x0119jawxxp975p9k8ashmiwncl1bvqb48" "121f5f876f4c" "da") + ("1iqny61rg57banfbbskc2y3pr6d35fabnxmynv7vxm9jd86pndz3" "95fb3e99a2bc" "de") + ("06v9j8acx5h8za7m65v6qm0wjbkx6vm46m8sigcp69phyg3fjc96" "90e681b74587" "dsb") + ("0lbk90x2dxdbh63fycqxspx6jqq2zlzys6grg45balw8yyvzqrkz" "58ba4c13fd42" "el") + ("0c2ypvy0z8g78s5158v6h9khckq1xps34r5wbiiciix289m43dgl" "8953d8c98a30" "en-CA") + ("0z3riz3w2z6p710p90ridmwwam4snnz5mn90gd4jc1h2n7vc9mr0" "5a2b9bca3f52" "en-GB") + ("102gn3h4ap8c3x1p7vfc88vapkfiz6264y6byhxy1axxjk3x3a77" "e87cb1c61d6e" "eo") + ("148wj6wsx0aq7cpaxk8njj7cb1wfjr2m96dgxq6b3qcv781ldvjn" "5db15fdf95d5" "es-AR") + ("0r11d8vzvbyz17n371byvkrnszcv1zhr7rg64i58xra3y6d7is7n" "ce2ee0e51a92" "es-CL") + ("1xmqa8p7lpqvkgg879hfnmf6kxcpawjk8z31cdzfp1hrdlmxg8n7" "7346617620f3" "es-ES") + ("0jxv3jh2018lnybr9mzqrffvwmr87yab9bh8lxqjj294fxw1hrxm" "687f05eb0c58" "es-MX") + ("1rpgv7pajv4xldsn1xxsia5j72vn3x8zl5wmbzkyw56lvn9fckvf" "839a5029c496" "et") + ("0hxp4fr3y05rkpamdb1hlmybn6d3bv3rcawjm3axbpqxbyfdpfzc" "54e8d87230c9" "eu") + ("1y50knymnmcihw8bhvahicc386mjm6dx4hx0j6fv8sl23wzx2h9m" "c5ffca960f9c" "fa") + ("0pj9zgi0c3yl3myhvb5afiijayp2lqzhlk630ahxn5hgjgkz0lx7" "75c000a8538d" "ff") + ("199jg0zv7wp1cq0ik2hf84j99jx5vq2jwac0gaayvjzkh2z83jqr" "f11b2e689e7b" "fi") + ("1vxkiwwni7470ywy99arxxa56ljkhjrhxslsp1l1l61g6gdbbspr" "49ec4f791806" "fr") + ("0d8gwdcj0jpjv03nhjds8jrg86pg371xpylaibwri76wlyl7m54i" "faa761a5cfdc" "fy-NL") + ("0nipbxx11a2sjadzhbi88vgknw5hzr4nqy2722q3kc1212jbi754" "5bd9466f9f9d" "ga-IE") + ("0bay8mrm65cvmnvqpwqgzr0h3cb18ifzg5kbsbxcvdfm9xv0zi9g" "a4f6a47e82dd" "gd") + ("00kn5w3nnpw1pxg6hhrn9asf9hgpjd6ia4038iwzcqs68w887qcy" "6c2aa01ada4e" "gl") + ("0jj13i0ach85c975vaz2rr83mibs29ipssa7qsjkb0y2ch6xya1k" "c2d607e36cb5" "gn") + ("1nhqbgzilcb0pr7941dxkhg079bf8v7ldikp1s5xli34wf9sabm2" "f34465d6ac1c" "gu-IN") + ("11bh0541d996cfin1zy72l66753q94i4idgv2waf0h40h9g3z1bm" "c2ecb2762274" "he") + ("1lslji7hh5lx5ig1xgfjh4cdindsgh3n2a7qlvzwz96gda43lvv4" "94d2bb10ee03" "hi-IN") + ("1nx5yw00l25i3m3grdm29mi9mi7h0cy5qx02pypir754pk3hiwcc" "08df0d94edd5" "hr") + ("19yc9dk2pwqycynmx58d1ik6x4mnyfxscgr6sg676dpl613xd7nq" "21b614e77025" "hsb") + ("0l3z64jlx6b6ivk1b5hwqyx9hm1m5721ywnb2m4zmg3g9fw4vn7f" "f82cad7170af" "hu") + ("1sn0dxbbf2zwcpybwcw77qb4p0hf6fxapnsnn4avaab5g55dlgz4" "d94c30920396" "hy-AM") + ("0c92cqxrhv4317kirmhpjk7mrq44yn6fp3v6syxnhz7xwxnhshjm" "6a5f176b0626" "ia") + ("03gyg9gqsd6pwb9nydglhm46fi2wk2p2qygmhmrf8hnav3ba7n0r" "94e4302e0f85" "id") + ("0ky8aaps92mn56rvkwn0i13wg8av8hzi1fvr0ahqhjcpj5sfgdwq" "eca348a59888" "is") + ("01py0sfg7nljcsgpivryrvai4p4wzbcvhgc2ymr19r579nv1vw7g" "d541a6197359" "it") + ("0iv7vmj43njmi7g1gjzsv68ax4j502d2wnkvbfz1rx11lrqs7yw1" "a5ab3a1d95b7" "ja") + ("1sr9ccshcw6agbj4hbnpblxixb1jz0m36glas6f9ahxmi7m605si" "63763ffa5a94" "ja-JP-mac") + ("1as33pzcsdkynrj16dv7w642vl6plbhk650am4l5djwm64f2rgms" "aa83e8555ddc" "ka") + ("1jwaqb5qps3i5y9iw8l2hrwa0n8lfnx1k9x0p54y3jkh6p3q3fzc" "0e0e25c26247" "kab") + ("0cjfiwv0q5i8d7fpwb4m2w5ahq687dqjlwlicgpa443yi2zsxr4s" "33117723ceb1" "kk") + ("0k5b56cv39aaxf9r0p9c27f3fp6yq2ffd4w6qmd0ibpl69sm629d" "aff7b2a7825e" "km") + ("1a0zg96jgq4zn9cz0h2qwc0vv1fbkfzs5qrgabg62wqgz286jvvv" "ea91638cb1dd" "kn") + ("0jhmv2n3yx55r6fg3myg7j1c1nhsv25g016m6lh2j023xbr723gp" "88821009b5b3" "ko") + ("06bybgv4m4i7r9p0qld65j31vbrnljhsdj649dl93msv2r69ilif" "88685d5f07b3" "lij") + ("1bzjf8smw6ngi88j5g3fawrg54m8fifbhshwjbgkpj7rnrpjgh4w" "e046c7ffa7d0" "lt") + ("18dmzmpavijb7fwzffas0j5nb6byqp8h6ki7hhf6qb35diqgfq6n" "c520ef4f576c" "lv") + ("055zf7xj5h1h8mzxj1cjzhngpcvg2p5vs2dmffsa5zfprj02d0dm" "9e43723f18ad" "mk") + ("1496fbyyzcl075gzcd3xy50h9jyhnzgb544k1scji56yhyfajacb" "ce615fef92c1" "mr") + ("1wc1q8ksry181pvnysqsq4dhhsg5adw5vgqafmmq5sf6i2bwn2z0" "4fefe88cfaee" "ms") + ("0awf6mrdwdhy2yvxynssvp1zg1nc2fqbmg2d2bhjcib69zx944xw" "3987a06866fd" "my") + ("1hycvz7i4jd40hfs5abx6sgfdkafg0jhdgqih9b7lb08aqcl35pj" "2b3b8997d9a1" "nb-NO") + ("048z1ib46izwryyy8l1x71kq4775n7l2ilbskhsyrbxqryma13k8" "f25324281615" "ne-NP") + ("1qkxqpyr4la9bn1bqsgc2h9869arglh9n2kwpkq6722jzdbynkz2" "04c7d32c57f6" "nl") + ("08gnmdll55dbqj7qs63gq1kljbvg24nzns6q4m0av3sszsic0jv5" "5587520e5019" "nn-NO") + ("1yh2p4ipj5p2b7gh0xxj0n7ndvwn5bw2773ibrh7vz932mkzhhjn" "499386b02695" "oc") + ("0kjbnixjzv9hvyba4ll20gs76vx84pviy134fvpjp9lfjpnpib55" "31c01c325675" "pa-IN") + ("0g61imvr4639bbydyi0kwc1il7l1gzlfij4ywx7hdcmq2x6vgb9v" "fb5f3b8dea09" "pl") + ("13n68d7z94d7943m6fwl4kizbqm3wp82xz69vng4w9vyqlvv7d41" "9a541cbdc748" "pt-BR") + ("1j8afvrl1afmj2zixrp91rrhag5w4xw90raca1ic6mxyih9kvdi4" "edc959a685c2" "pt-PT") + ("0wf4a6q9nvcmam2g8ksbymjdnrz59pdr5nirfpjprfhifjmxx4nn" "d2699db715cd" "rm") + ("1k9qalir5pbh490w1mxyq31yhy9hbxsyrrk11hwlwlgn6syp9nvp" "b5460a9017bc" "ro") + ("1avy6wyfa5lbvy36wai6mwhhh6x1y8a0jyjk8hvjn52yfxj1gypk" "59ffa8ad047a" "ru") + ("1cakhm4jxcw1ij0l1vhxw74hsp5wg68i3319dkdncyyc5a2s1qv9" "8b3c8a7ebdfa" "si") + ("0s534r09bqdfvw3q17y9b1035kzzlafjv656v73mqhyz3fkffsx5" "cb39dc77980e" "sk") + ("1s58vgmnb9aiaiaqwwcivq3iyzpzj527w2aqh2nrh6xmaw7f43sr" "17d7969b1d9a" "sl") + ("147qm7x5z8rkf24jpqvkdlqg0fjz1l3zwnaxvkh9y2jpzv7m0x7z" "c55b0e9ff99d" "son") + ("0nn4r1rxi8cy7x9nmn5ljd8gcsn2rjl2ma2j7waxkafkm4rs6n20" "2bb3808072da" "sq") + ("0jsb01b94z7qbm59yaj56nb7yx7a6hpgw8v6nzwhbvmnmcsird4p" "c323c0d02d61" "sr") + ("1n7vv9y4sk3gig56rgfd2jk8jr2160grxk31bd1wkm7fvbndd259" "4220ce487cbc" "sv-SE") + ("06270mq7gajxfrsb8gqd25v2dac68ask5vvlh6kkkp3hrgy02vid" "6a1dbc2fe1d3" "ta") + ("10az7pd3npa7n8wq0qywvsj2qrx9592i2wffs3rnc1fviv1i1q0y" "028505b5ecd1" "te") + ("0yj0c3iyibb3jyypvyiyhbr9asxa48v0nq21kcf9gphi8fnyp5if" "e44d38b6a67b" "th") + ("1qc4nvhw834lx7p304fxma0fjdr4xfj4lf69dhh6biqz795lx45p" "1e0771d95708" "tr") + ("1g4y2yq5xp61ncy7c08j7fqqr1jc0m1hjxmbg5659wzif3b3dkg4" "e3c96943e98f" "uk") + ("1zbi28z1c3p5il7ndixyjsv4nrimzq36zjvlmq10am38ycqr9df8" "f35da1b02691" "ur") + ("1jrxjjj8k771y0wljqbadxdj4pasg0771jmg4l3hvpgs929i3j9g" "6fd2084b3efe" "uz") + ("1f8sqgxzgqmw6vzjv3f49lg43q09i3j62f471864vr71815agl8n" "33b5dfd0cd63" "vi") + ("0ssnsbxw3q5k88fa081gkn1mbqn4j7bm6vb7yvz6h44j214xkz9x" "2d87c0740715" "xh") + ("0kd3mrvvgczhsmw4rvpxxxc71bb469ayr8r4azf7gc0y5nmlm950" "a2b6625688d3" "zh-CN") + ("0qy1asyfplkyc89z3g3gfm7b32aka92350b3ayv9d9dcgwxmfdwz" "4d6e959a13d1" "zh-TW"))) + +(define %icecat-68-version "68.12.0-guix0-preview1") + +;; 'icecat-68-source' is a "computed" origin that generates an IceCat 68 +;; tarball from the corresponding upstream Firefox ESR tarball, using the +;; 'makeicecat' script from the upstream IceCat project. +(define icecat-68-source + (let* ((base-version (first (string-split %icecat-68-version #\-))) + + (major-version (first (string-split base-version #\.))) + (minor-version (second (string-split base-version #\.))) + (sub-version (third (string-split base-version #\.))) + + (upstream-firefox-version (string-append base-version "esr")) + (upstream-firefox-source + (origin + (method url-fetch) + (uri (string-append + "https://ftp.mozilla.org/pub/firefox/releases/" + upstream-firefox-version "/source/" + "firefox-" upstream-firefox-version ".source.tar.xz")) + (sha256 + (base32 + "1k17pi4zh9hrvkzbw4rzzw879a15hpvwriylp75wl22rl7r2nsdf")))) + + (upstream-icecat-base-version "68.12.0") ; maybe older than base-version + ;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version)) + (gnuzilla-commit "15a7c3d991a670b6489d4f432b52a188358f4ca5") + (gnuzilla-source + (origin + (method git-fetch) + (uri (git-reference + (url "git://git.savannah.gnu.org/gnuzilla.git") + (commit gnuzilla-commit))) + (file-name (git-file-name "gnuzilla" + ;;upstream-icecat-base-version + (string-take gnuzilla-commit 8))) + (sha256 + (base32 + "0n7p067yay413iy0gzprz0xrdkcxj5f8ywhkcghhhzw1nwajckba")))) + + (makeicecat-patch + (local-file (search-patch "icecat-68-makeicecat.patch"))) + (gnuzilla-fixes-patch + (local-file (search-patch "icecat-use-older-reveal-hidden-html.patch")))) + + (origin + (method computed-origin-method) + (file-name (string-append "icecat-" %icecat-68-version ".tar.xz")) + (sha256 #f) + (uri + (delay + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) + (let ((firefox-dir + (string-append "firefox-" #$base-version)) + (icecat-dir + (string-append "icecat-" #$%icecat-68-version))) + + (mkdir "/tmp/bin") + (set-path-environment-variable + "PATH" '("bin") + (list "/tmp" + #+(canonical-package bash) + #+(canonical-package coreutils) + #+(canonical-package findutils) + #+(canonical-package patch) + #+(canonical-package xz) + #+(canonical-package sed) + #+(canonical-package grep) + #+(canonical-package bzip2) + #+(canonical-package gzip) + #+(canonical-package tar) + #+rename)) + + (symlink #+(file-append rename "/bin/rename") + "/tmp/bin/prename") + + ;; We copy the gnuzilla source directory because it is + ;; read-only in 'gnuzilla-source', and the makeicecat script + ;; uses "cp -a" to copy parts of it and assumes that the + ;; copies will be writable. + (copy-recursively #+gnuzilla-source "/tmp/gnuzilla" + #:log (%make-void-port "w")) + + (with-directory-excursion "/tmp/gnuzilla" + (make-file-writable "makeicecat") + (invoke "patch" "--force" "--no-backup-if-mismatch" + "-p1" "--input" #+makeicecat-patch) + (invoke "patch" "--force" "--no-backup-if-mismatch" + "-p1" "--input" #+gnuzilla-fixes-patch) + (patch-shebang "makeicecat") + (substitute* "makeicecat" + (("^FFMAJOR=(.*)" all ffmajor) + (unless (string=? #$major-version + (string-trim-both ffmajor)) + ;; The makeicecat script cannot be expected to work + ;; properly on a different version of Firefox, even if + ;; no errors occur during execution. + (error "makeicecat major version mismatch")) + (string-append "FFMAJOR=" #$major-version "\n")) + (("^FFMINOR=.*") + (string-append "FFMINOR=" #$minor-version "\n")) + (("^FFSUB=.*") + (string-append "FFSUB=" #$sub-version "\n")) + (("^DATA=.*") + "DATA=/tmp/gnuzilla/data\n") + (("/bin/sed") + #+(file-append (canonical-package sed) "/bin/sed")))) + + (format #t "Unpacking upstream firefox tarball...~%") + (force-output) + (invoke "tar" "xf" #+upstream-firefox-source) + (rename-file firefox-dir icecat-dir) + + (with-directory-excursion icecat-dir + (format #t "Populating l10n directory...~%") + (force-output) + (mkdir "l10n") + (with-directory-excursion "l10n" + (for-each + (lambda (locale-dir) + (let ((locale + (string-drop (basename locale-dir) + (+ 32 ; length of hash + (string-length "-mozilla-locale-"))))) + (format #t " ~a~%" locale) + (force-output) + (copy-recursively locale-dir locale + #:log (%make-void-port "w")) + (for-each make-file-writable (find-files locale)) + (with-directory-excursion locale + (when (file-exists? ".hgtags") + (delete-file ".hgtags")) + (mkdir-p "browser/chrome/browser/preferences") + (call-with-output-file + "browser/chrome/browser/preferences/advanced-scripts.dtd" + (lambda (port) #f))))) + '#+all-mozilla-68-locales) + (copy-recursively #+mozilla-68-compare-locales + "compare-locales" + #:log (%make-void-port "w")) + (delete-file "compare-locales/.gitignore") + (delete-file "compare-locales/.hgignore") + (delete-file "compare-locales/.hgtags")) + + (format #t "Running makeicecat script...~%") + (force-output) + (invoke "bash" "/tmp/gnuzilla/makeicecat")) + + (format #t "Packing IceCat source tarball...~%") + (force-output) + (invoke "tar" "cfa" #$output + ;; Avoid non-determinism in the archive. We set the + ;; mtime of files in the archive to early 1980 because + ;; the build process fails if the mtime of source + ;; files is pre-1980, due to the creation of zip + ;; archives. + "--mtime=@315619200" ; 1980-01-02 UTC + "--owner=root:0" + "--group=root:0" + "--sort=name" + icecat-dir) + + #t)))))))) + ;; Update this together with icecat! (define %icedove-build-id "20200825000000") ;must be of the form YYYYMMDDhhmmss (define-public icedove (package (name "icedove") (version "68.12.0") - (source icecat-source) + (source icecat-68-source) (properties `((cpe-name . "thunderbird_esr"))) (build-system gnu-build-system) diff --git a/gnu/packages/patches/icecat-68-makeicecat.patch b/gnu/packages/patches/icecat-68-makeicecat.patch new file mode 100644 index 0000000000..265725ce36 --- /dev/null +++ b/gnu/packages/patches/icecat-68-makeicecat.patch @@ -0,0 +1,110 @@ +Make some of the changes needed to the 'makeicecat' script, to allow it to run +in a snippet without network access. After this patch is applied, some +additional changes will be made using 'substitute*'. + +diff --git a/makeicecat b/makeicecat +index 8be2362..48716f2 100755 +--- a/makeicecat ++++ b/makeicecat +@@ -31,55 +31,55 @@ SOURCEDIR=icecat-$FFVERSION + + DATA="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/data + +-mkdir -p output +-cd output ++# mkdir -p output ++# cd output + + ############################################################################### + # Retrieve FF source code + ############################################################################### + +-rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf +- +-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz +-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc +-gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 +-gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc +-echo -n ae692bf2a15908cacbb9d4c7ccf78525a87410ff3f13befedc1926f849bc27cc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - +- +-echo Extracting Firefox tarball +-tar -xf firefox-${FFVERSION}esr.source.tar.xz +- +-mv firefox-${FFVERSION} $SOURCEDIR ++# rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf ++# ++# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz ++# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc ++# gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 ++# gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc ++# echo -n ae692bf2a15908cacbb9d4c7ccf78525a87410ff3f13befedc1926f849bc27cc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - ++# ++# echo Extracting Firefox tarball ++# tar -xf firefox-${FFVERSION}esr.source.tar.xz ++# ++# mv firefox-${FFVERSION} $SOURCEDIR + + ############################################################################### + # Retrieve l10n + ############################################################################### + +-mkdir l10n +-cd l10n +-while read line;do +- line=$(echo $line |cut -d' ' -f1) +- #[ $line = "es-ES" ] || continue # To speed up testing +- [ $line = "en-US" ] && continue +- hg clone https://hg.mozilla.org/l10n-central/$line +- mkdir -p $line/browser/chrome/browser/preferences +- touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd +- rm -rf $line/.hg* +-done < ../$SOURCEDIR/browser/locales/shipped-locales +-cd .. +- +-mv l10n $SOURCEDIR +- +-hg clone http://hg.mozilla.org/l10n/compare-locales/ +-cd compare-locales/ +-hg checkout RELEASE_3_3_0 +-cd .. +-rm compare-locales/.hg* compare-locales/.git* -rf +-mv compare-locales $SOURCEDIR/l10n ++# mkdir l10n ++# cd l10n ++# while read line;do ++# line=$(echo $line |cut -d' ' -f1) ++# #[ $line = "es-ES" ] || continue # To speed up testing ++# [ $line = "en-US" ] && continue ++# hg clone https://hg.mozilla.org/l10n-central/$line ++# mkdir -p $line/browser/chrome/browser/preferences ++# touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd ++# rm -rf $line/.hg* ++# done < ../$SOURCEDIR/browser/locales/shipped-locales ++# cd .. ++# ++# mv l10n $SOURCEDIR ++# ++# hg clone http://hg.mozilla.org/l10n/compare-locales/ ++# cd compare-locales/ ++# hg checkout RELEASE_3_3_0 ++# cd .. ++# rm compare-locales/.hg* compare-locales/.git* -rf ++# mv compare-locales $SOURCEDIR/l10n + + ####################################################### + +-cd $SOURCEDIR ++# cd $SOURCEDIR + + shopt -s nullglob + for patch in $DATA/patches/*.patch; do +@@ -603,6 +603,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in + # Fix CVE-2012-3386 + /bin/sed 's/chmod a+w/chmod u+w/' -i ./js/src/ctypes/libffi/Makefile.in ./toolkit/crashreporter/google-breakpad/Makefile.in ./toolkit/crashreporter/google-breakpad/src/third_party/glog/Makefile.in || true + +-cd .. +-echo Packaging tarball +-tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR ++# cd .. ++# echo Packaging tarball ++# tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR diff --git a/gnu/packages/patches/icecat-makeicecat.patch b/gnu/packages/patches/icecat-makeicecat.patch index 265725ce36..8e1263085a 100644 --- a/gnu/packages/patches/icecat-makeicecat.patch +++ b/gnu/packages/patches/icecat-makeicecat.patch @@ -25,7 +25,7 @@ index 8be2362..48716f2 100755 -wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc -gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 -gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc --echo -n ae692bf2a15908cacbb9d4c7ccf78525a87410ff3f13befedc1926f849bc27cc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - +-echo -n 85273e22d6c31ccd000d72af47530cea3dc52f63f06e53701d9c6c82f68f7bf7 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - - -echo Extracting Firefox tarball -tar -xf firefox-${FFVERSION}esr.source.tar.xz @@ -37,7 +37,7 @@ index 8be2362..48716f2 100755 +# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc +# gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 +# gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc -+# echo -n ae692bf2a15908cacbb9d4c7ccf78525a87410ff3f13befedc1926f849bc27cc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - ++# echo -n 85273e22d6c31ccd000d72af47530cea3dc52f63f06e53701d9c6c82f68f7bf7 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - +# +# echo Extracting Firefox tarball +# tar -xf firefox-${FFVERSION}esr.source.tar.xz @@ -63,9 +63,9 @@ index 8be2362..48716f2 100755 - -mv l10n $SOURCEDIR - --hg clone http://hg.mozilla.org/l10n/compare-locales/ +-hg clone https://hg.mozilla.org/l10n/compare-locales/ -cd compare-locales/ --hg checkout RELEASE_3_3_0 +-hg checkout RELEASE_8_0_0 -cd .. -rm compare-locales/.hg* compare-locales/.git* -rf -mv compare-locales $SOURCEDIR/l10n @@ -84,9 +84,9 @@ index 8be2362..48716f2 100755 +# +# mv l10n $SOURCEDIR +# -+# hg clone http://hg.mozilla.org/l10n/compare-locales/ ++# hg clone https://hg.mozilla.org/l10n/compare-locales/ +# cd compare-locales/ -+# hg checkout RELEASE_3_3_0 ++# hg checkout RELEASE_8_0_0 +# cd .. +# rm compare-locales/.hg* compare-locales/.git* -rf +# mv compare-locales $SOURCEDIR/l10n @@ -98,7 +98,7 @@ index 8be2362..48716f2 100755 shopt -s nullglob for patch in $DATA/patches/*.patch; do -@@ -603,6 +603,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in +@@ -598,6 +598,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in # Fix CVE-2012-3386 /bin/sed 's/chmod a+w/chmod u+w/' -i ./js/src/ctypes/libffi/Makefile.in ./toolkit/crashreporter/google-breakpad/Makefile.in ./toolkit/crashreporter/google-breakpad/src/third_party/glog/Makefile.in || true From a13b522078a02b6df7f0494c0bd0ecec0e476e73 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 11 Sep 2020 17:26:58 +0200 Subject: [PATCH 295/757] gnu: python-uritemplate: Update to 3.0.1. * gnu/packages/python-web.scm (python-uritemplate): Update to 3.0.1. --- gnu/packages/python-web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index b5d4a62c7d..ef0c0ea728 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -3333,14 +3333,14 @@ authentication for Flask routes.") (define-public python-uritemplate (package (name "python-uritemplate") - (version "3.0.0") + (version "3.0.1") (source (origin (method url-fetch) (uri (pypi-uri "uritemplate" version)) (sha256 (base32 - "0781gm9g34wa0asc19dx81ng0nqq07igzv3bbvdqmz13pv7469n0")))) + "1bkwmgr0ia9gcn4bszs2xlvml79f0bi2s4a87xg22ky9rq8avy2s")))) (build-system python-build-system) (home-page "https://uritemplate.readthedocs.org") (synopsis "Library to deal with URI Templates") From 49150e8a0063030973c9a41e2d48daca7ad96599 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 18:58:30 +0200 Subject: [PATCH 296/757] gnu: Remove pootle. This package depends on Python 2 which is past end-of-life and not supported by newer versions of some of the dependencies. * gnu/packages/django.scm (pootle): Remove variable. --- gnu/packages/django.scm | 72 ----------------------------------------- 1 file changed, 72 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 2370de62f5..dd066b5d67 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1006,78 +1006,6 @@ static files.") (define-public python2-django-statici18n (package-with-python2 python-django-statici18n)) -(define-public pootle - (package - (name "pootle") - (version "2.8.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "Pootle" version ".tar.bz2")) - (sha256 - (base32 - "1ng8igq0alsqzasgxdh3fb23581anyzp121h9041pwdzzv98kn4m")))) - (build-system python-build-system) - (arguments - `(; pootle supports only python2. - #:python ,python-2 - ;; tests are not run and fail with "pytest_pootle/data/po/.tmp: No such - ;; file or directory". If we create this directory, - ;; pytest_pootle/data/po/terminology.po is missing. - #:tests? #f - #:phases - (modify-phases %standard-phases - (add-before 'build 'fix-requirements - (lambda _ - (substitute* "Pootle.egg-info/requires.txt" - (("1.7.3") "1.8.0") - (("2.0.0") "2.1.0")) - (substitute* "requirements/tests.txt" - (("==3.0.6") ">=3.0.6")) - (substitute* "requirements/base.txt" - (("1.7.3") "1.8.0") - (("2.0.0") "2.1.0"))))))) - (propagated-inputs - `(("django-allauth" ,python2-django-allauth) - ("django-assets" ,python2-django-assets) - ("django-bulk-update" ,python2-django-bulk-update) - ("django-contact-form" ,python2-django-contact-form) - ("django-contrib-comments" ,python2-django-contrib-comments) - ("django-overextends" ,python2-django-overextends) - ("django-redis" ,python2-django-redis) - ("django-rq" ,python2-django-rq) - ("django-sortedm2m" ,python2-django-sortedm2m) - ("django-statici18n" ,python2-django-statici18n) - ("babel" ,python2-babel) - ("cssmin" ,python2-cssmin) - ("diff-match-patch" ,python2-diff-match-patch) - ("dirsync" ,python2-dirsync) - ("elasticsearch" ,python2-elasticsearch) - ("jsonfield" ,python2-django-jsonfield) - ("lxml" ,python2-lxml) - ("dateutil" ,python2-dateutil) - ("levenshtein" ,python2-levenshtein) - ("mysqlclient" ,python2-mysqlclient) - ("psycopg2" ,python2-psycopg2) - ("pytz" ,python2-pytz) - ("rq" ,python2-rq) - ("scandir" ,python2-scandir) - ("stemming" ,python2-stemming) - ("translate-toolkit" ,python2-translate-toolkit))) - (native-inputs - `(("python2-pytest" ,python2-pytest) - ("python2-pytest-django" ,python2-pytest-django) - ("python2-pytest-catchlog" ,python2-pytest-catchlog) - ("python2-pytest-cov" ,python2-pytest-cov) - ("python2-factory-boy" ,python2-factory-boy))) - (home-page "https://pootle.translatehouse.org/") - (synopsis "Community localization server") - (description - "Pootle is an online translation and localization tool. It works to -lower the barrier of entry, providing tools to enable teams to work towards -higher quality while welcoming newcomers.") - (license license:gpl3+))) - (define-public python-django-tagging (package (name "python-django-tagging") From 23f6796880f5d8fd9f2ef9b881a2330b76675fdb Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 19:05:41 +0200 Subject: [PATCH 297/757] gnu: Remove python2-django-mailman3. This package depends on Python 2 which is past end-of-life and not supported by newer versions of Django. * gnu/packages/mail.scm (python2-django-mailman3): Remove variable. (python-django-mailman3)[properties]: Remove. --- gnu/packages/mail.scm | 41 ----------------------------------------- 1 file changed, 41 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 06b04d6024..c9edde65be 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -3049,47 +3049,6 @@ installation on systems where resources are limited. Its features include: (synopsis "Django library to help interaction with Mailman") (description "This package contains libraries and templates for Django-based interfaces -interacting with Mailman.") - (properties `((python2-variant . ,(delay python2-django-mailman3)))) - (license license:gpl3+))) - -;; This is the last version to support Python-2. -(define-public python2-django-mailman3 - (package - (name "python2-django-mailman3") - (version "1.1.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django-mailman3" version)) - (sha256 - (base32 - "1xjdkgfjwhgyrp5nxw65dcpcsr98ygj6856sp0bwkrmyxpd1xxk2")))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "django-admin" - "test" - "--settings=django_mailman3.tests.settings_test" - "django_mailman3")))) - #:python ,python-2)) - (inputs - `(("python2-django" ,python2-django))) - (propagated-inputs - `(("python2-requests" ,python2-requests) - ("python2-requests-oauthlib" ,python2-requests-oauthlib) - ("python2-openid" ,python2-openid) - ("python2-mailmanclient" ,python2-mailmanclient) - ("python2-django-allauth" ,python2-django-allauth) - ("python2-django-gravatar2" ,python2-django-gravatar2) - ("python2-pytz" ,python2-pytz))) - (home-page "https://gitlab.com/mailman/django-mailman3") - (synopsis "Django library for Mailman UIs") - (description - "Libraries and templates for Django-based interfaces interacting with Mailman.") (license license:gpl3+))) From b2eafc7d8d5fe9b6e0b6c18f670a53bd68314fa4 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 31 Aug 2020 14:06:26 +0200 Subject: [PATCH 298/757] gnu: Add python-asgiref. * gnu/packages/python-web.scm (python-asgiref): New public variable. --- gnu/packages/python-web.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index ef0c0ea728..048620a272 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -223,6 +223,36 @@ The package includes a module with full coverage of JSON RPC versions 1.0 and comes with a SOCKS proxy client.") (license (list license:expat license:bsd-2)))) +(define-public python-asgiref + (package + (name "python-asgiref") + (version "3.2.10") + (source (origin + (method url-fetch) + (uri (pypi-uri "asgiref" version)) + (sha256 + (base32 + "06kg3hnnvh7qg0w9amkvk1hd6n6bs055r04b7if6ipa7w4g92lby")))) + (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (setenv "PYTHONPATH" + (string-append "./build/lib:" + (getenv "PYTHONPATH"))) + (invoke "pytest" "-vv")))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-asyncio" ,python-pytest-asyncio))) + (home-page "https://github.com/django/asgiref/") + (synopsis "ASGI specs, helper code, and adapters") + (description + "ASGI is a standard for Python asynchronous web apps and servers to +communicate with each other, and positioned as an asynchronous successor to +WSGI. This package includes libraries for implementing ASGI servers.") + (license license:bsd-3))) + (define-public python-falcon (package (name "python-falcon") From ac3103e8f32005e694701f57fe75ea39df8765b7 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 00:20:28 +0200 Subject: [PATCH 299/757] gnu: python-django: Update to 3.1.1. * gnu/packages/django.scm (python-django): Update to 3.1.1. [arguments]: Remove #:modules. Rename set-tzdir phase to pre-check, and disable one test. Adjust PYTHONPATH patching to preserve all entries. Ensure the test suite runs sequentially. [propagated-inputs]: Add PYTHON-ASGIREF. (python-django-2.2): New public variable. * gnu/packages/mail.scm (python-hyperkitty)[propagated-inptus]: Change from PYTHON-DJANGO to PYTHON-DJANGO-2.2. * gnu/packages/patchutils.scm (patchwork)[propagated-inputs]: Likewise. --- gnu/packages/django.scm | 67 ++++++++++++++++++++++++++----------- gnu/packages/mail.scm | 2 +- gnu/packages/patchutils.scm | 2 +- 3 files changed, 50 insertions(+), 21 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index dd066b5d67..1cc7199eef 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2018 Vijayalakshmi Vedantham ;;; Copyright © 2019 Sam +;;; Copyright © 2020 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -45,43 +46,55 @@ (define-public python-django (package (name "python-django") - (version "1.11.29") + (version "3.1.1") (source (origin (method url-fetch) (uri (pypi-uri "Django" version)) (sha256 (base32 - "171jsi54fbnxzi2n3l4hkdmmwfnfrwacs180rw59l0bqcvxsw022")))) + "0bzwy58hrxbsh7szak1yfh7qvvfnpdpi8ay1x7d3pvbkm1f15j2r")))) (build-system python-build-system) (arguments - '(#:modules ((srfi srfi-1) - (guix build python-build-system) - (guix build utils)) - #:phases + '(#:phases (modify-phases %standard-phases - (add-before 'check 'set-tzdir + (add-before 'check 'pre-check (lambda* (#:key inputs #:allow-other-keys) ;; The test-suite tests timezone-dependent functions, thus tzdata ;; needs to be available. (setenv "TZDIR" (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo")) - #t)) - (replace 'check - (lambda* (#:key inputs #:allow-other-keys) - (setenv "PYTHONPATH" - (string-append ".:" (getenv "PYTHONPATH"))) + + ;; Disable test for incorrect timezone: it only raises the + ;; expected error when /usr/share/zoneinfo exists, even though + ;; the machinery gracefully falls back to TZDIR. According to + ;; django/conf/__init__.py, lack of /usr/share/zoneinfo is + ;; harmless, so just ignore this test. + (substitute* "tests/settings_tests/tests.py" + ((".*def test_incorrect_timezone.*" all) + (string-append " @unittest.skipIf(True, 'Disabled by Guix')\n" + all))) + + ;; Preserve the PYTHONPATH created by Guix when running the tests. (substitute* "tests/admin_scripts/tests.py" (("python_path = \\[") (string-append "python_path = ['" - (find (lambda (entry) - (string-prefix? - (assoc-ref inputs "python-pytz") - entry)) - (string-split (getenv "PYTHONPATH") - #\:)) + (string-join + (string-split (getenv "PYTHONPATH") #\:) + "','") "', "))) - (invoke "python" "tests/runtests.py")))))) + + #t)) + (replace 'check + (lambda _ + (with-directory-excursion "tests" + (setenv "PYTHONPATH" + (string-append "..:" (getenv "PYTHONPATH"))) + (invoke "python" "runtests.py" + ;; By default tests run in parallel, which may cause + ;; various race conditions. Run sequentially for + ;; consistent results. + "--parallel=1"))))))) ;; TODO: Install extras/django_bash_completion. (native-inputs `(("tzdata" ,tzdata-for-tests) @@ -99,6 +112,7 @@ ("python-tblib" ,python-tblib))) (propagated-inputs `(("python-argon2-cffi" ,python-argon2-cffi) + ("python-asgiref" ,python-asgiref) ("python-bcrypt" ,python-bcrypt) ("python-pytz" ,python-pytz))) (home-page "https://www.djangoproject.com/") @@ -125,6 +139,21 @@ to the @dfn{don't repeat yourself} (DRY) principle.") ;; required. ,@(package-native-inputs base)))))) +(define-public python-django-2.2 + (package + (inherit python-django) + (version "2.2.16") + (source (origin + (method url-fetch) + (uri (pypi-uri "Django" version)) + (sha256 + (base32 + "1535g2r322cl4x52fb0dmzlbg23539j2wx6027j54p22xvjlbkv2")))) + (native-inputs + `(;; XXX: In 2.2 and 3.0, selenium is required for the test suite. + ("python-selenium" ,python-selenium) + ,@(package-native-inputs python-django))))) + (define-public python-django-extensions (package (name "python-django-extensions") diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index c9edde65be..2f26cf09ef 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -3118,7 +3118,7 @@ which sends emails to HyperKitty, the official Mailman3 web archiver.") "--settings=hyperkitty.tests.settings_test")))))) (propagated-inputs `(("python-dateutil" ,python-dateutil) - ("python-django" ,python-django) + ("python-django" ,python-django-2.2) ("python-django-compressor" ,python-django-compressor) ("python-django-extensions" ,python-django-extensions) ("python-django-gravatar2" ,python-django-gravatar2) diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index c26977be1f..335d251e74 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -467,7 +467,7 @@ if __name__ == \"__main__\": (inputs `(("python-wrapper" ,python-wrapper))) (propagated-inputs - `(("python-django" ,python-django) + `(("python-django" ,python-django-2.2) ;; TODO: Make this configurable ("python-psycopg2" ,python-psycopg2) ("python-mysqlclient" ,python-mysqlclient) From 60c964ab7593fb5bf9a123f7be975211641435ab Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 02:32:02 +0200 Subject: [PATCH 300/757] gnu: python-django: Propagate python-sqlparse. * gnu/packages/django.scm (python-django)[native-inputs]: Move PYTHON-SQLPARSE ... [propagated-inputs]: ... here. --- gnu/packages/django.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 1cc7199eef..c086cab3f3 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -108,13 +108,16 @@ ("python-pillow" ,python-pillow) ("python-pyyaml" ,python-pyyaml) ;; optional for tests: ("python-selenium" ,python-selenium) - ("python-sqlparse" ,python-sqlparse) ("python-tblib" ,python-tblib))) (propagated-inputs `(("python-argon2-cffi" ,python-argon2-cffi) ("python-asgiref" ,python-asgiref) ("python-bcrypt" ,python-bcrypt) - ("python-pytz" ,python-pytz))) + ("python-pytz" ,python-pytz) + + ;; This input is not strictly required, but in practice many Django + ;; libraries need it for test suites and similar. + ("python-sqlparse" ,python-sqlparse))) (home-page "https://www.djangoproject.com/") (synopsis "High-level Python Web framework") (description From 92607967c2dcad9d60bcbd0be593cf2dfc24aa36 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 11:27:48 +0200 Subject: [PATCH 301/757] gnu: python-pytest-django: Update to 3.10.0. * gnu/packages/django.scm (python-pytest-django): Update to 3.10.0. [arguments]: Remove #:tests?. Override check phase. [native-inputs]: Add PYTHON-PYTEST-XDIST. --- gnu/packages/django.scm | 35 ++++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index c086cab3f3..b1de294e61 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -309,26 +309,43 @@ size and quality.") (define-public python-pytest-django (package (name "python-pytest-django") - (version "3.1.2") + (version "3.10.0") (source (origin (method url-fetch) (uri (pypi-uri "pytest-django" version)) (sha256 (base32 - "02932m2sr8x22m4az8syr8g835g4ak77varrnw71n6xakmdcr303")))) + "19nvqsb7b9kz3ikpb50m8ppf7mfhzrapdxsqd5hhd1pdfz8dprjd")))) (build-system python-build-system) (arguments - `(#:tests? #f ; FIXME: How to run tests? - #:phases + `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-setuppy - (lambda _ - (substitute* "setup.py" - (("setuptools_scm==1.11.1") "setuptools_scm")) + (replace 'check + (lambda* (#:key tests? inputs outputs #:allow-other-keys) + (if tests? + (begin + (add-installed-pythonpath inputs outputs) + (setenv "PYTHONPATH" + (string-append ".:" ;for pytest_django_test + (getenv "PYTHONPATH"))) + (setenv "PYTEST_DJANGO_TEST_RUNNER" "pytest") + (setenv "DJANGO_SETTINGS_MODULE" + "pytest_django_test.settings_sqlite_file") + (invoke "pytest" "-vv" "-k" + ;; FIXME: these tests fail to locate Django templates ... + (string-append "not test_django_not_loaded_without_settings" + " and not test_settings" + ;; ... and this does not discover + ;; 'pytest_django_test'. + " and not test_urls_cache_is_cleared"))) + (format #t "test suite not run~%")) #t))))) (native-inputs `(("python-django" ,python-django) - ("python-setuptools-scm" ,python-setuptools-scm))) + ("python-setuptools-scm" ,python-setuptools-scm) + + ;; For tests. + ("python-pytest-xdist" ,python-pytest-xdist))) (propagated-inputs `(("python-pytest" ,python-pytest))) (home-page "https://pytest-django.readthedocs.org/") From 9fb6275e0b6496f434edecb1faec4e8c96d1c883 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 11:30:23 +0200 Subject: [PATCH 302/757] gnu: python-django-simple-math-captcha: Update to 1.0.9. * gnu/packages/django.scm (python-django-simple-math-captcha): Update to 1.0.9. [source]: Change to GIT-FETCH. [arguments]: Remove #:tests?. Add phases to patch imports and run tests. [native-inputs]: Add PYTHON-MOCK. [propagated-inputs]: Add PYTHON-SIX. --- gnu/packages/django.scm | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index b1de294e61..312d16ad35 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -200,21 +200,37 @@ commands, additional database fields and admin extensions.") (define-public python-django-simple-math-captcha (package (name "python-django-simple-math-captcha") - (version "1.0.7") + (version "1.0.9") + (home-page "https://github.com/alsoicode/django-simple-math-captcha") (source (origin - (method url-fetch) - (uri (pypi-uri "django-simple-math-captcha" version)) + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0906hms6y6znjhpd0g4wmzv9vcla4brkdpsm4zha9zdj8g5vq2hd")))) + "0fhy9k8haqa1296v0qpg1b5w7y3pyw9qi9z9laj5ijry1gk35qaw")))) (build-system python-build-system) (arguments - ;; FIXME: Upstream uses a 'runtests.py' script that is not - ;; present in the pypi tarball. - '(#:tests? #f)) + '(#:phases (modify-phases %standard-phases + (add-after 'unpack 'patch-six-imports + (lambda _ + ;; Django no longer bundles six, adjust the imports + ;; accordingly. The six dependency can likely be + ;; removed in the next version. + (substitute* (find-files "." "\\.py$") + (("from django\\.utils import six") + "import six")) + #t)) + (replace 'check + (lambda _ + (invoke "python" "runtests.py")))))) + (native-inputs + `(("python-mock" ,python-mock))) (propagated-inputs - `(("python-django" ,python-django))) - (home-page "https://github.com/alsoicode/django-simple-math-captcha") + `(("python-django" ,python-django) + ("python-six" ,python-six))) (synopsis "Easy-to-use math field/widget captcha for Django forms") (description "A multi-value-field that presents a human answerable question, From 1fe17bc361742efd213374a72031af5e75a60b2d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 11:51:56 +0200 Subject: [PATCH 303/757] gnu: python-django-classy-tags: Update to 2.0.0. * gnu/packages/django.scm (python-django-classy-tags): Update to 2.0.0. [propagated-inputs]: Remove PYTHON-SIX. --- gnu/packages/django.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 312d16ad35..b9a1f88edc 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -244,19 +244,19 @@ with arguments to the field constructor.") (define-public python-django-classy-tags (package (name "python-django-classy-tags") - (version "1.0.0") + (version "2.0.0") (source (origin (method url-fetch) (uri (pypi-uri "django-classy-tags" version)) (sha256 (base32 - "1cayqddvxd5prhybqi77lif2z4j7mmfmxgc61pq9i82q5gy2asmd")))) + "1javam3zqi3y3j0r490mm61v48yh75jaha99gb7lsxkaz6yri7fm")))) (build-system python-build-system) - (arguments '(#:tests? #f)) ; Test script not distributed with release. + ;; FIXME: How to make the test templates available to Django? + (arguments '(#:tests? #f)) (propagated-inputs - `(("python-django" ,python-django) - ("python-six" ,python-six))) + `(("python-django" ,python-django))) (home-page "https://github.com/divio/django-classy-tags") (synopsis "Class based template tags for Django") (description From 0cac0e0b92925bc3caf65fbde323813cd56db826 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:02:22 +0200 Subject: [PATCH 304/757] gnu: python-django-extensions: Update to 3.0.6. * gnu/packages/django.scm (python-django-extensions): Update to 3.0.6. --- 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 b9a1f88edc..6d3cd74e58 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -160,7 +160,7 @@ to the @dfn{don't repeat yourself} (DRY) principle.") (define-public python-django-extensions (package (name "python-django-extensions") - (version "2.1.6") + (version "3.0.6") (source (origin (method git-fetch) @@ -171,10 +171,10 @@ to the @dfn{don't repeat yourself} (DRY) principle.") (file-name (string-append name "-" version)) (sha256 (base32 - "0p4qrdinrv6indczlc8dcnm528i5fzmcn9xk1ja7ycfkyk5x6j5w")))) + "0sra6hazqvspxd1pnx5cj7gia1rkaz3hn06ib4wd0frc167f5afy")))) (build-system python-build-system) (arguments - '(#:tests? #f)) ;TODO collected 378 items / 3 errors / 1 skipped + '(#:tests? #f)) ;XXX: requires a Postgres or MySQL database (propagated-inputs `(("python-six" ,python-six) ("python-vobject" ,python-vobject) From 9eccb181faf1121fa578bb269d5f8409b5c57ff8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:03:41 +0200 Subject: [PATCH 305/757] gnu: python-django-taggit: Update to 1.3.0. * gnu/packages/django.scm (python-django-taggit): Update to 1.3.0. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 6d3cd74e58..ff8afe58f1 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -269,14 +269,14 @@ when coding custom template tags.") (define-public python-django-taggit (package (name "python-django-taggit") - (version "1.1.0") + (version "1.3.0") (source (origin (method url-fetch) (uri (pypi-uri "django-taggit" version)) (sha256 (base32 - "044fzcpmns90kaxdi49qczlam4xsi8rl73rpfwvxx1gkcqzidgq1")))) + "0bbkabbs77z229ps0800gxfhf75yagp4x4j5jzfysbac3zvkp0sa")))) (build-system python-build-system) (arguments '(#:phases From 9e4fef92697f38c6cefcc66db58883ec14a1cf43 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:07:26 +0200 Subject: [PATCH 306/757] gnu: python-django-crispy-forms: Update to 1.9.2. * gnu/packages/django.scm (python-django-crispy-forms): Update to 1.9.2. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index ff8afe58f1..f0027db9bc 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1170,14 +1170,14 @@ a single block.") (define-public python-django-crispy-forms (package (name "python-django-crispy-forms") - (version "1.7.2") + (version "1.9.2") (source (origin (method url-fetch) (uri (pypi-uri "django-crispy-forms" version)) (sha256 (base32 - "0pv7y648i8iz7mf64gkjizpbx5d01ap2s4vqqa30n38if6wvlljr")))) + "0fxlf233f49hjax786p4r650rd0ilvhnpyvw8hv1d1aqnkxy1wgj")))) (build-system python-build-system) (arguments '(;; No included tests From e073925c948d97e25b5fdc3c307e60a3228481dd Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:08:13 +0200 Subject: [PATCH 307/757] gnu: python-djangorestframework: Update to 3.11.1. * gnu/packages/django.scm (python-djangorestframework): Update to 3.11.1. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index f0027db9bc..3c2413a0fd 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1117,14 +1117,14 @@ Django projects, which allows association of a number of tags with any (define-public python-djangorestframework (package (name "python-djangorestframework") - (version "3.7.7") + (version "3.11.1") (source (origin (method url-fetch) (uri (pypi-uri "djangorestframework" version)) (sha256 (base32 - "11qv117gqwswxjljs7wafxg1hyzzlx3qrviwlk9hw41bsbl997lz")))) + "0chbl1d0m1x23mmpdj7y85k3n32lpxrhcdl07ywnylfj9dd2vl3d")))) (build-system python-build-system) (arguments '(;; No included tests From 357f586374ee4b21dfe3612c33d41569939429fb Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:09:31 +0200 Subject: [PATCH 308/757] gnu: python-django-filter: Update to 2.3.0. * gnu/packages/django.scm (python-django-filter): Update to 2.3.0. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 3c2413a0fd..77bf439a99 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -424,13 +424,13 @@ your code.") (define-public python-django-filter (package (name "python-django-filter") - (version "1.1.0") + (version "2.3.0") (source (origin (method url-fetch) (uri (pypi-uri "django-filter" version)) (sha256 (base32 - "0slpfqfhnjrzlrb6vmswyhrzn01p84s16j2x1xib35gg4fxg23pc")))) + "1bz5qzdk9pk4a2lp2yacrdnqmkv24vxnz4k3lykrnpc3b7bkvrhi")))) (build-system python-build-system) (arguments '(#:phases From 6c0131b37537d57015336dd97637ab98a5ec036b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:10:27 +0200 Subject: [PATCH 309/757] gnu: python-django-allauth: Update to 0.42.0. * gnu/packages/django.scm (python-django-allauth): Update to 0.42.0. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 77bf439a99..4c62f295ef 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -458,14 +458,14 @@ them do this.") (define-public python-django-allauth (package (name "python-django-allauth") - (version "0.40.0") + (version "0.42.0") (source (origin (method url-fetch) (uri (pypi-uri "django-allauth" version)) (sha256 (base32 - "12f5gjidcpb7a0d1f601k0c5dcdmb6fg9sfn7xn5j8zfsg29y63a")))) + "0c0x8izvrnjhrr48w6pwsfk9ddbi6yfxg7v3hh5dm1vz1d0hjwpi")))) (build-system python-build-system) (arguments '(#:phases From 7f93dc3daeab2a3f76ceaab3c5aa9507489de724 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:27:22 +0200 Subject: [PATCH 310/757] gnu: Add python-css-html-js-minify. * gnu/packages/python-web.scm (python-css-html-js-minify): New public variable. --- gnu/packages/python-web.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 048620a272..7fd653b7a5 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -253,6 +253,30 @@ communicate with each other, and positioned as an asynchronous successor to WSGI. This package includes libraries for implementing ASGI servers.") (license license:bsd-3))) +(define-public python-css-html-js-minify + (package + (name "python-css-html-js-minify") + (version "2.5.5") + (source (origin + (method url-fetch) + (uri (pypi-uri "css-html-js-minify" version ".zip")) + (sha256 + (base32 + "0v3l2dqdk2y4r6ax259gs4ij1zzm9yxg6491s6254vs9w3vi37sa")))) + (build-system python-build-system) + ;; XXX: The git repository has no tags, and the PyPI releases do not + ;; contain tests. + (arguments '(#:tests? #f)) + (native-inputs `(("unzip" ,unzip))) + (home-page "https://github.com/juancarlospaco/css-html-js-minify") + (synopsis "CSS/HTML/JS minifier") + (description + "This package provides a single-file minifier for CSS, HTML, and JavaScript.") + ;; XXX: The README just says "GNU GPL and GNU LGPL and MIT". From + ;; it + ;; looks like the user can choose a license. + (license (list license:gpl3+ license:lgpl3+ license:expat)))) + (define-public python-falcon (package (name "python-falcon") From 93b5bd7c766393d891724fd4d6dc1d3286311916 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:30:42 +0200 Subject: [PATCH 311/757] gnu: python-django-pipeline: Update to 2.0.5. * gnu/packages/django.scm (python-django-pipeline): Update to 2.0.5. [propagated-inputs]: Add PYTHON-CSS-HTML-JS-MINIFY. --- gnu/packages/django.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 4c62f295ef..61590c71e1 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -844,14 +844,14 @@ project.") (define-public python-django-pipeline (package (name "python-django-pipeline") - (version "1.6.14") + (version "2.0.5") (source (origin (method url-fetch) (uri (pypi-uri "django-pipeline" version)) (sha256 (base32 - "1a207y71r7za033ira0qmh2yrgp5rq0l04gw2fg9b8jri7sslrzg")))) + "19vrbd5s12qw4qlg5n8ldv7zz2rs5y2sdid1i7lvgp92m71dayvc")))) (build-system python-build-system) (arguments '(#:phases @@ -872,7 +872,8 @@ project.") (setenv "DJANGO_SETTINGS_MODULE" "tests.settings") (invoke "django-admin" "test" "tests")))))))) (propagated-inputs - `(("python-django" ,python-django) + `(("python-css-html-js-minify" ,python-css-html-js-minify) + ("python-django" ,python-django) ("python-slimit" ,python-slimit) ("python-jsmin" ,python-jsmin))) (home-page From bc13610148fee98e9b4f7b0f417be49915615fab Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:33:07 +0200 Subject: [PATCH 312/757] gnu: python-django-jinja: Update to 2.6.0. * gnu/packages/django.scm (python-django-jinja): Update to 2.6.0. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 61590c71e1..11d2c88aab 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -605,7 +605,7 @@ merging, minifying and compiling CSS and Javascript files.") (define-public python-django-jinja (package (name "python-django-jinja") - (version "2.4.1") + (version "2.6.0") (source (origin (method git-fetch) @@ -615,7 +615,7 @@ merging, minifying and compiling CSS and Javascript files.") (file-name (git-file-name name version)) (sha256 (base32 - "1fcrxlznlq1xvl26y3j1r22vvy6m08r5l97xi2wj50rdmxhfvhis")))) + "06ldbkfkm6sc0p9sqpjph06gxrqpj78ih3dc2yik2fcba2y5mak1")))) (build-system python-build-system) (propagated-inputs `(("python-django" ,python-django) From 5495e880a6e1000a78c50f3cefa0c0b2ee8ee1c8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:33:39 +0200 Subject: [PATCH 313/757] gnu: python-django-debug-toolbar: Update to 2.2. * gnu/packages/django.scm (python-django-debug-toolbar): Update to 2.2. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 11d2c88aab..7068e99a8a 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -497,7 +497,7 @@ account authentication.") (define-public python-django-debug-toolbar (package (name "python-django-debug-toolbar") - (version "1.10.1") + (version "2.2") (source (origin (method git-fetch) @@ -507,7 +507,7 @@ account authentication.") (file-name (git-file-name name version)) (sha256 (base32 - "0zr6yjsms97wlvvd17rdbrx01irkg887dn9x70c1hzfjmfvp9afk")))) + "14069rlgjd5g724iaglai0nc636g9km4ba56r4j3k84chibqzn03")))) (build-system python-build-system) (propagated-inputs `(("python-sqlparse" ,python-sqlparse) From 384aa00c7deead8e7db492ed0f7949a18f8ccffb Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:35:16 +0200 Subject: [PATCH 314/757] gnu: python-django-gravatar2: Update to 1.4.4. * gnu/packages/django.scm (python-django-gravatar2): Update to 1.4.4. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 7068e99a8a..56aefb773e 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -532,14 +532,14 @@ request and response as a toolbar on the rendered page.") (define-public python-django-gravatar2 (package (name "python-django-gravatar2") - (version "1.4.2") + (version "1.4.4") (source (origin (method url-fetch) (uri (pypi-uri "django-gravatar2" version)) (sha256 (base32 - "1qsv40xywbqsf4mkrmsswrpzqd7nfljxpfiim9an2z3dykn5rka6")))) + "1vn921fb6jjx7rf5dzhy66rkb71nwmh9ydd0xs9ys72icw4jh4y8")))) (build-system python-build-system) (arguments '(;; TODO: The django project for the tests is missing from the release. From e2ac59f984d68f6d1011633df6d612d2bb54229f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:56:56 +0200 Subject: [PATCH 315/757] gnu: python-webassets: Update to 2.0. * gnu/packages/python-web.scm (python-webassets): Update to 2.0. [arguments]: New field. --- gnu/packages/python-web.scm | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 7fd653b7a5..c0d0d5662b 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -3173,15 +3173,29 @@ for Flask.") (define-public python-webassets (package (name "python-webassets") - (version "0.12.1") + (version "2.0") (source (origin (method url-fetch) (uri (pypi-uri "webassets" version)) (sha256 (base32 - "1nrqkpb7z46h2b77xafxihqv3322cwqv6293ngaky4j3ff4cing7")))) + "1kc1042jydgk54xpgcp0r1ib4gys91nhy285jzfcxj3pfqrk4w8n")))) (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-before 'check 'disable-some-tests + (lambda _ + ;; This test requires 'postcss' and 'babel' which are + ;; not yet available in Guix. + (delete-file "tests/test_filters.py") + #t)) + (replace 'check + (lambda _ + (setenv "PYTHONPATH" + (string-append "./build/lib:" + (getenv "PYTHONPATH"))) + (invoke "pytest" "-vv")))))) (native-inputs `(("python-jinja2" ,python-jinja2) ("python-mock" ,python-mock) From 357ab65bae0b1f83eb7491cd0cce9aa4e8a5f2a4 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 12:57:23 +0200 Subject: [PATCH 316/757] gnu: python-django-assets: Update to 2.0. * gnu/packages/django.scm (python-django-assets): Update to 2.0. [arguments]: Remove. --- gnu/packages/django.scm | 23 ++--------------------- 1 file changed, 2 insertions(+), 21 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 56aefb773e..5567fcbed1 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -559,33 +559,14 @@ templatetags and a full test suite.") (define-public python-django-assets (package (name "python-django-assets") - (version "0.12") + (version "2.0") (source (origin (method url-fetch) (uri (pypi-uri "django-assets" version)) (sha256 (base32 - "0y0007fvkn1rdlj2g0y6k1cnkx53kxab3g8i85i0rd58k335p365")))) + "0fc6i77faxxv1gjlp06lv3kw64b5bhdiypaygfxh5djddgk83fwa")))) (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'fix-tests - (lambda _ - (begin - ;; https://github.com/miracle2k/django-assets/issues/87 - (substitute* "tests/__init__.py" - (("settings.configure.*") - (string-append - "settings.configure(\n" - "INSTALLED_APPS=['django_assets', " - "'django.contrib.staticfiles'],\n" - "TEMPLATES=[{'BACKEND': " - "'django.template.backends.django.DjangoTemplates'}],\n" - ")\n"))) - ;; These tests fail - (substitute* "tests/test_django.py" - (("TestLoader") "NoTestLoader")))))))) (native-inputs `(("python-nose" ,python-nose))) (propagated-inputs From 76cd38f12e87513e68d55edc2d75db2402517b40 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 13:08:26 +0200 Subject: [PATCH 317/757] gnu: python-dj-database-url: Update to 0.5.0. * gnu/packages/django.scm (python-dj-database-url): Update to 0.5.0. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 5567fcbed1..84c32b6fbd 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -658,13 +658,13 @@ use, simply add the field to one of your models.") (define-public python-dj-database-url (package (name "python-dj-database-url") - (version "0.4.2") + (version "0.5.0") (source (origin (method url-fetch) (uri (pypi-uri "dj-database-url" version)) (sha256 (base32 - "024zbkc5rli4hia9lz9g8kf1zxhb2gwawj5abf67i7gf8n22v0x6")))) + "0qs16g5y3lflxibsl8gwkwap21crhmmv98l60rdq6x1wawgypsja")))) (build-system python-build-system) (home-page "https://github.com/kennethreitz/dj-database-url") (synopsis "Use Database URLs in your Django Application") From bfe8c030e4b1d7c20391af600108d3817b273856 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 13:12:48 +0200 Subject: [PATCH 318/757] gnu: python-django-picklefield: Update to 3.0.1. * gnu/packages/django.scm (python-django-picklefield): Update to 3.0.1. [source]: Switch to GIT-FETCH. [arguments]: New field. [native-inputs]: Remove. --- gnu/packages/django.scm | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 84c32b6fbd..d61a89f5c1 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -683,18 +683,27 @@ conn_max_age argument to easily enable Django’s connection pool.") (define-public python-django-picklefield (package (name "python-django-picklefield") - (version "2.1.1") + (version "3.0.1") + (home-page "https://github.com/gintas/django-picklefield") + ;; Use a git checkout because the PyPI release lacks tests. (source (origin - (method url-fetch) - (uri (pypi-uri "django-picklefield" version)) + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0imncys5s3vsy2q79nn7k5d670da1xgmcr9gmhn06fry6ibf39b7")))) + "0ni7bc86k0ra4pc8zv451pzlpkhs1nyil1sq9jdb4m2mib87b5fk")))) (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "python" "-m" "django" "test" "-v2" + "--settings=tests.settings")))))) (propagated-inputs `(("python-django" ,python-django))) - (native-inputs `(("python-tox" ,python-tox))) - (home-page "https://github.com/gintas/django-picklefield") (synopsis "Pickled object field for Django") (description "Pickled object field for Django") (license license:expat))) From 074400543dac58a43ced35b4ccee7bfa1b52dcf1 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 13:17:46 +0200 Subject: [PATCH 319/757] gnu: python-django-bulk-update: Update to 2.2.0. * gnu/packages/django.scm (python-django-bulk-update): Update to 2.2.0. [native-inputs]: Remove. --- gnu/packages/django.scm | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index d61a89f5c1..0b31d5745d 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -711,21 +711,17 @@ conn_max_age argument to easily enable Django’s connection pool.") (define-public python-django-bulk-update (package (name "python-django-bulk-update") - (version "1.1.10") + (version "2.2.0") (source (origin (method url-fetch) (uri (pypi-uri "django-bulk-update" version)) (sha256 (base32 - "0mbng9m7swfc0dnidipbzlxfhlfjrv755dlnha5s4m9mgdxb1fhc")))) + "0dxkmrm3skyw82i0qa8vklxw1ma1y308kh9w2hcnvhpacn5cxdss")))) (build-system python-build-system) (arguments - ;; tests don't support django 1.10, but the module seems to work. + ;; XXX: Tests require a Postgres database. `(#:tests? #f)) - (native-inputs - `(("six" ,python-six) - ("jsonfield" ,python-django-jsonfield) - ("python-dj-database-url" ,python-dj-database-url))) (propagated-inputs `(("python-django" ,python-django))) (home-page "https://github.com/aykut/django-bulk-update") From 3be81c85cfa9185447bb47d9e35dd7c93f87407b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 13:25:51 +0200 Subject: [PATCH 320/757] gnu: python-django-contact-form: Update to 1.8.1. * gnu/packages/django.scm (python-django-contact-form): Update to 1.8.1. [arguments]: Adjust test invokation, drop flake8 checks. [native-inputs]: Remove PYTHON-FLAKE8. --- gnu/packages/django.scm | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 0b31d5745d..f654f2d596 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -737,26 +737,26 @@ project aims to bulk update given objects using one query over Django ORM.") (define-public python-django-contact-form (package (name "python-django-contact-form") - (version "1.3") + (version "1.8.1") (source (origin (method url-fetch) (uri (pypi-uri "django-contact-form" version)) (sha256 (base32 - "0az590y56k5ahv4sixrkn54d3a8ig2q2z9pl6s3m4f533mx2gj17")))) + "1zv7bcjfrg32gcsq3bclkld79l6mcy2wcvlj81h7q2ppv1wm8vqs")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases (replace 'check (lambda _ - ;; the next version will need "make test" - (invoke "flake8" "contact_form") - (invoke "coverage" "run" "contact_form/runtests.py") - (invoke "coverage" "report" "-m" "--fail-under" "0")))))) + (setenv "PYTHONPATH" + (string-append "./build/lib:" + (getenv "PYTHONPATH"))) + (invoke "coverage" "run" "--source" "contact_form" + "runtests.py")))))) (native-inputs - `(("python-coverage" ,python-coverage) - ("python-flake8" ,python-flake8))) + `(("python-coverage" ,python-coverage))) (propagated-inputs `(("python-django" ,python-django))) (home-page "https://github.com/ubernostrum/django-contact-form") From 380b84f2ef708150563da64baccb4acde4c3d22f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 13:27:09 +0200 Subject: [PATCH 321/757] gnu: python-django-contrib-comments: Update to 1.9.2. * gnu/packages/django.scm (python-django-contrib-comments): Update to 1.9.2. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index f654f2d596..b4c5be4be5 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -772,13 +772,13 @@ for Django sites.") (define-public python-django-contrib-comments (package (name "python-django-contrib-comments") - (version "1.8.0") + (version "1.9.2") (source (origin (method url-fetch) (uri (pypi-uri "django-contrib-comments" version)) (sha256 (base32 - "0bxsgw8jrkhg6r5s0z6ksfi4w8yknaqb1s9acmxd9pm3pnsnp5kx")))) + "0ccdiv784a5vnpfal36km4dyg12340rwhpr0riyy0k89wfnjn8yi")))) (build-system python-build-system) (propagated-inputs `(("python-django" ,python-django))) From 924be573a9b604fb917d5283f3795a5b8734df14 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 13:30:05 +0200 Subject: [PATCH 322/757] gnu: python-django-redis: Update to 4.12.1. * gnu/packages/django.scm (python-django-redis): Update to 4.12.1. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index b4c5be4be5..4f694f5934 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -874,13 +874,13 @@ support, and optional data-URI image and font embedding.") (define-public python-django-redis (package (name "python-django-redis") - (version "4.10.0") + (version "4.12.1") (source (origin (method url-fetch) (uri (pypi-uri "django-redis" version)) (sha256 (base32 - "1rxcwnv9ik0swkwvfqdi9i9baw6n8if5pj6q63fjh4p9chw3j2xg")))) + "0qvsm8yjchl0d3i7g20wba6px9lb5gv8kp3fcnr6hr0y0b3qjr9h")))) (build-system python-build-system) (arguments `(#:phases From d87252e633598e3cc456268e7c95ba91b2fb0d84 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 13:36:26 +0200 Subject: [PATCH 323/757] gnu: python-redis: Update to 3.5.3. * gnu/packages/databases.scm (python-redis): Update to 3.5.3. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index c982da1f79..49c41e73a4 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -3045,13 +3045,13 @@ reasonable substitute.") (define-public python-redis (package (name "python-redis") - (version "3.3.8") + (version "3.5.3") (source (origin (method url-fetch) (uri (pypi-uri "redis" version)) (sha256 - (base32 "0fyxzqax7lcwzwhvnz0i0q6v62hxyv1mv52ywx3bpff9a2vjz8lq")))) + (base32 "18h5b87g15x3j6pb1h2q27ri37p2qpvc9n2wgn5yl3b6m3y0qzhf")))) (build-system python-build-system) ;; Tests require a running Redis server. (arguments '(#:tests? #f)) From b462caaf9363084250a1e2cf9075b55a95fc55f3 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 13:55:39 +0200 Subject: [PATCH 324/757] gnu: python-rq: Update to 1.5.1. * gnu/packages/databases.scm (python-rq): Update to 1.5.1. [source]: Change to GIT-FETCH. [arguments]: New field. [native-inputs]: Add PYTHON-MOCK, PYTHON-PYTEST, and REDIS. --- gnu/packages/databases.scm | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 49c41e73a4..9e7c31faf6 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -3070,14 +3070,35 @@ reasonable substitute.") (define-public python-rq (package (name "python-rq") - (version "0.13.0") + (version "1.5.1") (source (origin - (method url-fetch) - (uri (pypi-uri "rq" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/rq/rq") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "0xvapd2bxnyq480i48bdkddzlqmv2axbsq85rlfy8k3al8zxxxrf")))) + (base32 "0i7yyw828wdvl7ap4gb7jhm4p94502is3xxrgrdgwwp0l1rac004")))) (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-before 'check 'start-redis + (lambda _ + (invoke "redis-server" "--daemonize" "yes"))) + (replace 'check + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; Drop test that needs the SDK for Sentry.io. + (delete-file "tests/test_sentry.py") + ;; Ensure 'rq' and 'rqworker' ends up on PATH. + (setenv "PATH" (string-append out "/bin:" + (getenv "PATH"))) + (invoke "pytest" "-vv"))))))) + (native-inputs + `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest) + ("redis" ,redis))) (propagated-inputs `(("python-click" ,python-click) ("python-redis" ,python-redis))) From 8c9365047b8ae041e6230ef5a72d6cf6f27a7521 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 14:07:18 +0200 Subject: [PATCH 325/757] gnu: Add python-croniter. * gnu/packages/python-xyz.scm (python-croniter): New public variable. --- gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index e14f4c79ee..3094b07c6d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -19442,6 +19442,27 @@ file-based data structures that are @code{mmap}ped into memory so that many processes may share the same data.") (license license:asl2.0))) +(define-public python-croniter + (package + (name "python-croniter") + (version "0.3.34") + (source (origin + (method url-fetch) + (uri (pypi-uri "croniter" version)) + (sha256 + (base32 + "0r79cx4v2dw4hzr0annkkxxis46c8hivq61sr39z6p7lcjsbk1ki")))) + (build-system python-build-system) + (propagated-inputs + `(("python-dateutil" ,python-dateutil) + ("python-natsort" ,python-natsort))) + (home-page "https://github.com/kiorky/croniter") + (synopsis "Iterate datetime objects with cron-like syntax") + (description + "@code{croniter} provides iteration for datetime object with cron-like +format.") + (license license:expat))) + (define-public python-pylzma (package (name "python-pylzma") From 8a88efce4c07d4519fe2e380dcb565d0ff1b11c2 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 14:12:55 +0200 Subject: [PATCH 326/757] gnu: Add python-rq-scheduler. * gnu/packages/databases.scm (python-rq-scheduler): New public variable. --- gnu/packages/databases.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 9e7c31faf6..cb6cf688ff 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -3113,6 +3113,44 @@ is designed to have a low barrier to entry.") (define-public python2-rq (package-with-python2 python-rq)) +(define-public python-rq-scheduler + (package + (name "python-rq-scheduler") + (version "0.10.0") + (home-page "https://github.com/rq/rq-scheduler") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xg6yazqs5kbr2ayvhvljs1h5vgx5k5dds613fmhswln7gglf9hk")))) + (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-before 'check 'start-redis + (lambda _ + (invoke "redis-server" "--daemonize" "yes"))) + (replace 'check + (lambda _ + (substitute* "run_tests.py" + (("/usr/bin/env") + (which "env"))) + (invoke "./run_tests.py")))))) + (native-inputs + `(("redis" ,redis) + ("which" ,which))) + (propagated-inputs + `(("python-croniter" ,python-croniter) + ("python-rq" ,python-rq))) + (synopsis "Job scheduling capabilities for RQ (Redis Queue)") + (description + "This package provides job scheduling capabilities to @code{python-rq} +(Redis Queue).") + (license license:expat))) + (define-public python-trollius-redis (package (name "python-trollius-redis") From da6448cda54ad3ef615953e7fa80782e46e4d05d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 14:18:03 +0200 Subject: [PATCH 327/757] gnu: python-django-rq: Update to 2.3.2. * gnu/packages/django.scm (python-django-rq): Update to 2.3.2. [native-inputs]: Add PYTHON-DJANGO-REDIS, PYTHON-MOCK, and PYTHON-RQ-SCHEDULER. --- gnu/packages/django.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 4f694f5934..38dd2843c5 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -911,13 +911,13 @@ support, and optional data-URI image and font embedding.") (define-public python-django-rq (package (name "python-django-rq") - (version "1.3.1") + (version "2.3.2") (source (origin (method url-fetch) (uri (pypi-uri "django-rq" version)) (sha256 (base32 - "1ips1ikv5qhgwb58ssn496vgqg9qv6jinwmwbrg9l3s75fskd1l5")))) + "0lksnjn3q3f7y72bj2yr8870w28a5b6x0vjnd9nhpq2ah6xfz6pf")))) (build-system python-build-system) (arguments `(#:phases @@ -929,7 +929,9 @@ support, and optional data-URI image and font embedding.") "--settings=django_rq.tests.settings" "--pythonpath=.")))))) (native-inputs - `(("python-mock" ,python-mock) + `(("python-django-redis" ,python-django-redis) + ("python-mock" ,python-mock) + ("python-rq-scheduler" ,python-rq-scheduler) ("redis" ,redis))) (propagated-inputs `(("python-django" ,python-django) From 27f32604d4efb3a147606c6ac4221831dc3502e2 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 14:25:26 +0200 Subject: [PATCH 328/757] gnu: python-django-q: Update to 1.3.3. * gnu/packages/django.scm (python-django-q): Update to 1.3.3. [arguments]: Add #:tests?. Remove #:phases. [native-inputs]: Remove. --- gnu/packages/django.scm | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 38dd2843c5..e2b2336436 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -950,31 +950,22 @@ settings.py and easily use them in your project.") (define-public python-django-q (package (name "python-django-q") - (version "1.3.2") + (version "1.3.3") (source (origin (method url-fetch) (uri (pypi-uri "django-q" version)) (sha256 (base32 - "0ac3rjxv37bn97a62ly8b7qvbv765z6paiinzpwxx83nal2icc42")))) + "1fs29767940akbsn3vdzw2rqnn9v77b0b55bi7fvydny1rk7fw6y")))) (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (setenv "DJANGO_SETTINGS_MODULE" "django_q.tests.settings") - (invoke "django-admin" "test" "django_q.tests" - "--pythonpath=.")))))) + ;; FIXME: Tests require disque, Redis, MongoDB, Docker. + (arguments '(#:tests? #f)) (propagated-inputs `(("python-arrow" ,python-arrow) ("python-blessed" ,python-blessed) ("python-django" ,python-django) ("python-django-picklefield" ,python-django-picklefield))) - (native-inputs - `(("python-django-redis" ,python-django-redis) - ("python-pytest-django" ,python-pytest-django))) (home-page "https://django-q.readthedocs.io/") (synopsis "Multiprocessing distributed task queue for Django") (description From 52c8d4204c5a812319c7de24e49fb631b9a44287 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 14:32:03 +0200 Subject: [PATCH 329/757] gnu: python-django-sortedm2m: Update to 3.0.2. * gnu/packages/django.scm (python-django-sortedm2m): Update to 3.0.2. [arguments]: Remove #:tests?. Add #:phases. [home-page]: Update to current. --- gnu/packages/django.scm | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index e2b2336436..02e0633ab0 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -976,20 +976,25 @@ using Python multiprocessing.") (define-public python-django-sortedm2m (package (name "python-django-sortedm2m") - (version "1.3.3") + (version "3.0.2") (source (origin (method url-fetch) (uri (pypi-uri "django-sortedm2m" version)) (sha256 (base32 - "0axf765i7b3c2s83nlph47asi8s071dhq8l7y382v1pw785s22vi")))) + "0z0yymmrr2l5cznqbzwziw624df0qsiflvbpqwrpan52nww3dk4a")))) (build-system python-build-system) (arguments - ;; no tests. - `(#:tests? #f)) + `(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (setenv "PYTHONPATH" (string-append "./test_project:" + "./build/lib:.:" + (getenv "PYTHONPATH"))) + (invoke "django-admin.py" "test" "--settings=settings")))))) (propagated-inputs `(("python-django" ,python-django))) - (home-page "https://github.com/gregmuellegger/django-sortedm2m") + (home-page "https://github.com/jazzband/django-sortedm2m") (synopsis "Drop-in replacement for django's own ManyToManyField") (description "Sortedm2m is a drop-in replacement for django's own ManyToManyField. From 7e244ac6639ec71010e699d74077e08c0ec4bc2f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 14:35:18 +0200 Subject: [PATCH 330/757] gnu: python-django-appconf: Update to 1.0.4. * gnu/packages/django.scm (python-django-appconf): Update to 1.0.4. [arguments]: New field. [propagated-inputs]: Remove PYTHON-SIX. --- gnu/packages/django.scm | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 02e0633ab0..285bb53596 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1008,17 +1008,24 @@ the order of added relations.") (define-public python-django-appconf (package (name "python-django-appconf") - (version "1.0.3") + (version "1.0.4") (source (origin (method url-fetch) (uri (pypi-uri "django-appconf" version)) (sha256 (base32 - "1qw0p9qh78bvkgi38ba58djwn0rd5j1lrkg2c2wk5wb7snj3rw9m")))) + "101k8nkc7xlffpjdi2qbrp9pc4v8hzvmkzi12qp7vms39asxwn5y")))) (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (setenv "PYTHONPATH" (string-append ".:" + (getenv "PYTHONPATH"))) + (setenv "DJANGO_SETTINGS_MODULE" "tests.test_settings") + (invoke "django-admin.py" "test" "-v2")))))) (propagated-inputs - `(("python-django" ,python-django) - ("python-six" ,python-six))) + `(("python-django" ,python-django))) (home-page "https://github.com/django-compressor/django-appconf") (synopsis "Handle configuration defaults of packaged Django apps") (description From dfbe9d2327c860e43b76ed369c8747412f7dfab3 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 14:42:16 +0200 Subject: [PATCH 331/757] gnu: python-django-statici18n: Update to 1.9.0. * gnu/packages/django.scm (python-django-statici18n): Update to 1.9.0. [source]: Switch to GIT-FETCH. [arguments]: New field. [native-inputs]: Add PYTHON-PYTEST and PYTHON-PYTEST-DJANGO. --- gnu/packages/django.scm | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 285bb53596..059aec3107 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1042,18 +1042,33 @@ name is purely coincidental.") (define-public python-django-statici18n (package (name "python-django-statici18n") - (version "1.3.0") + (version "1.9.0") + (home-page "https://github.com/zyegfryed/django-statici18n") (source (origin - (method url-fetch) - (uri (pypi-uri "django-statici18n" version)) + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0alcf4g1nv69njhq5k3qw4mfl2k6dc18bik5nk0g1mnp3m8zyz7k")))) + "1p3myp2im6c87yc05alh91jyahqws5lcw3zzdsj4dh8lx9s9cgpf")))) (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (setenv "PYTHONPATH" + (string-append "./tests/test_project:./build/lib:" + (getenv "PYTHONPATH"))) + (setenv "DJANGO_SETTINGS_MODULE" "project.settings") + (invoke "pytest" "-vv")))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-django" ,python-pytest-django))) (propagated-inputs `(("python-django" ,python-django) ("django-appconf" ,python-django-appconf))) - (home-page "https://github.com/zyegfryed/django-statici18n") (synopsis "Generate JavaScript catalog to static files") (description "A Django app that provides helper for generating JavaScript catalog to From c59554458c0fd1eb442179cd9569e0c800b84526 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 14:44:06 +0200 Subject: [PATCH 332/757] gnu: python-django-sekizai: Update to 2.0.0. * gnu/packages/django.scm (python-django-sekizai): Update to 2.0.0. --- gnu/packages/django.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 059aec3107..2eea3f2c41 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1148,14 +1148,14 @@ provides features like a web browseable API and authentication policies.") (define-public python-django-sekizai (package (name "python-django-sekizai") - (version "1.1.0") + (version "2.0.0") (source (origin (method url-fetch) (uri (pypi-uri "django-sekizai" version)) (sha256 (base32 - "1nc4sv109valdn6azmgm2j01k7khxy2wnji84z63x7fxsikfdxp2")))) + "0vrkli625b5s1wldri3dyrfvqbxg7zxy2pg0rpjixw3b1ndz0ag8")))) (build-system python-build-system) (arguments '(#:tests? #f)) ; Tests not included with release. (propagated-inputs From e06e250d48317ff73ae64353c160b7c01994c827 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 14:49:18 +0200 Subject: [PATCH 333/757] gnu: python-django-override-storage: Update to 0.3.0. * gnu/packages/django.scm (python-django-override-storage): Update to 0.3.0. [source]: Switch to GIT-FETCH. [arguments]: New field. [native-inputs]: Add PYTHON-MOCK. --- gnu/packages/django.scm | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 2eea3f2c41..d709d5bf6d 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1247,18 +1247,27 @@ template tag.") (define-public python-django-override-storage (package (name "python-django-override-storage") - (version "0.1.6") + (version "0.3.0") + (home-page "https://github.com/danifus/django-override-storage") (source (origin - (method url-fetch) - (uri (pypi-uri "django-override-storage" version)) + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "022arq94lxnlyykn8wvfnkykhi2dldnsn93pa2i41na551i0wpiv")))) + (base32 "081kzfk7mmybhihvc92d3hsdg0r2k20ydq88fs1fgd348sq1ax51")))) (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "python" "runtests.py")))))) + (native-inputs + `(("python-mock" ,python-mock))) (propagated-inputs `(("python-django" ,python-django))) - (home-page - "https://github.com/danifus/django-override-storage") (synopsis "Django test helpers to manage file storage side effects") (description "This project provides tools to help reduce the side effects of using From 87f067657ef0d51676d5e7980f7da78c23ab9b33 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 11 Sep 2020 17:22:48 +0200 Subject: [PATCH 334/757] gnu: Remove python2 versions of Django packages. Python 2 is EOL and not supported by current versions of Django. * gnu/packages/django.scm (python-django, python-django-tagging)[properties]: Remove PYTHON2-VARIANT. * gnu/packages/django.scm (python2-django, python2-django-simple-math-captcha, python2-pytest-django, python2-django-filter, python2-django-allauth, python2-django-gravatar2, python2-django-assets, python2-django-jsonfield, python2-dj-database-url, python2-django-bulk-update, python2-django-contact-form, python2-django-contrib-comments, python2-django-overextends, python2-django-redis, python2-django-rq, python2-django-sortedm2m, python2-django-appconf, python2-django-statici18n, python2-django-tagging): Remove variables. --- gnu/packages/django.scm | 82 +---------------------------------------- 1 file changed, 1 insertion(+), 81 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index d709d5bf6d..7f7b96b787 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -126,21 +126,7 @@ development and clean, pragmatic design. It provides many tools for building any Web site. Django focuses on automating as much as possible and adhering to the @dfn{don't repeat yourself} (DRY) principle.") (license license:bsd-3) - (properties `((python2-variant . ,(delay python2-django)) - (cpe-name . "django"))))) - -(define-public python2-django - (let ((base (package-with-python2 (strip-python2-variant python-django)))) - (package - (inherit base) - (native-inputs - `(;; Test requirements for Python 2 taken from - ;; tests/requirements/py3.txt: enum34 and mock. - ("python2-enum34" ,python2-enum34) - ("python2-mock" ,python2-mock) - ;; When adding memcached mind: for Python 2 memcached <= 1.53 is - ;; required. - ,@(package-native-inputs base)))))) + (properties `((cpe-name . "django"))))) (define-public python-django-2.2 (package @@ -238,9 +224,6 @@ with no settings.py configuration necessary, but instead can be configured with arguments to the field constructor.") (license license:asl2.0))) -(define-public python2-django-simple-math-captcha - (package-with-python2 python-django-simple-math-captcha)) - (define-public python-django-classy-tags (package (name "python-django-classy-tags") @@ -370,9 +353,6 @@ size and quality.") useful tools for testing Django applications and projects.") (license license:bsd-3))) -(define-public python2-pytest-django - (package-with-python2 python-pytest-django)) - (define-public python-django-haystack (package (name "python-django-haystack") @@ -452,9 +432,6 @@ filter down a queryset based on a model’s fields, displaying the form to let them do this.") (license license:bsd-3))) -(define-public python2-django-filter - (package-with-python2 python-django-filter)) - (define-public python-django-allauth (package (name "python-django-allauth") @@ -491,9 +468,6 @@ registration, account management as well as 3rd party (social) account authentication.") (license license:expat))) -(define-public python2-django-allauth - (package-with-python2 python-django-allauth)) - (define-public python-django-debug-toolbar (package (name "python-django-debug-toolbar") @@ -553,9 +527,6 @@ request and response as a toolbar on the rendered page.") templatetags and a full test suite.") (license license:expat))) -(define-public python2-django-gravatar2 - (package-with-python2 python-django-gravatar2)) - (define-public python-django-assets (package (name "python-django-assets") @@ -580,9 +551,6 @@ files. Integrates the webassets library with Django, adding support for merging, minifying and compiling CSS and Javascript files.") (license license:bsd-2))) -(define-public python2-django-assets - (package-with-python2 python-django-assets)) - (define-public python-django-jinja (package (name "python-django-jinja") @@ -652,9 +620,6 @@ validated JSON in your model. It silently takes care of serialization. To use, simply add the field to one of your models.") (license license:expat))) -(define-public python2-django-jsonfield - (package-with-python2 python-django-jsonfield)) - (define-public python-dj-database-url (package (name "python-dj-database-url") @@ -677,9 +642,6 @@ dictionary, populated with all the data specified in your URL. There is also a conn_max_age argument to easily enable Django’s connection pool.") (license license:bsd-2))) -(define-public python2-dj-database-url - (package-with-python2 python-dj-database-url)) - (define-public python-django-picklefield (package (name "python-django-picklefield") @@ -731,9 +693,6 @@ conn_max_age argument to easily enable Django’s connection pool.") project aims to bulk update given objects using one query over Django ORM.") (license license:expat))) -(define-public python2-django-bulk-update - (package-with-python2 python-django-bulk-update)) - (define-public python-django-contact-form (package (name "python-django-contact-form") @@ -766,9 +725,6 @@ project aims to bulk update given objects using one query over Django ORM.") for Django sites.") (license license:bsd-3))) -(define-public python2-django-contact-form - (package-with-python2 python-django-contact-form)) - (define-public python-django-contrib-comments (package (name "python-django-contrib-comments") @@ -791,9 +747,6 @@ used to attach comments to any model, so you can use it for comments on blog entries, photos, book chapters, or anything else.") (license license:bsd-3))) -(define-public python2-django-contrib-comments - (package-with-python2 python-django-contrib-comments)) - (define-public python-django-overextends (package (name "python-django-overextends") @@ -824,9 +777,6 @@ override and extend templates from other reusable apps, in your own Django project.") (license license:bsd-2))) -(define-public python2-django-overextends - (package-with-python2 python-django-overextends)) - (define-public python-django-pipeline (package (name "python-django-pipeline") @@ -905,9 +855,6 @@ support, and optional data-URI image and font embedding.") "Full featured redis cache backend for Django.") (license license:bsd-3))) -(define-public python2-django-redis - (package-with-python2 python-django-redis)) - (define-public python-django-rq (package (name "python-django-rq") @@ -944,9 +891,6 @@ Django-RQ is a simple app that allows you to configure your queues in django's settings.py and easily use them in your project.") (license license:expat))) -(define-public python2-django-rq - (package-with-python2 python-django-rq)) - (define-public python-django-q (package (name "python-django-q") @@ -1002,9 +946,6 @@ The provided SortedManyToManyField behaves like the original one but remembers the order of added relations.") (license license:bsd-3))) -(define-public python2-django-sortedm2m - (package-with-python2 python-django-sortedm2m)) - (define-public python-django-appconf (package (name "python-django-appconf") @@ -1036,9 +977,6 @@ django-appconf and can't easily be used as a replacement. The similarity in name is purely coincidental.") (license license:bsd-3))) -(define-public python2-django-appconf - (package-with-python2 python-django-appconf)) - (define-public python-django-statici18n (package (name "python-django-statici18n") @@ -1075,9 +1013,6 @@ name is purely coincidental.") static files.") (license license:bsd-3))) -(define-public python2-django-statici18n - (package-with-python2 python-django-statici18n)) - (define-public python-django-tagging (package (name "python-django-tagging") @@ -1104,23 +1039,8 @@ static files.") (description "This package provides a generic tagging application for Django projects, which allows association of a number of tags with any @code{Model} instance and makes retrieval of tags simple.") - (properties `((python2-variant . ,(delay python2-django-tagging)))) (license license:bsd-3))) -(define-public python2-django-tagging - (let ((base (package-with-python2 - (strip-python2-variant python-django-tagging)))) - (package - (inherit base) - (version "0.4.6") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django-tagging" version)) - (sha256 - (base32 - "0s7b4v45j783yaxs7rni10k24san0ya77nqz4s7zdf3jhfpk42r1"))))))) - (define-public python-djangorestframework (package (name "python-djangorestframework") From 6673d1b58b8f46c1236a3484f44d7afd82e37a0f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 11 Sep 2020 17:59:16 +0200 Subject: [PATCH 335/757] gnu: Deprecate python-django-jsonfield. * gnu/packages/django.scm (python-django-jsonfield): Rewrite in terms of DEPRECATED-PACKAGE with PYTHON-DJANGO as the replacement. --- gnu/packages/django.scm | 28 ++-------------------------- 1 file changed, 2 insertions(+), 26 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 7f7b96b787..943958f089 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -592,33 +592,9 @@ provides certain advantages over the builtin Jinja2 backend in Django, for example, explicit calls to callables from templates and better performance.") (license license:bsd-3))) +;; JSONField is now built-in to Django, obsoleting this package. (define-public python-django-jsonfield - (package - (name "python-django-jsonfield") - (version "1.0.3") - (source (origin - (method url-fetch) - (uri (pypi-uri "jsonfield" version)) - (sha256 - (base32 - "19x4lak0hg9c20r7mvf27w7i8r6i4sg2g0ypmlmp2665fnk76zvy")))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'fix-tests - (lambda _ - (substitute* "jsonfield/tests.py" - (("django.forms.util") "django.forms.utils"))))))) - (propagated-inputs - `(("python-django" ,python-django))) - (home-page "https://github.com/bradjasper/django-jsonfield") - (synopsis "Store validated JSON in your model") - (description - "Django-jsonfield is a reusable Django field that allows you to store -validated JSON in your model. It silently takes care of serialization. To -use, simply add the field to one of your models.") - (license license:expat))) + (deprecated-package "python-django-jsonfield" python-django)) (define-public python-dj-database-url (package From 758fb0478eb48ff173b0036beb27656c716b050d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 15:04:09 +0200 Subject: [PATCH 336/757] gnu: python-ldap: Update to 3.3.1. * gnu/packages/openldap.scm (python-ldap): Update to 3.3.1. --- gnu/packages/openldap.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm index 14bf874f48..6e863388d8 100644 --- a/gnu/packages/openldap.scm +++ b/gnu/packages/openldap.scm @@ -191,14 +191,14 @@ an LDAP server.") (define-public python-ldap (package (name "python-ldap") - (version "3.1.0") + (version "3.3.1") (source (origin (method url-fetch) (uri (pypi-uri "python-ldap" version)) (sha256 (base32 - "1i97nwfnraylyn0myxlf3vciicrf5h6fymrcff9c00k581wmx5s1")))) + "198as30xy6p760niqps2zdvq2xcmr765h06pmda8fa9y077wl4a7")))) (build-system python-build-system) (arguments `(#:phases From 44272f2d7bdd7f50dbc160a1cf50010e6f620d25 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 15:13:50 +0200 Subject: [PATCH 337/757] gnu: Add python-django-auth-ldap. * gnu/packages/django.scm (python-django-auth-ldap): New public variable. --- gnu/packages/django.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 943958f089..d19395a906 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -34,6 +34,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages check) #:use-module (gnu packages geo) + #:use-module (gnu packages openldap) #:use-module (gnu packages python) #:use-module (gnu packages python-compression) #:use-module (gnu packages python-crypto) @@ -1169,3 +1170,38 @@ template tag.") "This project provides tools to help reduce the side effects of using FileFields during tests.") (license license:expat))) + +(define-public python-django-auth-ldap + (package + (name "python-django-auth-ldap") + (version "2.2.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "django-auth-ldap" version)) + (sha256 + (base32 + "1gq49l5lv6ar6yf73c8pix8n7md4109yq31s5jfk64w6n1rigbqi")))) + (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda* (#:key inputs #:allow-other-keys) + (let ((openldap (assoc-ref inputs "openldap"))) + ;; The tests need 'slapd' which is installed to the + ;; libexec directory of OpenLDAP. + (setenv "SLAPD" (string-append openldap "/libexec/slapd")) + (setenv "SCHEMA" + (string-append openldap "/etc/openldap/schema")) + (invoke "python" "-m" "django" "test" + "--settings" "tests.settings"))))))) + (native-inputs + `(("openldap" ,openldap) + ("python-mock" ,python-mock))) + (propagated-inputs + `(("python-django" ,python-django) + ("python-ldap" ,python-ldap))) + (home-page "https://github.com/django-auth-ldap/django-auth-ldap") + (synopsis "Django LDAP authentication backend") + (description + "This packages provides a LDAP authentication backend for Django.") + (license license:bsd-2))) From c96bc57a1e8b517e987bb1bd7144be46d05b0bbc Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 15:18:51 +0200 Subject: [PATCH 338/757] gnu: Add python-django-logging-json. * gnu/packages/django.scm (python-django-logging-json): New public variable. --- gnu/packages/django.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index d19395a906..b109df148c 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1205,3 +1205,28 @@ FileFields during tests.") (description "This packages provides a LDAP authentication backend for Django.") (license license:bsd-2))) + +(define-public python-django-logging-json + (package + (name "python-django-logging-json") + (version "1.15") + (source (origin + (method url-fetch) + (uri (pypi-uri "django-logging-json" version)) + (sha256 + (base32 + "06041a8icazzp73kg93c7k1ska12wvkq7fpcad0l0sm1qnxx5yx7")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ;no tests + (propagated-inputs + `(("python-certifi" ,python-certifi) + ("python-django" ,python-django) + ("python-elasticsearch" ,python-elasticsearch) + ("python-six" ,python-six))) + (home-page "https://github.com/cipriantarta/django-logging") + (synopsis "Log requests/responses in various formats") + (description + "This package provides a Django library that logs request, response, +and exception details in a JSON document. It can also send logs directly +to ElasticSearch.") + (license license:bsd-2))) From cc62ab592fa9876d92043b6cb7dcbd9832857f4e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 15:23:53 +0200 Subject: [PATCH 339/757] gnu: Add python-django-netfields. * gnu/packages/django.scm (python-django-netfields): New public variable. --- gnu/packages/django.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index b109df148c..43d73de2f1 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1230,3 +1230,27 @@ FileFields during tests.") and exception details in a JSON document. It can also send logs directly to ElasticSearch.") (license license:bsd-2))) + +(define-public python-django-netfields + (package + (name "python-django-netfields") + (version "1.2.2") + (source (origin + (method url-fetch) + (uri (pypi-uri "django-netfields" version)) + (sha256 + (base32 + "1c47azr5am0q8g45x0fbn0cay7vyrack6n7k6siliw1j2p0gzi7s")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ;XXX: Requires a running PostgreSQL server + (propagated-inputs + `(("python-django" ,python-django) + ("python-ipaddress" ,python-ipaddress) + ("python-netaddr" ,python-netaddr) + ("python-six" ,python-six))) + (home-page "https://github.com/jimfunk/django-postgresql-netfields") + (synopsis "PostgreSQL netfields implementation for Django") + (description + "This package provides mappings for the PostgreSQL @code{INET} and +@code{CIDR} fields for use in Django projects.") + (license license:bsd-3))) From de84d3b1e230bc90c6a12153e2e59b7e09b41ab7 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 17:02:59 +0200 Subject: [PATCH 340/757] gnu: Add python-sqlalchemy-mock. * gnu/packages/databases.scm (python-alchemy-mock): New public variable. --- gnu/packages/databases.scm | 41 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index cb6cf688ff..f26deb497d 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -2715,6 +2715,47 @@ You might also want to install the following optional dependencies: (define-public python2-sqlalchemy-utils (package-with-python2 python-sqlalchemy-utils)) +(define-public python-alchemy-mock + (package + (name "python-alchemy-mock") + (version "0.4.3") + (home-page "https://github.com/miki725/alchemy-mock") + (source (origin + (method url-fetch) + (uri (pypi-uri "alchemy-mock" version)) + (sha256 + (base32 + "0ylxygl3bcdapzz529n8wgk7vx9gjwb3ism564ypkpd7dbsw653r")))) + (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + ;; Create pytest.ini that adds doctest options to + ;; prevent test failure. Taken from tox.ini. + (call-with-output-file "pytest.ini" + (lambda (port) + (format port "[pytest] +doctest_optionflags=IGNORE_EXCEPTION_DETAIL +"))) + (invoke "pytest" "-vv" "--doctest-modules" + "alchemy_mock/")))))) + (native-inputs + `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest))) + (propagated-inputs + `(("python-six" ,python-six) + ("python-sqlalchemy" ,python-sqlalchemy))) + (synopsis "Mock helpers for SQLAlchemy") + (description + "This package provides mock helpers for SQLAlchemy that makes it easy +to mock an SQLAlchemy session while preserving the ability to do asserts. + +Normally Normally SQLAlchemy's expressions cannot be easily compared as +comparison on binary expression produces yet another binary expression, but +this library provides functions to facilitate such comparisons.") + (license license:expat))) + (define-public python-alembic (package (name "python-alembic") From 28e997e88b692fde9ba5c61213b26962cb473c95 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 17:34:32 +0200 Subject: [PATCH 341/757] gnu: Add python-jsonplus. * gnu/packages/python-xyz.scm (python-jsonplus): New public variable. --- gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3094b07c6d..0e9809ebfe 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -19876,6 +19876,31 @@ hard (or impossible without root privileges) to set the state of the real services to what you expect in your tests.") (license license:lgpl3+))) +(define-public python-jsonplus + (package + (name "python-jsonplus") + (version "0.8.0") + (home-page "https://github.com/randomir/jsonplus") + (source (origin + (method url-fetch) + (uri (pypi-uri "jsonplus" version)) + (sha256 + (base32 + "05yv3dw813zwas9snz124k2hki49y268b3mx0gj9w7v1nrjmglq1")))) + (build-system python-build-system) + ;; XXX: No tests on PyPI, and the repository has no tags. + (arguments '(#:tests? #f)) + (propagated-inputs + `(("python-dateutil" ,python-dateutil) + ("python-simplejson" ,python-simplejson) + ("python-sortedcontainers" ,python-sortedcontainers))) + (synopsis "Serialize Python types to/from JSON") + (description + "This package provides functionality to serialize arbitrary data types +to and from JSON. Common data types are implemented and it is easy to +register custom encoders and decoders.") + (license license:expat))) + (define-public python-ujson (package (name "python-ujson") From 5bbc98a35d955571422b23aafed895ea95fe0cf0 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 17:38:12 +0200 Subject: [PATCH 342/757] gnu: Add python-django-debug-toolbar-alchemy. * gnu/packages/django.scm (python-django-debug-toolbar-alchemy): New public variable. --- gnu/packages/django.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 43d73de2f1..6953f8d0d3 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -504,6 +504,32 @@ account authentication.") request and response as a toolbar on the rendered page.") (license license:bsd-3))) +(define-public python-django-debug-toolbar-alchemy + (package + (name "python-django-debug-toolbar-alchemy") + (version "0.1.5") + (home-page "https://github.com/miki725/django-debug-toolbar-alchemy") + (source (origin + (method url-fetch) + (uri (pypi-uri "django-debug-toolbar-alchemy" version)) + (sha256 + (base32 + "1kmpzghnsc247bc1dl22s4y62k9ijgy1pjms227018h5a4frsa5b")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ;XXX: 'make check' does "echo TODO" + (propagated-inputs + `(("python-django" ,python-django) + ("python-django-debug-toolbar" ,python-django-debug-toolbar) + ("python-jsonplus" ,python-jsonplus) + ("python-six" ,python-six) + ("python-sqlalchemy" ,python-sqlalchemy))) + (synopsis "Django Debug Toolbar panel for SQLAlchemy") + (description + "This package completely mimics the default Django Debug Toolbar SQL +panel (internally it is actually subclassed), but instead of displaying +queries done via the Django ORM, SQLAlchemy generated queries are displayed.") + (license license:expat))) + (define-public python-django-gravatar2 (package (name "python-django-gravatar2") From 4f1b919156229957a686a9418a4753051f275a37 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Sep 2020 18:05:41 +0200 Subject: [PATCH 343/757] gnu: Add python-django-url-filter. * gnu/packages/django.scm (python-django-url-filter): New public variable. --- gnu/packages/django.scm | 47 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 6953f8d0d3..f9a4a9089e 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1280,3 +1280,50 @@ to ElasticSearch.") "This package provides mappings for the PostgreSQL @code{INET} and @code{CIDR} fields for use in Django projects.") (license license:bsd-3))) + +(define-public python-django-url-filter + (package + (name "python-django-url-filter") + (version "0.3.15") + (home-page "https://github.com/miki725/django-url-filter") + (source (origin + (method git-fetch) + (uri (git-reference (url home-page) (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0r4zhqhs8y6cnplwyvcb0zpijizw1ifnszs38n4w8138657f9026")))) + (build-system python-build-system) + (arguments + '(#:tests? #f ;FIXME: Django raises "Apps aren't loaded yet"!? + #:phases (modify-phases %standard-phases + (add-before 'check 'loosen-requirements + (lambda _ + ;; Do not depend on compatibility package for old + ;; Python versions. + (substitute* "requirements.txt" + (("enum-compat") "")) + #t)) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (if tests? + (begin + (setenv "PYTHONPATH" + (string-append "./build/lib:.:" + (getenv "PYTHONPATH"))) + (setenv "DJANGO_SETTINGS_MODULE" + "test_project.settings") + (invoke "pytest" "-vv" "--doctest-modules" + "tests/" "url_filter/")) + (format #t "test suite not run~%"))))))) + (propagated-inputs + `(("python-cached-property" ,python-cached-property) + ("python-django" ,python-django) + ("python-six" ,python-six))) + (synopsis "Filter data via human-friendly URLs") + (description + "The main goal of Django URL Filter is to provide an easy URL interface +for filtering data. It allows the user to safely filter by model attributes +and also allows to specify the lookup type for each filter (very much like +Django's filtering system in ORM).") + (license license:expat))) From 18eea4499f4ab6cbd71ce66003e33927bf2b4321 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 11 Sep 2020 18:52:45 +0200 Subject: [PATCH 344/757] gnu: Remove python-django-overextends. This package does not work with newer versions of Django and its functionality has been superseded by a built-in extends module. * gnu/packages/django.scm (python-django-overextends): Remove variable. --- gnu/packages/django.scm | 30 ------------------------------ 1 file changed, 30 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index f9a4a9089e..e1a2548f14 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -750,36 +750,6 @@ used to attach comments to any model, so you can use it for comments on blog entries, photos, book chapters, or anything else.") (license license:bsd-3))) -(define-public python-django-overextends - (package - (name "python-django-overextends") - (version "0.4.3") - (source (origin - (method url-fetch) - (uri (pypi-uri "django-overextends" version)) - (sha256 - (base32 - "0qc2pcf3i56pmfxh2jw7k3pgljd8xzficmkl2541n7bkcbngqfzm")))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ (invoke "./test_project/manage.py" "test")))))) - (propagated-inputs - `(("python-django" ,python-django))) - (native-inputs - `(("sphinx-me" ,python-sphinx-me))) - (home-page "https://github.com/stephenmcd/django-overextends") - (synopsis "Circular template inheritance") - (description - "A Django reusable app providing the overextends template tag, a drop-in -replacement for Django's extends tag, which allows you to use circular template -inheritance. The primary use-case for overextends is to simultaneously -override and extend templates from other reusable apps, in your own Django -project.") - (license license:bsd-2))) - (define-public python-django-pipeline (package (name "python-django-pipeline") From d7922f488b658b1adb5aff09f04a9bed0221aee1 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 12 Sep 2020 02:10:11 +0200 Subject: [PATCH 345/757] gnu: Django packages no longer propagate Django. This makes them easier to use with different versions of Django. (python-django-classy-tags, python-django-debug-toolbar-alchemy, python-django-jinja, python-django-bulk-update, python-djangorestframework)[propagated-inputs]: Remove PYTHON-DJANGO. (python-django-contrib-comments)[propagated-inputs]: Likewise. Add PYTHON-SIX. [native-inputs]: Add PYTHON-DJANGO. * gnu/packages/django.scm (python-django-extensions, python-django-simple-math-captcha, python-django-taggit, python-easy-thumbnails, python-django-haystack, python-django-allauth, python-django-debug-toolbar, python-django-assets, python-django-picklefield, python-django-contact-form), python-django-pipeline, python-django-redis, python-django-rq, python-django-q, python-django-sortedm2m, python-django-appconf, python-django-statici18n, python-django-sekizai, python-django-crispy-forms, python-django-override-storage, python-django-auth-ldap, python-django-logging-json, python-django-netfields, python-django-url-filter)[propagated-inputs]: Move PYTHON-DJANGO ... [native-inputs]: ... here. --- gnu/packages/django.scm | 121 ++++++++++++++++++++-------------------- 1 file changed, 59 insertions(+), 62 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index e1a2548f14..3fee18a102 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -166,10 +166,10 @@ to the @dfn{don't repeat yourself} (DRY) principle.") `(("python-six" ,python-six) ("python-vobject" ,python-vobject) ("python-werkzeug" ,python-werkzeug) - ("python-dateutil" ,python-dateutil) - ("python-django" ,python-django))) + ("python-dateutil" ,python-dateutil))) (native-inputs - `(("python-mock" ,python-mock) + `(("python-django" ,python-django) + ("python-mock" ,python-mock) ("python-factory-boy" ,python-factory-boy) ("python-tox" ,python-tox) ("python-pytest" ,python-pytest) @@ -214,10 +214,10 @@ commands, additional database fields and admin extensions.") (lambda _ (invoke "python" "runtests.py")))))) (native-inputs - `(("python-mock" ,python-mock))) - (propagated-inputs `(("python-django" ,python-django) - ("python-six" ,python-six))) + ("python-mock" ,python-mock))) + (propagated-inputs + `(("python-six" ,python-six))) (synopsis "Easy-to-use math field/widget captcha for Django forms") (description "A multi-value-field that presents a human answerable question, @@ -239,8 +239,6 @@ with arguments to the field constructor.") (build-system python-build-system) ;; FIXME: How to make the test templates available to Django? (arguments '(#:tests? #f)) - (propagated-inputs - `(("python-django" ,python-django))) (home-page "https://github.com/divio/django-classy-tags") (synopsis "Class based template tags for Django") (description @@ -269,10 +267,10 @@ when coding custom template tags.") (lambda _ (invoke "python3" "-m" "django" "test" "--settings=tests.settings")))))) (propagated-inputs - `(("python-django" ,python-django) - ("python-isort" ,python-isort))) + `(("python-isort" ,python-isort))) (native-inputs - `(("python-pytest" ,python-pytest) + `(("python-django" ,python-django) + ("python-pytest" ,python-pytest) ("python-mock" ,python-mock))) (home-page "https://github.com/jazzband/django-taggit") @@ -294,9 +292,10 @@ when coding custom template tags.") (base32 "14gzp5cv24z0qhxb7f7k7v9jgzpaj4n8yhjq83ynpx8183fs1rz4")))) (build-system python-build-system) + (native-inputs + `(("python-django" ,python-django))) (propagated-inputs - `(("python-django" ,python-django) - ("python-pillow" ,python-pillow))) + `(("python-pillow" ,python-pillow))) (home-page "https://github.com/SmileyChris/easy-thumbnails") (synopsis "Easy thumbnails for Django") (description @@ -381,11 +380,10 @@ useful tools for testing Django applications and projects.") "/lib")) #t))) #:tests? #f)) ; OSError: libgdal.so.27: cannot open shared object file - (propagated-inputs - `(("python-django" ,python-django))) (native-inputs `(("gdal" ,gdal) ("python-coverage" ,python-coverage) + ("python-django" ,python-django) ("python-dateutil" ,python-dateutil) ("python-geopy" ,python-geopy) ("python-mock" ,python-mock) @@ -458,9 +456,8 @@ them do this.") ("python-requests" ,python-requests) ("python-requests-oauthlib" ,python-requests-oauthlib))) (native-inputs - `(("python-mock" ,python-mock))) - (inputs - `(("python-django" ,python-django))) + `(("python-django" ,python-django) + ("python-mock" ,python-mock))) (home-page "https://github.com/pennersr/django-allauth") (synopsis "Set of Django applications addressing authentication") (description @@ -485,10 +482,10 @@ account authentication.") "14069rlgjd5g724iaglai0nc636g9km4ba56r4j3k84chibqzn03")))) (build-system python-build-system) (propagated-inputs - `(("python-sqlparse" ,python-sqlparse) - ("python-django" ,python-django))) + `(("python-sqlparse" ,python-sqlparse))) (native-inputs - `(("python-django-jinja" ,python-django-jinja) + `(("python-django" ,python-django) + ("python-django-jinja" ,python-django-jinja) ("python-html5lib" ,python-html5lib))) (arguments '(#:phases @@ -518,8 +515,7 @@ request and response as a toolbar on the rendered page.") (build-system python-build-system) (arguments '(#:tests? #f)) ;XXX: 'make check' does "echo TODO" (propagated-inputs - `(("python-django" ,python-django) - ("python-django-debug-toolbar" ,python-django-debug-toolbar) + `(("python-django-debug-toolbar" ,python-django-debug-toolbar) ("python-jsonplus" ,python-jsonplus) ("python-six" ,python-six) ("python-sqlalchemy" ,python-sqlalchemy))) @@ -566,10 +562,10 @@ templatetags and a full test suite.") "0fc6i77faxxv1gjlp06lv3kw64b5bhdiypaygfxh5djddgk83fwa")))) (build-system python-build-system) (native-inputs - `(("python-nose" ,python-nose))) - (propagated-inputs `(("python-django" ,python-django) - ("python-webassets" ,python-webassets))) + ("python-nose" ,python-nose))) + (propagated-inputs + `(("python-webassets" ,python-webassets))) (home-page "https://github.com/miracle2k/django-assets") (synopsis "Asset management for Django") (description @@ -594,8 +590,7 @@ merging, minifying and compiling CSS and Javascript files.") "06ldbkfkm6sc0p9sqpjph06gxrqpj78ih3dc2yik2fcba2y5mak1")))) (build-system python-build-system) (propagated-inputs - `(("python-django" ,python-django) - ("python-jinja2" ,python-jinja2) + `(("python-jinja2" ,python-jinja2) ("python-pytz" ,python-pytz) ("python-django-pipeline" ,python-django-pipeline))) (arguments @@ -668,7 +663,7 @@ conn_max_age argument to easily enable Django’s connection pool.") (lambda _ (invoke "python" "-m" "django" "test" "-v2" "--settings=tests.settings")))))) - (propagated-inputs `(("python-django" ,python-django))) + (native-inputs `(("python-django" ,python-django))) (synopsis "Pickled object field for Django") (description "Pickled object field for Django") (license license:expat))) @@ -687,8 +682,6 @@ conn_max_age argument to easily enable Django’s connection pool.") (arguments ;; XXX: Tests require a Postgres database. `(#:tests? #f)) - (propagated-inputs - `(("python-django" ,python-django))) (home-page "https://github.com/aykut/django-bulk-update") (synopsis "Simple bulk update over Django ORM or with helper function") (description @@ -718,9 +711,8 @@ project aims to bulk update given objects using one query over Django ORM.") (invoke "coverage" "run" "--source" "contact_form" "runtests.py")))))) (native-inputs - `(("python-coverage" ,python-coverage))) - (propagated-inputs - `(("python-django" ,python-django))) + `(("python-coverage" ,python-coverage) + ("python-django" ,python-django))) (home-page "https://github.com/ubernostrum/django-contact-form") (synopsis "Contact form for Django") (description @@ -739,8 +731,10 @@ for Django sites.") (base32 "0ccdiv784a5vnpfal36km4dyg12340rwhpr0riyy0k89wfnjn8yi")))) (build-system python-build-system) - (propagated-inputs + (native-inputs `(("python-django" ,python-django))) + (propagated-inputs + `(("python-six" ,python-six))) (home-page "https://github.com/django/django-contrib-comments") (synopsis "Comments framework") (description @@ -780,9 +774,10 @@ entries, photos, book chapters, or anything else.") (getenv "PYTHONPATH"))) (setenv "DJANGO_SETTINGS_MODULE" "tests.settings") (invoke "django-admin" "test" "tests")))))))) + (native-inputs + `(("python-django" ,python-django))) (propagated-inputs `(("python-css-html-js-minify" ,python-css-html-js-minify) - ("python-django" ,python-django) ("python-slimit" ,python-slimit) ("python-jsmin" ,python-jsmin))) (home-page @@ -814,14 +809,14 @@ support, and optional data-URI image and font embedding.") (with-directory-excursion "tests" (invoke "python" "runtests.py"))))))) (native-inputs - `(("python-fakeredis" ,python-fakeredis) + `(("python-django" ,python-django) + ("python-fakeredis" ,python-fakeredis) ("python-hiredis" ,python-hiredis) ("python-mock" ,python-mock) ("python-msgpack" ,python-msgpack) ("redis" ,redis))) (propagated-inputs - `(("python-django" ,python-django) - ("python-redis" ,python-redis))) + `(("python-redis" ,python-redis))) (home-page "https://github.com/niwibe/django-redis") (synopsis "Full featured redis cache backend for Django") (description @@ -849,13 +844,13 @@ support, and optional data-URI image and font embedding.") "--settings=django_rq.tests.settings" "--pythonpath=.")))))) (native-inputs - `(("python-django-redis" ,python-django-redis) + `(("python-django" ,python-django) + ("python-django-redis" ,python-django-redis) ("python-mock" ,python-mock) ("python-rq-scheduler" ,python-rq-scheduler) ("redis" ,redis))) (propagated-inputs - `(("python-django" ,python-django) - ("python-rq" ,python-rq))) + `(("python-rq" ,python-rq))) (home-page "https://github.com/ui/django-rq") (synopsis "Django integration with RQ") (description @@ -878,10 +873,11 @@ settings.py and easily use them in your project.") (build-system python-build-system) ;; FIXME: Tests require disque, Redis, MongoDB, Docker. (arguments '(#:tests? #f)) + (native-inputs + `(("python-django" ,python-django))) (propagated-inputs `(("python-arrow" ,python-arrow) ("python-blessed" ,python-blessed) - ("python-django" ,python-django) ("python-django-picklefield" ,python-django-picklefield))) (home-page "https://django-q.readthedocs.io/") (synopsis "Multiprocessing distributed task queue for Django") @@ -909,7 +905,7 @@ using Python multiprocessing.") "./build/lib:.:" (getenv "PYTHONPATH"))) (invoke "django-admin.py" "test" "--settings=settings")))))) - (propagated-inputs + (native-inputs `(("python-django" ,python-django))) (home-page "https://github.com/jazzband/django-sortedm2m") (synopsis "Drop-in replacement for django's own ManyToManyField") @@ -938,7 +934,7 @@ the order of added relations.") (getenv "PYTHONPATH"))) (setenv "DJANGO_SETTINGS_MODULE" "tests.test_settings") (invoke "django-admin.py" "test" "-v2")))))) - (propagated-inputs + (native-inputs `(("python-django" ,python-django))) (home-page "https://github.com/django-compressor/django-appconf") (synopsis "Handle configuration defaults of packaged Django apps") @@ -975,11 +971,11 @@ name is purely coincidental.") (setenv "DJANGO_SETTINGS_MODULE" "project.settings") (invoke "pytest" "-vv")))))) (native-inputs - `(("python-pytest" ,python-pytest) + `(("python-django" ,python-django) + ("python-pytest" ,python-pytest) ("python-pytest-django" ,python-pytest-django))) (propagated-inputs - `(("python-django" ,python-django) - ("django-appconf" ,python-django-appconf))) + `(("django-appconf" ,python-django-appconf))) (synopsis "Generate JavaScript catalog to static files") (description "A Django app that provides helper for generating JavaScript catalog to @@ -1029,8 +1025,6 @@ Django projects, which allows association of a number of tags with any (arguments '(;; No included tests #:tests? #f)) - (propagated-inputs - `(("python-django" ,python-django))) (home-page "https://www.django-rest-framework.org") (synopsis "Toolkit for building Web APIs with Django") (description @@ -1051,9 +1045,10 @@ provides features like a web browseable API and authentication policies.") "0vrkli625b5s1wldri3dyrfvqbxg7zxy2pg0rpjixw3b1ndz0ag8")))) (build-system python-build-system) (arguments '(#:tests? #f)) ; Tests not included with release. + (native-inputs + `(("python-django" ,python-django))) (propagated-inputs - `(("python-django" ,python-django) - ("python-django-classy-tags" ,python-django-classy-tags) + `(("python-django-classy-tags" ,python-django-classy-tags) ("python-six" ,python-six))) (home-page "https://github.com/divio/django-sekizai") (synopsis "Template blocks for Django projects") @@ -1082,7 +1077,7 @@ a single block.") (arguments '(;; No included tests #:tests? #f)) - (propagated-inputs + (native-inputs `(("python-django" ,python-django))) (home-page "http://github.com/maraujop/django-crispy-forms") @@ -1158,9 +1153,8 @@ template tag.") (lambda _ (invoke "python" "runtests.py")))))) (native-inputs - `(("python-mock" ,python-mock))) - (propagated-inputs - `(("python-django" ,python-django))) + `(("python-django" ,python-django) + ("python-mock" ,python-mock))) (synopsis "Django test helpers to manage file storage side effects") (description "This project provides tools to help reduce the side effects of using @@ -1192,10 +1186,10 @@ FileFields during tests.") "--settings" "tests.settings"))))))) (native-inputs `(("openldap" ,openldap) + ("python-django" ,python-django) ("python-mock" ,python-mock))) (propagated-inputs - `(("python-django" ,python-django) - ("python-ldap" ,python-ldap))) + `(("python-ldap" ,python-ldap))) (home-page "https://github.com/django-auth-ldap/django-auth-ldap") (synopsis "Django LDAP authentication backend") (description @@ -1214,9 +1208,10 @@ FileFields during tests.") "06041a8icazzp73kg93c7k1ska12wvkq7fpcad0l0sm1qnxx5yx7")))) (build-system python-build-system) (arguments '(#:tests? #f)) ;no tests + (native-inputs + `(("python-django" ,python-django))) (propagated-inputs `(("python-certifi" ,python-certifi) - ("python-django" ,python-django) ("python-elasticsearch" ,python-elasticsearch) ("python-six" ,python-six))) (home-page "https://github.com/cipriantarta/django-logging") @@ -1239,9 +1234,10 @@ to ElasticSearch.") "1c47azr5am0q8g45x0fbn0cay7vyrack6n7k6siliw1j2p0gzi7s")))) (build-system python-build-system) (arguments '(#:tests? #f)) ;XXX: Requires a running PostgreSQL server + (native-inputs + `(("python-django" ,python-django))) (propagated-inputs - `(("python-django" ,python-django) - ("python-ipaddress" ,python-ipaddress) + `(("python-ipaddress" ,python-ipaddress) ("python-netaddr" ,python-netaddr) ("python-six" ,python-six))) (home-page "https://github.com/jimfunk/django-postgresql-netfields") @@ -1286,9 +1282,10 @@ to ElasticSearch.") (invoke "pytest" "-vv" "--doctest-modules" "tests/" "url_filter/")) (format #t "test suite not run~%"))))))) + (native-inputs + `(("python-django" ,python-django))) (propagated-inputs `(("python-cached-property" ,python-cached-property) - ("python-django" ,python-django) ("python-six" ,python-six))) (synopsis "Filter data via human-friendly URLs") (description From 94e7335e904138ebd5a8423cf2da278902fa03ae Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 2 Sep 2020 10:11:57 +0200 Subject: [PATCH 346/757] gnu: python2-graphite-web: Update to 1.1.7. * gnu/packages/monitoring.scm (python2-graphite-web): Rename to ... (graphite-web): ... this. Update to 1.1.7. [arguments]: Add #:tests?. Adjust setup.py substitution. [propagated-inputs]: Use the Python 3 versions of all inputs. Use PYTHON-DJANGO-2.2 instead of PYTHON-DJANGO. [home-page]: Use HTTPS. (python2-graphite-web): Deprecate variable. --- gnu/packages/monitoring.scm | 39 ++++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm index 16de32b306..30fe61ea00 100644 --- a/gnu/packages/monitoring.scm +++ b/gnu/packages/monitoring.scm @@ -330,49 +330,52 @@ caching them in memory for \"hot queries\" from the Graphite-Web application, and persisting them to disk using the Whisper time-series library.") (license license:asl2.0))) -(define-public python2-graphite-web +(define-public graphite-web (package - (name "python2-graphite-web") - (version "1.0.2") + (name "graphite-web") + (version "1.1.7") (source (origin (method url-fetch) (uri (pypi-uri "graphite-web" version)) (sha256 (base32 - "0q8bwlj75jqyzmazfsi5sa26xl58ssa8wdxm2l4j0jqyn8xpfnmc")))) + "1l5a5rry9cakqxamvlx4xq63jifmncb6815bg9vy7fg1zyd3pjxk")))) (build-system python-build-system) (arguments - `(#:python ,python-2 ; only supports Python 2 + `(#:tests? #f ;XXX: not in PyPI release & requires database #:phases (modify-phases %standard-phases (add-after 'unpack 'relax-requirements (lambda _ (substitute* "setup.py" - (("0.4.3") ,(package-version python2-django-tagging)) - (("<1.9.99") (string-append "<=" - ,(package-version python2-django)))) + ;; Allow newer versions of django-tagging. + (("django-tagging==") + "django-tagging>=")) #t)) ;; Don't install to /opt (add-after 'unpack 'do-not-install-to-/opt (lambda _ (setenv "GRAPHITE_NO_PREFIX" "1") #t))))) (propagated-inputs - `(("python2-cairocffi" ,python2-cairocffi) - ("python2-pytz" ,python2-pytz) - ("python2-whisper" ,python2-whisper) - ("python2-django" ,python2-django) - ("python2-django-tagging" ,python2-django-tagging) - ("python2-scandir" ,python2-scandir) - ("python2-urllib3" ,python2-urllib3) - ("python2-pyparsing" ,python2-pyparsing) - ("python2-txamqp" ,python2-txamqp))) - (home-page "http://graphiteapp.org/") + `(("python-cairocffi" ,python-cairocffi) + ("python-pytz" ,python-pytz) + ("python-whisper" ,python-whisper) + ("python-django" ,python-django-2.2) + ("python-django-tagging" ,python-django-tagging) + ("python-scandir" ,python-scandir) + ("python-urllib3" ,python-urllib3) + ("python-pyparsing" ,python-pyparsing) + ("python-txamqp" ,python-txamqp))) + (home-page "https://graphiteapp.org/") (synopsis "Scalable realtime graphing system") (description "Graphite is a scalable real-time graphing system that does two things: store numeric time-series data, and render graphs of this data on demand.") (license license:asl2.0))) +(define-public python2-graphite-web + (deprecated-package "python2-graphite-web" graphite-web)) + (define-public python-prometheus-client (package (name "python-prometheus-client") From 1e609d632d40fcc6c26786c0ce673d8823b82c27 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 12 Sep 2020 11:38:43 +0200 Subject: [PATCH 347/757] gnu: Remove python2-mysqlclient. Later versions do not work with Python 2. * gnu/packages/databases.scm (python2-mysqlclient): Remove variable. --- gnu/packages/databases.scm | 3 --- 1 file changed, 3 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index f26deb497d..2f8d1176cb 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -3024,9 +3024,6 @@ for Python. The design goals are: @end enumerate") (license license:gpl2))) -(define-public python2-mysqlclient - (package-with-python2 python-mysqlclient)) - (define-public python-hiredis (package (name "python-hiredis") From eec6a694a70a2cad464ffedd8404d0b1d122cc44 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 12 Sep 2020 11:32:55 +0200 Subject: [PATCH 348/757] gnu: python-mysqlclient: Remove unused inputs. * gnu/packages/databases.scm (python-mysqlclient)[native-inputs]: Remove. [inputs]: Remove ZLIB and OPENSSL. [arguments]: Explicitly set #:tests? as it was a no-op before. --- gnu/packages/databases.scm | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 2f8d1176cb..9d68ab4dc5 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -3004,15 +3004,10 @@ database).") (base32 "0kv4a1icwdav8jpl7qvnr931lw5h3v22ids6lwq6qpi1hjzf33pz")))) (build-system python-build-system) - (native-inputs - `(("nose" ,python-nose) - ("mock" ,python-mock) - ("py.test" ,python-pytest))) + (arguments '(#:tests? #f)) ;XXX: requires a live database (inputs `(("mysql" ,mariadb "lib") - ("mysql-dev" ,mariadb "dev") - ("libz" ,zlib) - ("openssl" ,openssl))) + ("mysql-dev" ,mariadb "dev"))) (home-page "https://github.com/PyMySQL/mysqlclient-python") (synopsis "MySQLdb is an interface to the popular MySQL database server for Python") (description "MySQLdb is an interface to the popular MySQL database server From 5ec1feca992e84b1cc34cb2d3f24d431b135e633 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 12 Sep 2020 11:34:09 +0200 Subject: [PATCH 349/757] gnu: python-mysqlclient: Update to 2.0.1. * gnu/packages/databases.scm (python-mysqlclient): Update to 2.0.1. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 9d68ab4dc5..a9798cbc33 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -2995,14 +2995,14 @@ database).") (define-public python-mysqlclient (package (name "python-mysqlclient") - (version "1.3.13") + (version "2.0.1") (source (origin (method url-fetch) (uri (pypi-uri "mysqlclient" version)) (sha256 (base32 - "0kv4a1icwdav8jpl7qvnr931lw5h3v22ids6lwq6qpi1hjzf33pz")))) + "1rf5l8hazs3v18hmcrm90z3hi9wxv553ipwd5l6kj8j7l6p7abzv")))) (build-system python-build-system) (arguments '(#:tests? #f)) ;XXX: requires a live database (inputs From 37c24c0bd04b099c7d3ef5a251a453ad12373c0e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 12 Sep 2020 12:55:49 +0200 Subject: [PATCH 350/757] gnu: patchwork: Update to 2.2.2. * gnu/packages/patchutils.scm (patchwork): Update to 2.2.2. [arguments]: Remove references to 'pwclient' which is now distributed separately. --- gnu/packages/patchutils.scm | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index 335d251e74..12dd472c68 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -321,7 +321,7 @@ you to figure out what is going on in that merge you keep avoiding.") (define-public patchwork (package (name "patchwork") - (version "2.1.5") + (version "2.2.2") (source (origin (method git-fetch) (uri (git-reference @@ -330,7 +330,7 @@ you to figure out what is going on in that merge you keep avoiding.") (file-name (git-file-name name version)) (sha256 (base32 - "1n4hfwlgmw6mj5kp261zfx47mgb0l7g2yzl1rf0rnm8x69lr3as6")))) + "1cr3lhm589zhvcgfm8gni036866k2livq1rcxbnigjxlw9p5znaf")))) (build-system python-build-system) (arguments `(;; TODO: Tests require a running database @@ -395,24 +395,11 @@ application = get_wsgi_application()\n") port))))) (for-each (lambda (file) (install-file file (string-append out "/bin"))) (list - (string-append out-site-packages - "patchwork/bin/pwclient") (string-append out-site-packages "patchwork/bin/parsemail.sh") (string-append out-site-packages "patchwork/bin/parsemail-batch.sh"))) - ;; Delete the symlink to pwclient, and replace it with the - ;; actual file, as this can cause issues when serving the file - ;; from a webserver. - (let ((template-pwclient (string-append - out-site-packages - "patchwork/templates/patchwork/pwclient"))) - (delete-file template-pwclient) - (copy-file (string-append out-site-packages - "patchwork/bin/pwclient") - template-pwclient)) - ;; Collect the static assets, this includes JavaScript, CSS and ;; fonts. This is a standard Django process when running a ;; Django application for regular use, and includes assets for From a2c0dbb84a5537a0f9edb67dd20af3c7fe773aea Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 22 Sep 2020 18:23:26 +0200 Subject: [PATCH 351/757] gnu: python-hyperkitty: Enable previously failing test. * gnu/packages/mail.scm (python-hyperkitty)[arguments]: Remove substitution. --- gnu/packages/mail.scm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 2f26cf09ef..fcdefbb577 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -3109,10 +3109,6 @@ which sends emails to HyperKitty, the official Mailman3 web archiver.") (modify-phases %standard-phases (replace 'check (lambda _ - ;; It is unclear why this test fails. - (substitute* "hyperkitty/tests/commands/test_import.py" - (("def test_bad_content_type_part_two") - "@SkipTest\n def test_bad_content_type_part_two")) (setenv "PYTHONPATH" (string-append ".:" (getenv "PYTHONPATH"))) (invoke "example_project/manage.py" "test" "--settings=hyperkitty.tests.settings_test")))))) From d3456739c5afd210cdc47b8c147adc277b84bfa8 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Sat, 19 Sep 2020 23:57:41 +0100 Subject: [PATCH 352/757] gnu: samba: Fix fcntl hint detection in configure script. The configure script generates a C program to detect support for lifetime hints on files. But this program could crash, potentially leaving a stale unreadable file behind which could cause the patch-generated-file-shebang phase to fail. Reported upstream . * gnu/packages/patches/patches/samba-fix-fcntl-hint-detection.patch: New file. * gnu/packages/samba.scm (samba)[origin]: Add patch. * gnu/local.mk (dist_patch_DATA): Register patch. --- gnu/local.mk | 1 + .../samba-fix-fcntl-hint-detection.patch | 55 +++++++++++++++++++ gnu/packages/samba.scm | 2 + 3 files changed, 58 insertions(+) create mode 100644 gnu/packages/patches/samba-fix-fcntl-hint-detection.patch diff --git a/gnu/local.mk b/gnu/local.mk index 34d950b3c2..7d246d573d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1406,6 +1406,7 @@ dist_patch_DATA = \ %D%/packages/patches/pango-skip-libthai-test.patch \ %D%/packages/patches/pciutils-hurd-configure.patch \ %D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \ + %D%/packages/patches/samba-fix-fcntl-hint-detection.patch \ %D%/packages/patches/sdl-pango-api_additions.patch \ %D%/packages/patches/sdl-pango-blit_overflow.patch \ %D%/packages/patches/sdl-pango-fillrect_crash.patch \ diff --git a/gnu/packages/patches/samba-fix-fcntl-hint-detection.patch b/gnu/packages/patches/samba-fix-fcntl-hint-detection.patch new file mode 100644 index 0000000000..b56c628537 --- /dev/null +++ b/gnu/packages/patches/samba-fix-fcntl-hint-detection.patch @@ -0,0 +1,55 @@ +From 454ccd986b61799908a6898a55d0480911f15306 Mon Sep 17 00:00:00 2001 +From: Ralph Boehme +Date: Mon, 21 Sep 2020 07:48:43 +0200 +Subject: [PATCH] s3: fix fcntl waf configure check + +RN: Fix fcntl waf configure check +BUG: https://bugzilla.samba.org/show_bug.cgi?id=14503 + +Signed-off-by: Ralph Boehme +Reviewed-by: Volker Lendecke + +Autobuild-User(master): Volker Lendecke +Autobuild-Date(master): Mon Sep 21 07:26:54 UTC 2020 on sn-devel-184 +--- + source3/wscript | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/source3/wscript b/source3/wscript +index 840ed430c0f..d3ef346eecd 100644 +--- a/source3/wscript ++++ b/source3/wscript +@@ -1244,7 +1244,7 @@ err: + + int main(void) + { +- uint64_t *hint, get_hint; ++ uint64_t hint, get_hint; + int fd; + + fd = open(DATA, O_RDONLY | O_CREAT | O_EXCL); +@@ -1252,8 +1252,8 @@ int main(void) + goto err; + } + +- *hint = RWH_WRITE_LIFE_SHORT; +- int ret = fcntl(fd, F_SET_RW_HINT, hint); ++ hint = RWH_WRITE_LIFE_SHORT; ++ int ret = fcntl(fd, F_SET_RW_HINT, &hint); + if (ret == -1) { + goto err; + } +@@ -1267,8 +1267,8 @@ int main(void) + goto err; + } + +- *hint = RWH_WRITE_LIFE_EXTREME; +- ret = fcntl(fd, F_SET_FILE_RW_HINT, hint); ++ hint = RWH_WRITE_LIFE_EXTREME; ++ ret = fcntl(fd, F_SET_FILE_RW_HINT, &hint); + if (ret == -1) { + goto err; + } +-- +2.28.0 + diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index c04426c49c..76a9c01866 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -32,6 +32,7 @@ #:use-module (guix build-system gnu) #:use-module (guix licenses) #:use-module (guix utils) + #:use-module (gnu packages) #:use-module (gnu packages acl) #:use-module (gnu packages admin) #:use-module (gnu packages autotools) @@ -182,6 +183,7 @@ external dependencies.") "samba-" version ".tar.gz")) (sha256 (base32 "1lkgih0vrarf5zy6chspkwarqdylzwr63nxr3qjkpazrs86nlm9h")) + (patches (search-patches "samba-fix-fcntl-hint-detection.patch")) (modules '((guix build utils))) (snippet '(begin From bd1bce0896150d7351d0c5553d197b0d628d8471 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Tue, 22 Sep 2020 10:46:51 -0400 Subject: [PATCH 353/757] gnu: python-mpmath: Update to 1.1.0. * gnu/packages/python-xyz.scm (python-mpmath): Update to 1.1.0. [source]: Download from pypi. [native-inputs]: Add pytest. Signed-off-by: Efraim Flashner --- gnu/packages/python-xyz.scm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0e9809ebfe..9cf226299d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -7525,15 +7525,17 @@ and statistical routines from scipy and statsmodels.") (define-public python-mpmath (package (name "python-mpmath") - (version "0.19") + (version "1.1.0") (source (origin (method url-fetch) - (uri (string-append "http://mpmath.org/files/mpmath-" - version ".tar.gz")) + (uri (pypi-uri "mpmath" version)) + (file-name (git-file-name name version)) (sha256 (base32 - "08ijsr4ifrqv3cjc26mkw0dbvyygsa99in376hr4b96ddm1gdpb8")))) + "1xlrcja213jpfhw25q1jl5pl10w1a2cc68x1c4mkicxsbzhan5zw")))) (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest))) (arguments '(#:phases (modify-phases %standard-phases From 8621ff6bd58033a556c4dbd464b5c697445df8d0 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Tue, 22 Sep 2020 10:47:46 -0400 Subject: [PATCH 354/757] gnu: python-sympy: Update to 1.6.2. * gnu/packages/python-xyz.scm (python-sympy): Update to 1.6.2. [source]: Download from pypi. [arguments]: Make check phase inheritable by python2-sympy. (python2-sympy): Update to 1.5.1. [source]: Download from pypi. [arguments]: Inherit from python-sympy. Signed-off-by: Efraim Flashner --- gnu/packages/python-xyz.scm | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 9cf226299d..b1a2ab5efd 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -7579,15 +7579,13 @@ multiprecision arithmetic.") (define-public python-sympy (package (name "python-sympy") - (version "1.1.1") + (version "1.6.2") (source (origin (method url-fetch) - (uri (string-append - "https://github.com/sympy/sympy/releases/download/sympy-" - version "/sympy-" version ".tar.gz")) + (uri (pypi-uri "sympy" version)) (sha256 - (base32 "190n29sppw7g8ihilc5451y7jlfcaw56crqiqbf1jff43dlmfnxc")))) + (base32 "0247skhkxanczpqqdz6n9k1axgpwl665b25hyn9vgr060p4dryhw")))) (build-system python-build-system) (arguments `(#:phases @@ -7598,7 +7596,9 @@ multiprecision arithmetic.") (delete 'check) (add-after 'install 'check (lambda* (#:key outputs #:allow-other-keys) - (invoke "python3" "-c" "import sympy; sympy.test(\"/core\")") + (invoke + (or (which "python3") (which "python")) + "-c" "import sympy; sympy.test(\"/core\")") #t))))) (propagated-inputs `(("python-mpmath" ,python-mpmath))) @@ -7613,17 +7613,13 @@ as possible in order to be comprehensible and easily extensible.") (define-public python2-sympy (package (inherit (package-with-python2 python-sympy)) - (arguments - `(#:phases - (modify-phases %standard-phases - ;; Run the core tests after installation. By default it would run - ;; *all* tests, which take a very long time to complete and are known - ;; to be flaky. - (delete 'check) - (add-after 'install 'check - (lambda* (#:key outputs #:allow-other-keys) - (invoke "python" "-c" "import sympy; sympy.test(\"/core\")") - #t))))))) + (version "1.5.1") ; last release for python2 + (source + (origin + (method url-fetch) + (uri (pypi-uri "sympy" version)) + (sha256 + (base32 "0zjfbxlkazzh9z22gf62azrkipb2xw7mpzjz3wl1az9893bh2yfp")))))) (define-public python-q (package From e06eeaa4caa6181dc9f13e3f75b1d762669801b8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Sep 2020 23:00:40 +0300 Subject: [PATCH 355/757] gnu: python-sympy: Update check phase. * gnu/packages/python-xyz.scm (python-sympy)[arguments]: Replace 'check phase instead of deleting it and adding it back in. --- gnu/packages/python-xyz.scm | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index b1a2ab5efd..af557fd009 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -7590,16 +7590,11 @@ multiprecision arithmetic.") (arguments `(#:phases (modify-phases %standard-phases - ;; Run the core tests after installation. By default it would run - ;; *all* tests, which take a very long time to complete and are known - ;; to be flaky. - (delete 'check) - (add-after 'install 'check + (replace 'check (lambda* (#:key outputs #:allow-other-keys) (invoke (or (which "python3") (which "python")) - "-c" "import sympy; sympy.test(\"/core\")") - #t))))) + "-c" "import sympy; sympy.test(\"/core\")")))))) (propagated-inputs `(("python-mpmath" ,python-mpmath))) (home-page "https://www.sympy.org/") From dd492cb8536c81aa7b9702f2dca3a3d387b3e7f5 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 22 Sep 2020 00:31:34 +0200 Subject: [PATCH 356/757] gnu: facter: Update to 4.0.38. * gnu/packages/admin.scm (facter): Update to 4.0.38. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index c73e4843eb..36793c5947 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -443,7 +443,7 @@ graphs and can export its output to different formats.") (define-public facter (package (name "facter") - (version "4.0.35") + (version "4.0.38") (source (origin (method git-fetch) (uri (git-reference @@ -452,7 +452,7 @@ graphs and can export its output to different formats.") (file-name (git-file-name name version)) (sha256 (base32 - "1f203g2hp96cp8w4x1myhqdj5j09z9s23kylwkrxr69fjhn0vhnb")))) + "0jrpzkhnz5lv129rkfy68bdsq53n4wsk1vpmhsvykqi5mrkdffck")))) (build-system ruby-build-system) (arguments `(#:phases From bfc0a2ffa8a551b71fd59e58932125f5f87bbb02 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 22 Sep 2020 01:35:48 +0200 Subject: [PATCH 357/757] gnu: cloc: Update to 1.88. * gnu/packages/code.scm (cloc): Update to 1.88. --- gnu/packages/code.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index 3eaefc4e89..7cdd0cc8d6 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -233,7 +233,7 @@ COCOMO model or user-provided parameters.") (define-public cloc (package (name "cloc") - (version "1.86") + (version "1.88") (source (origin (method git-fetch) @@ -242,7 +242,7 @@ COCOMO model or user-provided parameters.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "082gj2b3x11bilz8c572dd60vn6n0fhld5zhi7wk7g1wy9wlgm9w")))) + (base32 "1ixgswzbzv63bl50gb2kgaqr0jcicjz6w610hi9fal1i7744zraw")))) (build-system gnu-build-system) (inputs `(("coreutils" ,coreutils) From adbcc3ed8c11d50356f538b865fd1ca99f413ecc Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 22 Sep 2020 02:16:01 +0200 Subject: [PATCH 358/757] gnu: lcov: Update to 1.15. * gnu/packages/code.scm (lcov): Update to 1.15. [source]: Use a release tarball. [inputs]: Replace perl-perlio-gzip with perl-io-compress. --- gnu/packages/code.scm | 91 ++++++++++++++++++++----------------------- 1 file changed, 42 insertions(+), 49 deletions(-) diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index 7cdd0cc8d6..6d348308ac 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -470,60 +470,53 @@ stack traces.") (license license:gpl3+))) (define-public lcov - ;; Use a recent commit from upstream since the latest official release - ;; (1.14) doesn't support GCC 9 (see: - ;; https://github.com/linux-test-project/lcov/issues/58). - (let* ((commit "40580cd65909bc8324ae09b36bca2e178652ff3f") - (revision "0") - (version (git-version "1.14" revision commit))) - (package - (name "lcov") - (version "1.14") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/linux-test-project/lcov") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0shgmh6fzhnj1qfdl90jgjmlbb1ih1qh879dca8hc58yggy3hqgb")))) - (build-system gnu-build-system) - (arguments - '(#:test-target "test" - #:make-flags (list (string-append "PREFIX=" - (assoc-ref %outputs "out"))) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-pwd - ;; Lift the requirement of having a shell in PATH. - (lambda _ - (substitute* "bin/geninfo" - (("qw/abs_path/") - "qw/abs_path getcwd/")) - (substitute* '("bin/lcov" "bin/geninfo") - (("`pwd`") - "getcwd()")) - #t)) - (delete 'configure) ;no configure script - (add-after 'install 'wrap - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (wrap-program (string-append out "/bin/geninfo") - `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB"))))) - #t))))) - (inputs `(("perl" ,perl) - ("perl-json" ,perl-json) - ("perl-perlio-gzip" ,perl-perlio-gzip))) - (home-page "http://ltp.sourceforge.net/coverage/lcov.php") - (synopsis "Code coverage tool that enhances GNU gcov") - (description "LCOV is an extension of @command{gcov}, a tool part of the + (package + (name "lcov") + (version "1.15") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/linux-test-project/lcov" + "/releases/download/v" version + "/lcov-" version ".tar.gz")) + (sha256 + (base32 "0fh5z0q5wg2jxr2nn5w7321y0zg9rwk75j3k5hnamjdy6gxa5kf1")))) + (build-system gnu-build-system) + (arguments + '(#:test-target "test" + #:make-flags (list (string-append "PREFIX=" + (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-pwd + ;; Lift the requirement of having a shell in PATH. + (lambda _ + (substitute* "bin/geninfo" + (("qw/abs_path/") + "qw/abs_path getcwd/")) + (substitute* '("bin/lcov" "bin/geninfo") + (("`pwd`") + "getcwd()")) + #t)) + (delete 'configure) ;no configure script + (add-after 'install 'wrap + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/geninfo") + `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB"))))) + #t))))) + (inputs `(("perl" ,perl) + ("perl-io-compress" ,perl-io-compress) + ("perl-json" ,perl-json))) + (home-page "http://ltp.sourceforge.net/coverage/lcov.php") + (synopsis "Code coverage tool that enhances GNU gcov") + (description "LCOV is an extension of @command{gcov}, a tool part of the GNU@tie{}Binutils, which provides information about what parts of a program are actually executed (i.e., \"covered\") while running a particular test case. The extension consists of a set of Perl scripts which build on the textual @command{gcov} output to implement the following enhanced functionality such as HTML output.") - (license license:gpl2+)))) + (license license:gpl2+))) (define-public kcov (package From af9d3425d7614357dbcd456d16714865c6335ca7 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 22 Sep 2020 12:23:12 +0200 Subject: [PATCH 359/757] gnu: yadifa: Update to 2.3.10. * gnu/packages/dns.scm (yadifa): Update to 2.3.10. --- gnu/packages/dns.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 6b61afafad..95524fa898 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -756,16 +756,16 @@ served by AS112. Stub and forward zones are supported.") (define-public yadifa (package (name "yadifa") - (version "2.3.9") + (version "2.3.10") (source - (let ((build "8497")) + (let ((build "9729")) (origin (method url-fetch) (uri (string-append "http://cdn.yadifa.eu/sites/default/files/releases/" "yadifa-" version "-" build ".tar.gz")) (sha256 - (base32 "0xvyr91sfgzkpw6g3h893ldbwnki3w2472n56rr18w67qghs1sa5"))))) + (base32 "0azaignqmylfdzr4x02s8y3pkn4f0xkpz3d1pkiiz8mwk92zgybn"))))) (build-system gnu-build-system) (native-inputs `(("which" ,which))) From 09e71797767dc37850ef047b1116faea5fd3fe8a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 22 Sep 2020 12:24:31 +0200 Subject: [PATCH 360/757] gnu: umockdev: Update to 0.14.3. * gnu/packages/check.scm (umockdev): Update to 0.14.3. --- gnu/packages/check.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index a7db915597..3e1f91e150 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -2681,7 +2681,7 @@ provides a simple way to achieve this.") (define-public umockdev (package (name "umockdev") - (version "0.14.2") + (version "0.14.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/martinpitt/umockdev/" @@ -2689,7 +2689,7 @@ provides a simple way to achieve this.") "umockdev-" version ".tar.xz")) (sha256 (base32 - "1nh6xsssmssmk0lxp9c9dmq3wzlpbpkg77nmmd09csbpybibgxfp")))) + "15smnxwplk48nas2c8ji6a5fqcsh770f1yl5nc2j5iprjspbm4mg")))) (build-system gnu-build-system) (arguments `(#:phases From 78e624d785e388a1dbe7a835a3a1bb9d18b5290e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 00:54:18 +0200 Subject: [PATCH 361/757] gnu: bridge-utils: Update to 1.7. * gnu/packages/linux.scm (bridge-utils): Update to 1.7. [source]: Update URL subdirectory. --- gnu/packages/linux.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index bbe801bad3..dce128d1c8 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2456,14 +2456,14 @@ Linux-based operating systems.") (define-public bridge-utils (package (name "bridge-utils") - (version "1.6") + (version "1.7") (source (origin (method url-fetch) - (uri (string-append "mirror://kernel.org/linux/utils/net/bridge-utils/" - "bridge-utils-" version ".tar.xz")) + (uri (string-append "mirror://kernel.org/linux/kernel/people/shemminger/" + "bridge-utils/bridge-utils-" version ".tar.xz")) (sha256 - (base32 "1j16kr44csyr4yqxly26l1yw2bh4nkiasgwvask2i2gvsnsyyryc")))) + (base32 "0zlrigizac2nfwgvksm92v4wafrpgxlbci3gwimc795ib7k8g6ck")))) (build-system gnu-build-system) ;; The tarball lacks all the generated files. From 24b3666e7f416b8080cd12e2b9d546f70fdd50d1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 00:56:29 +0200 Subject: [PATCH 362/757] gnu: numactl: Update to 2.0.14. * gnu/packages/linux.scm (numactl): Update to 2.0.14. --- 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 dce128d1c8..95dff248bd 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2929,7 +2929,7 @@ compressed, transparent to other programs, without decompressing them.") (define-public numactl (package (name "numactl") - (version "2.0.13") + (version "2.0.14") (source (origin (method url-fetch) (uri (string-append @@ -2937,7 +2937,7 @@ compressed, transparent to other programs, without decompressing them.") version "/numactl-" version ".tar.gz")) (sha256 (base32 - "16lcypvcmx1ydkpi2s82kqhg13kak7qhpbnj8hd9bdbyhr5ja7lr")))) + "1xngddsph43bxljywahi9d44fxr022slsap4hh91w8xnq54d2sw2")))) (build-system gnu-build-system) (arguments '(;; There's a 'test' target, but it requires NUMA support in the kernel From 6a10ff9b5f133d0cce4457073ad02e0c4bd8a4b5 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 01:03:27 +0200 Subject: [PATCH 363/757] gnu: mcelog: Update to 172. * gnu/packages/linux.scm (mcelog): Update to 172. --- 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 95dff248bd..2c80bda7ce 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -5703,14 +5703,14 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.") (define-public mcelog (package (name "mcelog") - (version "170") + (version "172") (source (origin (method url-fetch) (uri (string-append "https://git.kernel.org/cgit/utils/cpu/mce/" "mcelog.git/snapshot/v" version ".tar.gz")) (sha256 (base32 - "1m11v1y7cvpm7hwsghj23z77ps1w5jzn8000iwiyxpb939h2km5l")) + "17666056masfly83791q831yzw6sy1m6rwkxw7sqgjrhchn9sc4w")) (file-name (string-append name "-" version ".tar.gz")) (modules '((guix build utils))) (snippet From 255668baa70610ea151e37fb6320cabad4626e04 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 01:16:51 +0200 Subject: [PATCH 364/757] gnu: mpd: Update to 0.21.26. * gnu/packages/mpd.scm (mpd): Update to 0.21.26. --- gnu/packages/mpd.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 032b1d1074..460b71c437 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -92,7 +92,7 @@ interfacing MPD in the C, C++ & Objective C languages.") (define-public mpd (package (name "mpd") - (version "0.21.25") + (version "0.21.26") (source (origin (method url-fetch) (uri @@ -101,7 +101,7 @@ interfacing MPD in the C, C++ & Objective C languages.") "/mpd-" version ".tar.xz")) (sha256 (base32 - "00f2cm3sg0vi9gxb1yk35lyyh3fbabwim3mfnsz2syrjpw0sv810")))) + "1sjfx9ln2zik5fr5mdjy1w184hgjn89v67i85z09x0m6qwhq5rpr")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Ddocumentation=true"))) ;the default is 'false'... From 037cf6ec4f0b0036d955c4041c9b6f13f415c7e8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 01:21:00 +0200 Subject: [PATCH 365/757] gnu: mpdscribble: Order inputs alphabetically. * gnu/packages/mpd.scm (mpdscribble)[inputs]: Sort. --- gnu/packages/mpd.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 460b71c437..9f79f57735 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -258,9 +258,9 @@ sort playlists, and a local file system browser.") (base32 "0f0ybx380x2z2g1qvdndpvcrhkrgsfqckhz3ryydq2w3pl12v27z")))) (build-system gnu-build-system) - (inputs `(("libmpdclient" ,libmpdclient) - ("curl" ,curl) - ("glib" ,glib))) + (inputs `(("curl" ,curl) + ("glib" ,glib) + ("libmpdclient" ,libmpdclient))) (native-inputs `(("pkg-config" ,pkg-config))) (synopsis "MPD client for track scrobbling") (description "mpdscribble is a Music Player Daemon client which submits From ab7a5d73602b7294c3f3f38271c1b3bb49df8ee1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 01:25:26 +0200 Subject: [PATCH 366/757] gnu: mpdscribble: Update to 0.23. * gnu/packages/mpd.scm (mpdscribble): Update to 0.23. [build-system]: Use Meson. [inputs]: Remove glib. Add boost and libgcrypt. --- gnu/packages/mpd.scm | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 9f79f57735..f8294434d1 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -37,6 +37,7 @@ #:use-module (gnu packages boost) #:use-module (gnu packages gettext) #:use-module (gnu packages gnome) + #:use-module (gnu packages gnupg) #:use-module (gnu packages gtk) #:use-module (gnu packages icu4c) #:use-module (gnu packages readline) @@ -249,17 +250,18 @@ sort playlists, and a local file system browser.") (define-public mpdscribble (package (name "mpdscribble") - (version "0.22") + (version "0.23") (source (origin (method url-fetch) (uri (string-append "http://www.musicpd.org/download/mpdscribble/" - version "/mpdscribble-" version ".tar.gz")) + version "/mpdscribble-" version ".tar.xz")) (sha256 (base32 - "0f0ybx380x2z2g1qvdndpvcrhkrgsfqckhz3ryydq2w3pl12v27z")))) - (build-system gnu-build-system) - (inputs `(("curl" ,curl) - ("glib" ,glib) + "0s66zqscb44p88cl3kcv5jkjcqsskcnrv7xgrjhzrchf2kcpwf53")))) + (build-system meson-build-system) + (inputs `(("boost" ,boost) + ("curl" ,curl) + ("libgcrypt" ,libgcrypt) ("libmpdclient" ,libmpdclient))) (native-inputs `(("pkg-config" ,pkg-config))) (synopsis "MPD client for track scrobbling") From 2afa545dd4c0ccd92f91e9ecb15580a0d4a5092f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 01:32:27 +0200 Subject: [PATCH 367/757] gnu: pd: Update to 0.51-2. * gnu/packages/music.scm (pd): Update to 0.51-2. --- 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 899cc6a0e0..8dd2c1c8ce 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2054,7 +2054,7 @@ export.") (define-public pd (package (name "pd") - (version "0.51-1") + (version "0.51-2") (source (origin (method url-fetch) (uri @@ -2062,7 +2062,7 @@ export.") version ".src.tar.gz")) (sha256 (base32 - "0imbha9h96vqa967cbmdj7kkx7zrs054n5w2bjnifxdzws3qbxf6")))) + "1jgklcnaxypc8hr5j6mng8dd4na4ygfdixsfch8b86glssddi6mh")))) (build-system gnu-build-system) (arguments (let ((wish (string-append "wish" (version-major+minor From 94e164f32c66c2868f963a14dc168afe87ac00e1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 01:39:47 +0200 Subject: [PATCH 368/757] gnu: qtractor: Update to 0.9.17. * gnu/packages/music.scm (qtractor): Update to 0.9.17. --- 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 8dd2c1c8ce..54c8e14669 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2675,14 +2675,14 @@ from the command line.") (define-public qtractor (package (name "qtractor") - (version "0.9.16") + (version "0.9.17") (source (origin (method url-fetch) (uri (string-append "https://downloads.sourceforge.net/qtractor/" "qtractor-" version ".tar.gz")) (sha256 (base32 - "1l19g7cvgb7gfjmaihnd899k5hhxyf4sz22380y830xjfs2fvqxc")))) + "0mcfli3wffz5a9pkpcxli03ysyrr53ij3569m81ck9h8pr7yng4b")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; no "check" target From fcaecc151553091507b9a63cef769311001ab04b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 02:47:16 +0200 Subject: [PATCH 369/757] gnu: console-setup: Update to 1.197. * gnu/packages/xorg.scm (console-setup): Update to 1.197. --- gnu/packages/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 868a0626b5..aca6282df7 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -6667,7 +6667,7 @@ output.") (define-public console-setup (package (name "console-setup") - (version "1.196") + (version "1.197") (source (origin (method git-fetch) @@ -6675,7 +6675,7 @@ output.") (url "https://salsa.debian.org/installer-team/console-setup.git") (commit version))) (sha256 - (base32 "0c79rycgpna8910as6blw3z3sajzzakz4qlvr6js2yr8zq2d0ylg")) + (base32 "0m2q30f94vd1wb2zqpiyplpgfchjlm8j41xiyxcqdjzdgqbs7l27")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments From 22bf00f9ec9368bef83d9cf42a0e3aa6b8d84475 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 02:47:46 +0200 Subject: [PATCH 370/757] gnu: console-setup: Fix suspected typo. * gnu/packages/xorg.scm (console-setup)[description]: Add article. --- gnu/packages/xorg.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index aca6282df7..8df6407e26 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -6724,7 +6724,7 @@ output.") (synopsis "Set up the Linux console font and keyboard") (description "console-setup provides the console with the same keyboard -configuration scheme that X Window System has. In particular, the +configuration scheme that the X Window System has. In particular, the @command{ckbcomp} program compiles an XKB keyboard description to a keymap suitable for @command{loadkeys} or @command{kbdcontrol}. As a result, there is no need to duplicate or change the console keyboard files just to make From d3d27c148d257c706f17852da382d1f6fc7d04f6 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 03:10:13 +0200 Subject: [PATCH 371/757] gnu: wv: Update to 1.2.9. * gnu/packages/wv.scm (wv): Update to 1.2.9. --- gnu/packages/wv.scm | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/gnu/packages/wv.scm b/gnu/packages/wv.scm index 37881a4d0f..d5888674a7 100644 --- a/gnu/packages/wv.scm +++ b/gnu/packages/wv.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Marek Benc ;;; Copyright © 2017 Leo Famulari -;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,14 +33,14 @@ (define-public wv (package (name "wv") - (version "1.2.4") - (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/wvware/wv/" version - "/wv-" version ".tar.gz")) - (sha256 - (base32 - "1mn2ax6qjy3pvixlnvbkn6ymy6y4l2wxrr4brjaczm121s8hjcb7")))) + (version "1.2.9") + (source + (origin + (method url-fetch) + (uri (string-append "https://abiword.org/downloads/wv/" + version "/wv-" version ".tar.gz")) + (sha256 + (base32 "17f16lkdv1c3amaz2hagiicih59ynpp4786k1m2qa1sw68xhswsc")))) (build-system gnu-build-system) (inputs `(("glib" ,glib) From 465c4746cebe3dbbc9f5f26bc829a6d20927125a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 03:23:31 +0200 Subject: [PATCH 372/757] gnu: perl-io-socket-ip: Update to 0.41. * gnu/packages/web.scm (perl-io-socket-ip): Update to 0.41. --- gnu/packages/web.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index d184e14e88..f4a77cfe06 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3530,15 +3530,14 @@ algorithm specified in section 8.2.2.1 of the draft standard.") (define-public perl-io-socket-ip (package (name "perl-io-socket-ip") - (version "0.39") + (version "0.41") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/P/PE/PEVANS/" "IO-Socket-IP-" version ".tar.gz")) (sha256 - (base32 - "15kv5g1yb4a345sk3r5wfr99f868lhfqkddzsgpqddvccfkhv58i")))) + (base32 "0ihlpxrkq1xrvhnq52nhghanskic718ch8kpp642afgq72i4b6l4")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build))) (home-page "https://metacpan.org/release/IO-Socket-IP") From 5579c43d7c3e039250bc5edbbd017ab3b9558629 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 03:29:48 +0200 Subject: [PATCH 373/757] gnu: perl-libwww: Update to 6.48. * gnu/packages/web.scm (perl-libwww): Update to 6.48. --- 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 f4a77cfe06..0d25843e97 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3577,7 +3577,7 @@ select or poll.") (define-public perl-libwww (package (name "perl-libwww") - (version "6.41") + (version "6.48") (source (origin (method url-fetch) (uri (string-append @@ -3585,7 +3585,7 @@ select or poll.") version ".tar.gz")) (sha256 (base32 - "0jh67946fwd33ap3xy8df0421d2mr6lmhalhkf1p7dx2b7fil9wf")))) + "0bl3scmmrazhvyv13fwlarbq6k246csfq7ybq65i7i37xd3arkz3")))) (build-system perl-build-system) (native-inputs `(("perl-test-fatal" ,perl-test-fatal) From be1bdaa293813d600737d7849a02a81a5b46f489 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 04:18:02 +0200 Subject: [PATCH 374/757] gnu: perl-http-cookiejar: Update to 0.010. * gnu/packages/web.scm (perl-http-cookiejar): Update to 0.010. --- gnu/packages/web.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 0d25843e97..7ce087866e 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3178,15 +3178,14 @@ and multipart/form-data.") (define-public perl-http-cookiejar (package (name "perl-http-cookiejar") - (version "0.008") + (version "0.010") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" "HTTP-CookieJar-" version ".tar.gz")) (sha256 - (base32 - "0rfw6avcralggs7bf7n86flvhaahxjnqzvpwszp0sk4z4wwy01wm")))) + (base32 "1l7mqsca4fmls7agzwmp6yq1x16y9jwq4114i6i75n654gl37qsn")))) (build-system perl-build-system) (native-inputs `(("perl-test-deep" ,perl-test-deep) From 10da14c5ec4da71d9d512e9e96a5115631a7c793 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 00:45:46 +0200 Subject: [PATCH 375/757] gnu: fluidsynth: Update to 2.1.5. * gnu/packages/audio.scm (fluidsynth): Update to 2.1.5. --- gnu/packages/audio.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 45431be2b1..c6734a35f3 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -1631,7 +1631,7 @@ follower.") (define-public fluidsynth (package (name "fluidsynth") - (version "2.1.4") + (version "2.1.5") (source (origin (method git-fetch) (uri (git-reference @@ -1640,7 +1640,7 @@ follower.") (file-name (git-file-name name version)) (sha256 (base32 - "1r3khwyw57ybg5m4x0rvdzq7hgw2484sd52k6bm19akbw8yicfna")))) + "0ccpq4p1h1g53ng3961g3lh590qnwvpzwdzpl6ai4j6iazq0bh73")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no check target From bd16cc2902800932f58a34647e224734aa3647cd Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 22 Sep 2020 15:24:10 +0200 Subject: [PATCH 376/757] import: Fix docstring typoes. * guix/import/cabal.scm (cabal-flags->alist): Fix typo in docstring. * guix/import/stackage.scm (lts-info-ghc-version): Likewise. * guix/scripts/import/hackage.scm (show-help): Likewise. --- guix/import/cabal.scm | 2 +- guix/import/stackage.scm | 4 ++-- guix/scripts/import/hackage.scm | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/guix/import/cabal.scm b/guix/import/cabal.scm index 7dfe771e41..da00019297 100644 --- a/guix/import/cabal.scm +++ b/guix/import/cabal.scm @@ -718,7 +718,7 @@ If #f use the function 'port-filename' to obtain it." (dependencies cabal-custom-setup-dependencies)) ; list of (define (cabal-flags->alist flag-list) - "Retrun an alist associating the flag name to its default value from a + "Return an alist associating the flag name to its default value from a list of objects." (map (lambda (flag) (cons (cabal-flag-name flag) (cabal-flag-default flag))) flag-list)) diff --git a/guix/import/stackage.scm b/guix/import/stackage.scm index e04073d193..ee12108815 100644 --- a/guix/import/stackage.scm +++ b/guix/import/stackage.scm @@ -42,12 +42,12 @@ (define %stackage-url "http://www.stackage.org") (define (lts-info-ghc-version lts-info) - "Retruns the version of the GHC compiler contained in LTS-INFO." + "Returns the version of the GHC compiler contained in LTS-INFO." (and=> (assoc-ref lts-info "snapshot") (cut assoc-ref <> "ghc"))) (define (lts-info-packages lts-info) - "Retruns the alist of packages contained in LTS-INFO." + "Returns the alist of packages contained in LTS-INFO." (or (assoc-ref lts-info "packages") '())) (define (leave-with-message fmt . args) diff --git a/guix/scripts/import/hackage.scm b/guix/scripts/import/hackage.scm index 710e786a79..906dca24b1 100644 --- a/guix/scripts/import/hackage.scm +++ b/guix/scripts/import/hackage.scm @@ -49,7 +49,7 @@ Import and convert the Hackage package for PACKAGE-NAME. If PACKAGE-NAME includes a suffix constituted by a at-sign followed by a numerical version (as used with Guix packages), then a definition for the specified version of the -package will be generated. If no version suffix is pecified, then the +package will be generated. If no version suffix is specified, then the generated package definition will correspond to the latest available version.\n")) (display (G_ " From 7230f6d5dda8d1351d16c786c0f86eca55aca09a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 22 Sep 2020 21:31:52 +0200 Subject: [PATCH 377/757] gnu: Fix typoes in package descriptions. * gnu/packages/audio.scm (caps-plugins-lv2)[synopsis]: Fix typo. * gnu/packages/bioconductor.scm (r-karyoploter, r-anota, r-gcrma) (r-bigmemoryextras)[description]: Likewise. * gnu/packages/cran.scm (r-geometry)[synopsis]: Likewise. (r-stringdist, r-patchwork, r-depth, r-tea)[description]: Likewise. * gnu/packages/crates-io.scm (rust-assert-fs-0.11, rust-notify-4) (rust-tokio-fs-0.1)[synopsis, description]: Likewise. (rust-blas-sys-0.7)[description]: Likewise. (rust-fs-extra-1.1, rust-xattr-0.2)[synopsis]: Likewise. * gnu/packages/databases.scm (perl-mysql-config)[description]: Likewise. * gnu/packages/disk.scm (hddtemp)[description]: Likewise. * gnu/packages/django.scm (python-djangorestframework)[description]: Likewise. * gnu/packages/documentation.scm (doc++)[description]: Likewise. * gnu/packages/emacs-xyz.scm (emacs-kakoune, emacs-pyim-basedict, eless) (emacs-scpaste)[description]: Likewise. * gnu/packages/file-systems.scm (dbxfs)[description]: Likewise. * gnu/packages/finance.scm (python-stdnum)[description]: Likewise. * gnu/packages/fontutils.scm (woff2)[description]: Likewise. * gnu/packages/games.scm (openttd-opengfx)[description]: Likewise. * gnu/packages/gnome-xyz.scm (gnome-shell-extension-topicons-redux) [description]: Likewise. * gnu/packages/gnome.scm (libgrss)[description]: Likewise. * gnu/packages/golang.scm (go-github-com-mitchellh-reflectwalk) [description]: Likewise. (go-github-com-go-git-go-billy)[synopsis, description]: Likewise. * gnu/packages/haskell-check.scm (ghc-inspection-testing)[description]: Likewise. * gnu/packages/haskell-web.scm (ghc-yesod-form)[description]: Likewise. * gnu/packages/haskell-xyz.scm (ghc-hex)[description]: Likewise. * gnu/packages/hyperledger.scm (hyperledger-iroha-ed25519)[description]: Likewise. * gnu/packages/java.scm (java-mail)[synopsis]: Likewise. (java-native-access-platform)[description]: Likewise. * gnu/packages/kde-frameworks.scm (kactivities-stats)[description]: Likewise. * gnu/packages/kde-utils.scm (krusader)[description]: Likewise. * gnu/packages/language.scm (praat)[description]: Likewise. * gnu/packages/linux.scm (light)[description]: Likewise. * gnu/packages/lisp-xyz.scm (sbcl-hu.dwim.defclass-star)[description]: Likewise. * gnu/packages/mail.scm (dovecot-trees, sieve-connect)[description]: Likewise. * gnu/packages/ocaml.scm (ocaml-opam-file-format, ocaml-cppo) (ocaml4.07-ppx-variants-conv)[description]: Likewise. * gnu/packages/perl.scm (perl-convert-binhex)[description]: Likewise. * gnu/packages/python-crypto.scm (python-ecdsa)[description]: Likewise. * gnu/packages/python-web.scm (python-html5lib)[synopsis, description]: Likewise. (python-venusian)[synopsis]: Likewise. * gnu/packages/python-xyz.scm (python-readlike, python-gssapi) (python-flufl-i18n)[description]: Likewise. (python-pox, python-watchdog, python-xattr)[synopsis, description]: Likewise. * gnu/packages/ruby.scm (ruby-sorcerer)[description]: Likewise. * gnu/packages/rust-apps.scm (watchexec)[description]: Likewise. * gnu/packages/rust.scm (mrustc)[synopsis]: Likewise. * gnu/packages/shells.scm (s-shell)[description]: Likewise. * gnu/packages/ssh.scm (sshpass)[description]: Likewise. * gnu/packages/terminals.scm (beep)[description]: Likewise. * gnu/packages/web.scm (perl-lwp-useragent-cached)[description]: Likewise. * gnu/packages/wv.scm (wv)[description]: Likewise. --- gnu/packages/audio.scm | 2 +- gnu/packages/bioconductor.scm | 8 ++++---- gnu/packages/cran.scm | 10 +++++----- gnu/packages/crates-io.scm | 18 +++++++++--------- gnu/packages/databases.scm | 2 +- gnu/packages/disk.scm | 2 +- gnu/packages/django.scm | 2 +- gnu/packages/documentation.scm | 2 +- gnu/packages/emacs-xyz.scm | 8 ++++---- gnu/packages/file-systems.scm | 2 +- gnu/packages/finance.scm | 2 +- gnu/packages/fontutils.scm | 2 +- gnu/packages/games.scm | 2 +- gnu/packages/gnome-xyz.scm | 2 +- gnu/packages/gnome.scm | 4 ++-- gnu/packages/golang.scm | 12 ++++++------ gnu/packages/haskell-check.scm | 2 +- gnu/packages/haskell-web.scm | 2 +- gnu/packages/haskell-xyz.scm | 4 ++-- gnu/packages/hyperledger.scm | 2 +- gnu/packages/java.scm | 4 ++-- gnu/packages/kde-frameworks.scm | 2 +- gnu/packages/kde-utils.scm | 2 +- gnu/packages/language.scm | 4 ++-- gnu/packages/linux.scm | 6 ++---- gnu/packages/lisp-xyz.scm | 2 +- gnu/packages/mail.scm | 4 ++-- gnu/packages/ocaml.scm | 8 ++++---- gnu/packages/perl.scm | 2 +- gnu/packages/python-crypto.scm | 2 +- gnu/packages/python-web.scm | 6 +++--- gnu/packages/python-xyz.scm | 24 ++++++++++++------------ gnu/packages/ruby.scm | 4 ++-- gnu/packages/rust-apps.scm | 2 +- gnu/packages/rust.scm | 2 +- gnu/packages/shells.scm | 5 +++-- gnu/packages/ssh.scm | 2 +- gnu/packages/terminals.scm | 2 +- gnu/packages/web.scm | 2 +- gnu/packages/wv.scm | 2 +- 40 files changed, 88 insertions(+), 89 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index c6734a35f3..f26b3eceae 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -1046,7 +1046,7 @@ tools (analyzer, mono/stereo tools, crossovers).") `(("lv2" ,lv2))) ;; home-page of the original LADSPA version: http://quitte.de/dsp/caps.html (home-page "https://github.com/moddevices/caps-lv2") - (synopsis "LV2 port of the CAPS audio plugin colection") + (synopsis "LV2 port of the CAPS audio plugin collection") (description "LV2 port of CAPS, a collection of audio plugins comprising basic virtual guitar amplification and a small range of classic effects, signal processors and diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 9d5c69e45e..d655253cf1 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2736,7 +2736,7 @@ gene and isoform level using RNA-seq data") (home-page "https://bioconductor.org/packages/karyoploteR/") (synopsis "Plot customizable linear genomes displaying arbitrary data") (description "This package creates karyotype plots of arbitrary genomes and -offers a complete set of functions to plot arbitrary data on them. It mimicks +offers a complete set of functions to plot arbitrary data on them. It mimics many R base graphics functions coupling them with a coordinate change function automatically mapping the chromosome and data coordinates into the plot coordinates.") @@ -3674,7 +3674,7 @@ sets of GO terms, gene products and gene clusters.") (description "Genome wide studies of translational control is emerging as a tool to study various biological conditions. The output from such analysis is both -the mRNA level (e.g. cytosolic mRNA level) and the levl of mRNA actively +the mRNA level (e.g. cytosolic mRNA level) and the level 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 @@ -4843,7 +4843,7 @@ 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.") +gene-specific binding is expected.") ;; Any version of the LGPL (license license:lgpl2.1+))) @@ -7478,7 +7478,7 @@ networks and estimated fluxes can be visualized with hypergraphs.") safety and convenience features to the @code{filebacked.big.matrix} class from the @code{bigmemory} package. @code{BigMatrix} protects against segfaults by monitoring and gracefully restoring the connection to on-disk data and it also -protects against accidental data modification with a filesystem-based +protects against accidental data modification with a file-system-based permissions system. Utilities are provided for using @code{BigMatrix}-derived classes as @code{assayData} matrices within the @code{Biobase} package's @code{eSet} family of classes. @code{BigMatrix} provides some optimizations diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 684244456b..50ce111123 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -3401,7 +3401,7 @@ Optimization problems by using the simplex algorithm.") ("r-rcpp" ,r-rcpp) ("r-rcppprogress" ,r-rcppprogress))) (home-page "http://geometry.r-forge.r-project.org/") - (synopsis "Mesh generation and surface tesselation") + (synopsis "Mesh generator and surface tessellator") (description "This package makes the qhull library available in R, in a similar manner as in Octave. Qhull computes convex hulls, Delaunay triangulations, halfspace @@ -3743,7 +3743,7 @@ color labels, layout, etc.") (description "This package implements an approximate string matching version of R's native @code{match} function. It can calculate various string distances based -on edits (Damerau-Levenshtein, Hamming, Levenshtein, optimal sting alignment), +on edits (Damerau-Levenshtein, Hamming, Levenshtein, optimal string alignment), qgrams (q- gram, cosine, jaccard distance) or heuristic metrics (Jaro, Jaro-Winkler). An implementation of soundex is provided as well. Distances can be computed between character vectors while taking proper care of encoding @@ -16497,7 +16497,7 @@ guaranteeing well-connected communities.\" .") "The @code{ggplot2} package provides a strong API for sequentially building up a plot, but does not concern itself with composition of multiple plots. Patchwork is a package that expands the API to allow for arbitrarily -complex composition of plots by providing mathmatical operators for combining +complex composition of plots by providing mathematical operators for combining multiple plots.") (license license:expat))) @@ -19616,7 +19616,7 @@ on distances rather than on unit x variables.") "This package provides tools for depth functions methodology applied to multivariate analysis. Besides allowing calculation of depth values and depth-based location estimators, the package includes functions or drawing -contour plots and perspective plots of depth functions. Euclidian and +contour plots and perspective plots of depth functions. Euclidean and spherical depths are supported.") (license license:gpl2))) @@ -22103,7 +22103,7 @@ general, via different versions of bridge sampling.") (description "This package provides different approaches for selecting the threshold in generalized Pareto distributions. Most of them are based on minimizing the -AMSE-criterion or atleast by reducing the bias of the assumed GPD-model. +AMSE-criterion or at least by reducing the bias of the assumed GPD-model. Others are heuristically motivated by searching for stable sample paths, i.e. a nearly constant region of the tail index estimator with respect to k, which is the number of data in the tail. The third class is motivated by graphical diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index ba02406848..96b47394a6 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -984,9 +984,9 @@ Mac, and Unix.") #:cargo-development-inputs (("rust-docmatic" ,rust-docmatic-0.1)))) (home-page "https://github.com/assert-rs/assert_fs") - (synopsis "Filesystem fixtures and assertions for testing") + (synopsis "File system fixtures and assertions for testing") (description - "Filesystem fixtures and assertions for testing.") + "File system fixtures and assertions for testing.") (license (list license:expat license:asl2.0)))) (define-public rust-assert-matches-1.3 @@ -1977,7 +1977,7 @@ BLAKE2bp hash functions.") (home-page "https://github.com/blas-lapack-rs/blas-sys") (synopsis "Bindings to BLAS (Fortran)") (description - "Ths package provides bindings to BLAS (Fortran).") + "This package provides bindings to BLAS (Fortran).") (license (list license:asl2.0 license:expat)))) @@ -7945,7 +7945,7 @@ duplication.") (build-system cargo-build-system) (arguments '(#:skip-build? #t)) (home-page "https://github.com/webdesus/fs_extra") - (synopsis "Extra filesystem methods") + (synopsis "Extra file system methods") (description "Expanding opportunities standard library @code{std::fs} and @code{std::io}. Recursively copy folders with recept information about process and much more.") @@ -15245,9 +15245,9 @@ with all line endings.") #:cargo-development-inputs (("rust-tempfile" ,rust-tempfile-3)))) (home-page "https://github.com/passcod/notify") - (synopsis "Cross-platform filesystem notification library") + (synopsis "Cross-platform file system notification library") (description - "Cross-platform filesystem notification library.") + "Cross-platform file system notification library.") (license license:cc0))) (define-public rust-num-0.2 @@ -27178,8 +27178,8 @@ the current thread.") ("rust-tokio-codec" ,rust-tokio-codec-0.1) ("rust-tokio-io" ,rust-tokio-io-0.1)))) (home-page "https://tokio.rs") - (synopsis "Filesystem API for Tokio") - (description "Filesystem API for Tokio.") + (synopsis "File system API for Tokio") + (description "File system API for Tokio.") (license license:expat))) ;; Cyclic dependencies with tokio and tokio-current-thread @@ -30508,7 +30508,7 @@ color in a Windows console.") #:cargo-development-inputs (("rust-tempfile" ,rust-tempfile-3)))) (home-page "https://github.com/Stebalien/xattr") - (synopsis "Unix extended filesystem attributes") + (synopsis "Unix extended file system attributes") (description "This package provide a small library for setting, getting, and listing extended attributes.") diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index a9798cbc33..c86297b293 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1780,7 +1780,7 @@ module, and nothing else.") (synopsis "Parse and utilize MySQL's /etc/my.cnf and ~/.my.cnf files") (description "@code{MySQL::Config} emulates the @code{load_defaults} function from -libmysqlclient. It will fill an aray with long options, ready to be parsed by +libmysqlclient. It will fill an array with long options, ready to be parsed by @code{Getopt::Long}.") (license license:perl-license))) diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 79e187e283..1e538ef60e 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -1038,6 +1038,6 @@ of choice for all light thinking Unix addicts!") (home-page "https://savannah.nongnu.org/projects/hddtemp/") (synopsis "Report the temperature of hard drives from S.M.A.R.T. information") (description "@command{hddtemp} is a small utility that gives you the -temperature of your hard drive by reading S.M.A.R.T. informations (for drives +temperature of your hard drive by reading S.M.A.R.T. information (for drives that support this feature).") (license license:gpl2+))) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 3fee18a102..43339720f2 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1029,7 +1029,7 @@ Django projects, which allows association of a number of tags with any (synopsis "Toolkit for building Web APIs with Django") (description "The Django REST framework is for building Web APIs with Django. It -provides features like a web browseable API and authentication policies.") +provides features like a Web-browsable API and authentication policies.") (license license:bsd-2))) (define-public python-django-sekizai diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm index 9c30fc832a..6532bb4704 100644 --- a/gnu/packages/documentation.scm +++ b/gnu/packages/documentation.scm @@ -273,7 +273,7 @@ and to some extent D.") (description "DOC++ is a documentation system for C, C++, IDL, and Java. It can generate both TeX output for high-quality hardcopies or HTML output for online -brwosing. The documentation is extracted directly from the C/C++/IDL source +browsing. The documentation is extracted directly from the C/C++/IDL source or Java class files.") (license gpl2+))) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 43add530af..2957641c14 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -2800,7 +2800,7 @@ running Extempore process, and more.") (description "This package provides many, but not all of the editing primitives in the Kakoune editor. Unlike Evil mode for Vim, this is a very shallow emulation, which seeks to do as little work as possible, leveraging -Emacs native editing commmands and the work of other packages wherever +Emacs native editing commands and the work of other packages wherever possible.") (license license:expat)))) @@ -11105,7 +11105,7 @@ function to be used by other frontend programs.") (home-page "https://github.com/tumashu/pyim-basedict") (synopsis "Input method dictionary of pyim") (description "Pyim-basedict is the default pinyin input method dictionary, -containing words from the rime project.") +containing words from the Rime project.") (license license:gpl2+))) (define-public emacs-pyim @@ -12974,7 +12974,7 @@ buffer.") (description "@code{eless} provides a combination of Bash script and a minimal Emacs view-mode. -Feautures: +Features: @itemize @item Independent of a user’s Emacs config. @@ -24633,7 +24633,7 @@ displayed for sharing.") buffer on an active webserver to which the user has SSH access. It is similar in purpose to services such as Gist or Pastebin, but is much simpler since it assumes the user has access to a -publically-accessible HTTP server.") +publicly-accessible HTTP server.") (license license:gpl3+)))) (define-public emacs-company-reftex diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index b8612ac3b2..046deb67ab 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -917,5 +917,5 @@ Dropbox API v2.") (synopsis "User-space file system for Dropbox") (description "@code{dbxfs} allows you to mount your Dropbox folder as if it were a -local filesystem using FUSE.") +local file system using FUSE.") (license license:gpl3+))) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index de3b687410..863914bd35 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -1061,7 +1061,7 @@ amongst which a great number of VAT and other tax numbers, personal identity and company identification codes, international standard numbers (ISBN, IBAN, EAN, etc.) and various other formats. -The module also inclused implementations of the Verhoeff, +The module also includes implementations of the Verhoeff, Luhn and family of ISO/IEC 7064 check digit algorithms. ") (license license:lgpl2.1+))) diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index 96557b963c..94473991f7 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -303,7 +303,7 @@ work with most software requiring Type 1 fonts.") (inputs `(("brotli" ,google-brotli))) (synopsis "Libraries and tools for WOFF2 font format") - (description "WOFF2 provides libraires and tools to handle the Web Open + (description "WOFF2 provides libraries and tools to handle the Web Open Font Format (WOFF).") (home-page "https://w3c.github.io/woff/woff2/") (license license:expat))) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index d54a3bd1a9..b819cd104f 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3903,7 +3903,7 @@ engine. When you start it you will be prompted to download a graphics set.") (home-page "http://dev.openttdcoop.org/projects/opengfx") (synopsis "Base graphics set for OpenTTD") (description - "The OpenGFX projects is an implementation of the OpenTTD base grahics + "The OpenGFX project is an implementation of the OpenTTD base graphics set that aims to ensure the best possible out-of-the-box experience. OpenGFX provides you with... diff --git a/gnu/packages/gnome-xyz.scm b/gnu/packages/gnome-xyz.scm index 75ba0f5636..7f3ae41d17 100644 --- a/gnu/packages/gnome-xyz.scm +++ b/gnu/packages/gnome-xyz.scm @@ -234,7 +234,7 @@ some media players, are meant to run long-term in the background even after you close their window. These applications remain accessible by adding an icon to the GNOME Shell Legacy Tray. However, the Legacy Tray was removed in GNOME 3.26. TopIcons Redux brings those icons back into the top panel so that it's -easier to keep track of apps running in the backround.") +easier to keep track of applications running in the background.") (license license:gpl2+))) (define-public gnome-shell-extension-dash-to-dock diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index d727f18ed8..762e48f572 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -357,8 +357,8 @@ services.") ("libsoup" ,libsoup) ("libxml2" ,libxml2))) (synopsis "Glib library for feeds") - (description "LibGRSS is a Glib abstaction to handle feeds in RSS, Atom and -other formats.") + (description "LibGRSS is a Glib abstraction to handle feeds in RSS, Atom, +and other formats.") (home-page "https://wiki.gnome.org/Projects/Libgrss") (license license:lgpl3+))) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 8723592b51..001c864505 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -2822,7 +2822,7 @@ cross-compilation.") (synopsis "Walk a value in Go using reflection") (description "reflectwalk is a Go library for \"walking\" a value in Go using reflection, in the same way a directory tree can be \"walked\" on the -filesystem. Walking a complex structure can allow you to do manipulations on +file system. Walking a complex structure can allow you to do manipulations on unknown structures such as those decoded from JSON.") (license license:expat))) @@ -5237,11 +5237,11 @@ errors (warnings).") (native-inputs `(("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1))) (home-page "https://github.com/go-git/go-billy/") - (synopsis "Filesystem abstraction for Go") - (description "Billy implements an interface based on the os standard -library, allowing to develop applications without dependency on the underlying -storage. Makes it virtually free to implement mocks and testing over -filesystem operations.") + (synopsis "File system abstraction for Go") + (description "Billy implements an interface based on the OS's standard +library to develop applications without depending on the underlying storage. +This makes it virtually free to implement mocks and testing over +file system operations.") (license license:asl2.0))) (define-public go-github-com-jbenet-go-context diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm index 7f7bc22da5..b5546f97f8 100644 --- a/gnu/packages/haskell-check.scm +++ b/gnu/packages/haskell-check.scm @@ -1033,7 +1033,7 @@ library's promised without anyone noticing. This package provides a disciplined way of specifying such properties, and have them checked by the compiler. This way, this checking can be part of the -ususal development cycle and regressions caught early. +regular development cycle and regressions caught early. See the documentation in \"Test.Inspection\" or the project webpage for more examples and more information.") diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm index 98d163566c..a4269599f6 100644 --- a/gnu/packages/haskell-web.scm +++ b/gnu/packages/haskell-web.scm @@ -1349,7 +1349,7 @@ from Yesod.") ("ghc-hspec" ,ghc-hspec))) (home-page "https://www.yesodweb.com") (synopsis "Form handling support for Yesod Web Framework") - (description "This Haskell package provies a set of basic form inputs such + (description "This Haskell package provides a set of basic form inputs such as text, number, time, checkbox, select, textarea, etc through the @code{Yesod.Form.Fields} module. Also, there is @code{Yesod.Form.Nic} module providing richtext field using Nic editor. ") diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index f4af00283c..5b9da15630 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -5524,8 +5524,8 @@ Vim.") (build-system haskell-build-system) (home-page "https://hackage.haskell.org/package/hex") (synopsis "Convert strings into hexadecimal and back") - (description "This package provides conversion functions between -bytestrings and their hexademical representation.") + (description "This package converts between bytestrings and their +hexadecimal string representation.") (license license:bsd-3))) (define-public ghc-highlighting-kate diff --git a/gnu/packages/hyperledger.scm b/gnu/packages/hyperledger.scm index c1b8215584..82680cd5e4 100644 --- a/gnu/packages/hyperledger.scm +++ b/gnu/packages/hyperledger.scm @@ -141,7 +141,7 @@ Originally Ed25519 consists of three modules: @itemize @item digital signature algorithm itself @item SHA512 hash function -@item random number generator, to generate keypairs +@item random number generator, to generate key pairs @end itemize This project offers at least two different C implementations for every diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 8c594f5fe2..40b0a8c1dd 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -10949,7 +10949,7 @@ application components to create, send, receive, and read messages.") `(("junit" ,java-junit) ("hamcrest" ,java-hamcrest-core))) (home-page "https://javaee.github.io/javamail/") - (synopsis "Mail-related functionnalities in Java") + (synopsis "Mail-related functionality in Java") (description "The JavaMail API provides a platform-independent and protocol-independent framework to build mail and messaging applications.") ;; General Public License Version 2 only ("GPL") or the Common Development @@ -12226,7 +12226,7 @@ Java method invocation.") (inputs `(("java-native-access" ,java-native-access))) (synopsis "Cross-platform mappings for jna") - (description "java-native-access-platfrom has cross-platform mappings + (description "java-native-access-platform has cross-platform mappings and mappings for a number of commonly used platform functions, including a large number of Win32 mappings as well as a set of utility classes that simplify native access."))) diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index d264ca5bbe..c4479de995 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -2215,7 +2215,7 @@ maintaining an index of the contents of your files.") (home-page "https://community.kde.org/Frameworks") (synopsis "Access usage statistics collected by the activity manager") (description "The KActivitiesStats library provides a querying mechanism for -the data that the activitiy manager collects - which documents have been opened +the data that the activity manager collects---which documents have been opened by which applications, and what documents have been linked to which activity.") ;; triple licensed (license (list license:lgpl2.0+ license:lgpl2.1+ license:lgpl3+)))) diff --git a/gnu/packages/kde-utils.scm b/gnu/packages/kde-utils.scm index 5e6a872314..4d9f3736c8 100644 --- a/gnu/packages/kde-utils.scm +++ b/gnu/packages/kde-utils.scm @@ -289,7 +289,7 @@ twin-panel (commander-style) file manager, similar to Midnight Commander or Total Commander It provides all the file management features you could possibly want. Plus: -extensive archive handling, mounted filesystem support, FTP, advanced search +extensive archive handling, mounted file system support, FTP, advanced search module, an internal viewer/editor, directory synchronisation, file content comparisons, powerful batch renaming and much much more. It supports a wide variety of archive formats and can handle other KIO slaves such as smb or diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm index 0c59cd1bf7..89e5e307eb 100644 --- a/gnu/packages/language.scm +++ b/gnu/packages/language.scm @@ -1100,7 +1100,7 @@ noun phrases, verb phrases, etc.).") `(("pkg-config" ,pkg-config))) (home-page "http://www.fon.hum.uva.nl/praat/") (synopsis "Doing phonetics by computer") - (description "Praat is a tool to perform phonetics tasks. It can do speach -analysis (pitch, formant, intensity, ...), speach synthesis, labeling, segmenting + (description "Praat is a tool to perform phonetics tasks. It can do speech +analysis (pitch, formant, intensity, ...), speech synthesis, labelling, segmenting and manipulation.") (license gpl2+))) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 2c80bda7ce..f443299dfc 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -6008,10 +6008,8 @@ under GNU/Linux. Features include: @item Light can automatically figure out the best controller to use, making full use of underlying hardware. @item It is possible to set a minimum brightness value, as some controllers -set the screen to be pitch black at a vaĺue of 0 (or higher). -@end itemize - -Light is the successor of lightscript.") +set the screen to be pitch black at a value of 0 (or higher). +@end itemize\n") (license license:gpl3+))) (define-public brightnessctl diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index ef08960497..69ebdb3eb8 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -13656,7 +13656,7 @@ simplify class and condition declarations. Features include: @itemize @item Automatically export all or select slots at compile time. -@item Define the @code{:initarg} and @code{:accesor} automatically. +@item Define the @code{:initarg} and @code{:accessor} automatically. @item Specify a name transformer for both the @code{:initarg} and @code{:accessor}, etc. @item Specify the @code{:initform} as second slot value. diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index fcdefbb577..70e2fcd76b 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1712,7 +1712,7 @@ scripts to prevent embarrassing errors later on.") "Technology for Resting Email Encrypted Storage (TREES) is a NaCL-based Dovecot encryption plugin. This plugin adds individually encrypted mail storage to the Dovecot IMAP server. It is inspired by Posteo's scrambler -which uses OpenSSL and RSA keypairs. TREES works in a similar way, but uses +which uses OpenSSL and RSA key pairs. TREES works in a similar way, but uses the Sodium crypto library (based on NaCL). How it works: @@ -2590,7 +2590,7 @@ transfer protocols.") (description "Sieve-connect lets you view, upload, edit, delete, and otherwise manage Sieve scripts on any mail server that speaks the @dfn{ManageSieve} protocol, -as specifed in RFC 5804. +as specified in RFC 5804. @dfn{Sieve} (RFC 5228) is a specialised language for e-mail filtering. Sieve scripts are stored on the server and run whenever mail arrives. They can diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 33c3fa0494..f92d62691f 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -429,7 +429,7 @@ repository-wide uninstallability checks.") (home-page "https://opam.ocaml.org") (synopsis "Parser and printer for the opam file syntax") (description "This package contains a parser and a pretty-printer for -the opam file fomat.") +the opam file format.") ;; With static-linking exception (license license:lgpl2.1+))) @@ -2577,9 +2577,9 @@ from the oasis build log (home-page "https://github.com/mjambon/cppo") (synopsis "Equivalent of the C preprocessor for OCaml programs") (description "Cppo is an equivalent of the C preprocessor for OCaml -programs. It allows the definition of simple macros and file inclusion. Cpp ois: +programs. It allows the definition of simple macros and file inclusion. Cppo is: @enumerate -@item more OCaml-friendly than cpp +@item more OCaml-friendly than @command{cpp} @item easy to learn without consulting a manual @item reasonably fast @item simple to install and to maintain. @@ -4369,7 +4369,7 @@ definitions.") "https://github.com/janestreet/ppx_variants_conv") (synopsis "Generation of accessor and iteration functions for OCaml variant types") (description - "This package generates accessors and interation functions for OCaml + "This package generates accessors and iteration functions for OCaml variant types.") (license license:asl2.0))) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index bd6e746b67..1c3d999d79 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1961,7 +1961,7 @@ the caller.") (synopsis "Extract data from Macintosh BinHex files") (description "BinHex is a format for transporting files safely through electronic -mail, as short-lined, 7-bit, semi-compressed data streams. Ths module +mail, as short-lined, 7-bit, semi-compressed data streams. This module provides a means of converting those data streams back into into binary data.") (license license:perl-license))) diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index 22b1a1ebe3..f39695a850 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -286,7 +286,7 @@ Python interface around SSH networking concepts.") (description "This is an easy-to-use implementation of ECDSA cryptography (Elliptic Curve Digital Signature Algorithm), implemented purely in Python. With this -library, you can quickly create keypairs (signing key and verifying key), sign +library, you can quickly create key pairs (signing key and verifying key), sign messages, and verify the signatures. The keys and signatures are very short, making them easy to handle and incorporate into other protocols.") (license license:expat))) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index c0d0d5662b..aa7d825f2a 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -730,9 +730,9 @@ both of which are installed automatically if you install this library.") (home-page "https://github.com/html5lib/html5lib-python") (synopsis - "Python HTML parser based on the WHATWG HTML specifcation") + "Python HTML parser based on the WHATWG HTML specification") (description - "Html5lib is an HTML parser based on the WHATWG HTML specifcation + "Html5lib is an HTML parser based on the WHATWG HTML specification and written in Python.") (license license:expat))) @@ -4723,7 +4723,7 @@ major web browsers.") ("python-pytest-cov" ,python-pytest-cov))) (arguments '(#:test-target "pytest")) (home-page "https://docs.pylonsproject.org/projects/venusian") - (synopsis "Library for defering decorator actions") + (synopsis "Library for deferring decorator actions") (description "Venusian is a library which allows framework authors to defer decorator actions. Instead of taking actions when a function (or class) decorator is diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index af557fd009..1cd0305fe1 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -18940,7 +18940,7 @@ with a non-list @code{cdr}.") (description "This Python module provides line editing functions similar to the default Emacs-style ones of GNU Readline. Unlike the Python standard library's -@code{readline} package, this one allows access to those capabilties in settings +@code{readline} package, this one allows access to those capabilities in settings outside of a standard command-line interface. It is especially well-suited to interfacing with Urwid, due to a shared syntax for describing key inputs. @@ -20087,11 +20087,11 @@ load balancing.") `(("python-pytest" ,python-pytest) ("which" ,which))) (home-page "https://pypi.org/project/pox/") - (synopsis "Python utilities for filesystem exploration and automated builds") + (synopsis "Python utilities for file system exploration and automated builds") (description "Pox provides a collection of utilities for navigating and manipulating -filesystems. This module is designed to facilitate some of the low level -operating system interactions that are useful when exploring a filesystem on a +file systems. This module is designed to facilitate some of the low-level +operating system interactions that are useful when exploring a file system on a remote host. Pox provides Python equivalents of several shell commands such as @command{which} and @command{find}. These commands allow automated discovery of what has been installed on an operating system, and where the @@ -20440,7 +20440,7 @@ tests.") (description "Python-GSSAPI provides both low-level and high level wrappers around the GSSAPI C libraries. While it focuses on the Kerberos mechanism, it should -also be useable with other GSSAPI mechanisms.") +also be usable with other GSSAPI mechanisms.") (license license:isc))) (define-public python-check-manifest @@ -20516,8 +20516,8 @@ files. These files are used to translate strings in android apps.") `(("python-pytest-cov" ,python-pytest-cov) ("python-pytest-timeout" ,python-pytest-timeout))) (home-page "https://github.com/gorakhargosh/watchdog") - (synopsis "Filesystem events monitoring") - (description "This package provides a way to monitor filesystem events + (synopsis "File system events monitoring") + (description "This package provides a way to monitor file system events such as a file modification and trigger an action. This is similar to inotify, but portable.") (license license:asl2.0))) @@ -20817,9 +20817,9 @@ content models.") `(("python-cffi" ,python-cffi))) (home-page "https://github.com/xattr/xattr") (synopsis - "Python wrapper for extended filesystem attributes") + "Python wrapper for extended file system attributes") (description "This package provides a Python wrapper for using extended -filesystem attributes. Extended attributes extend the basic attributes of files +file system attributes. Extended attributes extend the basic attributes of files and directories in the file system. They are stored as name:data pairs associated with file system objects (files, directories, symlinks, etc).") (license license:expat))) @@ -21832,10 +21832,10 @@ RFC 3464.") (home-page "https://flufli18n.readthedocs.io") (synopsis "API for Python internationalization") (description - "This package provides a high level, convenient API for managing -internationalization translation contexts in Python application. There is a + "This package provides a high-level, convenient API for managing +internationalization/translation contexts in Python applications. There is a simple API for single-context applications, such as command line scripts which -only need to translate into one language during the entire course of thei +only need to translate into one language during the entire course of their execution. There is a more flexible, but still convenient API for multi-context applications, such as servers, which may need to switch language contexts for different tasks.") diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index c562ade153..3266db3fe8 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -648,8 +648,8 @@ outcomes of a code example.") (synopsis "Ripper-style abstract syntax tree to Ruby source generator") (description "Sorcerer generates Ruby code from a Ripper-like abstract syntax tree (i.e. S-Expressions). Sorcerer is targeted mainly at small -snippets of Ruby code, expressable in a single line. Longer examples may be -re-sourced, but they will be rendered in a single line format.") +snippets of Ruby code, expressible in a single line. Longer examples may be +re-sourced, but they will be rendered in a single-line format.") (home-page "https://github.com/rspec-given/sorcerer") (license license:expat))) diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm index 0700167521..dba1b26e50 100644 --- a/gnu/packages/rust-apps.scm +++ b/gnu/packages/rust-apps.scm @@ -465,7 +465,7 @@ Example use cases: Features: @itemize @bullet -@item Coalesces multiple filesystem events into one, for editors that +@item Coalesces multiple file system events into one, for editors that use swap/backup files during saving @item By default, uses @code{.gitignore} and @code{.ignore} to determine which files to ignore notifications for diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index d5914f012b..e44e78de75 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -449,7 +449,7 @@ test = { path = \"../libtest\" } (variable "LIBRARY_PATH") (files '("lib" "lib64"))))) - (synopsis "Compiler for the Rust progamming language") + (synopsis "Compiler for the Rust programming language") (description "Rust is a systems programming language that provides memory safety and thread safety guarantees.") (home-page "https://www.rust-lang.org") diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 5225e12064..6783af24ee 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -701,8 +701,9 @@ Its features include: (home-page "https://github.com/rain-1/s") (synopsis "Extremely minimal shell with the simplest syntax possible") (description - "S is a new shell that aims to be extremely simple. -S does not implemnt the POSIX shell standard. + "S is a new shell that aims to be extremely simple. It does not +implement the POSIX shell standard. + There are no globs or \"splatting\" where a variable $FOO turns into multiple command line arguments. One token stays one token forever. This is a \"no surprises\" straightforward approach. diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 79f8256a3f..4cac75d5fa 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -694,7 +694,7 @@ manipulating key files.") (base32 "0q7fblaczb7kwbsz0gdy9267z0sllzgmf0c7z5c9mf88wv74ycn6")))) (build-system gnu-build-system) - (description "sshpass is a tool for non-interactivly performing password + (description "sshpass is a tool for non-interactively performing password authentication with SSH's so-called @dfn{interactive keyboard password authentication}.") (license license:gpl2+))) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 57c84d7718..5d81619646 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -426,7 +426,7 @@ to all types of devices that provide serial consoles.") allowing different sounds to indicate different events. While it can be run quite happily on the command line, its intended place of residence is within scripts, notifying the user when something interesting occurs. Of course, it -has no notion of what's interesing, but it's very good at that notifying part.") +has no notion of what's interesting, but it's very good at that notifying part.") (home-page "https://github.com/spkr-beep/beep") (license license:gpl2+))) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 7ce087866e..21c227d8eb 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3713,7 +3713,7 @@ https schemed URLs with LWP.") (home-page "https://metacpan.org/release/LWP-UserAgent-Cached") (synopsis "Simple caching for LWP::UserAgent") (description "LWP::UserAgent::Cached is an LWP::UserAgent subclass with -cache support. It returns responses from the local filesystem if available +cache support. It returns responses from the local file system, if available, instead of making an HTTP request.") (license license:perl-license))) diff --git a/gnu/packages/wv.scm b/gnu/packages/wv.scm index d5888674a7..a8c0d3cbaf 100644 --- a/gnu/packages/wv.scm +++ b/gnu/packages/wv.scm @@ -57,7 +57,7 @@ Word 9, 8, 7, and 6) to HTML or LaTeX. Word 2 documents can still be converted to plain text but will lack formatting. -Othe programs can use wv as a library to convert Word documents to other +Other programs can use wv as a library to convert Word documents to other formats. AbiWord uses it as its Word importer, and KWord uses concepts and code from wv in theirs.") (home-page "http://wvware.sourceforge.net/") From 382ac0e4f5bf4eef8b11ee826ad552dae3965e30 Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Tue, 22 Sep 2020 22:54:52 +0200 Subject: [PATCH 378/757] gnu: gnome-video-effects: Update to 0.5.0. * gnu/packages/gnome.scm (gnome-video-effects): Update to 0.5.0. [build-system]: Changed to meson-build-system. [arguments]: Removed. [native-inputs]: Removed glib:bin and intltool. Signed-off-by: Efraim Flashner --- gnu/packages/gnome.scm | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 762e48f572..bc0a4e859e 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -10023,7 +10023,7 @@ automatically and it can stream songs from online music services and charts.") (define-public gnome-video-effects (package (name "gnome-video-effects") - (version "0.4.3") + (version "0.5.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -10031,14 +10031,10 @@ automatically and it can stream songs from online music services and charts.") version ".tar.xz")) (sha256 (base32 - "06c2f1kihyhawap1s3zg5w7q7fypsybkp7xry4hxkdz4mpsy0zjs")))) - (build-system glib-or-gtk-build-system) - (arguments - `(#:out-of-source? #f)) + "1j6h98whgkcxrh30bwvnxvyqxrxchgpdgqhl0j71xz7x72dqxijd")))) + (build-system meson-build-system) (native-inputs - `(("glib:bin" ,glib "bin") - ("intltool" ,intltool) - ("gettext" ,gettext-minimal) + `(("gettext" ,gettext-minimal) ("pkg-config" ,pkg-config))) (home-page "https://wiki.gnome.org/Projects/GnomeVideoEffects") (synopsis "Video effects for Cheese and other GNOME applications") From 023ce3dcb47a6642adb7d9a5feaacebd3063e9ed Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Tue, 22 Sep 2020 20:27:10 -0300 Subject: [PATCH 379/757] gnu: python-trio: Update to 0.17.0. * gnu/packages/python-xyz.scm (python-trio): Update to 0.17.0. 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 1cd0305fe1..6c3e991de8 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -19243,13 +19243,13 @@ project.") (define-public python-trio (package (name "python-trio") - (version "0.16.0") + (version "0.17.0") (source (origin (method url-fetch) (uri (pypi-uri "trio" version)) (sha256 - (base32 "0g6gkwz6i05rm9ym4l4imxakzld7qcgxhb21kprilchcav87s1nz")))) + (base32 "0zcxirpdvvl54pbfkgw7vz984879xwvdygqfpggnam24is2zjp78")))) (build-system python-build-system) (arguments `(#:phases From a9d9dbfd2d4f8e7d512b83739d5d334b4c195a6d Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Tue, 22 Sep 2020 20:30:22 -0300 Subject: [PATCH 380/757] gnu: python-httpcore: Update to 0.11.0. * gnu/packages/python-web.scm (python-httpcore): Update to 0.11.0. Signed-off-by: Efraim Flashner --- gnu/packages/python-web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index aa7d825f2a..5226587ebd 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -4456,7 +4456,7 @@ and serve updated contents upon changes to the directory.") (define-public python-httpcore (package (name "python-httpcore") - (version "0.10.2") + (version "0.11.0") (source (origin ;; PyPI tarball does not contain tests. @@ -4466,7 +4466,7 @@ and serve updated contents upon changes to the directory.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "00gn8nfv814rg6fj7xv97mrra3fvx6fzjcgx9y051ihm6hxljdsi")))) + (base32 "01bhajcxqgkdzg7b7x0fqs2lwcfsajlgqwi1nlxx58jss7g2kxn9")))) (build-system python-build-system) (arguments `(#:phases From 421b94ecc46329094a49974882975e63fe075cbd Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Tue, 22 Sep 2020 20:30:23 -0300 Subject: [PATCH 381/757] gnu: python-httpx: Update to 0.15.0. * gnu/packages/python-web.scm (python-httpx): Update to 0.15.0. [arguments]: Adjust skipped tests. Signed-off-by: Efraim Flashner --- gnu/packages/python-web.scm | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 5226587ebd..aa08b776d5 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -4531,7 +4531,7 @@ Some things HTTP Core does do: (define-public python-httpx (package (name "python-httpx") - (version "0.14.3") + (version "0.15.0") (source (origin ;; PyPI tarball does not contain tests. @@ -4541,7 +4541,7 @@ Some things HTTP Core does do: (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0mn8gqkgaij3s2pbwgrih20iq34f3f82dfvypaw3nnh7n63vna43")))) + (base32 "06w50br6b825sd70l6rm2s0fca1lnjbyx9n8nmcdlwg673z25kc6")))) (build-system python-build-system) (arguments `(#:phases @@ -4549,8 +4549,16 @@ Some things HTTP Core does do: (replace 'check (lambda _ (invoke "pytest" "-vv" "-k" - ;; This test tries to open an outgoing connection. - "not test_connect_timeout[asyncio]")))))) + ;; These tests try to open an outgoing connection. + (string-append + "not test_connect_timeout" + " and not test_that_send_cause_async_client_to_be_not_" + "closed" + " and not test_that_async_client_caused_warning_when_" + "being_deleted" + " and not test_that_send_cause_client_to_be_not_closed" + " and not test_async_proxy_close" + " and not test_sync_proxy_close"))))))) (native-inputs `(("python-autoflake" ,python-autoflake) ("python-black" ,python-black) From 5c2db516f97660c9f8c1a639493997b2b4a2bbab Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Sun, 20 Sep 2020 00:14:49 +0800 Subject: [PATCH 382/757] gnu: Add rust-std-prelude-0.2. * gnu/packages/crates-io.scm (rust-std-prelude-0.2): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 96b47394a6..c26ac4cae5 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -24941,6 +24941,28 @@ are met.") in @code{stb_truetype.h} from C to Rust.") (license (list license:expat license:asl2.0)))) +(define-public rust-std-prelude-0.2 + (package + (name "rust-std-prelude") + (version "0.2.12") + (source + (origin + (method url-fetch) + (uri (crate-uri "std_prelude" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ghcwnhnqn3rphyhlknmxpj5clzqva46z1vh25k5bpzzan2ff1w2")))) + (build-system cargo-build-system) + (home-page "https://github.com/vitiral/std_prelude") + (synopsis + "Prelude that the rust stdlib should have always had") + (description + "A package that simply uses all of the items often included in a Rust +codebase.") + (license license:expat))) + (define-public rust-stdweb-0.4 (package (name "rust-stdweb") From 6e398663c3da8daa905e2e544acb1280a1b9f793 Mon Sep 17 00:00:00 2001 From: Hamzeh Nasajpour Date: Wed, 23 Sep 2020 11:41:25 +0330 Subject: [PATCH 383/757] gnu: nng: Build as a shared library. * gnu/packages/networking.scm (nng)[arguments]: Add configure-flag to build as a shared library. Signed-off-by: Efraim Flashner --- gnu/packages/networking.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 89e47a6726..8b46bd7d24 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -40,6 +40,7 @@ ;;; Copyright © 2020 Brice Waegeneire ;;; Copyright © 2020 Jakub Kądziołka ;;; Copyright © 2020 Jesse Dowell +;;; Copyright © 2020 Hamzeh Nasajpour ;;; ;;; This file is part of GNU Guix. ;;; @@ -419,7 +420,8 @@ at the link-layer level.") (arguments `(#:configure-flags (list "-DNNG_ENABLE_COVERAGE=ON" - "-DNNG_ENABLE_TLS=ON") + "-DNNG_ENABLE_TLS=ON" + "-DBUILD_SHARED_LIBS=ON") #:phases (modify-phases %standard-phases (add-after 'unpack 'disable-failing-tests From fec41dc0590d900d1fc7cf92d82e92b65cabdba2 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 12:39:01 +0200 Subject: [PATCH 384/757] gnu: dmenu: Update to 5.0. * gnu/packages/suckless.scm (dmenu): Update to 5.0. --- gnu/packages/suckless.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index 51a82a58d9..7e297eb9ae 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm @@ -137,14 +137,14 @@ optimising the environment for the application in use and the task performed.") (define-public dmenu (package (name "dmenu") - (version "4.9") + (version "5.0") (source (origin (method url-fetch) (uri (string-append "https://dl.suckless.org/tools/dmenu-" version ".tar.gz")) (sha256 (base32 - "0ia9nqr83bv6x247q30bal0v42chcj9qcjgv59xs6xj46m7iz5xk")))) + "1lvfxzg3chsgcqbc2vr0zic7vimijgmbvnspayx73kyvqi1f267y")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no tests From 8d01f8a66ac2477d477747275f71d573d1c9b8c7 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 22 Sep 2020 15:20:58 +0200 Subject: [PATCH 385/757] installer: Fix docstring typo. * gnu/installer.scm (build-compiled-file): Fix a typo in the docstring. --- gnu/installer.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/installer.scm b/gnu/installer.scm index 5c3192d7a6..c582a46c14 100644 --- a/gnu/installer.scm +++ b/gnu/installer.scm @@ -71,7 +71,7 @@ (_ #f))) (define* (build-compiled-file name locale-builder) - "Return a file-like object that evalutes the gexp LOCALE-BUILDER and store + "Return a file-like object that evaluates the gexp LOCALE-BUILDER and store its result in the scheme file NAME. The derivation will also build a compiled version of this file." (define set-utf8-locale From 5f4a1c6af350292fffae69e3a31ef63f2b8d387e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 11:48:39 +0200 Subject: [PATCH 386/757] gnu: youtube-dl: Update to 2020.09.20. * gnu/packages/video.scm (youtube-dl): Update to 2020.09.20. --- 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 e621492649..4fca2fbea1 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -2167,7 +2167,7 @@ To load this plugin, specify the following option when starting mpv: (define-public youtube-dl (package (name "youtube-dl") - (version "2020.09.14") + (version "2020.09.20") (source (origin (method url-fetch) (uri (string-append "https://github.com/ytdl-org/youtube-dl/" @@ -2175,7 +2175,7 @@ To load this plugin, specify the following option when starting mpv: version ".tar.gz")) (sha256 (base32 - "18wfhprbaszpxgqkac3hb050ngvdsaibbcifg88rkv5vc6bc2mq6")))) + "1pkw3hnkddk1kqv0in152q1k4jjgbmf2xvc9j3r5nd38z6f7j6mc")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion From cfc7e2592dc6d6ec980e002296440c2aba07f32d Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 11:49:03 +0200 Subject: [PATCH 387/757] gnu: python-pynvim: Update to 0.4.2. * gnu/packages/vim.scm (python-pynvim): Update to 0.4.2. --- gnu/packages/vim.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index c6b1092e71..f3c5adf5b1 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -779,13 +779,13 @@ With the package comes a plugin to use vifm as a vim file selector.") (define-public python-pynvim (package (name "python-pynvim") - (version "0.4.1") + (version "0.4.2") (source (origin (method url-fetch) (uri (pypi-uri "pynvim" version)) (sha256 (base32 - "0n2cx22lrmbq7xk7356lyn6k77ryqvkxplw9k0fglk35ckb1isam")))) + "13qgwkqbx012j5spis1aw8rb120rw0zphgjy1j58irax8r6j1ikb")))) (build-system python-build-system) (propagated-inputs `(("python-greenlet" ,python-greenlet) From d198b70e669030d53d2669eed27dffa45b43fd55 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 12:17:02 +0200 Subject: [PATCH 388/757] gnu: libssh: Update to 0.9.5 [security fixes?]. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Upstream is unimpressed: ‘This includes a fix for CVE-2020-16135, however we do not see how this would be exploitable at all. If you find a security bug in libssh please don’t just assign a CVE, talk to us first.’ * gnu/packages/ssh.scm (libssh): Update to 0.9.5. --- 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 4cac75d5fa..23f347dd10 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -123,7 +123,7 @@ file names. (define-public libssh (package (name "libssh") - (version "0.9.4") + (version "0.9.5") (source (origin (method git-fetch) (uri (git-reference @@ -131,7 +131,7 @@ file names. (commit (string-append "libssh-" version)))) (sha256 (base32 - "0qr4vi3k1wv69c95d9j26fiv78pzyksaq8ccd76b8nxar5z1fbj6")) + "1b2klflmn0mdkcyjl4dqfg116bf9nhmqm4qla5cqa9xis89a5bn6")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (outputs '("out" "debug")) From 63003bd47c5135a8f7531631e5db01299bda7875 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 12:20:59 +0200 Subject: [PATCH 389/757] gnu: jucipp: Update to 1.6.1. * gnu/packages/text-editors.scm (jucipp): Update to 1.6.1. --- gnu/packages/text-editors.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index 18f1c00da5..78828bb5a9 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -227,7 +227,7 @@ bindings and many of the powerful features of GNU Emacs.") (define-public jucipp (package (name "jucipp") - (version "1.6.0") + (version "1.6.1") (home-page "https://gitlab.com/cppit/jucipp") (source (origin (method git-fetch) @@ -239,7 +239,7 @@ bindings and many of the powerful features of GNU Emacs.") (recursive? #t))) (file-name (git-file-name name version)) (sha256 - (base32 "177myy6qvjlb6j3f3i3xmfml5r3p9in8xzpvm0n59dn56s81gpnr")))) + (base32 "0lb477acqrm3fy3j6i7j9l68j48cnkrzi80588npwwjssqicy4g6")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DBUILD_TESTING=ON" From 8b033aa1038f976fc91cf7576b864605733f63d5 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Wed, 23 Sep 2020 12:40:36 +0200 Subject: [PATCH 390/757] gnu: sbcl-cl-webkit: Update to 20200923. * gnu/packages/lisp-xyz.scm (sbcl-cl-webkit): Update to 20200923. --- gnu/packages/lisp-xyz.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index 69ebdb3eb8..3ac7537a95 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -3135,10 +3135,10 @@ is a library for creating graphical user interfaces.") (sbcl-package->cl-source-package sbcl-cl-cffi-gtk)) (define-public sbcl-cl-webkit - (let ((commit "41d962aa258282f0a0c45d778e473424ad72afdd")) + (let ((commit "cb6533eb76bc9b784595dca06b37005032e48d9c")) (package (name "sbcl-cl-webkit") - (version (git-version "2.4" "6" commit)) + (version (git-version "2.4" "7" commit)) (source (origin (method git-fetch) @@ -3148,7 +3148,7 @@ is a library for creating graphical user interfaces.") (file-name (git-file-name "cl-webkit" version)) (sha256 (base32 - "0hlr5zbi6zimbr8mk4difnzx8ijhvzf6cz0ih1hki6jy8amd4l7f")))) + "0npnz3m9mipi31chc76jcg8pjhgfqa3q7ivgrfssmiynr5p794ky")))) (build-system asdf-build-system/sbcl) (inputs `(("cffi" ,sbcl-cffi) From 3feeface3101777bad0ff0d57e8e50c4818afe9a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 12:49:00 +0200 Subject: [PATCH 391/757] gnu: xonsh: Update to 0.9.22. * gnu/packages/shells.scm (xonsh): Update to 0.9.22. --- gnu/packages/shells.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 6783af24ee..f3035b6794 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -513,13 +513,13 @@ ksh, and tcsh.") (define-public xonsh (package (name "xonsh") - (version "0.9.21") + (version "0.9.22") (source (origin (method url-fetch) (uri (pypi-uri "xonsh" version)) (sha256 - (base32 "1mih5w73wp57fnf1vcxnfmm5d31vm7pz8fq5a9vw1ch3dv0yczl5")) + (base32 "1jnj063i2123d8yhqxwyx496b3npfyhszavg36748ysi0py5j8yd")) (modules '((guix build utils))) (snippet `(begin From f33d77e2cc3c8dde0c1fb3624041558f491f2054 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 12:49:16 +0200 Subject: [PATCH 392/757] gnu: execline: Update to 2.6.1.0. * gnu/packages/skarnet.scm (execline): Update to 2.6.1.0. --- gnu/packages/skarnet.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/skarnet.scm b/gnu/packages/skarnet.scm index 848a811d33..e2f6007e8a 100644 --- a/gnu/packages/skarnet.scm +++ b/gnu/packages/skarnet.scm @@ -62,14 +62,14 @@ and file system operations. It is used by all skarnet.org software.") (define-public execline (package (name "execline") - (version "2.6.0.2") + (version "2.6.1.0") (source (origin (method url-fetch) (uri (string-append "https://skarnet.org/software/execline/execline-" version ".tar.gz")) (sha256 - (base32 "0wdg93hwpxxdqmsnd8j1nf3m2pf85n3rxaawzaih1y0ajyz6gwya")))) + (base32 "0mj565xml3hvw27finydms0s9abbbpgbr29vnr8gwi7zjzq7ck52")))) (build-system gnu-build-system) (inputs `(("skalibs" ,skalibs))) (arguments From a7fbae6f09bac690009baa9f0c98a13038417d77 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 12:49:22 +0200 Subject: [PATCH 393/757] gnu: s6: Update to 2.9.2.0. * gnu/packages/skarnet.scm (s6): Update to 2.9.2.0. --- gnu/packages/skarnet.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/skarnet.scm b/gnu/packages/skarnet.scm index e2f6007e8a..8032a5e505 100644 --- a/gnu/packages/skarnet.scm +++ b/gnu/packages/skarnet.scm @@ -104,14 +104,14 @@ complexity."))) (define-public s6 (package (name "s6") - (version "2.9.1.0") + (version "2.9.2.0") (source (origin (method url-fetch) (uri (string-append "https://skarnet.org/software/s6/s6-" version ".tar.gz")) (sha256 - (base32 "1xqzl2wnvcmcyhppk7mc10h1ac7fkik3i6gpyliwpf3d5i9mkqh5")))) + (base32 "1pfxx50shncg2s47ic4kp02jh1cxfjq75j3mnxjagyzzz0mbfg9n")))) (build-system gnu-build-system) (inputs `(("skalibs" ,skalibs) ("execline" ,execline))) From 2606d947c24b97d25279fd1da78d6d045f8ed490 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 12:58:50 +0200 Subject: [PATCH 394/757] gnu: multimon-ng: Update to 1.1.9. * gnu/packages/radio.scm (multimon-ng): Update to 1.1.9. --- gnu/packages/radio.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm index e5b4724bd6..b10f75a6ce 100644 --- a/gnu/packages/radio.scm +++ b/gnu/packages/radio.scm @@ -1084,7 +1084,7 @@ from devices on the 433 MHz, 868 MHz, 315 MHz, 345 MHz and 915 MHz ISM bands.") (define-public multimon-ng (package (name "multimon-ng") - (version "1.1.8") + (version "1.1.9") (source (origin (method git-fetch) @@ -1093,13 +1093,13 @@ from devices on the 433 MHz, 868 MHz, 315 MHz, 345 MHz and 915 MHz ISM bands.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1973xfyvzl1viz19zr83cgqlx5laxbjrca35rqabn6dlb6xb5xk8")))) + (base32 "01716cfhxfzsab9zjply9giaa4nn4b7rm3p3vizrwi7n253yiwm2")))) (build-system cmake-build-system) (inputs `(("libx11" ,libx11) ("pulseaudio" ,pulseaudio))) (arguments - '(#:tests? #f)) ; No test suite + '(#:tests? #f)) ; no test suite (home-page "https://github.com/EliasOenal/multimon-ng") (synopsis "Decoder for digital radio transmission modes") (description "Multimon-ng can decode several digital radio transmission From 82f983da35c25c9cfd8f2a3b4fc9412f9ace0e04 Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Wed, 23 Sep 2020 13:59:32 +0200 Subject: [PATCH 395/757] gnu: fplll: Update to 5.3.3. * gnu/packages/algebra.scm (fplll): Update to 5.3.3. [native-inputs]: Add pkg-config. --- gnu/packages/algebra.scm | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 318d653618..56a9a65366 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -151,12 +151,7 @@ line applications.") (define-public fplll (package (name "fplll") - ;; The most recent version 5.3.3 fails in the configure phase: - ;; ./configure: line 12956: syntax error near unexpected token `LIBQD,' - ;; ./configure: line 12956: ` PKG_CHECK_MODULES(LIBQD, qd, have_libqd="yes",' - ;; The error disappears when adding qd as an input; but this is - ;; supposed to be an optional input. - (version "5.3.2") + (version "5.3.3") (source (origin (method git-fetch) (uri (git-reference @@ -165,12 +160,13 @@ line applications.") (file-name (git-file-name name version)) (sha256 (base32 - "00iyz218ywspizjiimrjdcqvdqmrsb2367zyy3vkmypnf9i9l680")))) + "06nyfidagp8pc2kfcw88ldgb2b1xm0a8z31n0sln7j72ihlmd8zj")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) - ("libtool" ,libtool))) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) (inputs `(("gmp" ,gmp) ("mpfr" ,mpfr))) From 049a1714fc0dee6c69f216b6f2e4f43410f6fcac Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Wed, 23 Sep 2020 14:14:09 +0200 Subject: [PATCH 396/757] gnu: fplll: Correct include files. * gnu/packages/patches/fplll-std-fenv.patch: New patch. * gnu/local.mk (dist_patch_DATA): Register patch. * gnu/packages/algebra.scm (fplll): Use patch and move all inputs to propagated-inputs. --- gnu/local.mk | 1 + gnu/packages/algebra.scm | 5 +++-- gnu/packages/patches/fplll-std-fenv.patch | 18 ++++++++++++++++++ 3 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/fplll-std-fenv.patch diff --git a/gnu/local.mk b/gnu/local.mk index 7d246d573d..f3b5b17e84 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -968,6 +968,7 @@ dist_patch_DATA = \ %D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \ %D%/packages/patches/fontconfig-hurd-path-max.patch \ %D%/packages/patches/fpc-reproducibility.patch \ + %D%/packages/patches/fplll-std-fenv.patch \ %D%/packages/patches/freedink-engine-fix-sdl-hints.patch \ %D%/packages/patches/freeimage-unbundle.patch \ %D%/packages/patches/fuse-overlapping-headers.patch \ diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 56a9a65366..16a1853483 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -160,14 +160,15 @@ line applications.") (file-name (git-file-name name version)) (sha256 (base32 - "06nyfidagp8pc2kfcw88ldgb2b1xm0a8z31n0sln7j72ihlmd8zj")))) + "06nyfidagp8pc2kfcw88ldgb2b1xm0a8z31n0sln7j72ihlmd8zj")) + (patches (search-patches "fplll-std-fenv.patch")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) ("libtool" ,libtool) ("pkg-config" ,pkg-config))) - (inputs + (propagated-inputs ; header files pulled in by fplll/defs.h `(("gmp" ,gmp) ("mpfr" ,mpfr))) (home-page "https://github.com/fplll/fplll") diff --git a/gnu/packages/patches/fplll-std-fenv.patch b/gnu/packages/patches/fplll-std-fenv.patch new file mode 100644 index 0000000000..aa2438f0c9 --- /dev/null +++ b/gnu/packages/patches/fplll-std-fenv.patch @@ -0,0 +1,18 @@ +See https://github.com/fplll/fplll/issues/444 + +--- fplll-5.3.3-checkout.old/fplll/enum/enumerate_base.h 2020-09-23 13:55:27.833769823 +0200 ++++ fplll-5.3.3-checkout/fplll/enum/enumerate_base.h 2020-09-23 13:56:14.313771769 +0200 +@@ -127,10 +127,10 @@ + int rounding_backup; + void save_rounding() + { +- rounding_backup = std::fegetround(); +- std::fesetround(FE_TONEAREST); ++ rounding_backup = fegetround(); ++ fesetround(FE_TONEAREST); + } +- void restore_rounding() { std::fesetround(rounding_backup); } ++ void restore_rounding() { fesetround(rounding_backup); } + + inline bool next_pos_up() + { From a183bb080f28561d5c4d293700e087baa8b1470c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 23 Sep 2020 15:13:40 +0300 Subject: [PATCH 397/757] gnu: efl: Update to 1.25.0. * gnu/packages/enlightenment.scm (efl): Update to 1.25.0. [propagated-inputs]: Remove avahi. [arguments]: Remove configure-flags to disable systemd, enable elogind, list evas-loaders to disable and enable avahi. Add substitution to hardcode location of elogind's library. --- gnu/packages/enlightenment.scm | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index dc3114d58b..a72520a318 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -31,7 +31,6 @@ #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages algebra) - #:use-module (gnu packages avahi) #:use-module (gnu packages bittorrent) #:use-module (gnu packages check) #:use-module (gnu packages code) @@ -69,7 +68,7 @@ (define-public efl (package (name "efl") - (version "1.24.3") + (version "1.25.0") (source (origin (method url-fetch) (uri (string-append @@ -77,7 +76,7 @@ version ".tar.xz")) (sha256 (base32 - "0ajwc8lmay5ai7nsrp778g393h0p4h98p4c22gic2w61fgkcd5fy")))) + "0vlmf0rp2qxdl06pdmrd1xdfa10sdz30vnxzc98inpdg1n8iz52k")))) (build-system meson-build-system) (native-inputs `(("check" ,check) @@ -115,8 +114,7 @@ (propagated-inputs ;; All these inputs are in package config files in section ;; Requires.private. - `(("avahi" ,avahi) - ("dbus" ,dbus) + `(("dbus" ,dbus) ("elogind" ,elogind) ("eudev" ,eudev) ("fontconfig" ,fontconfig) @@ -137,13 +135,9 @@ ("wayland" ,wayland) ("zlib" ,zlib))) (arguments - `(#:configure-flags '("-Dsystemd=false" - "-Delogind=true" - "-Dembedded-lz4=false" - "-Devas-loaders-disabler=json" + `(#:configure-flags '("-Dembedded-lz4=false" "-Dbuild-examples=false" "-Decore-imf-loaders-disabler=scim" - "-Davahi=true" "-Dglib=true" "-Dmount-path=/run/setuid-programs/mount" "-Dunmount-path=/run/setuid-programs/umount" @@ -164,6 +158,7 @@ (let ((curl (assoc-ref inputs "curl")) (pulse (assoc-ref inputs "pulseaudio")) (sndfile (assoc-ref inputs "libsndfile")) + (elogind (assoc-ref inputs "elogind")) (lib "/lib/")) (substitute* "src/lib/ecore_con/ecore_con_url_curl.c" (("libcurl.so.?" libcurl) ; libcurl.so.[45] @@ -173,6 +168,9 @@ (string-append pulse lib libpulse)) (("libsndfile.so.1" libsnd) (string-append sndfile lib libsnd))) + (substitute* "src/lib/elput/elput_logind.c" + (("libelogind.so.0" libelogind) + (string-append elogind "/lib/" libelogind))) #t))) (add-after 'unpack 'fix-install-paths (lambda _ From 6a6341be3f090233101dd1895d72484efc8b91b3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 23 Sep 2020 15:19:29 +0300 Subject: [PATCH 398/757] gnu: evisum: Update to 0.5.6. * gnu/packages/enlightenment.scm (evisum): Update to 0.5.6. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index a72520a318..3cf3298789 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -564,14 +564,14 @@ directories. (define-public evisum (package (name "evisum") - (version "0.5.4") + (version "0.5.6") (source (origin (method url-fetch) (uri (string-append "https://download.enlightenment.org/rel/apps/" "evisum/evisum-" version ".tar.xz")) (sha256 - (base32 "1ip3w2d476g45sivqvm1madfyqmkni9q2i99qqxk53859jgs91pa")))) + (base32 "1l8pym7738kncvic5ga03sj9d5igigvmcxa9lbg47z2yvdjwzv97")))) (build-system meson-build-system) (arguments '(#:tests? #f)) ; no tests From 8d0a7a54df8a27e11bff7c48ddb82eb808618a79 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 23 Sep 2020 15:22:52 +0300 Subject: [PATCH 399/757] gnu: evisum: Build translations. * gnu/packages/enlightenment.scm (evisum)[native-inputs]: Add gettext-minimal. --- gnu/packages/enlightenment.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 3cf3298789..c6920fa064 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -576,7 +576,8 @@ directories. (arguments '(#:tests? #f)) ; no tests (native-inputs - `(("pkg-config" ,pkg-config))) + `(("gettext" ,gettext-minimal) + ("pkg-config" ,pkg-config))) (inputs `(("efl" ,efl))) (home-page "https://www.enlightenment.org") From 0dba6eadd7e4a5274b1e5290df96d1a475b2265e Mon Sep 17 00:00:00 2001 From: Morgan Smith Date: Thu, 17 Sep 2020 17:06:02 -0400 Subject: [PATCH 400/757] gnu: Add emacs-toc-org. * gnu/packages/emacs-xyz.scm (emacs-toc-org): New variable. Signed-off-by: Nicolas Goaziou --- gnu/packages/emacs-xyz.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 2957641c14..6b82c94a08 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -2985,6 +2985,27 @@ strings.") Stack Overflow, Super User, and other StackExchange sites.") (license license:gpl3+)))) +(define-public emacs-toc-org + (package + (name "emacs-toc-org") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/snosov1/toc-org") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0lk0rji85a1c0c5r9an0fdvsm4n4jyixsknmr8ywha3lfmc2p0l8")))) + (build-system emacs-build-system) + (home-page "https://github.com/snosov1/toc-org") + (synopsis "Table of Contents generator for Emacs Org mode") + (description + "This package generates a table of contents when saving in Org and +Markdown files.") + (license license:gpl2+))) + (define-public emacs-toml-mode (let ((version "0.1.3") (revision "0") From 97e98e22691d3d1ecf35afc2ba2c961fdbd3cc7e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 19:06:28 +0200 Subject: [PATCH 401/757] services: Allow (service bluetooth-service-type). * gnu/services/desktop.scm (bluetooth-service-type) [default-value]: Set to (bluetooth-configuration). --- gnu/services/desktop.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index bdbea5dddf..1dcf71d359 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -470,6 +470,7 @@ site} for more information." ,(bluetooth-directory config))))) (service-extension shepherd-root-service-type (compose list bluetooth-shepherd-service)))) + (default-value (bluetooth-configuration)) (description "Run the @command{bluetoothd} daemon, which manages all the Bluetooth devices and provides a number of D-Bus interfaces."))) From 40131b75c4fb23ec0ac6beba3618b07c23865ad3 Mon Sep 17 00:00:00 2001 From: Niklas Eklund Date: Wed, 23 Sep 2020 21:04:58 +0200 Subject: [PATCH 402/757] gnu: Add emacs-quickrun. * gnu/packages/emacs-xyz.scm (emacs-quickrun): New variable. Signed-off-by: Nicolas Goaziou --- 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 6b82c94a08..43ef7364e9 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -78,6 +78,7 @@ ;;; Copyright © 2020 Eric Bavier ;;; Copyright © 2020 Morgan Smith ;;; Copyright © 2020 Peng Mei Yu +;;; Copyright © 2020 Niklas Eklund ;;; ;;; This file is part of GNU Guix. ;;; @@ -7490,6 +7491,29 @@ be removed from the front. This type of data structure is sometimes called an \"output-restricted deque\".") (license license:gpl3+))) +(define-public emacs-quickrun + (package + (name "emacs-quickrun") + (version "2.3.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacsorphanage/quickrun") + (commit version))) + (sha256 + (base32 "0a1n2v09h0n7d9p2izflqqang4ny0b46dlqvmxvkkik4bb6f4wcz")) + (file-name (git-file-name name version)))) + (build-system emacs-build-system) + (home-page "https://github.com/emacsorphanage/quickrun") + (synopsis "Execute editing buffer and show its output quickly") + (description + "This package evaluates the content of a buffer, or region, and displays +the result. Quickrun executes not only script languages (Perl, Ruby, Python +etc), but also compiling languages (C, C++, Go, Java etc) and markup +languages.") + (license license:gpl3+))) + (define-public emacs-pkg-info (package (name "emacs-pkg-info") From 367ee580a247978c0fb8988bf76b506583132079 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 23 Sep 2020 22:03:28 +0200 Subject: [PATCH 403/757] gnu: emacs-meson-mode: Update to 0.3. * gnu/packages/emacs-xyz.scm (emacs-meson-mode): Update to 0.3. --- 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 43ef7364e9..288e58879f 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -23912,7 +23912,7 @@ files and subdirectories when appropriate.") (define-public emacs-meson-mode (package (name "emacs-meson-mode") - (version "0.2") + (version "0.3") (source (origin (method git-fetch) @@ -23921,7 +23921,7 @@ files and subdirectories when appropriate.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1720b3hpfqd989zrgcns51jbjrv4vzl9di9mccl55vkmkbqzfin0")))) + (base32 "0hlqvq3j4f6g16nj3bm2wbkncn8hv8c8iqd0sch3w80wwqnr622y")))) (build-system emacs-build-system) (home-page "https://github.com/wentasah/meson-mode") (synopsis "Major mode for Meson build system files") From 1ce0b32265ff881a14a9ff60878fb173d3c2f0f9 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 23 Sep 2020 22:05:02 +0200 Subject: [PATCH 404/757] gnu: emacs-hyperbole: Update to 7.1.3. * gnu/packages/emacs-xyz.scm (emacs-hyperbole): Update to 7.1.3. --- 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 288e58879f..f9851c18ee 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -263,14 +263,14 @@ using geiser.") (define-public emacs-hyperbole (package (name "emacs-hyperbole") - (version "7.1.2") + (version "7.1.3") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "hyperbole-" version ".tar")) (sha256 - (base32 "1bspmqnbniwr9385wh823dsr5fgch5qnlkf45s4vi0nvg8jdccp1")) + (base32 "0bizibn4qgxqp89fyik6p47s9hss1g932mg8k7pznn3kkhj5c8rh")) (patches (search-patches "emacs-hyperbole-toggle-messaging.patch")))) (build-system emacs-build-system) From 9273f75dd65c17aa5bdcb38c51c7c2000a949d97 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 23 Sep 2020 22:09:51 +0200 Subject: [PATCH 405/757] gnu: emacs-peg: Update to 1.0. * gnu/packages/emacs-xyz.scm (emacs-peg): Update to 1.0. [source]: Switch to ELPA URI. [home-page]: Use ELPA URI. --- gnu/packages/emacs-xyz.scm | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index f9851c18ee..3b75219077 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -14367,18 +14367,15 @@ timestamps by providing a @code{ts} struct.") (define-public emacs-peg (package (name "emacs-peg") - (version "0.6") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/emacsmirror/peg") - (commit version))) - (sha256 - (base32 - "0kjz7ch4bn0m4v9zgqyqcrsasnqc5c5drv2hp22j7rnbb7ny0q3n")) - (file-name (git-file-name name version)))) + (version "1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://elpa.gnu.org/packages/peg-" version ".tar")) + (sha256 + (base32 "0skr5dz9k34r409hisnj37n1b7n62l3md0glnfx578xkbmxlpcxl")))) (build-system emacs-build-system) - (home-page "https://github.com/emacsmirror/peg/") + (home-page "https://elpa.gnu.org/packages/peg.html") (synopsis "Parsing Expression Grammars in Elisp") (description "This package provides a macro that parses the current buffer according to a parsing expression grammar.") From cd4bb173e041fa961b05fb101f214d506182db84 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Wed, 23 Sep 2020 23:34:21 +0300 Subject: [PATCH 406/757] services: docker: Fix configuration. This is a follow-up to e04b90607ac903359c90c9bad1b67fb7ce2f0eb6. * gnu/services/docker.scm (docker-shepherd-service): Fix "enable-proxy?" configuration. --- gnu/services/docker.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/services/docker.scm b/gnu/services/docker.scm index 2f13c270ab..e23014213b 100644 --- a/gnu/services/docker.scm +++ b/gnu/services/docker.scm @@ -122,11 +122,11 @@ loop-back communications.") #$@(if debug? '("--debug" "--log-level=debug") '()) - (if #$enable-proxy? - '("--userland-proxy=true" - (string-append - "--userland-proxy-path=" #$proxy "/bin/proxy")) - '("--userland-proxy=false")) + #$@(if enable-proxy? + (list "--userland-proxy=true" + #~(string-append + "--userland-proxy-path=" #$proxy "/bin/proxy")) + '("--userland-proxy=false")) (if #$enable-iptables? "--iptables" "--iptables=false")) From 035df987f11cb64d99257f42932a155ebceac685 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 21 Sep 2020 23:50:19 -0400 Subject: [PATCH 407/757] gnu: spice-gtk: Only use "good" GStreamer plugins out of the box. Do not propagate plugins that are known to be patent encumbered out of the box, so the user has a choice. * gnu/packages/spice.scm (spice-gtk)[propagated-inputs]: Remove gst-libav, gst-plugins-bad and gst-plugins-ugly. Signed-off-by: Maxim Cournoyer --- gnu/packages/spice.scm | 3 --- 1 file changed, 3 deletions(-) diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm index 4aff8dbf56..4b4c673a9d 100644 --- a/gnu/packages/spice.scm +++ b/gnu/packages/spice.scm @@ -144,11 +144,8 @@ which allows users to view a desktop computing environment.") (build-system gnu-build-system) (propagated-inputs `(("gstreamer" ,gstreamer) - ("gst-libav" ,gst-libav) ("gst-plugins-base" ,gst-plugins-base) ("gst-plugins-good" ,gst-plugins-good) - ("gst-plugins-bad" ,gst-plugins-bad) - ("gst-plugins-ugly" ,gst-plugins-ugly) ("spice-protocol" ,spice-protocol) ;; These are required by the pkg-config files. From 5c9ea15daa6e7cdc08b9aadb2cad063d994858e4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 24 Sep 2020 09:16:30 +0200 Subject: [PATCH 408/757] gnu: sudo: Update to 1.9.3p1. * gnu/packages/admin.scm (sudo): Update to 1.9.3p1. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 36793c5947..e16b69a903 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1397,7 +1397,7 @@ system administrator.") (define-public sudo (package (name "sudo") - (version "1.9.3") + (version "1.9.3p1") (source (origin (method url-fetch) (uri @@ -1407,7 +1407,7 @@ system administrator.") version ".tar.gz"))) (sha256 (base32 - "0dsq7xf55060cx88286h71l74fia76mf6gbw5j6fs59v7g68k60x")) + "17mldsg5d08s23cskmjxfa81ibnqw3slgf3l4023j72ywi9xxffw")) (modules '((guix build utils))) (snippet '(begin From 26746c6719de490203705cd6791da7176a4319cf Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 21:02:19 +0200 Subject: [PATCH 409/757] gnu: celluloid: Update to 0.20. * gnu/packages/video.scm (celluloid): Update to 0.20. --- gnu/packages/video.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 4fca2fbea1..0f727a6e9e 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -698,14 +698,15 @@ old-fashioned output methods with powerful ascii-art renderer.") (define-public celluloid (package (name "celluloid") - (version "0.19") + (version "0.20") (source (origin (method url-fetch) - (uri (string-append "https://github.com/celluloid-player/celluloid/releases" - "/download/v" version "/celluloid-" version ".tar.xz")) + (uri (string-append "https://github.com/celluloid-player/celluloid" + "/releases/download/v" version + "/celluloid-" version ".tar.xz")) (sha256 - (base32 "1s3qkism96gi44incvsb6rqg255qcvjvw61ya7nw30md0sapj4sl")))) + (base32 "0kjjv2pcdvwcn4yi8kbpsca7pnx6cx6xdznv7ppqm0fssx68qyb3")))) (build-system glib-or-gtk-build-system) (native-inputs `(("intltool" ,intltool) From 89ba5f9479a001c89872e42bd1ffdc82bf02b5f7 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 23 Sep 2020 21:07:20 +0200 Subject: [PATCH 410/757] gnu: plantuml: Update to 1.2020.17. * gnu/packages/uml.scm (plantuml): Update to 1.2020.17. --- gnu/packages/uml.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/uml.scm b/gnu/packages/uml.scm index f231b28fe5..2bea4798f7 100644 --- a/gnu/packages/uml.scm +++ b/gnu/packages/uml.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Theodoros Foradis ;;; Copyright © 2019 Arun Isaac -;;; Copyright © 2019 Tobias Geerinckx-Rice +;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2020 Michael Rohleder ;;; ;;; This file is part of GNU Guix. @@ -31,14 +31,14 @@ (define-public plantuml (package (name "plantuml") - (version "1.2020.16") + (version "1.2020.17") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/plantuml/" version "/plantuml-" version ".tar.gz")) (sha256 (base32 - "10ski6qq99rx98n5m9qs387c61jp40l7gqnbk290kay94x44phs7")))) + "031xqzqi2jh2kms6qjy9sv9m5mjvk887jz54dnrkvw5zgn6kv4hp")))) (build-system ant-build-system) (arguments `(#:tests? #f ; no tests From bd64cb68eee0363911efd7bde40c6f04763b3453 Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Tue, 22 Sep 2020 22:13:31 +0200 Subject: [PATCH 411/757] gnu: cheese: Update to 3.38.0. * gnu/packages/gnome.scm (cheese): Update to 3.38.0. [arguments]: Add phase patch-docbook-xml. [native-inputs]: Add docbook-xml. Signed-off-by: Mathieu Othacehe --- gnu/packages/gnome.scm | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index bc0a4e859e..f066dd3efe 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -10046,7 +10046,7 @@ photo-booth-like software, such as Cheese.") (define-public cheese (package (name "cheese") - (version "3.34.0") + (version "3.38.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -10054,7 +10054,7 @@ photo-booth-like software, such as Cheese.") version ".tar.xz")) (sha256 (base32 - "0wvyc9wb0avrprvm529m42y5fkv3lirdphqydc9jw0c8mh05d1ni")))) + "0vyim2avlgq3a48rgdfz5g21kqk11mfb53b2l883340v88mp7ll8")))) (arguments `(#:glib-or-gtk? #t ;; Tests require GDK. @@ -10067,6 +10067,15 @@ photo-booth-like software, such as Cheese.") (substitute* "meson_post_install.py" (("gtk-update-icon-cache") (which "true"))) #t)) + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + ;; Avoid a network connection attempt during the build. + (substitute* '("docs/reference/cheese.xml" + "docs/reference/cheese-docs.xml") + (("http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/docbookx.dtd"))) + #t)) (add-after 'install 'wrap-cheese (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) @@ -10077,6 +10086,7 @@ photo-booth-like software, such as Cheese.") (build-system meson-build-system) (native-inputs `(("docbook-xsl" ,docbook-xsl) + ("docbook-xml" ,docbook-xml-4.3) ("glib:bin" ,glib "bin") ("gtk-doc" ,gtk-doc) ("intltool" ,intltool) From 0b17de06bd49081d612ab9dd6845f54bf3de57bf Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 24 Sep 2020 10:09:48 +0200 Subject: [PATCH 412/757] gnu: cuirass: Work around Guile memory issues. Work around . * gnu/packages/ci.scm (cuirass)[inputs]: Use guile-3.0/libgc-7 instead of guile-3.0. --- gnu/packages/ci.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index 411b7a7e5e..73878d8b49 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -122,7 +122,7 @@ `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,objs))) #t)))))) (inputs - `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile")) + `(("guile" ,guile-3.0/libgc-7) ("guile-fibers" ,guile-fibers) ("guile-gcrypt" ,guile-gcrypt) ("guile-json" ,guile-json-4) From e503211105dcea18e9c13aaf49398ce42c7a7347 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 24 Sep 2020 10:26:05 +0200 Subject: [PATCH 413/757] gnu: cuirass: Update to 0.0.1-47.b310f17. This update add support for SQL queries logging. * gnu/packages/ci.scm (guile-sqlite3-dev): New variable. (cuirass): Update to 0.0.1-47.b310f17. [inputs]: Use guile-sqlite3-dev instead of guile-sqlite3. --- gnu/packages/ci.scm | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index 73878d8b49..e0d12537b4 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -39,6 +39,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages perl-compression) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages sqlite) #:use-module (gnu packages tls) #:use-module (gnu packages texinfo) #:use-module (gnu packages version-control) @@ -46,9 +47,29 @@ #:use-module (gnu packages xml) #:use-module (guix build-system gnu)) +;; Guile-Sqlite3 package adding SQL query logging support. +;; Remove it when next Guile-Sqlite3 release is out. +(define-public guile-sqlite3-dev + (let ((commit "22ef45d268de7707cbbb943c404f9b0c1668e2e1") + (revision "1")) + (package + (inherit guile-sqlite3) + (name "guile-sqlite3") + (version (git-version "0.1.2" revision commit)) + (home-page "https://notabug.org/mothacehe/guile-sqlite3.git") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (sha256 + (base32 + "1q90f8zhw9n1c39szd2ba7aj5fi92m09pnlv0z7jbhnnjam5jwcd")) + (file-name (string-append name "-" version "-checkout"))))))) + (define-public cuirass - (let ((commit "d22ffdfa2ab2e692e41dbc8c2e6c4d25a79ee9cd") - (revision "46")) + (let ((commit "b310f17aaff8f17af0e7cf77b0b9d6866fe89abe") + (revision "47")) (package (name "cuirass") (version (git-version "0.0.1" revision commit)) @@ -60,7 +81,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "00649cjc7a1dny2xpqa2qa5hjqdbxyqwfhdbf5ax02ncnn6vwkas")))) + "19cgwqsgikn2mf95406jzsaqa65whh8ygqripawnzl0hl7pnmrvn")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) @@ -126,7 +147,7 @@ ("guile-fibers" ,guile-fibers) ("guile-gcrypt" ,guile-gcrypt) ("guile-json" ,guile-json-4) - ("guile-sqlite3" ,guile-sqlite3) + ("guile-sqlite3" ,guile-sqlite3-dev) ("guile-git" ,guile-git) ("guile-zlib" ,guile-zlib) ;; FIXME: this is propagated by "guile-git", but it needs to be among From 92e507c963470c6086a59ca8e1dd58ed4403649c Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 24 Sep 2020 10:47:22 +0200 Subject: [PATCH 414/757] services: cuirass: Add SQL queries logging support. * gnu/services/cuirass.scm ()[queries-log-file]: New field. (cuirass-shepherd-service): Honor it. (cuirass-log-rotations): If defined, add the queries log file to the log rotation. --- doc/guix.texi | 4 ++++ gnu/services/cuirass.scm | 23 +++++++++++++++++++---- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 949551a163..576845233a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -23904,6 +23904,10 @@ Location of the log file. @item @code{web-log-file} (default: @code{"/var/log/cuirass-web.log"}) Location of the log file used by the web interface. +@item @code{queries-log-file} (default: @code{#f}) +Location of the SQL queries log file. By default, SQL queries logging is +disabled. + @item @code{cache-directory} (default: @code{"/var/cache/cuirass"}) Location of the repository cache. diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm index 0f4f0f9948..44f40a632c 100644 --- a/gnu/services/cuirass.scm +++ b/gnu/services/cuirass.scm @@ -54,6 +54,8 @@ (default "/var/log/cuirass.log")) (web-log-file cuirass-configuration-web-log-file ;string (default "/var/log/cuirass-web.log")) + (queries-log-file cuirass-configuration-queries-log-file ;string + (default #f)) (cache-directory cuirass-configuration-cache-directory ;string (dir-name) (default "/var/cache/cuirass")) (ttl cuirass-configuration-ttl ;integer @@ -87,6 +89,7 @@ (cache-directory (cuirass-configuration-cache-directory config)) (web-log-file (cuirass-configuration-web-log-file config)) (log-file (cuirass-configuration-log-file config)) + (queries-log-file (cuirass-configuration-queries-log-file config)) (user (cuirass-configuration-user config)) (group (cuirass-configuration-group config)) (interval (cuirass-configuration-interval config)) @@ -111,6 +114,10 @@ "--database" #$database "--ttl" #$(string-append (number->string ttl) "s") "--interval" #$(number->string interval) + #$@(if queries-log-file + (list (string-append "--log-queries=" + queries-log-file)) + '()) #$@(if use-substitutes? '("--use-substitutes") '()) #$@(if one-shot? '("--one-shot") '()) #$@(if fallback? '("--fallback") '()) @@ -140,6 +147,10 @@ "--port" #$(number->string port) "--listen" #$host "--interval" #$(number->string interval) + #$@(if queries-log-file + (list (string-append "--log-queries=" + queries-log-file)) + '()) #$@(if use-substitutes? '("--use-substitutes") '()) #$@(if fallback? '("--fallback") '()) #$@extra-options) @@ -187,10 +198,14 @@ (define (cuirass-log-rotations config) "Return the list of log rotations that corresponds to CONFIG." - (list (log-rotation - (files (list (cuirass-configuration-log-file config))) - (frequency 'weekly) - (options '("rotate 40"))))) ;worth keeping + (let ((queries-log-file (cuirass-configuration-queries-log-file config))) + (list (log-rotation + (files `(,(cuirass-configuration-log-file config) + ,@(if queries-log-file + (list queries-log-file) + '()))) + (frequency 'weekly) + (options '("rotate 40")))))) ;worth keeping (define cuirass-service-type (service-type From c5d9cdd91359799354028a461a03950fba6704ef Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Thu, 24 Sep 2020 11:13:55 +0200 Subject: [PATCH 415/757] gnu: nyxt: Update to 2-pre-release-2. * gnu/packages/web-browsers.scm (nyxt): Update to 2-pre-release-2. --- gnu/packages/web-browsers.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 205538ee27..62d1352283 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -461,7 +461,7 @@ driven and does not detract you from your daily work.") (name "nyxt") ;; Package the pre-release because latest stable 1.5.0 does not build ;; anymore. - (version "2-pre-release-1") + (version "2-pre-release-2") (source (origin (method git-fetch) @@ -472,7 +472,7 @@ driven and does not detract you from your daily work.") (commit version))) (sha256 (base32 - "0aipsmzqnlkmy001cihz2jnc0hja8c10rm08jycxr05j3gx3qsxd")) + "0wqq8ppn0n7js3pxzzb36h0lf3r3gqhs2hi8h85c3n8a54hnbp8q")) (file-name (git-file-name "nyxt" version)))) (build-system gnu-build-system) (arguments @@ -551,6 +551,7 @@ driven and does not detract you from your daily work.") ("dexador" ,cl-dexador) ("enchant" ,cl-enchant) ("fset" ,cl-fset) + ("hu.dwim.defclass-star" ,cl-hu.dwim.defclass-star) ("iolib" ,cl-iolib) ("local-time" ,cl-local-time) ("log4cl" ,cl-log4cl) From 80e26d74294d40f311f61d13996f1ed1aa4d8edd Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 24 Sep 2020 11:28:14 +0200 Subject: [PATCH 416/757] services: cuirass: Add web SQL queries logging support. * gnu/services/cuirass.scm ()[web-queries-log-file]: New field. (cuirass-shepherd-service): Honor it. (cuirass-log-rotations): If defined, add the web queries log file to the log rotation. --- doc/guix.texi | 4 ++++ gnu/services/cuirass.scm | 16 +++++++++++++--- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 576845233a..6b2c749bc7 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -23908,6 +23908,10 @@ Location of the log file used by the web interface. Location of the SQL queries log file. By default, SQL queries logging is disabled. +@item @code{web-queries-log-file} (default: @code{#f}) +Location of the web SQL queries log file. By default, web SQL queries +logging is disabled. + @item @code{cache-directory} (default: @code{"/var/cache/cuirass"}) Location of the repository cache. diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm index 44f40a632c..adf79af8ac 100644 --- a/gnu/services/cuirass.scm +++ b/gnu/services/cuirass.scm @@ -56,6 +56,9 @@ (default "/var/log/cuirass-web.log")) (queries-log-file cuirass-configuration-queries-log-file ;string (default #f)) + (web-queries-log-file + cuirass-configuration-web-queries-log-file ;string + (default #f)) (cache-directory cuirass-configuration-cache-directory ;string (dir-name) (default "/var/cache/cuirass")) (ttl cuirass-configuration-ttl ;integer @@ -90,6 +93,8 @@ (web-log-file (cuirass-configuration-web-log-file config)) (log-file (cuirass-configuration-log-file config)) (queries-log-file (cuirass-configuration-queries-log-file config)) + (web-queries-log-file + (cuirass-configuration-web-queries-log-file config)) (user (cuirass-configuration-user config)) (group (cuirass-configuration-group config)) (interval (cuirass-configuration-interval config)) @@ -147,9 +152,9 @@ "--port" #$(number->string port) "--listen" #$host "--interval" #$(number->string interval) - #$@(if queries-log-file + #$@(if web-queries-log-file (list (string-append "--log-queries=" - queries-log-file)) + web-queries-log-file)) '()) #$@(if use-substitutes? '("--use-substitutes") '()) #$@(if fallback? '("--fallback") '()) @@ -198,11 +203,16 @@ (define (cuirass-log-rotations config) "Return the list of log rotations that corresponds to CONFIG." - (let ((queries-log-file (cuirass-configuration-queries-log-file config))) + (let ((queries-log-file (cuirass-configuration-queries-log-file config)) + (web-queries-log-file + (cuirass-configuration-web-queries-log-file config))) (list (log-rotation (files `(,(cuirass-configuration-log-file config) ,@(if queries-log-file (list queries-log-file) + '()) + ,@(if web-queries-log-file + (list web-queries-log-file) '()))) (frequency 'weekly) (options '("rotate 40")))))) ;worth keeping From a024eedb1c0a537aa236fa27fe7a94ba6aa3d76c Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 24 Sep 2020 13:50:06 +0200 Subject: [PATCH 417/757] services: cuirass: Create queries log files at activation. * gnu/services/cuirass.scm (cuirass-activation)[queries-log-file]: Create and set user permissions on "queries-log-file" and "web-queries-log-file". --- gnu/services/cuirass.scm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm index adf79af8ac..d4faf7823b 100644 --- a/gnu/services/cuirass.scm +++ b/gnu/services/cuirass.scm @@ -186,6 +186,9 @@ (db (dirname (cuirass-configuration-database config))) (user (cuirass-configuration-user config)) (log "/var/log/cuirass") + (queries-log-file (cuirass-configuration-queries-log-file config)) + (web-queries-log-file + (cuirass-configuration-web-queries-log-file config)) (group (cuirass-configuration-group config))) (with-imported-modules '((guix build utils)) #~(begin @@ -199,7 +202,13 @@ (gid (group:gid (getgr #$group)))) (chown #$cache uid gid) (chown #$db uid gid) - (chown #$log uid gid)))))) + (chown #$log uid gid) + + (call-with-output-file #$queries-log-file (const #t)) + (call-with-output-file #$web-queries-log-file (const #t)) + + (chown #$queries-log-file uid gid) + (chown #$web-queries-log-file uid gid)))))) (define (cuirass-log-rotations config) "Return the list of log rotations that corresponds to CONFIG." From ff43f128b7c142ae3f758d34137e562e6f7ef0e0 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Thu, 24 Sep 2020 14:48:38 +0200 Subject: [PATCH 418/757] gnu: Add tarlz. * gnu/packages/compression.scm (tarlz): New variable. --- gnu/packages/compression.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 97f254ff6e..5622af1fe9 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -28,6 +28,7 @@ ;;; Copyright © 2020 Björn Höfling ;;; Copyright © 2020 Arun Isaac ;;; Copyright © 2020 Lars-Dominik Braun +;;; Copyright © 2020 Guillaume Le Vaillant ;;; ;;; This file is part of GNU Guix. ;;; @@ -2249,3 +2250,31 @@ computations.") with their error correction data losslessly rearranged for better compression, to their original, binary CD format.") (license license:gpl3+))) + +(define-public tarlz + (package + (name "tarlz") + (version "0.17") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://savannah/lzip/tarlz/" + "tarlz-" version ".tar.lz")) + (sha256 + (base32 "0gpdm6z9pdr5bn31kxg73wm686hhpb5pdf5782pbl5a4xqqhqj90")))) + (build-system gnu-build-system) + (native-inputs + `(("lzip" ,lzip))) + (inputs + `(("lzlib" ,lzlib))) + (home-page "https://www.nongnu.org/lzip/tarlz.html") + (synopsis "Combination of the tar archiver and the lzip compressor") + (description + "Tarlz is a massively parallel (multi-threaded) combined implementation of +the tar archiver and the lzip compressor. Tarlz creates, lists, and extracts +archives in a simplified and safer variant of the POSIX pax format compressed +with lzip, keeping the alignment between tar members and lzip members. The +resulting multimember tar.lz archive is fully backward compatible with standard +tar tools like GNU tar, which treat it like any other tar.lz archive. Tarlz +can append files to the end of such compressed archives.") + (license license:gpl2+))) From 6c1f173650728eb9d5f21254686e9b923808a89b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 24 Sep 2020 17:15:43 +0300 Subject: [PATCH 419/757] gnu: footswitch: Use cc-for-target. * gnu/packages/accessibility.scm (footswitch)[arguments]: Replace hard-coded gcc with cc-for-target in make-flags. --- gnu/packages/accessibility.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/accessibility.scm b/gnu/packages/accessibility.scm index 14ce805aef..34031545dd 100644 --- a/gnu/packages/accessibility.scm +++ b/gnu/packages/accessibility.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2017 Stefan Reichör ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2019 Andrew Miloradovsky +;;; Copyright © 2020 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -272,7 +273,7 @@ available to help to click.") `(("hidapi" ,hidapi))) (arguments `(#:tests? #f ; no tests - #:make-flags (list "CC=gcc") + #:make-flags (list (string-append "CC=" ,(cc-for-target))) #:phases (modify-phases %standard-phases (delete 'configure) ;; Install target in the Makefile does not work for Guix From 9995f7ebbca4acf9da052c008a3194f9d7e9bee6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 24 Sep 2020 17:17:08 +0300 Subject: [PATCH 420/757] gnu: xmagnify: Use cc-for-target. * gnu/packages/accessibility.scm (xmagnify)[arguments]: Replace hard-coded gcc with cc-for-target in make-flags. --- gnu/packages/accessibility.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/accessibility.scm b/gnu/packages/accessibility.scm index 34031545dd..5180f88bae 100644 --- a/gnu/packages/accessibility.scm +++ b/gnu/packages/accessibility.scm @@ -309,7 +309,7 @@ devices have vendorId:productId = 0c45:7403 or 0c45:7404.") (arguments `(#:tests? #f ; none included #:make-flags - (list "CC=gcc" + (list (string-append "CC=" ,(cc-for-target)) (string-append "prefix=" (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases From 9e5758630db0d01842b980aed2f930ada40c8ce5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 24 Sep 2020 17:18:42 +0300 Subject: [PATCH 421/757] gnu: abduco: Use cc-for-target. * gnu/packages/abduco.scm (abduco)[arguments]: Replace hard-coded gcc with cc-for-target in make-flags. --- gnu/packages/abduco.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/abduco.scm b/gnu/packages/abduco.scm index 37d2f37773..19671d14c9 100644 --- a/gnu/packages/abduco.scm +++ b/gnu/packages/abduco.scm @@ -19,6 +19,7 @@ (define-module (gnu packages abduco) #:use-module (guix build-system gnu) + #:use-module (guix utils) #:use-module (guix download) #:use-module (guix licenses) #:use-module (guix packages)) @@ -37,7 +38,7 @@ "1x1m58ckwsprljgmdy93mvgjyg9x3cqrzdf3mysp0mx97zhhj2f9")))) (build-system gnu-build-system) (arguments - `(#:make-flags (list "CC=gcc" + `(#:make-flags (list (string-append "CC=" ,(cc-for-target)) (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases (delete 'configure) From aea2a0f967e644a98baff1bbe10f85b08b7e1fc6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 24 Sep 2020 17:20:41 +0300 Subject: [PATCH 422/757] gnu: netcat-openbsd: Use cc-for-target. * gnu/packages/admin.scm (netcat-openbsd)[arguments]: Replace hard-coded gcc with cc-for-target in make-flags. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index e16b69a903..db68a15d8f 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2016, 2017 Leo Famulari ;;; Copyright © 2016 Pjotr Prins ;;; Copyright © 2016, 2017 Ricardo Wurmus -;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner ;;; Copyright © 2016 Peter Feigl ;;; Copyright © 2016 John J. Foerch ;;; Copyright © 2016, 2017 Nikita @@ -841,7 +841,7 @@ would need and has several interesting built-in capabilities.") (arguments `(#:tests? #f ; no test suite #:make-flags - (list "CC=gcc") + (list (string-append "CC=" ,(cc-for-target))) #:phases (modify-phases %standard-phases (delete 'configure) From 215b49a8814093ef6b953b84efe30de1c3111665 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 24 Sep 2020 15:08:15 +0200 Subject: [PATCH 423/757] gnu: openmpi: Have 'mpirun' look for executables under $prefix. * gnu/packages/mpi.scm (openmpi)[arguments]: Add "--enable-mpirun-prefix-by-default" to #:configure-flags. --- gnu/packages/mpi.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index d831766ef2..06a82cce95 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015, 2018, 2019 Eric Bavier -;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès +;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès ;;; Copyright © 2014 Ian Denhardt ;;; Copyright © 2016 Andreas Enge ;;; Copyright © 2017 Dave Love @@ -221,6 +221,10 @@ bind processes, and much more.") "--with-hwloc=external" "--with-libevent" + ;; Help 'orterun' and 'mpirun' find their tools + ;; under $prefix by default. + "--enable-mpirun-prefix-by-default" + ;; InfiniBand support "--enable-openib-control-hdr-padding" "--enable-openib-dynamic-sl" From 8e0c5033b17fcf1e4596ee9a3d52157900acc6fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 24 Sep 2020 16:26:34 +0200 Subject: [PATCH 424/757] bash completion: Adjust to new 'guix help' output. This is a followup to 3794ce93be8216d8378df7b808ce7f53b1e05a53, which broke command completion. Reported by Oleg Pykhalov . * etc/completion/bash/guix (_guix_complete_command): Update to match output of 'guix help' as introduced in 3794ce93be8216d8378df7b808ce7f53b1e05a53. --- etc/completion/bash/guix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix index aa217bd318..fdbdf46810 100644 --- a/etc/completion/bash/guix +++ b/etc/completion/bash/guix @@ -27,8 +27,9 @@ _guix_complete_command () if [ -z "$_guix_commands" ] then # Cache the list of commands to speed things up. - _guix_commands="$(guix --help 2> /dev/null \ - | grep '^ ' | cut -c 2-)" + _guix_commands="$(guix --help 2> /dev/null \ + | grep '^ ' \ + | sed '-es/^ *\([a-z-]\+\).*$/\1/g')" fi COMPREPLY=($(compgen -W "$_guix_commands" -- "$word_at_point")) } From 7f12756e75b7589477878ba269c6fd86e5af3acd Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Tue, 15 Sep 2020 18:06:30 -0300 Subject: [PATCH 425/757] gnu: Add python-liblarch. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (python-liblarch): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index f066dd3efe..4d30ee9d92 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2501,6 +2501,47 @@ on the GNOME Desktop with a single simple application.") for settings shared by various components of the GNOME desktop.") (license license:lgpl2.1+))) +(define-public python-liblarch + (package + (name "python-liblarch") + (version "3.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/getting-things-gnome/liblarch") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0xv2mfvyzipbny3iz8vll77wsqxfwh28xj6bj1ff0l452waph45m")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'start-xserver + (lambda* (#:key inputs #:allow-other-keys) + (system (format #f "~a/bin/Xvfb :1 &" + (assoc-ref inputs "xorg-server"))) + (setenv "DISPLAY" ":1") + #t))))) + (native-inputs + `(("xorg-server" ,xorg-server-for-tests))) + (inputs + `(("gtk+" ,gtk+))) + (propagated-inputs + `(("python-pygobject" ,python-pygobject))) + (home-page "https://wiki.gnome.org/Projects/liblarch") + (synopsis "Library to easily handle complex data structures") + (description + "Liblarch is a Python library built to easily handle data structures such +as lists, trees and acyclic graphs. There's also a GTK binding that will +allow you to use your data structure in a @code{Gtk.Treeview}. + +Liblarch support multiple views of one data structure and complex filtering. +That way, you have a clear separation between your data themselves (Model) +and how they are displayed (View).") + (license license:lgpl3+))) + (define-public icon-naming-utils (package (name "icon-naming-utils") From dca2f0ea01453bae2109ef0fe8460bcd67a55634 Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Tue, 15 Sep 2020 18:07:53 -0300 Subject: [PATCH 426/757] gnu: Add gtg. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (gtg): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 57 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 4d30ee9d92..510a971e9d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2542,6 +2542,63 @@ That way, you have a clear separation between your data themselves (Model) and how they are displayed (View).") (license license:lgpl3+))) +(define-public gtg + (package + (name "gtg") + (version "0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/getting-things-gnome/gtg") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0r28vyr88rj3kd3cg4gj7sd29wadjchi92wzmbx67d4hlg25h8kk")))) + (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t + #:phases + (modify-phases %standard-phases + (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap + (lambda* (#:key outputs #:allow-other-keys) + (let ((prog (string-append (assoc-ref outputs "out") + "/bin/gtg")) + (pylib (string-append (assoc-ref outputs "out") + "/lib/python" + ,(version-major+minor + (package-version python)) + "/site-packages"))) + (wrap-program prog + `("PYTHONPATH" = (,(getenv "PYTHONPATH") ,pylib)) + `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))) + #t)))))) + (native-inputs + `(("desktop-file-utils" ,desktop-file-utils) + ("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk+:bin" ,gtk+ "bin") + ("pkg-config" ,pkg-config))) + (inputs + `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gtk+" ,gtk+) + ("python-dbus" ,python-dbus) + ("python-liblarch" ,python-liblarch) + ("python-pycairo" ,python-pycairo) + ("python-pygobject" ,python-pygobject) + ("python-pyxdg" ,python-pyxdg))) + (home-page "https://wiki.gnome.org/Apps/GTG") + (synopsis "Personal organizer for the GNOME desktop") + (description + "Getting Things GNOME! (GTG) is a personal tasks and TODO list items +organizer for the GNOME desktop environment inspired by the Getting Things +Done (GTD) methodology. GTG is designed with flexibility, adaptability, +and ease of use in mind so it can be used as more than just GTD software. +GTG is intended to help you track everything you need to do and need to +know, from small tasks to large projects.") + (license license:gpl3+))) + (define-public icon-naming-utils (package (name "icon-naming-utils") From 1af5e57d875000bfe878ca8e4435c2899fb66914 Mon Sep 17 00:00:00 2001 From: Ivan Kozlov Date: Fri, 31 Jul 2020 11:18:23 +0300 Subject: [PATCH 427/757] gnu: awesome: Fix command completion in the prompt and Lua paths MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/wm.scm (awesome): Delete useless ‘env’ invocation in lib/awful/completion.lua. Change the delimiter for LUA_PATH and LUA_CPATH variables. Signed-off-by: Ludovic Courtès --- gnu/packages/wm.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 000ec8bd27..be23980a12 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -973,6 +973,9 @@ experience.") (modify-phases %standard-phases (add-before 'configure 'set-paths (lambda* (#:key inputs #:allow-other-keys) + (substitute* "lib/awful/completion.lua" + (("/usr/bin/env") + "")) ;; The build process needs to load Cairo dynamically. (let* ((cairo (string-append (assoc-ref inputs "cairo") "/lib")) (lua-version ,(version-major+minor (package-version lua))) @@ -1021,9 +1024,9 @@ experience.") (lua-version ,(version-major+minor (package-version lua))) (lua-lgi (assoc-ref inputs "lua-lgi"))) (wrap-program (string-append awesome "/bin/awesome") - `("LUA_PATH" suffix + `("LUA_PATH" ";" suffix (,(format #f "~a/share/lua/~a/?.lua" lua-lgi lua-version))) - `("LUA_CPATH" suffix + `("LUA_CPATH" ";" suffix (,(format #f "~a/lib/lua/~a/?.so" lua-lgi lua-version))) `("GI_TYPELIB_PATH" ":" prefix (,(getenv "GI_TYPELIB_PATH"))) `("LD_LIBRARY_PATH" suffix (,cairo))) From ec9bc07c25ed235a6c160d054cc7089b01756da4 Mon Sep 17 00:00:00 2001 From: Tanguy Le Carrour Date: Thu, 30 Jul 2020 11:40:15 +0200 Subject: [PATCH 428/757] gnu: Add python-robber. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/python-xyz.scm (python-robber): New variable. Co-authored-by: Ludovic Courtès --- gnu/packages/python-check.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index c0de32b207..4873df4b48 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -999,3 +999,28 @@ any Python VM with basically no runtime overhead.") ;; Foundation License version 2: stdlib-samples/*, mypyc/lib-rt/pythonsupport.h and ;; mypyc/lib-rt/getargs.c (license (list license:expat license:psfl)))) + +(define-public python-robber + (package + (name "python-robber") + (version "1.1.5") + (source (origin + (method url-fetch) + (uri (pypi-uri "robber" version)) + (sha256 + (base32 + "0xp5csgv2g9q38hscml6bc5i1nm4xy5lzqqiimm2drxsf0hw2nq5")))) + (build-system python-build-system) + ;; There are no tests in the tarball downloaded from PyPI. + ;; The last version tagged in Github (0.1.0) is older than the one on PyPI. + ;; Reported upstream: . + (arguments '(#:tests? #f)) + (propagated-inputs + `(("python-mock" ,python-mock) + ("python-termcolor" ,python-termcolor))) + ;; URL of the fork used to generate the package available on PyPI. + (home-page "https://github.com/EastAgile/robber.py") + (synopsis "Test-driven development (TDD) assertion library for Python") + (description "Robber is a Python assertion library for test-driven and +behavior-driven development (TDD and BDD).") + (license license:expat))) From e3b40906ebaedf67275acfe86a506c1351b9aace Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 24 Sep 2020 19:36:28 +0300 Subject: [PATCH 429/757] gnu: vifm: Update to 0.11. * gnu/packages/vim.scm (vifm): Update to 0.11. --- gnu/packages/vim.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index f3c5adf5b1..a9173fc290 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -698,7 +698,7 @@ refactor Vim in order to: (define-public vifm (package (name "vifm") - (version "0.10.1") + (version "0.11") (source (origin (method url-fetch) @@ -709,7 +709,7 @@ refactor Vim in order to: "vifm-" version ".tar.bz2"))) (sha256 (base32 - "0fyhxh7ndjn8fyjhj14ymkr3pjcs3k1xbs43g7xvvq85vdb6y04r")))) + "0rqyd424y0g5b5basw2ybb60r9gar4f40d1xgzr3c2dsy4jpwvyh")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--disable-build-timestamp") From 3d0c0ae661ccafcab030f27a77179c772039f682 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 24 Sep 2020 19:45:31 +0300 Subject: [PATCH 430/757] gnu: java-rsyntaxtextarea: Don't use unstable tarball. * gnu/packages/textutils.scm (java-rsyntaxtextarea)[source]: Download using git-fetch. --- gnu/packages/textutils.scm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 6ee3442c76..6653d01a31 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015 Roel Janssen ;;; Copyright © 2016 Jelle Licht ;;; Copyright © 2016 Alex Griffin -;;; Copyright © 2016, 2018, 2019 Efraim Flashner +;;; Copyright © 2016, 2018, 2019, 2020 Efraim Flashner ;;; Copyright © 2016 Nikita ;;; Copyright © 2016, 2020 Marius Bakke ;;; Copyright © 2017 Eric Bavier @@ -850,14 +850,14 @@ Filter, list, or split a tar file. (name "java-rsyntaxtextarea") (version "2.6.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/bobbylight/" - "RSyntaxTextArea/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/bobbylight/RSyntaxTextArea") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0c5mqg2klj5rvf8fhycrli8rf6s37l9p7a8knw9gpp65r1c120q2")))) + "0dyflzvxq2wvs0rgqfyi5yzzrb6r4bzw2dm8cl304dakxk38ddys")))) (build-system ant-build-system) (arguments `(;; FIXME: some tests fail because locale resources cannot be found. From f8c15d8f4227a77ce4f361c08aea9df81d4d20aa Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 24 Sep 2020 13:59:47 -0400 Subject: [PATCH 431/757] gnu: ntfs-3g: Do not generate static libraries. * gnu/packages/linux.scm (ntfs-3g)[configure-flags]: Add "--disable-static". --- gnu/packages/linux.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index f443299dfc..5a78a32291 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -5268,7 +5268,8 @@ supported.") ("fuse" ,fuse))) ;libuuid (native-inputs `(("pkg-config" ,pkg-config))) (arguments - '(#:configure-flags (list "--exec-prefix=${prefix}" + '(#:configure-flags (list "--disable-static" + "--exec-prefix=${prefix}" "--with-fuse=external" ;use our own FUSE "--enable-mount-helper" "--enable-posix-acls" From d14a3e5c0c5b7b5e2d4efcc5076abbe9e4c03f50 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 24 Sep 2020 14:00:37 -0400 Subject: [PATCH 432/757] gnu: nfs-utils: Do not generate static libraries. * gnu/packages/nfs.scm (nfs)[configure-flags]: Add "--disable-static". --- gnu/packages/nfs.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/nfs.scm b/gnu/packages/nfs.scm index 049de2c4b0..ba50ca5e01 100644 --- a/gnu/packages/nfs.scm +++ b/gnu/packages/nfs.scm @@ -62,7 +62,8 @@ (build-system gnu-build-system) (arguments `(#:configure-flags - `("--without-tcp-wrappers" + `("--disable-static" + "--without-tcp-wrappers" ,(string-append "--with-start-statd=" (assoc-ref %outputs "out") "/sbin/start-statd") ,(string-append "--with-krb5=" (assoc-ref %build-inputs "mit-krb5")) From d48b17adb91d68acf6fb3f321c05102fcc8c39eb Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 24 Sep 2020 20:18:20 +0200 Subject: [PATCH 433/757] services: WPA Supplicant: Conditionally depend on D-Bus. Fixes . Reported by calcium . * gnu/services/networking.scm ()[requirement]: Remove 'dbus-system. (wpa-supplicant-shepherd-service)[requirement]: Add 'dbus-system when DBUS? is true. * doc/guix.texi (Networking Services)[wpa-supplicant-service-type]: Adjust accordingly. --- doc/guix.texi | 2 +- gnu/services/networking.scm | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 6b2c749bc7..0fd56942e2 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -14603,7 +14603,7 @@ It takes the following parameters: @item @code{wpa-supplicant} (default: @code{wpa-supplicant}) The WPA Supplicant package to use. -@item @code{requirement} (default: @code{'(user-processes dbus-system loopback syslogd)} +@item @code{requirement} (default: @code{'(user-processes loopback syslogd)} List of services that should be started before WPA Supplicant starts. @item @code{dbus?} (default: @code{#t}) diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm index e45b116218..64f54e787f 100644 --- a/gnu/services/networking.scm +++ b/gnu/services/networking.scm @@ -1324,7 +1324,7 @@ whatever the thing is supposed to do)."))) (wpa-supplicant wpa-supplicant-configuration-wpa-supplicant ; (default wpa-supplicant)) (requirement wpa-supplicant-configuration-requirement ;list of symbols - (default '(user-processes dbus-system loopback syslogd))) + (default '(user-processes loopback syslogd))) (pid-file wpa-supplicant-configuration-pid-file ;string (default "/var/run/wpa_supplicant.pid")) (dbus? wpa-supplicant-configuration-dbus? ;Boolean @@ -1343,7 +1343,9 @@ whatever the thing is supposed to do)."))) (list (shepherd-service (documentation "Run the WPA supplicant daemon") (provision '(wpa-supplicant)) - (requirement requirement) + (requirement (if dbus? + (cons 'dbus-system requirement) + requirement)) (start #~(make-forkexec-constructor (list (string-append #$wpa-supplicant "/sbin/wpa_supplicant") From c32f662e399e7036323b8499580e56c06bc8afbb Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 25 Sep 2020 12:57:44 +0200 Subject: [PATCH 434/757] gnu: sbcl-cl-webkit: Update to 20200925. * gnu/packages/lisp-xyz.scm (sbcl-cl-webkit): Update to 20200925. --- gnu/packages/lisp-xyz.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index 3ac7537a95..10b4f65481 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -3135,10 +3135,10 @@ is a library for creating graphical user interfaces.") (sbcl-package->cl-source-package sbcl-cl-cffi-gtk)) (define-public sbcl-cl-webkit - (let ((commit "cb6533eb76bc9b784595dca06b37005032e48d9c")) + (let ((commit "04bb5703b68f4db9de71529b81896cc428ef54e1")) (package (name "sbcl-cl-webkit") - (version (git-version "2.4" "7" commit)) + (version (git-version "2.4" "8" commit)) (source (origin (method git-fetch) @@ -3148,7 +3148,7 @@ is a library for creating graphical user interfaces.") (file-name (git-file-name "cl-webkit" version)) (sha256 (base32 - "0npnz3m9mipi31chc76jcg8pjhgfqa3q7ivgrfssmiynr5p794ky")))) + "12dzqgkvgwi97r8dbflslj7nsx7p6iavx82fs48nj9wf7ln1c87s")))) (build-system asdf-build-system/sbcl) (inputs `(("cffi" ,sbcl-cffi) From 7075082f71d0a68912efd0473fdd537de9d501a7 Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Thu, 24 Sep 2020 23:17:55 -0300 Subject: [PATCH 435/757] gnu: Add gnome-latex. * gnu/packages/gnome.scm (gnome-latex): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/gnome.scm | 43 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 510a971e9d..904ffd1dc2 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -11125,6 +11125,49 @@ designed to work with various laser/ink-jet peel-off label and business card sheets that you’ll find at most office supply stores.") (license license:gpl3+))) +;; Version 3.38.0 is out but requires tepl>=5 which requires glib>=2.64. +(define-public gnome-latex + (package + (name "gnome-latex") + (version "3.36.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + "gnome-latex-" version ".tar.xz")) + (sha256 + (base32 "1869kr1zhcp04mzbi67lwgk497w840dbbc7427i9yh9b9s7j6mqn")))) + (build-system glib-or-gtk-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("intltool" ,intltool) + ("itstool" ,itstool) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (inputs + `(("amtk" ,amtk) + ("dconf" ,dconf) + ("glib" ,glib) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gspell" ,gspell) + ("gtk+" ,gtk+) + ("gtksourceview" ,gtksourceview) + ("libgee" ,libgee) + ("tepl" ,tepl) + ("uchardet" ,uchardet))) + (home-page "https://wiki.gnome.org/Apps/GNOME-LaTeX") + (synopsis "LaTeX editor for the GNOME desktop") + (description + "GNOME LaTeX is a LaTeX editor for the GNOME desktop. It has features +such as build tools, completion of LaTeX commands, structure navigation, +symbol tables, document templates, project management, spell-checking, menus +and toolbars.") + (license license:gpl3+))) + (define-public libratbag (package (name "libratbag") From fd67774d276e870c3f4f986a1a94dbd04aa81e23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Batista?= Date: Thu, 24 Sep 2020 21:32:04 -0300 Subject: [PATCH 436/757] doc: Fix outdated info and add missing space. * doc/guix.texi (Messaging Services): Fix outdated info and add missing space. Signed-off-by: Mathieu Othacehe --- doc/guix.texi | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 0fd56942e2..a66ab82b31 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -80,6 +80,7 @@ Copyright @copyright{} 2020 Brice Waegeneire@* Copyright @copyright{} 2020 R Veera Kumar@* Copyright @copyright{} 2020 Pierre Langlois@* Copyright @copyright{} 2020 pinoaffe@* +Copyright @copyright{} 2020 André Batista@* Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or @@ -19526,7 +19527,8 @@ Mailutils Manual}, for details. @cindex jabber @cindex XMPP The @code{(gnu services messaging)} module provides Guix service -definitions for messaging services: currently only Prosody is supported. +definitions for messaging services. Currently it provides the following +services: @subsubheading Prosody Service @@ -19716,7 +19718,7 @@ can create such a file with: @end deftypevr @deftypevr {@code{ssl-configuration} parameter} maybe-string curve -Curve for Elliptic curve Diffie-Hellman. Prosody's default is +Curve for Elliptic curve Diffie-Hellman. Prosody's default is @samp{"secp384r1"}. @end deftypevr From 9c4aaa630d97f9f29ca1b732fb265bd583e83e02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Batista?= Date: Thu, 24 Sep 2020 21:29:49 -0300 Subject: [PATCH 437/757] licenses: Add Apple Public Source License 2.0. * guix/licenses.scm (apsl2): New variable. Signed-off-by: Mathieu Othacehe --- guix/licenses.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/guix/licenses.scm b/guix/licenses.scm index bf72a33c92..5038f75638 100644 --- a/guix/licenses.scm +++ b/guix/licenses.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2017 Marius Bakke ;;; Copyright © 2017 Arun Isaac ;;; Copyright © 2017 Rutger Helling +;;; Copyright © 2020 André Batista ;;; ;;; This file is part of GNU Guix. ;;; @@ -34,6 +35,7 @@ #:use-module (srfi srfi-9) #:export (license? license-name license-uri license-comment agpl1 agpl3 agpl3+ + apsl2 asl1.1 asl2.0 boost1.0 bsd-2 bsd-3 bsd-4 @@ -132,6 +134,11 @@ "https://gnu.org/licenses/agpl.html" "https://gnu.org/licenses/why-affero-gpl.html")) +(define apsl2 + (license "APSL 2.0" + "https://directory.fsf.org/wiki/License:APSL-2.0" + "https://www.gnu.org/licenses/license-list.html#apsl2")) + (define asl1.1 (license "ASL 1.1" "http://directory.fsf.org/wiki/License:Apache1.1" From 0990d6119336cb6142020dc577f57f1faffe55ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C4=83d=C4=83lin=20Ionel=20Patra=C8=99cu?= Date: Thu, 24 Sep 2020 23:11:19 +0200 Subject: [PATCH 438/757] gnu: mafft: Update to 7.471. * gnu/packages/bioinformatics.scm (mafft): Update to 7.471. Signed-off-by: Mathieu Othacehe --- gnu/packages/bioinformatics.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 4376897d37..fda7255662 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -11,7 +11,7 @@ ;;; Copyright © 2017 Arun Isaac ;;; Copyright © 2018 Joshua Sierles, Nextjournal ;;; Copyright © 2018 Gábor Boskovits -;;; Copyright © 2018, 2019 Mădălin Ionel Patrașcu +;;; Copyright © 2018, 2019, 2020 Mădălin Ionel Patrașcu ;;; Copyright © 2019 Maxim Cournoyer ;;; Copyright © 2019 Brian Leung ;;; Copyright © 2019 Brett Gilio @@ -4496,7 +4496,7 @@ sequencing tag position and orientation.") (define-public mafft (package (name "mafft") - (version "7.394") + (version "7.471") (source (origin (method url-fetch) (uri (string-append @@ -4505,7 +4505,7 @@ sequencing tag position and orientation.") (file-name (string-append name "-" version ".tgz")) (sha256 (base32 - "0bacjkxfg944p5khhyh5rd4y7wkjc9qk4v2jjj442sqlq0f8ar7b")))) + "0r1973fx2scq4712zdqfy67wkzqj0c0bhrdy4jxhvq40mdxyry30")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no automated tests, though there are tests in the read me From 62d0f69ecf73225d897435a1a28f38951b0afcad Mon Sep 17 00:00:00 2001 From: Leo Prikler Date: Thu, 24 Sep 2020 20:25:02 +0200 Subject: [PATCH 439/757] gnu: komikku: Update to 0.21.0. * gnu/packages/gnome.scm (komikku): Update to 0.21.0. Signed-off-by: Mathieu Othacehe --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 904ffd1dc2..7812f7973e 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -11539,7 +11539,7 @@ integrated profiler via Sysprof, debugging support, and more.") (define-public komikku (package (name "komikku") - (version "0.20.0") + (version "0.21.0") (source (origin (method git-fetch) @@ -11549,7 +11549,7 @@ integrated profiler via Sysprof, debugging support, and more.") (file-name (git-file-name name version)) (sha256 (base32 - "0m5dvqh2as5ffi9fmp3452kw44jwm6pl1jw0r5mdkpdxhid15aw8")))) + "0bl2wcvshhp7pwwk6blrq6rzvrlb13jhhif5afwpqdznzyqfh2ka")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t From 3e5ed76df5ba12be22c6360abd83f328c3613ae0 Mon Sep 17 00:00:00 2001 From: Peng Mei Yu Date: Fri, 25 Sep 2020 16:22:26 +0800 Subject: [PATCH 440/757] gnu: librime: Update to 1.6.1. * gnu/packages/ibus.scm (librime): Update to 1.6.1. [inputs]: Add capnproto. [native-inputs]: Add pkg-config. Signed-off-by: Mathieu Othacehe --- gnu/packages/ibus.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ibus.scm b/gnu/packages/ibus.scm index b48f21b551..ecf33cb570 100644 --- a/gnu/packages/ibus.scm +++ b/gnu/packages/ibus.scm @@ -300,7 +300,7 @@ Japanese language input in most graphical applications.") (define-public librime (package (name "librime") - (version "1.5.3") + (version "1.6.1") (source (origin (method git-fetch) @@ -310,7 +310,7 @@ Japanese language input in most graphical applications.") (file-name (git-file-name name version)) (sha256 (base32 - "0xskhdhk7dgpc71r39pfzxi5vrlzy90aqj1gzv8nnapq91p2awhv")) + "1avmy2yyag22cl2j8085n5czsk93sxv440pdb3a2diwcxwwmzm9v")) (modules '((guix build utils))) (snippet '(begin @@ -330,6 +330,7 @@ Japanese language input in most graphical applications.") #t))))) (inputs `(("boost" ,boost) + ("capnproto" ,capnproto) ("glog" ,glog) ("leveldb" ,leveldb) ("marisa" ,marisa) @@ -337,6 +338,7 @@ Japanese language input in most graphical applications.") ("yaml-cpp" ,yaml-cpp))) (native-inputs `(("googletest" ,googletest) + ("pkg-config" ,pkg-config) ("xorgproto" ,xorgproto))) ; keysym.h (home-page "https://rime.im/") (synopsis "The core library of Rime Input Method Engine") From 67ad1e148cdca053c7a96a090209832a8a5ca178 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 25 Sep 2020 15:42:47 +0300 Subject: [PATCH 441/757] gnu: vim: Update to 8.2.1738. * gnu/packages/vim.scm (vim): Update to 8.2.1738. --- gnu/packages/vim.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index a9173fc290..5a7d5fb3f9 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -70,7 +70,7 @@ (define-public vim (package (name "vim") - (version "8.2.1500") + (version "8.2.1738") (source (origin (method git-fetch) (uri (git-reference @@ -79,7 +79,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "1f3ghv7g6khcvvs8irkxmskzc352xxmxw3wy0jq9q9r497v6p3ls")))) + "0g5kblrqyyyn1bs8jna5n2zwxy0lbkbml20w2kds8y2iha3nha44")))) (build-system gnu-build-system) (arguments `(#:test-target "test" From db2785cd86ee420039ca44bba898151a4f9bbf2b Mon Sep 17 00:00:00 2001 From: "Jan (janneke) Nieuwenhuizen" Date: Fri, 25 Sep 2020 17:59:50 +0200 Subject: [PATCH 442/757] ci: Remove native-system restriction from "hello" and "list" jobsets. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/ci.scm (hydra-jobs): Remove restriction for system to equal (%current-system). Co-authored-by: Ludovic Courtès --- gnu/ci.scm | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/gnu/ci.scm b/gnu/ci.scm index 0ce32ef8d8..d612e0e25f 100644 --- a/gnu/ci.scm +++ b/gnu/ci.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès -;;; Copyright © 2017 Jan Nieuwenhuizen +;;; Copyright © 2017, 2020 Jan (janneke) Nieuwenhuizen ;;; Copyright © 2018, 2019 Clément Lassieur ;;; Copyright © 2020 Julien Lepiller ;;; @@ -511,20 +511,16 @@ Return #f if no such checkout is found." (cross-jobs store system))) ((hello) ;; Build hello package only. - (if (string=? system (%current-system)) - (let ((hello (specification->package "hello"))) - (list (package-job store (job-name hello) hello system))) - '())) + (let ((hello (specification->package "hello"))) + (list (package-job store (job-name hello) hello system)))) ((list) ;; Build selected list of packages only. - (if (string=? system (%current-system)) - (let* ((names (assoc-ref arguments 'subset)) - (packages (map specification->package names))) - (map (lambda (package) - (package-job store (job-name package) - package system)) - packages)) - '())) + (let* ((names (assoc-ref arguments 'subset)) + (packages (map specification->package names))) + (map (lambda (package) + (package-job store (job-name package) + package system)) + packages))) ((manifests) ;; Build packages in the list of manifests. (let* ((manifests (arguments->manifests arguments)) From 4eeaae7994c6fb82e005acf290a3b81cba7bd871 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 24 Sep 2020 18:41:09 +0200 Subject: [PATCH 443/757] guix package: Simplify 'package->manifest-entry*'. * guix/scripts/package.scm (package->manifest-entry*): Rewrite in terms of 'manifest-entry-with-provenance'. --- guix/scripts/package.scm | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 4eb968a49b..7e7c37eac4 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -585,14 +585,8 @@ upgrading, #f otherwise." (define (package->manifest-entry* package output) "Like 'package->manifest-entry', but attach PACKAGE provenance meta-data to the resulting manifest entry." - (define (provenance-properties package) - (match (package-provenance package) - (#f '()) - (sexp `((provenance ,@sexp))))) - - (package->manifest-entry package output - #:properties (provenance-properties package))) - + (manifest-entry-with-provenance + (package->manifest-entry package output))) (define (options->installable opts manifest transaction) "Given MANIFEST, the current manifest, and OPTS, the result of 'args-fold', From 62246843d23cfa0a1dcf3993576d024ca5cd0cf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jens=20M=C3=B8lgaard?= Date: Sun, 13 Sep 2020 21:57:02 +1200 Subject: [PATCH 444/757] gnu: font-adobe-source-sans-pro: Update to 3.028R. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fonts.scm (font-adobe-source-sans-pro): Update to 3.028R. Signed-off-by: Ludovic Courtès --- gnu/packages/fonts.scm | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index c7ce03b2b7..1dbb4a9675 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -23,7 +23,7 @@ ;;; Copyright © 2017 Mohammed Sadiq ;;; Copyright © 2018 Charlie Ritter ;;; Copyright © 2018 Gabriel Hondet -;;; Copyright © 2019 Jens Mølgaard +;;; Copyright © 2019, 2020 Jens Mølgaard ;;; Copyright © 2019 Nicolas Goaziou ;;; Copyright © 2019 Baptiste Strazzulla ;;; Copyright © 2019 Alva @@ -951,19 +951,16 @@ designed to work well in user interface environments.") (define-public font-adobe-source-sans-pro (package (name "font-adobe-source-sans-pro") - (version "2.040R-ro-1.090R-it") + (version "3.028R") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/adobe-fonts/source-sans-pro") - (commit (regexp-substitute/global - ;; The upstream tag uses "/" between the roman and italic - ;; versions, so substitute our "-" separator here. - #f "R-ro-" version 'pre "R-ro/" 'post)))) + (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1lzin2hfwidbvhps7shs201p1bpxy6220xmhhprv9fc8bknd4c45")))) + (base32 "0lgjqi4d5p1q1z00ad807v5qy4z54gmp7jpdaypc0rxk8czv6zq7")))) (build-system font-build-system) (home-page "https://github.com/adobe-fonts/source-sans-pro") (synopsis From 4423cadc9a89ac947fee87ed493f0b82327bae40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jens=20M=C3=B8lgaard?= Date: Mon, 14 Sep 2020 20:22:34 +1200 Subject: [PATCH 445/757] gnu: font-adobe-source-serif-pro: Update to 3.001R. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fonts.scm (font-adobe-source-serif-pro): Update to 3.001R. Signed-off-by: Ludovic Courtès --- gnu/packages/fonts.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 1dbb4a9675..01be4f50df 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -973,19 +973,16 @@ work well in user interface (UI) environments.") (define-public font-adobe-source-serif-pro (package (name "font-adobe-source-serif-pro") - (version "2.007R-ro-1.007R-it") + (version "3.001R") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/adobe-fonts/source-serif-pro") - (commit (regexp-substitute/global - ;; The upstream tag uses "/" between the roman and italic - ;; versions, so substitute our "-" separator here. - #f "R-ro-" version 'pre "R-ro/" 'post)))) + (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1vvzfhjpi47m84bzkapylkd5fri8bdm8qng2hiylmmlw0wk4gpas")))) + (base32 "1z0pjvx0jpjwb8vzvc6l5gzlg0mqax4v9pizqcxx82l0ydlfh5bj")))) (build-system font-build-system) (home-page "https://github.com/adobe-fonts/source-serif-pro") (synopsis From 0fa3d89fbce36d82e4e4ae9da2753425594e8aa2 Mon Sep 17 00:00:00 2001 From: Jesse Gibbons Date: Wed, 26 Aug 2020 21:38:24 -0600 Subject: [PATCH 446/757] gnu: freedink: Make "freedink-engine" and "freedink-data" public. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/games.scm: (freedink-engine): Make public. [arguments]: Add 'delete-freedinkedit-desktop' phase. (freedink-data): Make public. Signed-off-by: Ludovic Courtès --- gnu/packages/games.scm | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index b819cd104f..a90e708ab3 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2726,7 +2726,7 @@ interface or via an external visual interface such as GNU XBoard.") (ftp-directory . "/chess"))) (license license:gpl3+))) -(define freedink-engine +(define-public freedink-engine (package (name "freedink-engine") (version "109.6") @@ -2756,7 +2756,16 @@ interface or via an external visual interface such as GNU XBoard.") (invoke "autoreconf") ;; Build fails when autom4te.cache exists. (delete-file-recursively "autom4te.cache") - #t))))) + #t)) + (add-after 'install 'delete-freedinkedit-desktop + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; freedinkedit does not know where to find freedink data + ;; freedink data is read-only, so it cannot be edited anyway. + ;; TODO: fix freedink.desktop + (delete-file-recursively (string-append + out "/share/applications")) + #t)))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) ("cxxtest" ,cxxtest) @@ -2778,7 +2787,7 @@ game data files but it also supports user-produced game mods or \"D-Mods\". To that extent, it also includes a front-end for managing all of your D-Mods.") (license license:gpl3+))) -(define freedink-data +(define-public freedink-data (package (name "freedink-data") (version "1.08.20190120") From 795065533d3326e02326509d93d3bab7105d97a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Sep 2020 19:02:13 +0200 Subject: [PATCH 447/757] gnu: Replace uses of 'guile3.0-gnutls' by 'gnutls'. * gnu/packages/package-management.scm (guix)[propagated-inputs]: Use GNUTLS instead of GUILE3.0-GNUTLS. (guix-daemon)[inputs]: Likewise. * guix/self.scm (specification->package): Likewise. --- gnu/packages/package-management.scm | 4 ++-- guix/self.scm | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index ec87226197..99f78f2ac8 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -384,7 +384,7 @@ $(prefix)/etc/init.d\n"))) ("glibc-utf8-locales" ,glibc-utf8-locales))) (propagated-inputs - `(("gnutls" ,(if (%current-target-system) gnutls-3.6.14 guile3.0-gnutls)) + `(("gnutls" ,(if (%current-target-system) gnutls-3.6.14 gnutls)) ("guile-gcrypt" ,guile-gcrypt) ("guile-json" ,guile-json-4) ("guile-sqlite3" ,guile-sqlite3) @@ -418,7 +418,7 @@ the Nix package manager.") (fold alist-delete (package-native-inputs guix) '("po4a" "graphviz" "help2man"))) (inputs - `(("gnutls" ,guile3.0-gnutls) + `(("gnutls" ,gnutls) ("guile-git" ,guile-git) ("guile-json" ,guile-json-3) ("guile-gcrypt" ,guile-gcrypt) diff --git a/guix/self.scm b/guix/self.scm index 02ef982c7c..5eb80f42fe 100644 --- a/guix/self.scm +++ b/guix/self.scm @@ -56,7 +56,7 @@ ("guile-zlib" (ref '(gnu packages guile) 'guile-zlib)) ("guile-lzlib" (ref '(gnu packages guile) 'guile-lzlib)) ("guile-gcrypt" (ref '(gnu packages gnupg) 'guile-gcrypt)) - ("gnutls" (ref '(gnu packages tls) 'guile3.0-gnutls)) + ("gnutls" (ref '(gnu packages tls) 'gnutls)) ("gzip" (ref '(gnu packages compression) 'gzip)) ("bzip2" (ref '(gnu packages compression) 'bzip2)) ("xz" (ref '(gnu packages compression) 'xz)) From 55d4259dff3158fbe3afd0febef74d1d1a38a8a2 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 25 Sep 2020 02:09:34 -0400 Subject: [PATCH 448/757] gnu: linux-libre: Update to 5.8.11. * gnu/packages/linux.scm (linux-libre-5.8-version): Update to 5.8.11. (linux-libre-5.8-pristine-source): 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 5a78a32291..84d942a384 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -349,7 +349,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The current "stable" kernel. That is, the most recently released major ;; version. -(define-public linux-libre-5.8-version "5.8.10") +(define-public linux-libre-5.8-version "5.8.11") (define deblob-scripts-5.8 (linux-libre-deblob-scripts linux-libre-5.8-version @@ -357,7 +357,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0j6jba5fcddqlb42f95gjl78jisfla4nswqila074gglcrbnl9q7"))) (define-public linux-libre-5.8-pristine-source (let ((version linux-libre-5.8-version) - (hash (base32 "1wjsdc93xilag0pk205m2q0ixmpp93ql5qj0fm3qlqddgxm14vlx"))) + (hash (base32 "0jy0yrrixzql9dlk9305w98pja2pm6ijrdbai326595pnk740n9y"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.8))) From ce59a1397d4a20a69bdc907b243cf355ea78e8bc Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 25 Sep 2020 02:13:18 -0400 Subject: [PATCH 449/757] gnu: linux-libre 5.4: Update to 5.4.67. * gnu/packages/linux.scm (linux-libre-5.4-version): Update to 5.4.67. (linux-libre-5.4-pristine-source): 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 84d942a384..6955100f43 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -365,7 +365,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The "longterm" kernels — the older releases with long-term upstream support. ;; Here are the support timelines: ;; -(define-public linux-libre-5.4-version "5.4.66") +(define-public linux-libre-5.4-version "5.4.67") (define deblob-scripts-5.4 (linux-libre-deblob-scripts linux-libre-5.4-version @@ -373,7 +373,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1b3q88i2qfdxyvpi9f7jds0qlb8hfpw87mgia096ax6822c2cmyb"))) (define-public linux-libre-5.4-pristine-source (let ((version linux-libre-5.4-version) - (hash (base32 "1cnsrz21kcf0h7krpv9p1a7n59mybr5ii0jdi3yc3x3lcwvk06gz"))) + (hash (base32 "196avi0950qrd0lxdpdsl6lxa51f20sz476mcl1i5islbnfbsxf1"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.4))) From b328d55702a422c0c49c46ec12a3a324ec9621ef Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 25 Sep 2020 02:15:17 -0400 Subject: [PATCH 450/757] gnu: linux-libre 4.19: Update to 4.19.147. * gnu/packages/linux.scm (linux-libre-4.19-version): Update to 4.19.147. (linux-libre-4.19-pristine-source): 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 6955100f43..85c34cb61e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -378,7 +378,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (%upstream-linux-source version hash) deblob-scripts-5.4))) -(define-public linux-libre-4.19-version "4.19.146") +(define-public linux-libre-4.19-version "4.19.147") (define deblob-scripts-4.19 (linux-libre-deblob-scripts linux-libre-4.19-version @@ -386,7 +386,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1jiaw0as1ippkrjdpd52657w5mz9qczg3y2hlra7m9k0xawwiqlf"))) (define-public linux-libre-4.19-pristine-source (let ((version linux-libre-4.19-version) - (hash (base32 "0jl17yk3fpz0sx203l9l1fj5bly3jgsyr8hy5qa6py99fbk0qnim"))) + (hash (base32 "19nnx61v7c0102ik1rjan0kdsj8av8v7iqz5vm3v3kjllmjmvr2x"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.19))) From 76aa30100bf391fcdbd1c43c558fd59f02bea8e6 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 25 Sep 2020 02:17:12 -0400 Subject: [PATCH 451/757] gnu: linux-libre 4.14: Update to 4.14.199. * gnu/packages/linux.scm (linux-libre-4.14-version): Update to 4.14.199. (linux-libre-4.14-pristine-source): 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 85c34cb61e..0b58f29505 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -391,7 +391,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (%upstream-linux-source version hash) deblob-scripts-4.19))) -(define-public linux-libre-4.14-version "4.14.198") +(define-public linux-libre-4.14-version "4.14.199") (define deblob-scripts-4.14 (linux-libre-deblob-scripts linux-libre-4.14-version @@ -399,7 +399,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky"))) (define-public linux-libre-4.14-pristine-source (let ((version linux-libre-4.14-version) - (hash (base32 "00xmij2l4qmx1s07hplxkn9ddlwiyalh2l5fqdk6d8v031cbmyhy"))) + (hash (base32 "1yflafb0n783igghk6d392pk6lbk3p2w7y01ams08f1b4qm47wq2"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.14))) From fff9209444728d4e9d15bae2544307e8be716081 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 25 Sep 2020 02:18:54 -0400 Subject: [PATCH 452/757] gnu: linux-libre 4.9: Update to 4.9.237. * gnu/packages/linux.scm (linux-libre-4.9-version): Update to 4.9.237. (linux-libre-4.9-pristine-source): 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 0b58f29505..44e0bfa5b7 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -404,7 +404,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (%upstream-linux-source version hash) deblob-scripts-4.14))) -(define-public linux-libre-4.9-version "4.9.236") +(define-public linux-libre-4.9-version "4.9.237") (define deblob-scripts-4.9 (linux-libre-deblob-scripts linux-libre-4.9-version @@ -412,7 +412,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2"))) (define-public linux-libre-4.9-pristine-source (let ((version linux-libre-4.9-version) - (hash (base32 "1ma2z0nvby4qyxzi3vxa28f0wvlnl74njk6cryjrqaksq6161qp7"))) + (hash (base32 "07w6mwgh7i3bvg1w3w5i9kgxjmvqr7cv7nzrmx7j9p6cq295gv41"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.9))) From 73e7a4244743ca07b8072ba8f9140899a852a547 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 25 Sep 2020 02:21:03 -0400 Subject: [PATCH 453/757] gnu: linux-libre 4.4: Update to 4.4.237. * gnu/packages/linux.scm (linux-libre-4.4-version): Update to 4.4.237. (linux-libre-4.4-pristine-source): 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 44e0bfa5b7..07cddf8d90 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -417,7 +417,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (%upstream-linux-source version hash) deblob-scripts-4.9))) -(define-public linux-libre-4.4-version "4.4.236") +(define-public linux-libre-4.4-version "4.4.237") (define deblob-scripts-4.4 (linux-libre-deblob-scripts linux-libre-4.4-version @@ -425,7 +425,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf"))) (define-public linux-libre-4.4-pristine-source (let ((version linux-libre-4.4-version) - (hash (base32 "1v1mx16x1crnxf4pix0bhw40lq89n7wpd66gjc2mhxi75h6x6i80"))) + (hash (base32 "1q6hwjwvlsikgr8b04l7v2jia2wyqxgbli6i7y20aq49h13ap2qk"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.4))) From 2bab532fdfaa54a085abc0ac7fc2c859ee31f640 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Fri, 25 Sep 2020 20:24:46 +0100 Subject: [PATCH 454/757] gnu: rust: Fix install phase for non-x86_64 platforms. * gnu/packages/rust.scm (rust-1.20)[arguments]: Replace hardcoded x86_64 triplet with nix-system->gnu-triplet-for-rust in 'delete-install-logs phase. --- gnu/packages/rust.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index e44e78de75..05404de1d8 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2018 Danny Milosavljevic ;;; Copyright © 2019 Ivan Petkov ;;; Copyright © 2020 Jakub Kądziołka +;;; Copyright © 2020 Pierre Langlois ;;; ;;; This file is part of GNU Guix. ;;; @@ -614,7 +615,8 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (lambda (file) (delete-manifest-file out file)) '("install.log" "manifest-rust-docs" - "manifest-rust-std-x86_64-unknown-linux-gnu" + ,(string-append "manifest-rust-std-" + (nix-system->gnu-triplet-for-rust)) "manifest-rustc")) (for-each (lambda (file) (delete-manifest-file cargo-out file)) From 4e896da45d7be42ff1ad0b2be741b168573e6f0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Sep 2020 23:09:48 +0200 Subject: [PATCH 455/757] gnu: nyacc: Add 1.03.0. * gnu/packages/mes.scm (nyacc): Rename to... (nyacc-0.99): ... this. (nyacc): New variable. (mes)[propagated-inputs]: Replace NYACC with NYACC-0.99. (mes-rb5)[native-inputs]: Likewise. * gnu/packages/commencement.scm (mes-boot)[native-inputs]: Likewise. (tcc-boot0)[native-inputs]: Likewise. --- gnu/packages/commencement.scm | 4 ++-- gnu/packages/mes.scm | 20 +++++++++++++++++--- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 8a0864f26a..4041d5bb89 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -381,7 +381,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (inputs '()) (propagated-inputs '()) (native-inputs - `(("nyacc-source" ,(origin (inherit (package-source nyacc)) + `(("nyacc-source" ,(origin (inherit (package-source nyacc-0.99)) (snippet #f))) ("mes" ,%bootstrap-mes-rewired) ("mescc-tools" ,%bootstrap-mescc-tools) @@ -477,7 +477,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (propagated-inputs '()) (native-inputs `(("mes" ,mes-boot) - ("nyacc-source" ,(origin (inherit (package-source nyacc)) + ("nyacc-source" ,(origin (inherit (package-source nyacc-0.99)) (snippet #f))) ("mescc-tools" ,%bootstrap-mescc-tools) ,@(%boot-gash-inputs))) diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index 9ffbe33ab7..d574071cc4 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -64,7 +64,7 @@ extensive examples, including parsers for the Javascript and C99 languages.") (home-page "https://savannah.nongnu.org/projects/nyacc") (license (list gpl3+ lgpl3+)))) -(define-public nyacc +(define-public nyacc-0.99 (package (inherit nyacc-0.86) (version "0.99.0") @@ -95,6 +95,20 @@ extensive examples, including parsers for the Javascript and C99 languages.") (inputs `(("guile" ,guile-2.2))))) +(define-public nyacc + (package + (inherit nyacc-0.99) + (version "1.03.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://savannah/nyacc/nyacc-" + version ".tar.gz")) + (sha256 + (base32 + "1vdiqpm3p0ndmpmkzcpkpjvgklfsk4wxrhkixdxbczpafdfl635p")))) + (inputs + `(("guile" ,guile-3.0))))) + (define-public mes-0.19 ;; Mes used for bootstrap. (package @@ -153,7 +167,7 @@ Guile.") "0p1jsrrmcbc0zrvbvnjbb6iyxr0in71km293q8qj6gnar6bw09av")))) (propagated-inputs `(("mescc-tools" ,mescc-tools) - ("nyacc" ,nyacc))) + ("nyacc" ,nyacc-0.99))) (native-search-paths (list (search-path-specification (variable "C_INCLUDE_PATH") @@ -185,7 +199,7 @@ Guile.") ("make" ,gnu-make) ("mes" ,mes) ("mescc-tools" ,mescc-tools) - ("nyacc" ,nyacc) + ("nyacc" ,nyacc-0.99) ("sed" ,sed) ("tar" ,tar))) (supported-systems '("i686-linux")) From 13a2272d1af1626fff1480ecba35156b52007dde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Sep 2020 23:13:19 +0200 Subject: [PATCH 456/757] doc: Explain how to connect to a childhurd. * doc/guix.texi (The Hurd in a Virtual Machine): Add instructions for VNC and SSH access. Mention childhurd secrets and /etc/childhurd. --- doc/guix.texi | 33 +++++++++++++++++++++++++++++---- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index a66ab82b31..2dff2ad2a8 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -25424,16 +25424,41 @@ Return the name of @var{platform}---a string such as @code{"arm"}. @cindex childhurd Service @code{hurd-vm} provides support for running GNU/Hurd in a -virtual machine (VM), a so-called ``Childhurd''. The virtual machine is -a Shepherd service that can be referred to by the names @code{hurd-vm} -and @code{childhurd} and be controlled with commands such as: +virtual machine (VM), a so-called @dfn{childhurd}. This service is meant +to be used on GNU/Linux and the given GNU/Hurd operating system +configuration is cross-compiled. The virtual machine is a Shepherd +service that can be referred to by the names @code{hurd-vm} and +@code{childhurd} and be controlled with commands such as: @example herd start hurd-vm herd stop childhurd @end example -The given GNU/Hurd operating system configuration is cross-compiled. +When the service is running, you can view its console by connecting to +it with a VNC client, for example with: + +@example +guix environment --ad-hoc tigervnc-client -- \ + vncviewer localhost:5900 +@end example + +The default configuration (see @code{hurd-vm-configuration} below) +spawns a secure shell (SSH) server in your GNU/Hurd system, which QEMU +(the virtual machine emulator) redirects to port 10222 on the host. +Thus, you can connect over SSH to the childhurd with: + +@example +ssh root@@localhost -p 10022 +@end example + +The childhurd is volatile and stateless: it starts with a fresh root +file system every time you restart it. By default though, all the files +under @file{/etc/childhurd} on the host are copied as is to the root +file system of the childhurd when it boots. This allows you to +initialize ``secrets'' inside the VM: SSH host keys, authorized +substitute keys, and so on---see the explanation of @code{secret-root} +below. @defvr {Scheme Variable} hurd-vm-service-type This is the type of the Hurd in a Virtual Machine service. Its value From e71d7b5e236840ca31b05bcfb669fd0917254f26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Sep 2020 23:21:43 +0200 Subject: [PATCH 457/757] doc: Remove "--hda" from non-volatile childhurd example. Reported by Andreas Enge. * doc/guix.texi (Transparent Emulation with QEMU): Remove "--hda" in 'image' example. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 2dff2ad2a8..9986df02cc 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -25566,7 +25566,7 @@ the @code{--snapshot} flag using something along these lines: (service hurd-vm-service-type (hurd-vm-configuration (image (const "/out/of/store/writable/hurd.img")) - (options '("--hda")))) + (options '()))) @end lisp @subsubheading Ganeti From a0d4aa2457d7e36012143ffe3fbc9dd4bc20ca4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Sep 2020 23:25:17 +0200 Subject: [PATCH 458/757] doc: Use @var for meta-syntactic variables. * doc/guix.texi (Transparent Emulation with QEMU): Use @var instead of angle brackets for meta-syntactic variables. --- doc/guix.texi | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 9986df02cc..82241b010a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -25519,15 +25519,17 @@ By default, it produces @lisp '("--device" "rtl8139,netdev=net0" "--netdev" "user,id=net0\ - ,hostfwd=tcp:127.0.0.1:-:1004\ - ,hostfwd=tcp:127.0.0.1:-:2222\ - ,hostfwd=tcp:127.0.0.1:-:5900") + ,hostfwd=tcp:127.0.0.1:@var{secrets-port}-:1004\ + ,hostfwd=tcp:127.0.0.1:@var{ssh-port}-:2222\ + ,hostfwd=tcp:127.0.0.1:@var{vnc-port}-:5900") @end lisp -with forwarded ports + +with forwarded ports: + @example -: @code{(+ 11004 (* 1000 @var{ID}))} -: @code{(+ 10022 (* 1000 @var{ID}))} -: @code{(+ 15900 (* 1000 @var{ID}))} +@var{ssh-port}: @code{(+ 11004 (* 1000 @var{ID}))} +@var{ssh-port}: @code{(+ 10022 (* 1000 @var{ID}))} +@var{vnc-port}: @code{(+ 15900 (* 1000 @var{ID}))} @end example @item @code{secret-root} (default: @file{/etc/childhurd}) From 094871fe735f15c0d85f4efb0298c72dff8a52cf Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sat, 26 Sep 2020 11:14:21 +0200 Subject: [PATCH 459/757] gnu: emacs-edit-indirect: Fix license field. * gnu/packages/emacs-xyz.scm (emacs-edit-indirect): Fix license field. --- gnu/packages/emacs-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 3b75219077..b8d2477fb2 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -7917,7 +7917,7 @@ in Emacs.") (synopsis "Edit regions in separate buffers") (description "This package allows you to edit regions in separate buffers, like @code{org-edit-src-code} but for arbitrary regions.") - (license license:gpl3+))) + (license license:bsd-2))) (define-public emacs-projectile (package From c9f70031b38c1b6dc3b6d81d8768e12874427690 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sat, 26 Sep 2020 11:20:03 +0200 Subject: [PATCH 460/757] gnu: emacs-edit-indirect: Update to 0.1.6. * gnu/packages/emacs-xyz.scm (emacs-edit-indirect): Update to 0.1.6. --- gnu/packages/emacs-xyz.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index b8d2477fb2..27111e88ce 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -7901,7 +7901,7 @@ in Emacs.") (define-public emacs-edit-indirect (package (name "emacs-edit-indirect") - (version "0.1.5") + (version "0.1.6") (source (origin (method git-fetch) @@ -7910,8 +7910,7 @@ in Emacs.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 - "0by1x53pji39fjrj5bd446kz831nv0vdgw2jqasbym4pc1p2947r")))) + (base32 "189nvmlkki1jfszm9i0crbb1p4nzgmbly0wpvpg0i8vmw7vrpl40")))) (build-system emacs-build-system) (home-page "https://github.com/Fanael/edit-indirect") (synopsis "Edit regions in separate buffers") From 22b12e3ec2bcd55b9cce79da5b30705830826110 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sat, 26 Sep 2020 11:25:39 +0200 Subject: [PATCH 461/757] gnu: emacs-auctex: Update to 12.2.5. * gnu/packages/emacs-xyz.scm (emacs-auctex): Update to 12.2.5. --- 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 27111e88ce..cfef767f6b 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1922,14 +1922,14 @@ as a library for other Emacs packages.") (define-public emacs-auctex (package (name "emacs-auctex") - (version "12.2.4") + (version "12.2.5") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "auctex-" version ".tar")) (sha256 - (base32 "1yz2h692mr35zgqwlxdq8rzv8n0jixhpaqmbiki00hlysm4zh9py")))) + (base32 "1288n0yna36g2h15gk34gvllifx4qms48355j8l2cafabvkffiph")))) (build-system emacs-build-system) ;; We use 'emacs' because AUCTeX requires dbus at compile time ;; ('emacs-minimal' does not provide dbus). From 0939462e3f81bc98b38bdb7610e6a80ca1cbaa1b Mon Sep 17 00:00:00 2001 From: Tim Howes Date: Sat, 26 Sep 2020 02:40:38 -0700 Subject: [PATCH 462/757] gnu: emacs-ess: Update to 18.10.2-0.24da603. * gnu/packages/statistics.scm (emacs-ess): Update to 18.10.2-0.24da603. [version]: Use version-revision-commit for version numbering. [source]: Fix snippet for removing julia-mode. Remove snippet to modify roxy-preview-Rd-test. Add snippet to modify r-help-mode test. Add snippet to fix install target to install files to correct directories. Correct Makefile so that ess-autoloads.el is not built twice. [arguments]: Add flag to specify INFODIR. Remove patch modifying SHELL. [license]: License is now GPLv3+. Signed-off-by: Nicolas Goaziou --- gnu/packages/statistics.scm | 153 ++++++++++++++++++------------------ 1 file changed, 78 insertions(+), 75 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 03a63e6ba1..60f39fa0a9 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -5784,78 +5784,81 @@ Java package that provides routines for various statistical distributions.") (license license:gpl2+))) (define-public emacs-ess - (package - (name "emacs-ess") - (version "18.10.2") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/emacs-ess/ESS") - (commit (string-append "v" version)))) - (sha256 - (base32 - "1yq41l2bicwjrc0b731iic20cpcnz6ppigri1jn621qv2qv22vy3")) - (file-name (git-file-name name version)) - (modules '((guix build utils))) - (snippet - '(begin - ;; Stop ESS from trying to bundle an external julia-mode.el. - (substitute* "lisp/Makefile" - (("^ess-julia.elc: julia-mode.elc") "") - (("^all: julia-mode.el") - "all:")) - ;; Include *.el files in install target. - (substitute* "lisp/Makefile" - (("\t\\$\\(INSTALL) \\$\\(ELC\\) \\$\\(LISPDIR\\)" elc) - (string-append "\t$(INSTALL) $(ELS) ess-autoloads.el " - "$(LISPDIR)\n" elc))) - ;; Only build docs in info format. - (substitute* "doc/Makefile" - (("all : info text") - "all : info") - (("install: install-info install-other-docs") - "install: install-info")) - ;; Stop install-info from trying to update the info directory. - (substitute* "doc/Makefile" - ((".*\\$\\(INFODIR\\)/dir.*") "")) - ;; Fix roxygen preview test. - (substitute* "test/ess-r-tests.el" - (("Add together two numbers.\n") - "Add together two numbers. ") - (("##' add\\(10, 1\\)") "add(10, 1)")) - #t)))) - (build-system gnu-build-system) - (arguments - (let ((base-directory "/share/emacs/site-lisp")) - `(#:make-flags (list (string-append "PREFIX=" %output) - (string-append "ETCDIR=" %output - ,base-directory "/etc") - (string-append "LISPDIR=" %output - ,base-directory)) - #:phases - (modify-phases %standard-phases - (delete 'configure) - (add-before 'build 'more-shebang-patching - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "Makeconf" - (("SHELL = /bin/sh") - (string-append "SHELL = " (which "sh")))) - #t)) - (replace 'check - (lambda _ - (invoke "make" "test"))))))) - (inputs - `(("emacs" ,emacs-minimal) - ("r-minimal" ,r-minimal))) - (native-inputs - `(("perl" ,perl) - ("r-roxygen2" ,r-roxygen2) - ("texinfo" ,texinfo))) - (propagated-inputs - `(("emacs-julia-mode" ,emacs-julia-mode))) - (home-page "https://ess.r-project.org/") - (synopsis "Emacs mode for statistical analysis programs") - (description "Emacs Speaks Statistics (ESS) is an add-on package for GNU -Emacs. It is designed to support editing of scripts and interaction with -various statistical analysis programs such as R, Julia, and JAGS.") - (license license:gpl2+))) + ;; Latest release is old. This is not the latest commit either due to bug + ;; reported here: . + (let ((commit "24da603184ce39246611dd5b8602e769d7ebd5bf") + (version "18.10.2") + (revision "0")) + (package + (name "emacs-ess") + (version (git-version version revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-ess/ESS") + (commit commit))) + (sha256 + (base32 "0j98lv07nzwzd54d4dgcfz01wy5gj48m0mnirxzh5r45ik2myh1r")) + (file-name (git-file-name name version)) + (modules '((guix build utils))) + (snippet + '(begin + ;; Stop ESS from trying to bundle an external julia-mode.el. + (substitute* "lisp/Makefile" + ((" \\$\\(JULIAS)") "") + (("\ttest.*julia-mode.*\\.el") "")) + ;; Only build docs in info format. + (substitute* "doc/Makefile" + (("all : info text") + "all : info") + (("install: install-info install-other-docs") + "install: install-info")) + ;; Stop install-info from trying to update the info directory. + (substitute* "doc/Makefile" + ((".*/dir.*") "")) + ;; Fix r-help-mode test. + (substitute* "test/ess-test-r.el" + (("\\(equal ess-help-object \"plot.default\")") "t")) + ;; Avoid generating ess-autoloads.el twice. + (substitute* "Makefile" + (("all: lisp doc etc autoloads") + "all: lisp doc etc")) + ;; Install to correct directories. + (substitute* "Makefile" + (("mkdir -p \\$\\(ESSDESTDIR)") + "$(MAKE) -C lisp install; $(MAKE) -C doc install") + (("\\$\\(INSTALL) -R \\./\\* \\$\\(ESSDESTDIR)/") + "$(MAKE) -C etc install")) + #t)))) + (build-system gnu-build-system) + (arguments + (let ((base-directory "/share/emacs/site-lisp")) + `(#:make-flags (list (string-append "PREFIX=" %output) + (string-append "ETCDIR=" %output + ,base-directory "/etc") + (string-append "LISPDIR=" %output + ,base-directory) + (string-append "INFODIR=" %output + "/share/info")) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'check + (lambda _ (invoke "make" "test"))))))) + (native-inputs + `(("perl" ,perl) + ("r-roxygen2" ,r-roxygen2) + ("texinfo" ,texinfo))) + (inputs + `(("emacs" ,emacs-minimal) + ("r-minimal" ,r-minimal))) + (propagated-inputs + `(("emacs-julia-mode" ,emacs-julia-mode))) + (home-page "https://ess.r-project.org/") + (synopsis "Emacs mode for statistical analysis programs") + (description + "Emacs Speaks Statistics (ESS) is an add-on package for GNU Emacs. It +is designed to support editing of scripts and interaction with various +statistical analysis programs such as R, Julia, and JAGS.") + (license license:gpl3+)))) From 3876ed32f25e160c47ba046d987ad9097b2bf0cb Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 26 Sep 2020 21:39:17 +0300 Subject: [PATCH 463/757] gnu: Add webssh. * gnu/packages/ssh.scm (webssh): New variable. --- gnu/packages/ssh.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 23f347dd10..3e0f5be077 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -57,6 +57,8 @@ #:use-module (gnu packages popt) #:use-module (gnu packages protobuf) #:use-module (gnu packages python) + #:use-module (gnu packages python-crypto) + #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages readline) #:use-module (gnu packages texinfo) @@ -852,3 +854,39 @@ program doesn't depend on any cryptographic libraries. It's a simple, single-threaded, standalone C program. It uses @code{poll()} to trap multiple clients at a time.") (license license:unlicense))) + +(define-public webssh + (package + (name "webssh") + (version "1.5.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/huashengdun/webssh") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1l4bwzaifsd6pl120d400qkhvaznj2ck1lvwg76ycb08jsk6gpaz")))) + (build-system python-build-system) + (propagated-inputs + `(("python-paramiko" ,python-paramiko) + ("python-tornado" ,python-tornado))) + (home-page "https://webssh.huashengdun.org/") + (synopsis "Web application to be used as an SSH client") + (description "This package provides a web application to be used as an SSH +client. + +Features: +@itemize @bullet +@item SSH password authentication supported, including empty password. +@item SSH public-key authentication supported, including DSA RSA ECDSA +Ed25519 keys. +@item Encrypted keys supported. +@item Two-Factor Authentication (time-based one-time password) supported. +@item Fullscreen terminal supported. +@item Terminal window resizable. +@item Auto detect the ssh server's default encoding. +@item Modern browsers are supported. +@end itemize") + (license license:expat))) From d868655a7d6e09ab47d74d637ab73b43d46147d9 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 26 Sep 2020 23:09:04 +0300 Subject: [PATCH 464/757] gnu: Add ipset. * gnu/packages/linux.scm (ipset): 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 07cddf8d90..b936613144 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -7546,3 +7546,40 @@ created by Alastair Robertson.") provide a serial device @code{/dev/ttyebus} with almost no latency upon receiving. It is dedicated to the PL011 UART of the Raspberry Pi.") (license license:gpl3+)))) + +(define-public ipset + (package + (name "ipset") + (version "7.6") + (source (origin + (method url-fetch) + (uri (string-append "http://ipset.netfilter.org/ipset-" version ".tar.bz2")) + (sha256 + (base32 + "1ny2spcm6bmpj8vnazssg99k59impr7n84jzkdmdjly1m7548z8f")))) + (build-system gnu-build-system) + (inputs + `(("libmnl" ,libmnl))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:configure-flags '("--with-kmod=no"))) + (home-page "http://ipset.netfilter.org/") + (synopsis "Administration tool for IP sets") + (description "IP sets are a framework inside the Linux 2.4.x and 2.6.x kernel which +can be administered by the ipset utility. Depending on the type, +currently an IP set may store IP addresses, (TCP/UDP) port numbers or +IP addresses with MAC addresses in a way which ensures lightning speed +when matching an entry against a set. + +If you want to +@itemize @bullet +@item store multiple IP addresses or port numbers and match against the entire +collection using a single iptables rule. +@item dynamically update iptables rules against IP addresses or ports without +performance penalty. +@item express complex IP address and ports based rulesets with a single +iptables rule and benefit from the speed of IP sets. +@end itemize\n +then IP sets may be the proper tool for you.") + (license license:gpl2+))) From 31dcc272760e464df1ae2c33740febb070563825 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 26 Sep 2020 12:04:04 +0200 Subject: [PATCH 465/757] gnu: lzlib: Support cross-compilation. Until now, since lzlib's 'configure' ignores '--host', we'd always end up building it natively. * gnu/packages/compression.scm (lzlib)[arguments]: Use (cc-for-target) instead of "gcc". --- gnu/packages/compression.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 5622af1fe9..996c7d1985 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2019 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2019, 2020 Ludovic Courtès ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2014, 2015, 2018 Mark H Weaver ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer @@ -1763,7 +1763,7 @@ Clzip is intended to be fully compatible with the regular lzip package.") (build-system gnu-build-system) (arguments `(#:configure-flags - (list "CC=gcc" + (list (string-append "CC=" ,(cc-for-target)) "--enable-shared"))) ; only static (.a) is built by default (home-page "https://www.nongnu.org/lzip/lzlib.html") (synopsis "Lzip data compression C library") From 6c5197226d5ff1da19c4d9866fc430592260c615 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 26 Sep 2020 12:06:28 +0200 Subject: [PATCH 466/757] gnu: lzlib: Don't build static library. * gnu/packages/compression.scm (lzlib)[arguments]: Pass "--disable-static". --- gnu/packages/compression.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 996c7d1985..083b82bf36 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -1764,6 +1764,7 @@ Clzip is intended to be fully compatible with the regular lzip package.") (arguments `(#:configure-flags (list (string-append "CC=" ,(cc-for-target)) + "--disable-static" "--enable-shared"))) ; only static (.a) is built by default (home-page "https://www.nongnu.org/lzip/lzlib.html") (synopsis "Lzip data compression C library") From 6854b44602698c5d7e408a109872ce8eb0ea648e Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Fri, 25 Sep 2020 23:03:06 -0300 Subject: [PATCH 467/757] gnu: cozy: Update to 0.7.1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/ebook.scm (cozy): Update to 0.7.1. [arguments]: Substitute only the Exec line in the desktop file. Signed-off-by: Ludovic Courtès --- gnu/packages/ebook.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index 922a524346..82342d6a5f 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -415,7 +415,7 @@ following formats: (define-public cozy (package (name "cozy") - (version "0.6.19") + (version "0.7.1") (source (origin (method git-fetch) @@ -424,7 +424,7 @@ following formats: (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1f1qydjs8sz39yhlg9qdjf31vrsmdk2pxiimw4fzsy1k2zr5dr34")))) + (base32 "1ra3s3nh5vzs15zhwq61bx3k8yd8xzjmmvn3wamxb4bsb6kfb57f")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t @@ -433,7 +433,7 @@ following formats: (add-after 'unpack 'patch-desktop-file (lambda _ (substitute* "data/com.github.geigi.cozy.desktop.in" - (("com.github.geigi.cozy") "cozy")) + (("Exec=com.github.geigi.cozy") "Exec=cozy")) #t)) (add-after 'install 'patch-executable-name (lambda* (#:key outputs #:allow-other-keys) From 59223c5bc6816962b95d51fb2e8b7edd91c7fa95 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 27 Sep 2020 08:50:26 +0300 Subject: [PATCH 468/757] gnu: gama: Update to 2.10. * gnu/packages/gps.scm (gama): Update to 2.10. --- gnu/packages/gps.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gps.scm b/gnu/packages/gps.scm index 92ba884f46..b136d95fe6 100644 --- a/gnu/packages/gps.scm +++ b/gnu/packages/gps.scm @@ -151,7 +151,7 @@ between two other data points.") (define-public gama (package (name "gama") - (version "2.09") + (version "2.10") (source (origin (method url-fetch) @@ -159,7 +159,7 @@ between two other data points.") version ".tar.gz")) (sha256 (base32 - "0c1b28frl6109arj09v4zr1xs859krn8871mkvis517g5pb55dc9")))) + "14im3ahh849rildvs4qsk009jywf9w84vcmh7w44ajmlwcw7xiys")))) (build-system gnu-build-system) (arguments '(#:parallel-tests? #f)) ; race condition (native-inputs From c85f316ae986331cc5181da4bcc757078d7a9412 Mon Sep 17 00:00:00 2001 From: Stefan Date: Sat, 26 Sep 2020 12:54:00 +0200 Subject: [PATCH 469/757] gnu: grub: Support for network boot via TFTP. * gnu/bootloader/grub.scm (grub-efi-netboot-bootloader): New variable. (install-grub-efi-netboot): New procedure. (grub-root-search): Update comment. Signed-off-by: Danny Milosavljevic --- gnu/bootloader/grub.scm | 114 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 110 insertions(+), 4 deletions(-) diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index f69bf8ed4d..516a7d48c8 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -23,8 +23,10 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu bootloader grub) + #:use-module (guix build union) #:use-module (guix records) - #:use-module ((guix utils) #:select (%current-system)) + #:use-module (guix store) + #:use-module (guix utils) #:use-module (guix gexp) #:use-module (gnu artwork) #:use-module (gnu bootloader) @@ -46,8 +48,11 @@ grub-theme-color-highlight grub-theme-gfxmode + install-grub-efi-netboot + grub-bootloader grub-efi-bootloader + grub-efi-netboot-bootloader grub-mkrescue-bootloader grub-minimal-bootloader @@ -297,9 +302,11 @@ code." (file-system-label->string label))) ((? (lambda (device) (and (string? device) (string-contains device ":/"))) nfs-uri) - ;; This assumes that if your root file system is on NFS, then - ;; you also want to load your grub extra files, kernel and initrd - ;; from there. + ;; If the device is an NFS share, then we assume that the expected + ;; file on that device (e.g. the GRUB background image or the kernel) + ;; has to be loaded over the network. Otherwise we would need an + ;; additional device information for some local disk to look for that + ;; file, which we do not have. ;; ;; We explicitly set "root=(tftp)" here even though if grub.cfg ;; had been loaded via TFTP, Grub would have set "root=(tftp)" @@ -528,6 +535,99 @@ fi~%")))) "--bootloader-id=Guix" "--efi-directory" target-esp)))) +(define (install-grub-efi-netboot subdir) + "Define a grub-efi-netboot bootloader installer for installation in SUBDIR, +which is usually efi/Guix or efi/boot." + (let* ((system (string-split (nix-system->gnu-triplet + (or (%current-target-system) + (%current-system))) + #\-)) + (arch (first system)) + (boot-efi-link (match system + ;; These are the supportend systems and the names + ;; defined by the UEFI standard for removable media. + (("i686" _ ...) "/bootia32.efi") + (("x86_64" _ ...) "/bootx64.efi") + (("arm" _ ...) "/bootarm.efi") + (("aarch64" _ ...) "/bootaa64.efi") + (("riscv" _ ...) "/bootriscv32.efi") + (("riscv64" _ ...) "/bootriscv64.efi") + ;; Other systems are not supported, although defined. + ;; (("riscv128" _ ...) "/bootriscv128.efi") + ;; (("ia64" _ ...) "/bootia64.efi") + ((_ ...) #f))) + (core-efi (string-append + ;; This is the arch dependent file name of GRUB, e.g. + ;; i368-efi/core.efi or arm64-efi/core.efi. + (match arch + ("i686" "i386") + ("aarch64" "arm64") + ("riscv" "riscv32") + (_ arch)) + "-efi/core.efi"))) + (with-imported-modules + '((guix build union)) + #~(lambda (bootloader target mount-point) + "Install the BOOTLOADER, which must be the package grub, as e.g. +bootx64.efi or bootaa64.efi into SUBDIR, which is usually efi/Guix or efi/boot, +below the directory TARGET for the system whose root is mounted at MOUNT-POINT. + +MOUNT-POINT is the last argument in 'guix system init /etc/config.scm mnt/point' +or '/' for other 'guix system' commands. + +TARGET is the target argument given to the bootloader-configuration in + +(operating-system + (bootloader (bootloader-configuration + (target \"/boot\") + …)) + …) + +TARGET is required to be an absolute directory name, usually mounted via NFS, +and finally needs to be provided by a TFTP server as the TFTP root directory. + +GRUB will load tftp://server/SUBDIR/grub.cfg and this file will instruct it to +load more files from the store like tftp://server/gnu/store/…-linux…/Image. + +To make this possible two symlinks will be created. The first symlink points +relatively form MOUNT-POINT/TARGET/SUBDIR/grub.cfg to +MOUNT-POINT/boot/grub/grub.cfg, and the second symlink points relatively from +MOUNT-POINT/TARGET/%store-prefix to MOUNT-POINT/%store-prefix. + +It is important to note that these symlinks need to be relativ, as the absolute +paths on the TFTP server side are unknown. + +It is also important to note that both symlinks will point outside the TFTP root +directory and that the TARGET/%store-prefix symlink makes the whole store +accessible via TFTP. Possibly the TFTP server must be configured +to allow accesses outside its TFTP root directory. This may need to be +considered for security aspects." + (use-modules ((guix build union) #:select (symlink-relative))) + (let* ((net-dir (string-append mount-point target "/")) + (sub-dir (string-append net-dir #$subdir "/")) + (store (string-append mount-point (%store-prefix))) + (store-link (string-append net-dir (%store-prefix))) + (grub-cfg (string-append mount-point "/boot/grub/grub.cfg")) + (grub-cfg-link (string-append sub-dir (basename grub-cfg))) + (boot-efi-link (string-append sub-dir #$boot-efi-link))) + ;; Prepare the symlink to the store. + (mkdir-p (dirname store-link)) + (false-if-exception (delete-file store-link)) + (symlink-relative store store-link) + ;; Prepare the symlink to the grub.cfg, which points into the store. + (mkdir-p (dirname grub-cfg-link)) + (false-if-exception (delete-file grub-cfg-link)) + (symlink-relative grub-cfg grub-cfg-link) + ;; Install GRUB, which refers to the grub.cfg, with support for + ;; encrypted partitions, + (setenv "GRUB_ENABLE_CRYPTODISK" "y") + (invoke/quiet (string-append bootloader "/bin/grub-mknetdir") + (string-append "--net-directory=" net-dir) + (string-append "--subdir=" #$subdir)) + ;; Prepare the bootloader symlink, which points to core.efi of GRUB. + (false-if-exception (delete-file boot-efi-link)) + (symlink #$core-efi boot-efi-link)))))) + ;;; @@ -560,6 +660,12 @@ fi~%")))) (name 'grub-efi) (package grub-efi))) +(define grub-efi-netboot-bootloader + (bootloader + (inherit grub-efi-bootloader) + (name 'grub-efi-netboot-bootloader) + (installer (install-grub-efi-netboot "efi/Guix")))) + (define grub-mkrescue-bootloader (bootloader (inherit grub-efi-bootloader) From 740fd97ebeadebc02448cb0482084f359938b5fe Mon Sep 17 00:00:00 2001 From: Stefan Date: Sun, 20 Sep 2020 00:55:56 +0200 Subject: [PATCH 470/757] doc: Document new bootloader grub-efi-netboot-bootloader. * doc/guix.texi (Bootloader Configuration)[bootloader]: Add grub-efi-netboot-bootloader. [target]: Document TFTP root directory for grub-efi-netboot-bootloader. Signed-off-by: Danny Milosavljevic --- doc/guix.texi | 66 ++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 58 insertions(+), 8 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 82241b010a..538e7cceab 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -28682,7 +28682,15 @@ The type of a bootloader configuration declaration. @cindex BIOS, bootloader The bootloader to use, as a @code{bootloader} object. For now @code{grub-bootloader}, @code{grub-efi-bootloader}, -@code{extlinux-bootloader} and @code{u-boot-bootloader} are supported. +@code{grub-efi-netboot-bootloader}, @code{extlinux-bootloader} and +@code{u-boot-bootloader} are supported. + +@cindex ARM, bootloaders +@cindex AArch64, bootloaders +Available bootloaders are described in @code{(gnu bootloader @dots{})} +modules. In particular, @code{(gnu bootloader u-boot)} contains definitions +of bootloaders for a wide range of ARM and AArch64 systems, using the +@uref{https://www.denx.de/wiki/U-Boot/, U-Boot bootloader}. @vindex grub-efi-bootloader @code{grub-efi-bootloader} allows to boot on modern systems using the @@ -28694,12 +28702,52 @@ when you boot it on your system. @code{grub-bootloader} allows you to boot in particular Intel-based machines in ``legacy'' BIOS mode. -@cindex ARM, bootloaders -@cindex AArch64, bootloaders -Available bootloaders are described in @code{(gnu bootloader @dots{})} -modules. In particular, @code{(gnu bootloader u-boot)} contains definitions -of bootloaders for a wide range of ARM and AArch64 systems, using the -@uref{https://www.denx.de/wiki/U-Boot/, U-Boot bootloader}. +@vindex grub-efi-netboot-bootloader +@code{grub-efi-netboot-bootloader} allows you to boot your system over network +through TFTP. In combination with an NFS root file system this allows you to +build a diskless Guix system. + +The installation of the @code{grub-efi-netboot-bootloader} generates the content +of the TFTP root directory at @code{target} +(@pxref{Bootloader Configuration, @code{target}}), to be served by a TFTP server. + You may want to mount your TFTP server directory onto @code{target} to move the +required files to the TFTP server automatically. + +If you plan to use an NFS root file system as well (actually if you mount the +store from an NFS share), then the TFTP server needs to serve the file +@file{/boot/grub/grub.cfg} and other files from the store (like GRUBs background +image, the kernel (@pxref{operating-system Reference, @code{kernel}}) and the +initrd (@pxref{operating-system Reference, @code{initrd}})), too. All these +files from the store will be accessed by GRUB through TFTP with their normal +store path, for example as +@file{tftp://tftp-server/gnu/store/…-initrd/initrd.cpio.gz}. + +Two symlinks are created to make this possible. The first symlink is +@code{target}@file{/efi/Guix/boot/grub/grub.cfg} pointing to +@file{../../../boot/grub/grub.cfg}, +where @code{target} may be @file{/boot}. In this case the link is not leaving +the served TFTP root directory, but otherwise it does. The second link is +@code{target}@file{/gnu/store} and points to @file{../gnu/store}. This link +is leaving the served TFTP root directory. + +The assumption behind all this is that you have an NFS server exporting the root +file system for your Guix system, and additionally a TFTP server exporting your +@code{target} directory—usually @file{/boot}—from that same root file system for +your Guix system. In this constellation the symlinks will work. + +For other constellations you will have to program your own bootloader installer, +which then takes care to make necessary files from the store accessible through +TFTP, for example by copying them into the TFTP root directory at @code{target}. + +It is important to note that symlinks pointing outside the TFTP root directory +may need to be allowed in the configuration of your TFTP server. Further the +store link exposes the whole store through TFTP. Both points need to be +considered carefully for security aspects. + +Beside the @code{grub-efi-netboot-bootloader}, the already mentioned TFTP and +NFS servers, you also need a properly configured DHCP server to make the booting +over netboot possible. For all this we can currently only recommend you to look +for instructions about @acronym{PXE, Preboot eXecution Environment}. @item @code{target} This is a string denoting the target onto which to install the @@ -28710,7 +28758,9 @@ The interpretation depends on the bootloader in question. For the bootloader @command{installer} command, such as @code{/dev/sda} or @code{(hd0)} (@pxref{Invoking grub-install,,, grub, GNU GRUB Manual}). For @code{grub-efi-bootloader}, it should be the mount point of the EFI file -system, usually @file{/boot/efi}. +system, usually @file{/boot/efi}. For @code{grub-efi-netboot-bootloader}, +@code{target} should be the mount point corresponding to the TFTP root +directory of your TFTP server. @item @code{menu-entries} (default: @code{()}) A possibly empty list of @code{menu-entry} objects (see below), denoting From 0bf662b35b0c3b93f65622079f3174267e6ea8a8 Mon Sep 17 00:00:00 2001 From: AuPath Date: Fri, 25 Sep 2020 19:52:24 +0200 Subject: [PATCH 471/757] gnu: Add emacs-mood-line. * gnu/packages/emacs-xyz.scm (emacs-mood-line): New variable. Signed-off-by: Nicolas Goaziou --- 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 cfef767f6b..1e4a76f760 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -79,6 +79,7 @@ ;;; Copyright © 2020 Morgan Smith ;;; Copyright © 2020 Peng Mei Yu ;;; Copyright © 2020 Niklas Eklund +;;; Copyright © 2020 Marco Grassi ;;; ;;; This file is part of GNU Guix. ;;; @@ -23031,6 +23032,27 @@ icon support, git integration, and several other utilities.") (home-page "https://github.com/seagle0128/doom-modeline/") (license license:gpl3+))) +(define-public emacs-mood-line + (package + (name "emacs-mood-line") + (version "1.2.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/jessieh/mood-line") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0fh9j9fkgl433nykfzjnzap5labi4sdndfk1nv4f904ij69pmvxb")))) + (build-system emacs-build-system) + (home-page "https://gitlab.com/jessieh/mood-line") + (synopsis "Minimal mode-line for Emacs") + (description + "Mood-line is a minimal Emacs mode-line configuration that aims to +replicate some of the features of the Doom modeline package.") + (license license:gpl3+))) + (define-public emacs-shrink-path (package (name "emacs-shrink-path") From f1f076c9dc53a5905ee6ed4b608de4463550d971 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 27 Sep 2020 14:23:07 +0200 Subject: [PATCH 472/757] gnu: emacs-mood-line: Fix license. * gnu/packages/emacs-xyz.scm (emacs-mood-line)[license]: Switch to GPL2+. --- gnu/packages/emacs-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 1e4a76f760..4ea5be40de 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -23051,7 +23051,7 @@ icon support, git integration, and several other utilities.") (description "Mood-line is a minimal Emacs mode-line configuration that aims to replicate some of the features of the Doom modeline package.") - (license license:gpl3+))) + (license license:gpl2+))) (define-public emacs-shrink-path (package From d753aee0be51800d70aa16c6e60506303b2cbb49 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Sun, 27 Sep 2020 17:29:31 +0200 Subject: [PATCH 473/757] gnu: bbswitch-module: Fix build on Linux >= 5.6. * gnu/packages/linux.scm (bbswitch-module): Update to 20200526. --- gnu/packages/linux.scm | 43 ++++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index b936613144..38ab0fe3a6 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1166,27 +1166,30 @@ between the CDemu userspace daemon and linux kernel.") (license license:gpl2+))) (define-public bbswitch-module - (package - (name "bbswitch-module") - (version "0.8") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/Bumblebee-Project/bbswitch") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1glch4j0x1dzlp2yrb67v2r5jg9609jb6p8m251y78m74advqw0l")))) - (build-system linux-module-build-system) - (arguments - ;; No tests. - `(#:tests? #f)) - (home-page "https://github.com/Bumblebee-Project/bbswitch") - (synopsis "Kernel module that disables discrete Nvidia graphics cards") - (description "The bbswitch module provides a way to toggle the Nvidia + ;; Use "develop" branch since stable release does not build on Linux >= 5.6. + ;; See https://github.com/Bumblebee-Project/bbswitch/issues/205. + (let ((commit "ddbd243638c7bc2baecf43a78aff46cdc12e9b2e")) + (package + (name "bbswitch-module") + (version (git-version "0.8" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Bumblebee-Project/bbswitch") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1pgldnza7mzd0flrxg4q69dwbq1fhl58m5c62ary5drb0xyf3lqb")))) + (build-system linux-module-build-system) + (arguments + ;; No tests. + `(#:tests? #f)) + (home-page "https://github.com/Bumblebee-Project/bbswitch") + (synopsis "Kernel module that disables discrete Nvidia graphics cards") + (description "The bbswitch module provides a way to toggle the Nvidia graphics card on Optimus laptops.") - (license license:gpl2))) + (license license:gpl2)))) (define-public ddcci-driver-linux (package From f458cfbcc54ed87b1a87dd9e150ea276f17eab74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 23 Sep 2020 22:29:17 +0200 Subject: [PATCH 474/757] guix build: Add '--without-tests'. * guix/scripts/build.scm (transform-package-tests): New procedure. (%transformations, %transformation-options) show-transformation-options-help): Add it. * tests/scripts-build.scm ("options->transformation, without-tests"): New test. * doc/guix.texi (Package Transformation Options): Document it. --- doc/guix.texi | 22 ++++++++++++++++++++++ guix/scripts/build.scm | 31 ++++++++++++++++++++++++++++--- tests/scripts-build.scm | 14 ++++++++++++++ 3 files changed, 64 insertions(+), 3 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 538e7cceab..8384eee6c3 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9271,6 +9271,28 @@ guix build --with-branch=guile-sqlite3=master cuirass This is similar to @option{--with-branch}, except that it builds from @var{commit} rather than the tip of a branch. @var{commit} must be a valid Git commit SHA1 identifier or a tag. + +@cindex test suite, skipping +@item --without-tests=@var{package} +Build @var{package} without running its tests. This can be useful in +situations where you want to skip the lengthy test suite of a +intermediate package, or if a package's test suite fails in a +non-deterministic fashion. It should be used with care because running +the test suite is a good way to ensure a package is working as intended. + +Turning off tests leads to a different store item. Consequently, when +using this option, anything that depends on @var{package} must be +rebuilt, as in this example: + +@example +guix install --without-tests=python python-notebook +@end example + +The command above installs @code{python-notebook} on top of +@code{python} built without running its test suite. To do so, it also +rebuilds everything that depends on @code{python}, including +@code{python-notebook} itself. + @end table @node Additional Build Options diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm index 38e0516c95..f238e9b876 100644 --- a/guix/scripts/build.scm +++ b/guix/scripts/build.scm @@ -393,6 +393,25 @@ a checkout of the Git repository at the given URL." (rewrite obj) obj))) +(define (transform-package-tests specs) + "Return a procedure that, when passed a package, sets #:tests? #f in its +'arguments' field." + (define (package-without-tests p) + (package/inherit p + (arguments + (substitute-keyword-arguments (package-arguments p) + ((#:tests? _ #f) #f))))) + + (define rewrite + (package-input-rewriting/spec (map (lambda (spec) + (cons spec package-without-tests)) + specs))) + + (lambda (store obj) + (if (package? obj) + (rewrite obj) + obj))) + (define %transformations ;; Transformations that can be applied to things to build. The car is the ;; key used in the option alist, and the cdr is the transformation @@ -403,7 +422,8 @@ a checkout of the Git repository at the given URL." (with-graft . ,transform-package-inputs/graft) (with-branch . ,transform-package-source-branch) (with-commit . ,transform-package-source-commit) - (with-git-url . ,transform-package-source-git-url))) + (with-git-url . ,transform-package-source-git-url) + (without-tests . ,transform-package-tests))) (define %transformation-options ;; The command-line interface to the above transformations. @@ -423,7 +443,9 @@ a checkout of the Git repository at the given URL." (option '("with-commit") #t #f (parser 'with-commit)) (option '("with-git-url") #t #f - (parser 'with-git-url))))) + (parser 'with-git-url)) + (option '("without-tests") #t #f + (parser 'without-tests))))) (define (show-transformation-options-help) (display (G_ " @@ -443,7 +465,10 @@ a checkout of the Git repository at the given URL." build PACKAGE from COMMIT")) (display (G_ " --with-git-url=PACKAGE=URL - build PACKAGE from the repository at URL"))) + build PACKAGE from the repository at URL")) + (display (G_ " + --without-tests=PACKAGE + build PACKAGE without running its tests"))) (define (options->transformation opts) diff --git a/tests/scripts-build.scm b/tests/scripts-build.scm index 32876e956a..12114fc8f5 100644 --- a/tests/scripts-build.scm +++ b/tests/scripts-build.scm @@ -264,5 +264,19 @@ ((("x" dep3)) (map package-source (list dep1 dep3)))))))))))) +(test-assert "options->transformation, without-tests" + (let* ((dep (dummy-package "dep")) + (p (dummy-package "foo" + (inputs `(("dep" ,dep))))) + (t (options->transformation '((without-tests . "dep") + (without-tests . "tar"))))) + (with-store store + (let ((new (t store p))) + (match (bag-direct-inputs (package->bag new)) + ((("dep" dep) ("tar" tar) _ ...) + ;; TODO: Check whether TAR has #:tests? #f when transformations + ;; apply to implicit inputs. + (equal? (package-arguments dep) + '(#:tests? #f)))))))) (test-end) From ff39361c80dfc67a9afe35f315a774140d8cf99b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 21 Sep 2020 17:44:29 +0200 Subject: [PATCH 475/757] packages: 'package-mapping' can recurse on implicit inputs. * guix/packages.scm (build-system-with-package-mapping): New procedure. (package-mapping): Add #:deep? and honor it. * tests/packages.scm ("package-mapping"): Compare the direct inputs of the bag of P0 and that of P1. ("package-mapping, deep"): New test. --- doc/guix.texi | 5 ++-- guix/packages.scm | 65 +++++++++++++++++++++++++++++++++++----------- tests/packages.scm | 36 ++++++++++++++++++++++++- 3 files changed, 88 insertions(+), 18 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 8384eee6c3..054449d8d6 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -6296,10 +6296,11 @@ A more generic procedure to rewrite a package dependency graph is @code{package-mapping}: it supports arbitrary changes to nodes in the graph. -@deffn {Scheme Procedure} package-mapping @var{proc} [@var{cut?}] +@deffn {Scheme Procedure} package-mapping @var{proc} [@var{cut?}] [#:deep? #f] Return a procedure that, given a package, applies @var{proc} to all the packages depended on and returns the resulting package. The procedure stops recursion -when @var{cut?} returns true for a given package. +when @var{cut?} returns true for a given package. When @var{deep?} is true, @var{proc} is +applied to implicit inputs as well. @end deffn @menu diff --git a/guix/packages.scm b/guix/packages.scm index 6598bd3149..171fd048ef 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -968,10 +968,31 @@ packages they depend on, recursively." (vhash-consq package #t visited) (fold set-insert closure dependencies)))))))) -(define* (package-mapping proc #:optional (cut? (const #f))) +(define (build-system-with-package-mapping bs rewrite) + "Return a variant of BS, a build system, that rewrites a bag's inputs by +passing them through REWRITE, a procedure that takes an input tuplet and +returns a \"rewritten\" input tuplet." + (define lower + (build-system-lower bs)) + + (define (lower* . args) + (let ((lowered (apply lower args))) + (bag + (inherit lowered) + (build-inputs (map rewrite (bag-build-inputs lowered))) + (host-inputs (map rewrite (bag-host-inputs lowered))) + (target-inputs (map rewrite (bag-target-inputs lowered)))))) + + (build-system + (inherit bs) + (lower lower*))) + +(define* (package-mapping proc #:optional (cut? (const #f)) + #:key deep?) "Return a procedure that, given a package, applies PROC to all the packages depended on and returns the resulting package. The procedure stops recursion -when CUT? returns true for a given package." +when CUT? returns true for a given package. When DEEP? is true, PROC is +applied to implicit inputs as well." (define (rewrite input) (match input ((label (? package? package) outputs ...) @@ -980,21 +1001,35 @@ when CUT? returns true for a given package." (_ input))) + (define mapping-property + ;; Property indicating whether the package has already been processed. + (gensym " package-mapping-done")) + (define replace (mlambdaq (p) - ;; Return a variant of P with PROC applied to P and its explicit - ;; dependencies, recursively. Memoize the transformations. Failing to - ;; do that, we would build a huge object graph with lots of duplicates, - ;; which in turns prevents us from benefiting from memoization in - ;; 'package-derivation'. - (let ((p (proc p))) - (package - (inherit p) - (location (package-location p)) - (inputs (map rewrite (package-inputs p))) - (native-inputs (map rewrite (package-native-inputs p))) - (propagated-inputs (map rewrite (package-propagated-inputs p))) - (replacement (and=> (package-replacement p) proc)))))) + ;; If P is the result of a previous call, return it. + (if (assq-ref (package-properties p) mapping-property) + p + + ;; Return a variant of P with PROC applied to P and its explicit + ;; dependencies, recursively. Memoize the transformations. Failing + ;; to do that, we would build a huge object graph with lots of + ;; duplicates, which in turns prevents us from benefiting from + ;; memoization in 'package-derivation'. + (let ((p (proc p))) + (package + (inherit p) + (location (package-location p)) + (build-system (if deep? + (build-system-with-package-mapping + (package-build-system p) rewrite) + (package-build-system p))) + (inputs (map rewrite (package-inputs p))) + (native-inputs (map rewrite (package-native-inputs p))) + (propagated-inputs (map rewrite (package-propagated-inputs p))) + (replacement (and=> (package-replacement p) proc)) + (properties `((,mapping-property . #t) + ,@(package-properties p)))))))) replace) diff --git a/tests/packages.scm b/tests/packages.scm index cbd0503733..f33332a461 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -1172,15 +1172,24 @@ (let* ((dep (dummy-package "chbouib" (native-inputs `(("x" ,grep))))) (p0 (dummy-package "example" + (source 77) (inputs `(("foo" ,coreutils) ("bar" ,grep) ("baz" ,dep))))) (transform (lambda (p) (package (inherit p) (source 42)))) (rewrite (package-mapping transform)) - (p1 (rewrite p0))) + (p1 (rewrite p0)) + (bag0 (package->bag p0)) + (bag1 (package->bag p1))) (and (eq? p1 (rewrite p0)) (eqv? 42 (package-source p1)) + + ;; Implicit inputs should be left unchanged (skip "source", "foo", + ;; "bar", and "baz" in this comparison). + (equal? (drop (bag-direct-inputs bag0) 4) + (drop (bag-direct-inputs bag1) 4)) + (match (package-inputs p1) ((("foo" dep1) ("bar" dep2) ("baz" dep3)) (and (eq? dep1 (rewrite coreutils)) ;memoization @@ -1194,6 +1203,31 @@ (and (eq? dep (rewrite grep)) (package-source dep)))))))))) +(test-equal "package-mapping, deep" + '(42) + (let* ((p0 (dummy-package "example" + (inputs `(("foo" ,coreutils) + ("bar" ,grep))))) + (transform (lambda (p) + (package (inherit p) (source 42)))) + (rewrite (package-mapping transform #:deep? #t)) + (p1 (rewrite p0)) + (bag (package->bag p1))) + (and (eq? p1 (rewrite p0)) + (match (bag-direct-inputs bag) + ((("source" 42) ("foo" dep1) ("bar" dep2) rest ..1) + (and (eq? dep1 (rewrite coreutils)) ;memoization + (eq? dep2 (rewrite grep)) + (= 42 (package-source dep1)) + (= 42 (package-source dep2)) + + ;; Check that implicit inputs of P0 also got rewritten. + (delete-duplicates + (map (match-lambda + ((_ package . _) + (package-source package))) + rest)))))))) + (test-assert "package-input-rewriting" (let* ((dep (dummy-package "chbouib" (native-inputs `(("x" ,grep))))) From 2bf6f962b91123b0474c0f7123cd17efe7f09a66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 23 Sep 2020 10:29:09 +0200 Subject: [PATCH 476/757] packages: 'package-input-rewriting/spec' can rewrite implicit dependencies. With this change, '--with-input', '--with-graft', etc. also apply to implicit dependencies. Thus, it's now possible to do: guix build python-itsdangerous --with-input=python-wrapper=python@2 or: guix build hello --with-graft=glibc=glibc@2.29 Additionally, before, implicit inputs were not rewritten, which could lead to duplicates in the output of 'bag-transitive-inputs' (packages that are not 'eq?' but lead to the same derivation). This in turn would lead to unnecessary rebuilds when using '--with-input' & co. This change fixes it by ensuring even implicit inputs are rewritten. Fixes . * guix/packages.scm (package-input-rewriting/spec): Add #:deep? defaulting to #true, and pass it to 'package-mapping'. [replacement-property]: New variable. [rewrite]: Check that property and set it on the result of PROC. [cut?]: New procedure. * tests/packages.scm ("package-input-rewriting/spec"): Ensure implicit inputs were unchanged. ("package-input-rewriting/spec, partial match"): Pass #:deep? #f. ("package-input-rewriting/spec, deep") ("package-input-rewriting/spec, no duplicates"): New tests. (package/inherit): Move before use. * tests/guix-build.sh: Add tests. * tests/scripts-build.scm ("options->transformation, with-graft"): Compare dependencies by package name or derivation file name. * doc/guix.texi (Defining Packages): Adjust accordingly. --- doc/guix.texi | 13 ++++---- guix/packages.scm | 53 +++++++++++++++++++++------------ tests/guix-build.sh | 11 +++++++ tests/packages.scm | 66 +++++++++++++++++++++++++++++++++++++++-- tests/scripts-build.scm | 12 ++++++-- 5 files changed, 124 insertions(+), 31 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 054449d8d6..e72e1ec130 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -6272,12 +6272,13 @@ This is exactly what the @option{--with-input} command-line option does The following variant of @code{package-input-rewriting} can match packages to be replaced by name rather than by identity. -@deffn {Scheme Procedure} package-input-rewriting/spec @var{replacements} -Return a procedure that, given a package, applies the given @var{replacements} to -all the package graph (excluding implicit inputs). @var{replacements} is a list of -spec/procedures pair; each spec is a package specification such as @code{"gcc"} or -@code{"guile@@2"}, and each procedure takes a matching package and returns a -replacement for that package. +@deffn {Scheme Procedure} package-input-rewriting/spec @var{replacements} [#:deep? #t] +Return a procedure that, given a package, applies the given +@var{replacements} to all the package graph, including implicit inputs +unless @var{deep?} is false. @var{replacements} is a list of +spec/procedures pair; each spec is a package specification such as +@code{"gcc"} or @code{"guile@@2"}, and each procedure takes a matching +package and returns a replacement for that package. @end deffn The example above could be rewritten this way: diff --git a/guix/packages.scm b/guix/packages.scm index 171fd048ef..f696945e30 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -422,6 +422,16 @@ name of its URI." package) 16))))) +(define-syntax-rule (package/inherit p overrides ...) + "Like (package (inherit P) OVERRIDES ...), except that the same +transformation is done to the package replacement, if any. P must be a bare +identifier, and will be bound to either P or its replacement when evaluating +OVERRIDES." + (let loop ((p p)) + (package (inherit p) + overrides ... + (replacement (and=> (package-replacement p) loop))))) + (define (package-upstream-name package) "Return the upstream name of PACKAGE, which could be different from the name it has in Guix." @@ -1051,12 +1061,12 @@ package and returns its new name after rewrite." (package-mapping rewrite (cut assq <> replacements))) -(define (package-input-rewriting/spec replacements) +(define* (package-input-rewriting/spec replacements #:key (deep? #t)) "Return a procedure that, given a package, applies the given REPLACEMENTS to -all the package graph (excluding implicit inputs). REPLACEMENTS is a list of -spec/procedures pair; each spec is a package specification such as \"gcc\" or -\"guile@2\", and each procedure takes a matching package and returns a -replacement for that package." +all the package graph, including implicit inputs unless DEEP? is false. +REPLACEMENTS is a list of spec/procedures pair; each spec is a package +specification such as \"gcc\" or \"guile@2\", and each procedure takes a +matching package and returns a replacement for that package." (define table (fold (lambda (replacement table) (match replacement @@ -1081,22 +1091,27 @@ replacement for that package." (package-name package) table)) - (define (rewrite package) - (match (find-replacement package) - (#f package) - (proc (proc package)))) + (define replacement-property + (gensym " package-replacement")) - (package-mapping rewrite find-replacement)) + (define (rewrite p) + (if (assq-ref (package-properties p) replacement-property) + p + (match (find-replacement p) + (#f p) + (proc + (let ((new (proc p))) + ;; Mark NEW as already processed. + (package/inherit new + (properties `((,replacement-property . #t) + ,@(package-properties new))))))))) -(define-syntax-rule (package/inherit p overrides ...) - "Like (package (inherit P) OVERRIDES ...), except that the same -transformation is done to the package replacement, if any. P must be a bare -identifier, and will be bound to either P or its replacement when evaluating -OVERRIDES." - (let loop ((p p)) - (package (inherit p) - overrides ... - (replacement (and=> (package-replacement p) loop))))) + (define (cut? p) + (or (assq-ref (package-properties p) replacement-property) + (find-replacement p))) + + (package-mapping rewrite cut? + #:deep? deep?)) ;;; diff --git a/tests/guix-build.sh b/tests/guix-build.sh index 6c08857358..ec2f736ccb 100644 --- a/tests/guix-build.sh +++ b/tests/guix-build.sh @@ -259,6 +259,17 @@ drv1=`guix build guile -d` drv2=`guix build guile --with-input=gimp=ruby -d` test "$drv1" = "$drv2" +# See . +drv1=`guix build glib -d` +drv2=`guix build glib -d --with-input=libreoffice=inkscape` +test "$drv1" = "$drv2" + +# Rewriting implicit inputs. +drv1=`guix build hello -d` +drv2=`guix build hello -d --with-input=gcc=gcc-toolchain` +test "$drv1" != "$drv2" +guix gc -R "$drv2" | grep `guix build -d gcc-toolchain` + if guix build guile --with-input=libunistring=something-really-silly then false; else true; fi diff --git a/tests/packages.scm b/tests/packages.scm index f33332a461..6fa4ad2f1b 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -38,6 +38,7 @@ #:use-module (guix build-system) #:use-module (guix build-system trivial) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module (guix memoization) #:use-module (guix profiles) #:use-module (guix scripts package) @@ -45,6 +46,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages guile) #:use-module (gnu packages bootstrap) + #:use-module (gnu packages python) #:use-module (gnu packages version-control) #:use-module (gnu packages xml) #:use-module (srfi srfi-1) @@ -1262,7 +1264,8 @@ ("baz" ,dep))))) (rewrite (package-input-rewriting/spec `(("coreutils" . ,(const sed)) - ("grep" . ,(const findutils))))) + ("grep" . ,(const findutils))) + #:deep? #f)) (p1 (rewrite p0)) (p2 (rewrite p0))) (and (not (eq? p1 p0)) @@ -1279,7 +1282,11 @@ (match (package-native-inputs dep3) ((("x" dep)) (string=? (package-full-name dep) - (package-full-name findutils)))))))))) + (package-full-name findutils))))))) + + ;; Make sure implicit inputs were left unchanged. + (equal? (drop (bag-direct-inputs (package->bag p1)) 3) + (drop (bag-direct-inputs (package->bag p0)) 3))))) (test-assert "package-input-rewriting/spec, partial match" (let* ((dep (dummy-package "chbouib" @@ -1290,7 +1297,8 @@ ("bar" ,dep))))) (rewrite (package-input-rewriting/spec `(("chbouib@123" . ,(const sed)) ;not matched - ("grep" . ,(const findutils))))) + ("grep" . ,(const findutils))) + #:deep? #f)) (p1 (rewrite p0))) (and (not (eq? p1 p0)) (string=? "example" (package-name p1)) @@ -1304,6 +1312,58 @@ (string=? (package-full-name dep) (package-full-name findutils)))))))))) +(test-assert "package-input-rewriting/spec, deep" + (let* ((dep (dummy-package "chbouib")) + (p0 (dummy-package "example" + (build-system gnu-build-system) + (inputs `(("dep" ,dep))))) + (rewrite (package-input-rewriting/spec + `(("tar" . ,(const sed)) + ("gzip" . ,(const findutils))))) + (p1 (rewrite p0)) + (p2 (rewrite p0))) + (and (not (eq? p1 p0)) + (eq? p1 p2) ;memoization + (string=? "example" (package-name p1)) + (match (package-inputs p1) + ((("dep" dep1)) + (and (string=? (package-full-name dep1) + (package-full-name dep)) + (eq? dep1 (rewrite dep))))) ;memoization + + ;; Make sure implicit inputs were replaced. + (match (bag-direct-inputs (package->bag p1)) + ((("dep" dep1) ("tar" tar) ("gzip" gzip) _ ...) + (and (eq? dep1 (rewrite dep)) + (string=? (package-full-name tar) + (package-full-name sed)) + (string=? (package-full-name gzip) + (package-full-name findutils)))))))) + +(test-assert "package-input-rewriting/spec, no duplicates" + ;; Ensure that deep input rewriting does not forget implicit inputs. Doing + ;; so could lead to duplicates in a package's inputs: in the example below, + ;; P0's transitive inputs would contain one rewritten "python" and one + ;; original "python". These two "python" packages are thus not 'eq?' but + ;; they lower to the same derivation. See , + ;; which can be reproduced by passing #:deep? #f. + (let* ((dep0 (dummy-package "dep0" + (build-system trivial-build-system) + (propagated-inputs `(("python" ,python))))) + (p0 (dummy-package "chbouib" + (build-system python-build-system) + (arguments `(#:python ,python)) + (inputs `(("dep0" ,dep0))))) + (rewrite (package-input-rewriting/spec '() #:deep? #t)) + (p1 (rewrite p0)) + (bag1 (package->bag p1)) + (pythons (filter-map (match-lambda + (("python" python) python) + (_ #f)) + (bag-transitive-inputs bag1)))) + (match (delete-duplicates pythons eq?) + ((p) (eq? p (rewrite python)))))) + (test-equal "package-patched-vulnerabilities" '(("CVE-2015-1234") ("CVE-2016-1234" "CVE-2018-4567") diff --git a/tests/scripts-build.scm b/tests/scripts-build.scm index 12114fc8f5..5f91360953 100644 --- a/tests/scripts-build.scm +++ b/tests/scripts-build.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2017, 2019 Ludovic Courtès +;;; Copyright © 2016, 2017, 2019, 2020 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,6 +19,7 @@ (define-module (test-scripts-build) #:use-module (guix tests) #:use-module (guix store) + #:use-module (guix derivations) #:use-module (guix packages) #:use-module (guix git-download) #:use-module (guix scripts build) @@ -163,11 +164,16 @@ ((("foo" dep1) ("bar" dep2)) (and (string=? (package-full-name dep1) (package-full-name grep)) - (eq? (package-replacement dep1) findutils) + (string=? (package-full-name (package-replacement dep1)) + (package-full-name findutils)) (string=? (package-name dep2) "chbouib") (match (package-native-inputs dep2) ((("x" dep)) - (eq? (package-replacement dep) findutils))))))))))) + (with-store store + (string=? (derivation-file-name + (package-derivation store findutils)) + (derivation-file-name + (package-derivation store dep)))))))))))))) (test-equal "options->transformation, with-branch" (git-checkout (url "https://example.org") From b3fc03ee266a5f6d810d780582d458e561efccf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 23 Sep 2020 14:40:15 +0200 Subject: [PATCH 477/757] packages: 'package-mapping' correctly recurses into 'replacement'. Previously, something like: guix build glib --with-graft=glibc=glibc@2.29 would produce a result showing that rewriting rules were not applied to libx11@1.6.A (a replacement). * guix/packages.scm (package-mapping): Call REPLACE instead of PROC to 'replacement'. * tests/packages.scm ("package-input-rewriting/spec, graft"): New test. --- guix/packages.scm | 2 +- tests/packages.scm | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/guix/packages.scm b/guix/packages.scm index f696945e30..0d0d7492b6 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -1037,7 +1037,7 @@ applied to implicit inputs as well." (inputs (map rewrite (package-inputs p))) (native-inputs (map rewrite (package-native-inputs p))) (propagated-inputs (map rewrite (package-propagated-inputs p))) - (replacement (and=> (package-replacement p) proc)) + (replacement (and=> (package-replacement p) replace)) (properties `((,mapping-property . #t) ,@(package-properties p)))))))) diff --git a/tests/packages.scm b/tests/packages.scm index 6fa4ad2f1b..e31dea6f72 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -1364,6 +1364,33 @@ (match (delete-duplicates pythons eq?) ((p) (eq? p (rewrite python)))))) +(test-equal "package-input-rewriting/spec, graft" + (derivation-file-name (package-derivation %store sed)) + + ;; Make sure replacements are rewritten. + (let* ((dep0 (dummy-package "dep" + (version "1") + (build-system trivial-build-system) + (inputs `(("coreutils" ,coreutils))))) + (dep1 (dummy-package "dep" + (version "0") + (build-system trivial-build-system) + (replacement dep0))) + (p0 (dummy-package "p" + (build-system trivial-build-system) + (inputs `(("dep" ,dep1))))) + (rewrite (package-input-rewriting/spec + `(("coreutils" . ,(const sed))))) + (p1 (rewrite p0))) + (match (package-inputs p1) + ((("dep" dep)) + (match (package-inputs (package-replacement dep)) + ((("coreutils" coreutils)) + ;; COREUTILS is not 'eq?' to SED, so the most reliable way to check + ;; for equality is to lower to a derivation. + (derivation-file-name + (package-derivation %store coreutils)))))))) + (test-equal "package-patched-vulnerabilities" '(("CVE-2015-1234") ("CVE-2016-1234" "CVE-2018-4567") From 8819551c8d2a12cd4e84e09b51e434d05a012c9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 23 Sep 2020 14:56:38 +0200 Subject: [PATCH 478/757] packages: 'package-input-rewriting' has a #:deep? parameter. * guix/packages.scm (package-input-rewriting): Add #:deep? and pass it to 'package-mapping'. [replacement-property]: New variable. [rewrite]: Check it. [cut?]: New procedure. * tests/packages.scm ("package-input-rewriting"): Pass #:deep? #f and ensure implicit inputs were not rewritten. Avoid 'eq?' comparisons. ("package-input-rewriting, deep"): New test. * gnu/packages/guile.scm (package-for-guile-2.0, package-for-guile-3.0): Pass #:deep? #f. --- doc/guix.texi | 10 +++++----- gnu/packages/guile.scm | 6 ++++-- guix/packages.scm | 37 ++++++++++++++++++++++++++----------- tests/packages.scm | 20 ++++++++++++++++++-- 4 files changed, 53 insertions(+), 20 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index e72e1ec130..0805e2d508 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -6238,12 +6238,12 @@ transformation is @dfn{input rewriting}, whereby the dependency tree of a package is rewritten by replacing specific inputs by others: @deffn {Scheme Procedure} package-input-rewriting @var{replacements} @ - [@var{rewrite-name}] + [@var{rewrite-name}] [#:deep? #t] Return a procedure that, when passed a package, replaces its direct and -indirect dependencies (but not its implicit inputs) according to -@var{replacements}. @var{replacements} is a list of package pairs; the -first element of each pair is the package to replace, and the second one -is the replacement. +indirect dependencies, including implicit inputs when @var{deep?} is +true, according to @var{replacements}. @var{replacements} is a list of +package pairs; the first element of each pair is the package to replace, +and the second one is the replacement. Optionally, @var{rewrite-name} is a one-argument procedure that takes the name of a package and returns its new name after rewrite. diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index c59daeebe2..280053bf06 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -420,11 +420,13 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its ;; A procedure that rewrites the dependency tree of the given package to use ;; GUILE-2.0 instead of GUILE-3.0. (package-input-rewriting `((,guile-3.0 . ,guile-2.0)) - (guile-variant-package-name "guile2.0"))) + (guile-variant-package-name "guile2.0") + #:deep? #f)) (define package-for-guile-2.2 (package-input-rewriting `((,guile-3.0 . ,guile-2.2)) - (guile-variant-package-name "guile2.2"))) + (guile-variant-package-name "guile2.2") + #:deep? #f)) (define-syntax define-deprecated-guile3.0-package (lambda (s) diff --git a/guix/packages.scm b/guix/packages.scm index 0d0d7492b6..4f2bb432be 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -1044,22 +1044,37 @@ applied to implicit inputs as well." replace) (define* (package-input-rewriting replacements - #:optional (rewrite-name identity)) + #:optional (rewrite-name identity) + #:key (deep? #t)) "Return a procedure that, when passed a package, replaces its direct and -indirect dependencies (but not its implicit inputs) according to REPLACEMENTS. -REPLACEMENTS is a list of package pairs; the first element of each pair is the -package to replace, and the second one is the replacement. +indirect dependencies, including implicit inputs when DEEP? is true, according +to REPLACEMENTS. REPLACEMENTS is a list of package pairs; the first element +of each pair is the package to replace, and the second one is the replacement. Optionally, REWRITE-NAME is a one-argument procedure that takes the name of a package and returns its new name after rewrite." - (define (rewrite p) - (match (assq-ref replacements p) - (#f (package - (inherit p) - (name (rewrite-name (package-name p))))) - (new new))) + (define replacement-property + ;; Property to tag right-hand sides in REPLACEMENTS. + (gensym " package-replacement")) - (package-mapping rewrite (cut assq <> replacements))) + (define (rewrite p) + (if (assq-ref (package-properties p) replacement-property) + p + (match (assq-ref replacements p) + (#f (package/inherit p + (name (rewrite-name (package-name p))))) + (new (if deep? + (package/inherit new + (properties `((,replacement-property . #t) + ,@(package-properties new)))) + new))))) + + (define (cut? p) + (or (assq-ref (package-properties p) replacement-property) + (assq-ref replacements p))) + + (package-mapping rewrite cut? + #:deep? deep?)) (define* (package-input-rewriting/spec replacements #:key (deep? #t)) "Return a procedure that, given a package, applies the given REPLACEMENTS to diff --git a/tests/packages.scm b/tests/packages.scm index e31dea6f72..af8941c2e2 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -1239,7 +1239,8 @@ ("baz" ,dep))))) (rewrite (package-input-rewriting `((,coreutils . ,sed) (,grep . ,findutils)) - (cut string-append "r-" <>))) + (cut string-append "r-" <>) + #:deep? #f)) (p1 (rewrite p0)) (p2 (rewrite p0))) (and (not (eq? p1 p0)) @@ -1253,7 +1254,22 @@ (eq? dep3 (rewrite dep)) ;memoization (match (package-native-inputs dep3) ((("x" dep)) - (eq? dep findutils))))))))) + (eq? dep findutils)))))) + + ;; Make sure implicit inputs were left unchanged. + (equal? (drop (bag-direct-inputs (package->bag p1)) 3) + (drop (bag-direct-inputs (package->bag p0)) 3))))) + +(test-eq "package-input-rewriting, deep" + (derivation-file-name (package-derivation %store sed)) + (let* ((p0 (dummy-package "chbouib" + (build-system python-build-system) + (arguments `(#:python ,python)))) + (rewrite (package-input-rewriting `((,python . ,sed)))) + (p1 (rewrite p0))) + (match (bag-direct-inputs (package->bag p1)) + ((("python" python) _ ...) + (derivation-file-name (package-derivation %store python)))))) (test-assert "package-input-rewriting/spec" (let* ((dep (dummy-package "chbouib" From fa18db48ae9e45874967cc90e7e8430cac996d23 Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 25 Sep 2020 22:00:54 +0200 Subject: [PATCH 479/757] doc: Update the master menu. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * doc/guix.texi: Update the master menu. Signed-off-by: Ludovic Courtès --- doc/guix.texi | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 0805e2d508..dbf0c517a7 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -179,6 +179,7 @@ Installation * Setting Up the Daemon:: Preparing the build daemon's environment. * Invoking guix-daemon:: Running the build daemon. * Application Setup:: Application-specific setup. +* Upgrading Guix:: Upgrading Guix and its build daemon. Setting Up the Daemon @@ -198,8 +199,6 @@ System Installation * Installing Guix in a VM:: Guix System playground. * Building the Installation Image:: How this comes to be. -Getting Started - Manual Installation * Keyboard Layout and Networking and Partitioning:: Initial setup. @@ -233,6 +232,7 @@ Development * Invoking guix environment:: Setting up development environments. * Invoking guix pack:: Creating software bundles. * The GCC toolchain:: Working with languages supported by GCC. +* Invoking guix git authenticate:: Authenticating Git repositories. Programming Interface @@ -301,6 +301,7 @@ Services * Scheduled Job Execution:: The mcron service. * Log Rotation:: The rottlog service. * Networking Services:: Network setup, SSH daemon, etc. +* Unattended Upgrades:: Automated system upgrades. * X Window:: Graphical display. * Printing Services:: Local and remote printer support. * Desktop Services:: D-Bus and desktop services. @@ -311,6 +312,7 @@ Services * Telephony Services:: Telephony services. * Monitoring Services:: Monitoring services. * Kerberos Services:: Kerberos services. +* LDAP Services:: LDAP services. * Web Services:: Web servers. * Certificate Services:: TLS certificates via Let's Encrypt. * DNS Services:: DNS daemons. @@ -325,7 +327,7 @@ Services * PAM Mount Service:: Service to mount volumes when logging in. * Guix Services:: Services relating specifically to Guix. * Linux Services:: Services tied to the Linux kernel. -* Hurd Services:: Services specific to a Hurd System. +* Hurd Services:: Services specific for a Hurd System. * Miscellaneous Services:: Other services. Defining Services @@ -335,6 +337,11 @@ Defining Services * Service Reference:: API reference. * Shepherd Services:: A particular type of service. +Bootstrapping + +* Reduced Binary Seed Bootstrap:: A Bootstrap worthy of GNU. +* Preparing to Use the Bootstrap Binaries:: Building that what matters most. + @end detailmenu @end menu From 12871cc8db701a89f7f64303e1f16a8537a12561 Mon Sep 17 00:00:00 2001 From: zimoun Date: Fri, 25 Sep 2020 22:00:55 +0200 Subject: [PATCH 480/757] doc: Promote "Channels" as chapter and reorder. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The sectioning becomes: 1. Specifying Additional Channels (was 3.) 2. Using a Custom Guix Channel (was 2.) 3. Replicating Guix (was 9.) 4. Channel Authentication (was 1.) 5. Primary URL (was 7.) 6. Creating a Channel (reworded) 7. Package Modules in a Sub-directory (was 5.) 8. Declaring Channel Dependencies (was 4.) 9. Specifying Channel Authorizations (was 6.) 10. Writing Channel News (was 8.) * doc/guix.texi (Channels): Move section to chapter. Reorder the chapter. Minor tweaks to keep uniformity. Update the master menu. Signed-off-by: Ludovic Courtès --- doc/guix.texi | 985 ++++++++++++++++++++++++++------------------------ 1 file changed, 516 insertions(+), 469 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index dbf0c517a7..cc8214c257 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -147,6 +147,7 @@ Project}. * System Installation:: Installing the whole operating system. * Getting Started:: Your first steps. * Package Management:: Package installation, upgrade, etc. +* Channels:: Customizing the package collection. * Development:: Guix-aided software development. * Programming Interface:: Using Guix in Scheme. * Utilities:: Package management commands. @@ -212,7 +213,6 @@ Package Management * Packages with Multiple Outputs:: Single source package, multiple outputs. * Invoking guix gc:: Running the garbage collector. * Invoking guix pull:: Fetching the latest Guix and distribution. -* Channels:: Customizing the package collection. * Invoking guix time-machine:: Running an older revision of Guix. * Inferiors:: Interacting with another revision of Guix. * Invoking guix describe:: Display information about your Guix revision. @@ -227,6 +227,19 @@ Substitutes * Substitution Failure:: What happens when substitution fails. * On Trusting Binaries:: How can you trust that binary blob? +Channels + +* Specifying Additional Channels:: Extending the package collection. +* Using a Custom Guix Channel:: Using a customized Guix. +* Replicating Guix:: Running the @emph{exact same} Guix. +* Channel Authentication:: How Guix verifies what it fetches. +* Primary URL:: Distinguishing mirror to original. +* Creating a Channel:: How to write your custom channel. +* Package Modules in a Sub-directory:: Specifying the channel's package modules location. +* Declaring Channel Dependencies:: How to depend on other channels. +* Specifying Channel Authorizations:: Defining channel authors authorizations. +* Writing Channel News:: Communicating information to channel's users. + Development * Invoking guix environment:: Setting up development environments. @@ -2812,7 +2825,6 @@ guix install emacs-guix * Packages with Multiple Outputs:: Single source package, multiple outputs. * Invoking guix gc:: Running the garbage collector. * Invoking guix pull:: Fetching the latest Guix and distribution. -* Channels:: Customizing the package collection. * Invoking guix time-machine:: Running an older revision of Guix. * Inferiors:: Interacting with another revision of Guix. * Invoking guix describe:: Display information about your Guix revision. @@ -4189,473 +4201,6 @@ information. In addition, @command{guix pull} supports all the common build options (@pxref{Common Build Options}). -@node Channels -@section Channels - -@cindex channels -@cindex @file{channels.scm}, configuration file -@cindex configuration file for channels -@cindex @command{guix pull}, configuration file -@cindex configuration of @command{guix pull} -Guix and its package collection are updated by running @command{guix pull} -(@pxref{Invoking guix pull}). By default @command{guix pull} downloads and -deploys Guix itself from the official GNU@tie{}Guix repository. This can be -customized by defining @dfn{channels} in the -@file{~/.config/guix/channels.scm} file. A channel specifies a URL and branch -of a Git repository to be deployed, and @command{guix pull} can be instructed -to pull from one or more channels. In other words, channels can be used -to @emph{customize} and to @emph{extend} Guix, as we will see below. -Before that, some security considerations. - -@subsection Channel Authentication - -@anchor{channel-authentication} -@cindex authentication, of channel code -The @command{guix pull} and @command{guix time-machine} commands -@dfn{authenticate} the code retrieved from channels: they make sure each -commit that is fetched is signed by an authorized developer. The goal -is to protect from unauthorized modifications to the channel that would -lead users to run malicious code. - -As a user, you must provide a @dfn{channel introduction} in your -channels file so that Guix knows how to authenticate its first commit. -A channel specification, including its introduction, looks something -along these lines: - -@lisp -(channel - (name 'my-channel) - (url "https://example.org/my-channel.git") - (introduction - (make-channel-introduction - "6f0d8cc0d88abb59c324b2990bfee2876016bb86" - (openpgp-fingerprint - "CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5")))) -@end lisp - -The specification above shows the name and URL of the channel. The call -to @code{make-channel-introduction} above specifies that authentication -of this channel starts at commit @code{6f0d8cc@dots{}}, which is signed -by the OpenPGP key with fingerprint @code{CABB A931@dots{}}. - -For the main channel, called @code{guix}, you automatically get that -information from your Guix installation. For other channels, include -the channel introduction provided by the channel authors in your -@file{channels.scm} file. Make sure you retrieve the channel -introduction from a trusted source since that is the root of your trust. - -If you're curious about the authentication mechanics, read on! - -@subsection Using a Custom Guix Channel - -The channel called @code{guix} specifies where Guix itself---its command-line -tools as well as its package collection---should be downloaded. For instance, -suppose you want to update from your own copy of the Guix repository at -@code{example.org}, and specifically the @code{super-hacks} branch, you can -write in @code{~/.config/guix/channels.scm} this specification: - -@lisp -;; Tell 'guix pull' to use my own repo. -(list (channel - (name 'guix) - (url "https://example.org/my-guix.git") - (branch "super-hacks"))) -@end lisp - -@noindent -From there on, @command{guix pull} will fetch code from the @code{super-hacks} -branch of the repository at @code{example.org}. - -@subsection Specifying Additional Channels - -@cindex extending the package collection (channels) -@cindex personal packages (channels) -@cindex channels, for personal packages -You can also specify @emph{additional channels} to pull from. Let's say you -have a bunch of custom package variants or personal packages that you think -would make little sense to contribute to the Guix project, but would like to -have these packages transparently available to you at the command line. You -would first write modules containing those package definitions (@pxref{Package -Modules}), maintain them in a Git repository, and then you and anyone else can -use it as an additional channel to get packages from. Neat, no? - -@c What follows stems from discussions at -@c as well as -@c earlier discussions on guix-devel@gnu.org. -@quotation Warning -Before you, dear user, shout---``woow this is @emph{soooo coool}!''---and -publish your personal channel to the world, we would like to share a few words -of caution: - -@itemize -@item -Before publishing a channel, please consider contributing your package -definitions to Guix proper (@pxref{Contributing}). Guix as a project is open -to free software of all sorts, and packages in Guix proper are readily -available to all Guix users and benefit from the project's quality assurance -process. - -@item -When you maintain package definitions outside Guix, we, Guix developers, -consider that @emph{the compatibility burden is on you}. Remember that -package modules and package definitions are just Scheme code that uses various -programming interfaces (APIs). We want to remain free to change these APIs to -keep improving Guix, possibly in ways that break your channel. We never -change APIs gratuitously, but we will @emph{not} commit to freezing APIs -either. - -@item -Corollary: if you're using an external channel and that channel breaks, please -@emph{report the issue to the channel authors}, not to the Guix project. -@end itemize - -You've been warned! Having said this, we believe external channels are a -practical way to exert your freedom to augment Guix' package collection and to -share your improvements, which are basic tenets of -@uref{https://www.gnu.org/philosophy/free-sw.html, free software}. Please -email us at @email{guix-devel@@gnu.org} if you'd like to discuss this. -@end quotation - -To use a channel, write @code{~/.config/guix/channels.scm} to instruct -@command{guix pull} to pull from it @emph{in addition} to the default Guix -channel(s): - -@vindex %default-channels -@lisp -;; Add my personal packages to those Guix provides. -(cons (channel - (name 'my-personal-packages) - (url "https://example.org/personal-packages.git")) - %default-channels) -@end lisp - -@noindent -Note that the snippet above is (as always!)@: Scheme code; we use @code{cons} to -add a channel the list of channels that the variable @code{%default-channels} -is bound to (@pxref{Pairs, @code{cons} and lists,, guile, GNU Guile Reference -Manual}). With this file in place, @command{guix pull} builds not only Guix -but also the package modules from your own repository. The result in -@file{~/.config/guix/current} is the union of Guix with your own package -modules: - -@example -$ guix pull --list-generations -@dots{} -Generation 19 Aug 27 2018 16:20:48 - guix d894ab8 - repository URL: https://git.savannah.gnu.org/git/guix.git - branch: master - commit: d894ab8e9bfabcefa6c49d9ba2e834dd5a73a300 - my-personal-packages dd3df5e - repository URL: https://example.org/personal-packages.git - branch: master - commit: dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb - 11 new packages: my-gimp, my-emacs-with-cool-features, @dots{} - 4 packages upgraded: emacs-racket-mode@@0.0.2-2.1b78827, @dots{} -@end example - -@noindent -The output of @command{guix pull} above shows that Generation@tie{}19 includes -both Guix and packages from the @code{my-personal-packages} channel. Among -the new and upgraded packages that are listed, some like @code{my-gimp} and -@code{my-emacs-with-cool-features} might come from -@code{my-personal-packages}, while others come from the Guix default channel. - -To create a channel, create a Git repository containing your own package -modules and make it available. The repository can contain anything, but a -useful channel will contain Guile modules that export packages. Once you -start using a channel, Guix will behave as if the root directory of that -channel's Git repository has been added to the Guile load path (@pxref{Load -Paths,,, guile, GNU Guile Reference Manual}). For example, if your channel -contains a file at @file{my-packages/my-tools.scm} that defines a Guile -module, then the module will be available under the name @code{(my-packages -my-tools)}, and you will be able to use it like any other module -(@pxref{Modules,,, guile, GNU Guile Reference Manual}). - -@cindex dependencies, channels -@cindex meta-data, channels -@subsection Declaring Channel Dependencies - -Channel authors may decide to augment a package collection provided by other -channels. They can declare their channel to be dependent on other channels in -a meta-data file @file{.guix-channel}, which is to be placed in the root of -the channel repository. - -The meta-data file should contain a simple S-expression like this: - -@lisp -(channel - (version 0) - (dependencies - (channel - (name some-collection) - (url "https://example.org/first-collection.git") - - ;; The 'introduction' bit below is optional: you would - ;; provide it for dependencies that can be authenticated. - (introduction - (channel-introduction - (version 0) - (commit "a8883b58dc82e167c96506cf05095f37c2c2c6cd") - (signer "CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5")))) - (channel - (name some-other-collection) - (url "https://example.org/second-collection.git") - (branch "testing")))) -@end lisp - -In the above example this channel is declared to depend on two other channels, -which will both be fetched automatically. The modules provided by the channel -will be compiled in an environment where the modules of all these declared -channels are available. - -For the sake of reliability and maintainability, you should avoid dependencies -on channels that you don't control, and you should aim to keep the number of -dependencies to a minimum. - -@cindex subdirectory, channels -@subsection Package Modules in a Sub-directory - -As a channel author, you may want to keep your channel modules in a -sub-directory. If your modules are in the sub-directory @file{guix}, you must -add a meta-data file @file{.guix-channel} that contains: - -@lisp -(channel - (version 0) - (directory "guix")) -@end lisp - -@cindex channel authorizations -@subsection Specifying Channel Authorizations - -@anchor{channel-authorizations} -As we saw above, Guix ensures the source code it pulls from channels -comes from authorized developers. As a channel author, you need to -specify the list of authorized developers in the -@file{.guix-authorizations} file in the channel's Git repository. The -authentication rule is simple: each commit must be signed by a key -listed in the @file{.guix-authorizations} file of its parent -commit(s)@footnote{Git commits form a @dfn{directed acyclic graph} -(DAG). Each commit can have zero or more parents; ``regular'' commits -have one parent and merge commits have two parent commits. Read -@uref{https://eagain.net/articles/git-for-computer-scientists/, @i{Git -for Computer Scientists}} for a great overview.} The -@file{.guix-authorizations} file looks like this: - -@lisp -;; Example '.guix-authorizations' file. - -(authorizations - (version 0) ;current file format version - - (("AD17 A21E F8AE D8F1 CC02 DBD9 F8AE D8F1 765C 61E3" - (name "alice")) - ("2A39 3FFF 68F4 EF7A 3D29 12AF 68F4 EF7A 22FB B2D5" - (name "bob")) - ("CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5" - (name "charlie")))) -@end lisp - -Each fingerprint is followed by optional key/value pairs, as in the -example above. Currently these key/value pairs are ignored. - -This authentication rule creates a chicken-and-egg issue: how do we -authenticate the first commit? Related to that: how do we deal with -channels whose repository history contains unsigned commits and lack -@file{.guix-authorizations}? And how do we fork existing channels? - -@cindex channel introduction -Channel introductions answer these questions by describing the first -commit of a channel that should be authenticated. The first time a -channel is fetched with @command{guix pull} or @command{guix -time-machine}, the command looks up the introductory commit and verifies -that it is signed by the specified OpenPGP key. From then on, it -authenticates commits according to the rule above. - -Additionally, your channel must provide all the OpenPGP keys that were -ever mentioned in @file{.guix-authorizations}, stored as @file{.key} -files, which can be either binary or ``ASCII-armored''. By default, -those @file{.key} files are searched for in the branch named -@code{keyring} but you can specify a different branch name in -@code{.guix-channel} like so: - -@lisp -(channel - (version 0) - (keyring-reference "my-keyring-branch")) -@end lisp - -To summarize, as the author of a channel, there are three things you have -to do to allow users to authenticate your code: - -@enumerate -@item -Export the OpenPGP keys of past and present committers with @command{gpg ---export} and store them in @file{.key} files, by default in a branch -named @code{keyring} (we recommend making it an @dfn{orphan branch}). - -@item -Introduce an initial @file{.guix-authorizations} in the channel's -repository. Do that in a signed commit (@pxref{Commit Access}, for -information on how to sign Git commits.) - -@item -Advertise the channel introduction, for instance on your channel's web -page. The channel introduction, as we saw above, is the commit/key -pair---i.e., the commit that introduced @file{.guix-authorizations}, and -the fingerprint of the OpenPGP used to sign it. -@end enumerate - -Before pushing to your public Git repository, you can run @command{guix -git-authenticate} to verify that you did sign all the commits you are -about to push with an authorized key: - -@example -guix git authenticate @var{commit} @var{signer} -@end example - -@noindent -where @var{commit} and @var{signer} are your channel introduction. -@xref{Invoking guix git authenticate}, for details. - -Publishing a signed channel requires discipline: any mistake, such as an -unsigned commit or a commit signed by an unauthorized key, will prevent -users from pulling from your channel---well, that's the whole point of -authentication! Pay attention to merges in particular: merge commits -are considered authentic if and only if they are signed by a key present -in the @file{.guix-authorizations} file of @emph{both} branches. - -@cindex primary URL, channels -@subsection Primary URL - -Channel authors can indicate the primary URL of their channel's Git -repository in the @file{.guix-channel} file, like so: - -@lisp -(channel - (version 0) - (url "https://example.org/guix.git")) -@end lisp - -This allows @command{guix pull} to determine whether it is pulling code -from a mirror of the channel; when that is the case, it warns the user -that the mirror might be stale and displays the primary URL. That way, -users cannot be tricked into fetching code from a stale mirror that does -not receive security updates. - -This feature only makes sense for authenticated repositories, such as -the official @code{guix} channel, for which @command{guix pull} ensures -the code it fetches is authentic. - -@cindex news, for channels -@subsection Writing Channel News - -Channel authors may occasionally want to communicate to their users -information about important changes in the channel. You'd send them all -an email, but that's not convenient. - -Instead, channels can provide a @dfn{news file}; when the channel users -run @command{guix pull}, that news file is automatically read and -@command{guix pull --news} can display the announcements that correspond -to the new commits that have been pulled, if any. - -To do that, channel authors must first declare the name of the news file -in their @file{.guix-channel} file: - -@lisp -(channel - (version 0) - (news-file "etc/news.txt")) -@end lisp - -The news file itself, @file{etc/news.txt} in this example, must look -something like this: - -@lisp -(channel-news - (version 0) - (entry (tag "the-bug-fix") - (title (en "Fixed terrible bug") - (fr "Oh la la")) - (body (en "@@emph@{Good news@}! It's fixed!") - (eo "Certe ĝi pli bone funkcias nun!"))) - (entry (commit "bdcabe815cd28144a2d2b4bc3c5057b051fa9906") - (title (en "Added a great package") - (ca "Què vol dir guix?")) - (body (en "Don't miss the @@code@{hello@} package!")))) -@end lisp - -While the news file is using the Scheme syntax, avoid naming it with a -@file{.scm} extension or else it will get picked up when building the -channel and yield an error since it is not a valid module. -Alternatively, you can move the channel module to a subdirectory and -store the news file in another directory. - -The file consists of a list of @dfn{news entries}. Each entry is -associated with a commit or tag: it describes changes made in this -commit, possibly in preceding commits as well. Users see entries only -the first time they obtain the commit the entry refers to. - -The @code{title} field should be a one-line summary while @code{body} -can be arbitrarily long, and both can contain Texinfo markup -(@pxref{Overview,,, texinfo, GNU Texinfo}). Both the title and body are -a list of language tag/message tuples, which allows @command{guix pull} -to display news in the language that corresponds to the user's locale. - -If you want to translate news using a gettext-based workflow, you can -extract translatable strings with @command{xgettext} (@pxref{xgettext -Invocation,,, gettext, GNU Gettext Utilities}). For example, assuming -you write news entries in English first, the command below creates a PO -file containing the strings to translate: - -@example -xgettext -o news.po -l scheme -ken etc/news.txt -@end example - -To sum up, yes, you could use your channel as a blog. But beware, this -is @emph{not quite} what your users might expect. - -@subsection Replicating Guix - -@cindex pinning, channels -@cindex replicating Guix -@cindex reproducibility, of Guix -The @command{guix pull --list-generations} output above shows precisely which -commits were used to build this instance of Guix. We can thus replicate it, -say, on another machine, by providing a channel specification in -@file{~/.config/guix/channels.scm} that is ``pinned'' to these commits: - -@lisp -;; Deploy specific commits of my channels of interest. -(list (channel - (name 'guix) - (url "https://git.savannah.gnu.org/git/guix.git") - (commit "6298c3ffd9654d3231a6f25390b056483e8f407c")) - (channel - (name 'my-personal-packages) - (url "https://example.org/personal-packages.git") - (commit "dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb"))) -@end lisp - -The @command{guix describe --format=channels} command can even generate this -list of channels directly (@pxref{Invoking guix describe}). The resulting -file can be used with the -C options of @command{guix pull} -(@pxref{Invoking guix pull}) or @command{guix time-machine} -(@pxref{Invoking guix time-machine}). - -At this point the two machines run the @emph{exact same Guix}, with access to -the @emph{exact same packages}. The output of @command{guix build gimp} on -one machine will be exactly the same, bit for bit, as the output of the same -command on the other machine. It also means both machines have access to all -the source code of Guix and, transitively, to all the source code of every -package it defines. - -This gives you super powers, allowing you to track the provenance of binary -artifacts with very fine grain, and to reproduce software environments at -will---some sort of ``meta reproducibility'' capabilities, if you will. -@xref{Inferiors}, for another way to take advantage of these super powers. - @node Invoking guix time-machine @section Invoking @command{guix time-machine} @@ -5121,6 +4666,508 @@ $ wget -O - \ @end table +@c ********************************************************************* +@node Channels +@chapter Channels + +@cindex channels +@cindex @file{channels.scm}, configuration file +@cindex configuration file for channels +@cindex @command{guix pull}, configuration file +@cindex configuration of @command{guix pull} +Guix and its package collection are updated by running @command{guix pull} +(@pxref{Invoking guix pull}). By default @command{guix pull} downloads and +deploys Guix itself from the official GNU@tie{}Guix repository. This can be +customized by defining @dfn{channels} in the +@file{~/.config/guix/channels.scm} file. A channel specifies a URL and branch +of a Git repository to be deployed, and @command{guix pull} can be instructed +to pull from one or more channels. In other words, channels can be used +to @emph{customize} and to @emph{extend} Guix, as we will see below. +Guix is able to take into account security concerns and deal with authenticated +updates. + +@menu +* Specifying Additional Channels:: Extending the package collection. +* Using a Custom Guix Channel:: Using a customized Guix. +* Replicating Guix:: Running the @emph{exact same} Guix. +* Channel Authentication:: How Guix verifies what it fetches. +* Primary URL:: Distinguishing mirror to original. +* Creating a Channel:: How to write your custom channel. +* Package Modules in a Sub-directory:: Specifying the channel's package modules location. +* Declaring Channel Dependencies:: How to depend on other channels. +* Specifying Channel Authorizations:: Defining channel authors authorizations. +* Writing Channel News:: Communicating information to channel's users. +@end menu + +@node Specifying Additional Channels +@section Specifying Additional Channels + +@cindex extending the package collection (channels) +@cindex variant packages (channels) +You can specify @emph{additional channels} to pull from. To use a channel, write +@code{~/.config/guix/channels.scm} to instruct @command{guix pull} to pull from it +@emph{in addition} to the default Guix channel(s): + +@vindex %default-channels +@lisp +;; Add variant packages to those Guix provides. +(cons (channel + (name 'variant-packages) + (url "https://example.org/variant-packages.git")) + %default-channels) +@end lisp + +@noindent +Note that the snippet above is (as always!)@: Scheme code; we use @code{cons} to +add a channel the list of channels that the variable @code{%default-channels} +is bound to (@pxref{Pairs, @code{cons} and lists,, guile, GNU Guile Reference +Manual}). With this file in place, @command{guix pull} builds not only Guix +but also the package modules from your own repository. The result in +@file{~/.config/guix/current} is the union of Guix with your own package +modules: + +@example +$ guix pull --list-generations +@dots{} +Generation 19 Aug 27 2018 16:20:48 + guix d894ab8 + repository URL: https://git.savannah.gnu.org/git/guix.git + branch: master + commit: d894ab8e9bfabcefa6c49d9ba2e834dd5a73a300 + variant-packages dd3df5e + repository URL: https://example.org/variant-packages.git + branch: master + commit: dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb + 11 new packages: variant-gimp, variant-emacs-with-cool-features, @dots{} + 4 packages upgraded: emacs-racket-mode@@0.0.2-2.1b78827, @dots{} +@end example + +@noindent +The output of @command{guix pull} above shows that Generation@tie{}19 includes +both Guix and packages from the @code{variant-personal-packages} channel. Among +the new and upgraded packages that are listed, some like @code{variant-gimp} and +@code{variant-emacs-with-cool-features} might come from +@code{variant-packages}, while others come from the Guix default channel. + +@node Using a Custom Guix Channel +@section Using a Custom Guix Channel + +The channel called @code{guix} specifies where Guix itself---its command-line +tools as well as its package collection---should be downloaded. For instance, +suppose you want to update from another copy of the Guix repository at +@code{example.org}, and specifically the @code{super-hacks} branch, you can +write in @code{~/.config/guix/channels.scm} this specification: + +@lisp +;; Tell 'guix pull' to use another repo. +(list (channel + (name 'guix) + (url "https://example.org/another-guix.git") + (branch "super-hacks"))) +@end lisp + +@noindent +From there on, @command{guix pull} will fetch code from the @code{super-hacks} +branch of the repository at @code{example.org}. The authentication concern is +addressed below ((@pxref{Channel Authentication}). + +@node Replicating Guix +@section Replicating Guix + +@cindex pinning, channels +@cindex replicating Guix +@cindex reproducibility, of Guix +The @command{guix pull --list-generations} output above shows precisely which +commits were used to build this instance of Guix. We can thus replicate it, +say, on another machine, by providing a channel specification in +@file{~/.config/guix/channels.scm} that is ``pinned'' to these commits: + +@lisp +;; Deploy specific commits of my channels of interest. +(list (channel + (name 'guix) + (url "https://git.savannah.gnu.org/git/guix.git") + (commit "6298c3ffd9654d3231a6f25390b056483e8f407c")) + (channel + (name 'variant-packages) + (url "https://example.org/variant-packages.git") + (commit "dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb"))) +@end lisp + +The @command{guix describe --format=channels} command can even generate this +list of channels directly (@pxref{Invoking guix describe}). The resulting +file can be used with the -C options of @command{guix pull} +(@pxref{Invoking guix pull}) or @command{guix time-machine} +(@pxref{Invoking guix time-machine}). + +At this point the two machines run the @emph{exact same Guix}, with access to +the @emph{exact same packages}. The output of @command{guix build gimp} on +one machine will be exactly the same, bit for bit, as the output of the same +command on the other machine. It also means both machines have access to all +the source code of Guix and, transitively, to all the source code of every +package it defines. + +This gives you super powers, allowing you to track the provenance of binary +artifacts with very fine grain, and to reproduce software environments at +will---some sort of ``meta reproducibility'' capabilities, if you will. +@xref{Inferiors}, for another way to take advantage of these super powers. + +@node Channel Authentication +@section Channel Authentication + +@anchor{channel-authentication} +@cindex authentication, of channel code +The @command{guix pull} and @command{guix time-machine} commands +@dfn{authenticate} the code retrieved from channels: they make sure each +commit that is fetched is signed by an authorized developer. The goal +is to protect from unauthorized modifications to the channel that would +lead users to run malicious code. + +As a user, you must provide a @dfn{channel introduction} in your +channels file so that Guix knows how to authenticate its first commit. +A channel specification, including its introduction, looks something +along these lines: + +@lisp +(channel + (name 'some-channel) + (url "https://example.org/some-channel.git") + (introduction + (make-channel-introduction + "6f0d8cc0d88abb59c324b2990bfee2876016bb86" + (openpgp-fingerprint + "CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5")))) +@end lisp + +The specification above shows the name and URL of the channel. The call +to @code{make-channel-introduction} above specifies that authentication +of this channel starts at commit @code{6f0d8cc@dots{}}, which is signed +by the OpenPGP key with fingerprint @code{CABB A931@dots{}}. + +For the main channel, called @code{guix}, you automatically get that +information from your Guix installation. For other channels, include +the channel introduction provided by the channel authors in your +@file{channels.scm} file. Make sure you retrieve the channel +introduction from a trusted source since that is the root of your trust. + +If you're curious about the authentication mechanics, read on! + +@cindex primary URL, channels +@node Primary URL +@section Primary URL + +Channel authors can indicate the primary URL of their channel's Git +repository in the @file{.guix-channel} file, like so: + +@lisp +(channel + (version 0) + (url "https://example.org/guix.git")) +@end lisp + +This allows @command{guix pull} to determine whether it is pulling code +from a mirror of the channel; when that is the case, it warns the user +that the mirror might be stale and displays the primary URL. That way, +users cannot be tricked into fetching code from a stale mirror that does +not receive security updates. + +This feature only makes sense for authenticated repositories, such as +the official @code{guix} channel, for which @command{guix pull} ensures +the code it fetches is authentic. + +@cindex personal packages (channels) +@cindex channels, for personal packages +@node Creating a Channel +@section Creating a Channel + +Let's say you have a bunch of custom package variants or personal packages +that you think would make little sense to contribute to the Guix project, but +would like to have these packages transparently available to you at the +command line. You would first write modules containing those package +definitions (@pxref{Package Modules}), maintain them in a Git repository, and +then you and anyone else can use it as an additional channel to get packages +from. Neat, no? + +@c What follows stems from discussions at +@c as well as +@c earlier discussions on guix-devel@gnu.org. +@quotation Warning +Before you, dear user, shout---``woow this is @emph{soooo coool}!''---and +publish your personal channel to the world, we would like to share a few words +of caution: + +@itemize +@item +Before publishing a channel, please consider contributing your package +definitions to Guix proper (@pxref{Contributing}). Guix as a project is open +to free software of all sorts, and packages in Guix proper are readily +available to all Guix users and benefit from the project's quality assurance +process. + +@item +When you maintain package definitions outside Guix, we, Guix developers, +consider that @emph{the compatibility burden is on you}. Remember that +package modules and package definitions are just Scheme code that uses various +programming interfaces (APIs). We want to remain free to change these APIs to +keep improving Guix, possibly in ways that break your channel. We never +change APIs gratuitously, but we will @emph{not} commit to freezing APIs +either. + +@item +Corollary: if you're using an external channel and that channel breaks, please +@emph{report the issue to the channel authors}, not to the Guix project. +@end itemize + +You've been warned! Having said this, we believe external channels are a +practical way to exert your freedom to augment Guix' package collection and to +share your improvements, which are basic tenets of +@uref{https://www.gnu.org/philosophy/free-sw.html, free software}. Please +email us at @email{guix-devel@@gnu.org} if you'd like to discuss this. +@end quotation + +To create a channel, create a Git repository containing your own package +modules and make it available. The repository can contain anything, but a +useful channel will contain Guile modules that export packages. Once you +start using a channel, Guix will behave as if the root directory of that +channel's Git repository has been added to the Guile load path (@pxref{Load +Paths,,, guile, GNU Guile Reference Manual}). For example, if your channel +contains a file at @file{my-packages/my-tools.scm} that defines a Guile +module, then the module will be available under the name @code{(my-packages +my-tools)}, and you will be able to use it like any other module +(@pxref{Modules,,, guile, GNU Guile Reference Manual}). + +As a channel author, consider bundling authentication material with your +channel so that users can authenticate it. @xref{Channel +Authentication}, and @ref{Specifying Channel Authorizations}, for info +on how to do it. + + +@cindex subdirectory, channels +@node Package Modules in a Sub-directory +@section Package Modules in a Sub-directory + +As a channel author, you may want to keep your channel modules in a +sub-directory. If your modules are in the sub-directory @file{guix}, you must +add a meta-data file @file{.guix-channel} that contains: + +@lisp +(channel + (version 0) + (directory "guix")) +@end lisp + +@cindex dependencies, channels +@cindex meta-data, channels +@node Declaring Channel Dependencies +@section Declaring Channel Dependencies + +Channel authors may decide to augment a package collection provided by other +channels. They can declare their channel to be dependent on other channels in +a meta-data file @file{.guix-channel}, which is to be placed in the root of +the channel repository. + +The meta-data file should contain a simple S-expression like this: + +@lisp +(channel + (version 0) + (dependencies + (channel + (name 'some-collection) + (url "https://example.org/first-collection.git") + + ;; The 'introduction' bit below is optional: you would + ;; provide it for dependencies that can be authenticated. + (introduction + (channel-introduction + (version 0) + (commit "a8883b58dc82e167c96506cf05095f37c2c2c6cd") + (signer "CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5")))) + (channel + (name 'some-other-collection) + (url "https://example.org/second-collection.git") + (branch "testing")))) +@end lisp + +In the above example this channel is declared to depend on two other channels, +which will both be fetched automatically. The modules provided by the channel +will be compiled in an environment where the modules of all these declared +channels are available. + +For the sake of reliability and maintainability, you should avoid dependencies +on channels that you don't control, and you should aim to keep the number of +dependencies to a minimum. + +@cindex channel authorizations +@node Specifying Channel Authorizations +@section Specifying Channel Authorizations + +@anchor{channel-authorizations} +As we saw above, Guix ensures the source code it pulls from channels +comes from authorized developers. As a channel author, you need to +specify the list of authorized developers in the +@file{.guix-authorizations} file in the channel's Git repository. The +authentication rule is simple: each commit must be signed by a key +listed in the @file{.guix-authorizations} file of its parent +commit(s)@footnote{Git commits form a @dfn{directed acyclic graph} +(DAG). Each commit can have zero or more parents; ``regular'' commits +have one parent and merge commits have two parent commits. Read +@uref{https://eagain.net/articles/git-for-computer-scientists/, @i{Git +for Computer Scientists}} for a great overview.} The +@file{.guix-authorizations} file looks like this: + +@lisp +;; Example '.guix-authorizations' file. + +(authorizations + (version 0) ;current file format version + + (("AD17 A21E F8AE D8F1 CC02 DBD9 F8AE D8F1 765C 61E3" + (name "alice")) + ("2A39 3FFF 68F4 EF7A 3D29 12AF 68F4 EF7A 22FB B2D5" + (name "bob")) + ("CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5" + (name "charlie")))) +@end lisp + +Each fingerprint is followed by optional key/value pairs, as in the +example above. Currently these key/value pairs are ignored. + +This authentication rule creates a chicken-and-egg issue: how do we +authenticate the first commit? Related to that: how do we deal with +channels whose repository history contains unsigned commits and lack +@file{.guix-authorizations}? And how do we fork existing channels? + +@cindex channel introduction +Channel introductions answer these questions by describing the first +commit of a channel that should be authenticated. The first time a +channel is fetched with @command{guix pull} or @command{guix +time-machine}, the command looks up the introductory commit and verifies +that it is signed by the specified OpenPGP key. From then on, it +authenticates commits according to the rule above. + +Additionally, your channel must provide all the OpenPGP keys that were +ever mentioned in @file{.guix-authorizations}, stored as @file{.key} +files, which can be either binary or ``ASCII-armored''. By default, +those @file{.key} files are searched for in the branch named +@code{keyring} but you can specify a different branch name in +@code{.guix-channel} like so: + +@lisp +(channel + (version 0) + (keyring-reference "my-keyring-branch")) +@end lisp + +To summarize, as the author of a channel, there are three things you have +to do to allow users to authenticate your code: + +@enumerate +@item +Export the OpenPGP keys of past and present committers with @command{gpg +--export} and store them in @file{.key} files, by default in a branch +named @code{keyring} (we recommend making it an @dfn{orphan branch}). + +@item +Introduce an initial @file{.guix-authorizations} in the channel's +repository. Do that in a signed commit (@pxref{Commit Access}, for +information on how to sign Git commits.) + +@item +Advertise the channel introduction, for instance on your channel's web +page. The channel introduction, as we saw above, is the commit/key +pair---i.e., the commit that introduced @file{.guix-authorizations}, and +the fingerprint of the OpenPGP used to sign it. +@end enumerate + +Before pushing to your public Git repository, you can run @command{guix +git-authenticate} to verify that you did sign all the commits you are +about to push with an authorized key: + +@example +guix git authenticate @var{commit} @var{signer} +@end example + +@noindent +where @var{commit} and @var{signer} are your channel introduction. +@xref{Invoking guix git authenticate}, for details. + +Publishing a signed channel requires discipline: any mistake, such as an +unsigned commit or a commit signed by an unauthorized key, will prevent +users from pulling from your channel---well, that's the whole point of +authentication! Pay attention to merges in particular: merge commits +are considered authentic if and only if they are signed by a key present +in the @file{.guix-authorizations} file of @emph{both} branches. + +@cindex news, for channels +@node Writing Channel News +@section Writing Channel News + +Channel authors may occasionally want to communicate to their users +information about important changes in the channel. You'd send them all +an email, but that's not convenient. + +Instead, channels can provide a @dfn{news file}; when the channel users +run @command{guix pull}, that news file is automatically read and +@command{guix pull --news} can display the announcements that correspond +to the new commits that have been pulled, if any. + +To do that, channel authors must first declare the name of the news file +in their @file{.guix-channel} file: + +@lisp +(channel + (version 0) + (news-file "etc/news.txt")) +@end lisp + +The news file itself, @file{etc/news.txt} in this example, must look +something like this: + +@lisp +(channel-news + (version 0) + (entry (tag "the-bug-fix") + (title (en "Fixed terrible bug") + (fr "Oh la la")) + (body (en "@@emph@{Good news@}! It's fixed!") + (eo "Certe ĝi pli bone funkcias nun!"))) + (entry (commit "bdcabe815cd28144a2d2b4bc3c5057b051fa9906") + (title (en "Added a great package") + (ca "Què vol dir guix?")) + (body (en "Don't miss the @@code@{hello@} package!")))) +@end lisp + +While the news file is using the Scheme syntax, avoid naming it with a +@file{.scm} extension or else it will get picked up when building the +channel and yield an error since it is not a valid module. +Alternatively, you can move the channel module to a subdirectory and +store the news file in another directory. + +The file consists of a list of @dfn{news entries}. Each entry is +associated with a commit or tag: it describes changes made in this +commit, possibly in preceding commits as well. Users see entries only +the first time they obtain the commit the entry refers to. + +The @code{title} field should be a one-line summary while @code{body} +can be arbitrarily long, and both can contain Texinfo markup +(@pxref{Overview,,, texinfo, GNU Texinfo}). Both the title and body are +a list of language tag/message tuples, which allows @command{guix pull} +to display news in the language that corresponds to the user's locale. + +If you want to translate news using a gettext-based workflow, you can +extract translatable strings with @command{xgettext} (@pxref{xgettext +Invocation,,, gettext, GNU Gettext Utilities}). For example, assuming +you write news entries in English first, the command below creates a PO +file containing the strings to translate: + +@example +xgettext -o news.po -l scheme -ken etc/news.txt +@end example + +To sum up, yes, you could use your channel as a blog. But beware, this +is @emph{not quite} what your users might expect. + @c ********************************************************************* @node Development From 3b7bd8cc904dc7e550135aa81be05c6c64a84f07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 27 Sep 2020 22:39:49 +0200 Subject: [PATCH 481/757] doc: Move "Primary URL" after "Specifying Channel Authorizations". * doc/guix.texi (Primary URL): Move after "Specifying Channel Authorizations" since the audience is channel authors who've already taken care of authorizations. --- doc/guix.texi | 50 +++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index cc8214c257..d20b33cd9a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -233,11 +233,11 @@ Channels * Using a Custom Guix Channel:: Using a customized Guix. * Replicating Guix:: Running the @emph{exact same} Guix. * Channel Authentication:: How Guix verifies what it fetches. -* Primary URL:: Distinguishing mirror to original. * Creating a Channel:: How to write your custom channel. * Package Modules in a Sub-directory:: Specifying the channel's package modules location. * Declaring Channel Dependencies:: How to depend on other channels. * Specifying Channel Authorizations:: Defining channel authors authorizations. +* Primary URL:: Distinguishing mirror to original. * Writing Channel News:: Communicating information to channel's users. Development @@ -4691,11 +4691,11 @@ updates. * Using a Custom Guix Channel:: Using a customized Guix. * Replicating Guix:: Running the @emph{exact same} Guix. * Channel Authentication:: How Guix verifies what it fetches. -* Primary URL:: Distinguishing mirror to original. * Creating a Channel:: How to write your custom channel. * Package Modules in a Sub-directory:: Specifying the channel's package modules location. * Declaring Channel Dependencies:: How to depend on other channels. * Specifying Channel Authorizations:: Defining channel authors authorizations. +* Primary URL:: Distinguishing mirror to original. * Writing Channel News:: Communicating information to channel's users. @end menu @@ -4852,29 +4852,6 @@ introduction from a trusted source since that is the root of your trust. If you're curious about the authentication mechanics, read on! -@cindex primary URL, channels -@node Primary URL -@section Primary URL - -Channel authors can indicate the primary URL of their channel's Git -repository in the @file{.guix-channel} file, like so: - -@lisp -(channel - (version 0) - (url "https://example.org/guix.git")) -@end lisp - -This allows @command{guix pull} to determine whether it is pulling code -from a mirror of the channel; when that is the case, it warns the user -that the mirror might be stale and displays the primary URL. That way, -users cannot be tricked into fetching code from a stale mirror that does -not receive security updates. - -This feature only makes sense for authenticated repositories, such as -the official @code{guix} channel, for which @command{guix pull} ensures -the code it fetches is authentic. - @cindex personal packages (channels) @cindex channels, for personal packages @node Creating a Channel @@ -5099,6 +5076,29 @@ authentication! Pay attention to merges in particular: merge commits are considered authentic if and only if they are signed by a key present in the @file{.guix-authorizations} file of @emph{both} branches. +@cindex primary URL, channels +@node Primary URL +@section Primary URL + +Channel authors can indicate the primary URL of their channel's Git +repository in the @file{.guix-channel} file, like so: + +@lisp +(channel + (version 0) + (url "https://example.org/guix.git")) +@end lisp + +This allows @command{guix pull} to determine whether it is pulling code +from a mirror of the channel; when that is the case, it warns the user +that the mirror might be stale and displays the primary URL. That way, +users cannot be tricked into fetching code from a stale mirror that does +not receive security updates. + +This feature only makes sense for authenticated repositories, such as +the official @code{guix} channel, for which @command{guix pull} ensures +the code it fetches is authentic. + @cindex news, for channels @node Writing Channel News @section Writing Channel News From 8e2d5a0c0d0542f220fff16d92c6b5267ebbcc1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 27 Sep 2020 22:42:40 +0200 Subject: [PATCH 482/757] doc: Move channel @cindex within their nodes. * doc/guix.texi (Channels): Move @cindex at the beginning of the node they refer to from the end of the previous node. --- doc/guix.texi | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index d20b33cd9a..81f46cc18d 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -4852,11 +4852,11 @@ introduction from a trusted source since that is the root of your trust. If you're curious about the authentication mechanics, read on! -@cindex personal packages (channels) -@cindex channels, for personal packages @node Creating a Channel @section Creating a Channel +@cindex personal packages (channels) +@cindex channels, for personal packages Let's say you have a bunch of custom package variants or personal packages that you think would make little sense to contribute to the Guix project, but would like to have these packages transparently available to you at the @@ -4919,10 +4919,10 @@ Authentication}, and @ref{Specifying Channel Authorizations}, for info on how to do it. -@cindex subdirectory, channels @node Package Modules in a Sub-directory @section Package Modules in a Sub-directory +@cindex subdirectory, channels As a channel author, you may want to keep your channel modules in a sub-directory. If your modules are in the sub-directory @file{guix}, you must add a meta-data file @file{.guix-channel} that contains: @@ -4933,11 +4933,11 @@ add a meta-data file @file{.guix-channel} that contains: (directory "guix")) @end lisp -@cindex dependencies, channels -@cindex meta-data, channels @node Declaring Channel Dependencies @section Declaring Channel Dependencies +@cindex dependencies, channels +@cindex meta-data, channels Channel authors may decide to augment a package collection provided by other channels. They can declare their channel to be dependent on other channels in a meta-data file @file{.guix-channel}, which is to be placed in the root of @@ -4975,10 +4975,10 @@ For the sake of reliability and maintainability, you should avoid dependencies on channels that you don't control, and you should aim to keep the number of dependencies to a minimum. -@cindex channel authorizations @node Specifying Channel Authorizations @section Specifying Channel Authorizations +@cindex channel authorizations @anchor{channel-authorizations} As we saw above, Guix ensures the source code it pulls from channels comes from authorized developers. As a channel author, you need to @@ -5076,10 +5076,10 @@ authentication! Pay attention to merges in particular: merge commits are considered authentic if and only if they are signed by a key present in the @file{.guix-authorizations} file of @emph{both} branches. -@cindex primary URL, channels @node Primary URL @section Primary URL +@cindex primary URL, channels Channel authors can indicate the primary URL of their channel's Git repository in the @file{.guix-channel} file, like so: @@ -5099,10 +5099,10 @@ This feature only makes sense for authenticated repositories, such as the official @code{guix} channel, for which @command{guix pull} ensures the code it fetches is authentic. -@cindex news, for channels @node Writing Channel News @section Writing Channel News +@cindex news, for channels Channel authors may occasionally want to communicate to their users information about important changes in the channel. You'd send them all an email, but that's not convenient. From ee4f9c2cd4a3a779a45bd608c5419dc672131435 Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Sat, 26 Sep 2020 16:48:19 -0400 Subject: [PATCH 483/757] gnu: Add grokmirror. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/version-control.scm (grokmirror): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/version-control.scm | 39 +++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 2ee8247071..68971c60f9 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2014, 2015, 2016 Mark H Weaver ;;; Copyright © 2014, 2016, 2019 Eric Bavier ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner -;;; Copyright © 2015, 2018 Kyle Meyer +;;; Copyright © 2015, 2018, 2020 Kyle Meyer ;;; Copyright © 2015, 2017, 2018, 2020 Ricardo Wurmus ;;; Copyright © 2016, 2017 Leo Famulari ;;; Copyright © 2016, 2017, 2018 Nikita @@ -2269,6 +2269,43 @@ supports a large number of version control systems: Git, Subversion, Mercurial, Bazaar, Darcs, CVS, Fossil, and Veracity.") (license license:gpl2+))) +(define-public grokmirror + (package + (name "grokmirror") + (version "2.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url (string-append "https://git.kernel.org/pub/scm/" + "utils/grokmirror/grokmirror.git")) + (commit (string-append "v" version)))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 "1cs43vf87x8x5k5ncgiwiclc92a1dvxpg2z6lh6psaiip808gylp")))) + (build-system python-build-system) + (arguments + `(#:tests? #f ; no test suite + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-manpages + (lambda* (#:key outputs #:allow-other-keys) + (let* ((man (string-append (assoc-ref outputs "out") + "/man/man1/"))) + (mkdir-p man) + (for-each (lambda (file) (install-file file man)) + (find-files "." "\\.1$"))) + #t))))) + (propagated-inputs + `(("python-requests" ,python-requests))) + (home-page + "https://git.kernel.org/pub/scm/utils/grokmirror/grokmirror.git") + (synopsis "Framework to smartly mirror git repositories") + (description "Grokmirror enables replicating large git repository +collections efficiently. Mirrors decide to clone and update repositories +based on a manifest file published by servers.") + (license license:gpl3+))) + (define-public git-annex-remote-rclone (package (name "git-annex-remote-rclone") From b0cd4e049b9babb701cc8c9f0484951920d2337c Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Sun, 27 Sep 2020 03:27:03 +0200 Subject: [PATCH 484/757] gnu: qjackctl: Update to 0.6.3. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/audio.scm (qjackctl): Update to 0.6.3. [inputs]: Add portaudio. Signed-off-by: Ludovic Courtès --- gnu/packages/audio.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index f26b3eceae..a50266965b 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -33,6 +33,7 @@ ;;; Copyright © 2020 Jonathan Frederickson ;;; Copyright © 2020 Giacomo Leidi ;;; Copyright © 2020 Vinicius Monego +;;; Copyright © 2020 Michael Rohleder ;;; ;;; This file is part of GNU Guix. ;;; @@ -2680,20 +2681,21 @@ different audio devices such as ALSA or PulseAudio.") (define-public qjackctl (package (name "qjackctl") - (version "0.5.9") + (version "0.6.3") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/qjackctl/qjackctl/" version "/qjackctl-" version ".tar.gz")) (sha256 (base32 - "1saywsda9m124rmjp7i3n0llryaliabjxhqhvqr6dm983qy7pypk")))) + "0zbb4jlx56qvcqyhx34mbagkqf3wbxgj84hk0ppf5cmcrxv67d4x")))) (build-system gnu-build-system) (arguments '(#:tests? #f)) ; no check target (inputs `(("jack" ,jack-1) ("alsa-lib" ,alsa-lib) + ("portaudio" ,portaudio) ("qtbase" ,qtbase) ("qtx11extras" ,qtx11extras))) (native-inputs From b09ad2ccc14ec4056926a9de3cc07d4d26ea8c0e Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 27 Sep 2020 23:11:53 +0200 Subject: [PATCH 485/757] gnu: emacs-orgalist: Update to 1.13. * gnu/packages/emacs-xyz.scm (emacs-orgalist): Update to 1.13. --- 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 4ea5be40de..13471f77d1 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -9699,14 +9699,14 @@ distribution, primarily targeting Clojure users") (define-public emacs-orgalist (package (name "emacs-orgalist") - (version "1.12") + (version "1.13") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "orgalist-" version ".el")) (sha256 - (base32 "1hwm7j0hbv2pg9w885ky1c9qga3grcfq8v216jv2ivkw8xzavysd")))) + (base32 "1wkxc5kcy1g4lx6pd78pa8znncjyl9zyhsvz7wpp56qmhq4hlav3")))) (build-system emacs-build-system) (home-page "https://elpa.gnu.org/packages/orgalist.html") (synopsis "Manage Org-like lists in non-Org buffers") From db17af70f65359bb3eece101a889730d4f106171 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 27 Sep 2020 23:10:47 +0200 Subject: [PATCH 486/757] news: Add entry for deep graph rewriting. * etc/news.scm: Add entry. --- etc/news.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/etc/news.scm b/etc/news.scm index 1ef238ca2d..23774827cd 100644 --- a/etc/news.scm +++ b/etc/news.scm @@ -13,6 +13,30 @@ (channel-news (version 0) + (entry (commit "8819551c8d2a12cd4e84e09b51e434d05a012c9d") + (title (en "Package transformations now apply to implicit inputs")) + (body + (en "Package transformation options such as @option{--with-branch}, +@option{--with-input}, and so on now apply to implicit inputs---previously +only a package's explicit inputs would be affected. This allows for things +such as replacing the Python dependency of a package that uses +@code{python-build-system}: + +@example +guix install --with-input=python=python2 python-itsdangerous +@end example + +Another example is grafting a different version of the GNU C +Library (@code{glibc} is an implicit input of almost all the packages and is +``deep down'' in the dependency graph): + +@example +guix build --with-graft=glibc=glibc@@2.31 hello +@end example + +Run @command{info \"(guix) Package Transformation Options\"} for more +info."))) + (entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f") (title (en "New @command{guix git authenticate} command") (de "Neuer Befehl @command{guix git authenticate}") From 6f04c0b70290c97f2519d7276f5babf407df80e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 27 Sep 2020 23:23:42 +0200 Subject: [PATCH 487/757] news: Add news entry for '--without-tests'. * etc/news.scm: Add entry. --- etc/news.scm | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/etc/news.scm b/etc/news.scm index 23774827cd..1bffb41c4d 100644 --- a/etc/news.scm +++ b/etc/news.scm @@ -35,6 +35,23 @@ guix build --with-graft=glibc=glibc@@2.31 hello @end example Run @command{info \"(guix) Package Transformation Options\"} for more +info."))) + + (entry (commit "f458cfbcc54ed87b1a87dd9e150ea276f17eab74") + (title (en "New @option{--without-tests} transformation option")) + (body + (en "The new @option{--without-tests} package transformation option +instructs Guix to skip the test suite of a given package. In the example +below, @code{guile-gcrypt} is built using a variant of @code{automake} itself +built without running its (lengthy) test suite: + +@example +guix build guile-gcrypt --without-tests=automake +@end example + +This is primarily useful as a way to speed up development cycles, or to work +around flaky test suites---skipping tests can hide real issues, so use with +care. Run @command{info \"(guix) Package Transformation Options\"} for more info."))) (entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f") From 7d366a8387a57badca220eb93a207ad47b719111 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 27 Sep 2020 20:18:23 +0200 Subject: [PATCH 488/757] gnu: libsndfile: Replace with 1.0.30 [security fixes]. This replacement fixes CVE-2017-17456, CVE-2017-17457, CVE-2018-19661, CVE-2018-19662, CVE-2018-19758, and CVE-2019-3832. * gnu/packages/pulseaudio.scm (libsndfile)[replacement]: New field. (libsndfile-1.0.30): New variable. --- gnu/packages/pulseaudio.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm index 9522d023ad..d1c188fdfd 100644 --- a/gnu/packages/pulseaudio.scm +++ b/gnu/packages/pulseaudio.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2020 Amin Bandali ;;; Copyright © 2020 Michael Rohleder ;;; Copyright © 2020 Pierre Neidhardt +;;; Copyright © 2020 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -71,6 +72,7 @@ (package (name "libsndfile") (version "1.0.28") + (replacement libsndfile-1.0.30) (source (origin (method url-fetch) (uri (string-append "http://www.mega-nerd.com/libsndfile/files/libsndfile-" @@ -104,6 +106,41 @@ SPARC. Hopefully the design of the library will also make it easy to extend for reading and writing new sound file formats.") (license l:gpl2+))) +;; Replacement package to fix multiple security vulnerabilities. +(define libsndfile-1.0.30 + (package + (inherit libsndfile) + (version "1.0.30") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/erikd/libsndfile" + "/releases/download/v" version + "/libsndfile-" version ".tar.bz2")) + (sha256 + (base32 + "0gsbg8ni496h55mx2p9999fk0xvbsjyz6v678a0l75b5fqs8d2gc")) + (modules '((ice-9 textual-ports) (guix build utils))) + (snippet + '(begin + ;; Remove carriage returns (CRLF) to prevent bogus + ;; errors from bash like "$'\r': command not found". + (let ((data (call-with-input-file + "tests/pedantic-header-test.sh.in" + (lambda (port) + (string-join + (string-split (get-string-all port) + #\return)))))) + (call-with-output-file "tests/pedantic-header-test.sh.in" + (lambda (port) (format port data)))) + + ;; While at it, fix hard coded executable name. + (substitute* "tests/test_wrapper.sh.in" + (("^/usr/bin/env") "env")) + #t)))) + (native-inputs + `(("python" ,python) + ,@(package-native-inputs libsndfile))))) + (define-public libsamplerate (package (name "libsamplerate") ; aka. Secret Rabbit Code (SRC) From 9f89779e1fcb5412b9274189dfe89f810d4f6fe5 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 27 Sep 2020 20:55:54 +0200 Subject: [PATCH 489/757] gnu: libspiro: Replace with 20200505 [fixes CVE-2019-19847]. * gnu/packages/fontutils.scm (libspiro)[replacement]: New field. (libspiro-20200505): New variable. --- gnu/packages/fontutils.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index 94473991f7..b3852fe093 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -556,6 +556,7 @@ using the above tables.") (package (name "libspiro") (version "20190731") + (replacement libspiro-20200505) (source (origin (method url-fetch) @@ -574,6 +575,19 @@ smooth contours with constant curvature at the spline joins.") (license license:gpl2+) (home-page "http://libspiro.sourceforge.net/"))) +(define libspiro-20200505 + (package + (inherit libspiro) + (version "20200505") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/fontforge/libspiro/releases" + "/download/" version "/libspiro-dist-" version ".tar.gz")) + (sha256 + (base32 + "0j8fmyj4wz6mqk17dqs6f8jx0i52n68gv5px17qbrjnbilg9mih6")))))) + (define-public libuninameslist (package (name "libuninameslist") From cb2769f9999d70dfcb0d9afa90cd1f1411ea43b9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 27 Sep 2020 21:03:33 +0200 Subject: [PATCH 490/757] gnu: jasper: Update to 2.0.21 [fixes CVE-2018-19541]. * gnu/packages/image.scm (jasper): Update to 2.0.21. --- gnu/packages/image.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index ff434bb6c9..651c42b1e9 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -1409,7 +1409,7 @@ convert, manipulate, filter and display a wide variety of image formats.") (define-public jasper (package (name "jasper") - (version "2.0.20") + (version "2.0.21") (source (origin (method git-fetch) (uri (git-reference @@ -1418,7 +1418,7 @@ convert, manipulate, filter and display a wide variety of image formats.") (file-name (git-file-name name version)) (sha256 (base32 - "1bn4mg6l5afryrlyk3y7p3accdq113fis8hpwywy5g51ycablz3h")))) + "0p3qr4j4pjs5vn5amm6ih9hb4wmm72marhmfw08svcs4rrr88p9y")))) (build-system cmake-build-system) (arguments `(#:phases From 709d2fddf79d6c359c07044e471715e6b3f0b452 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 27 Sep 2020 22:46:31 +0200 Subject: [PATCH 491/757] gnu: libxkbcommon: Specify CPE name. * gnu/packages/xdisorg.scm (libxkbcommon)[properties]: New field. --- gnu/packages/xdisorg.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 44f903ccb0..bbbbd0d7f5 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -358,7 +358,8 @@ system applications; currently that includes Wayland, kmscon, GTK+, Qt, Clutter, and more. Despite the name, it is not currently used by anything X11 (yet).") (license (license:x11-style "file://COPYING" - "See 'COPYING' in the distribution.")))) + "See 'COPYING' in the distribution.")) + (properties '((cpe-name . "xkbcommon"))))) (define-public libfakekey (package From 2f7b3cb4bd91755a1a20d59ae7bf6f4ab97ab6e8 Mon Sep 17 00:00:00 2001 From: Florian Pelz Date: Mon, 28 Sep 2020 10:23:08 +0200 Subject: [PATCH 492/757] =?UTF-8?q?news:=20Add=20=E2=80=98de=E2=80=99=20tr?= =?UTF-8?q?anslations.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * etc/news.scm: Add ‘de’ translations. --- etc/news.scm | 45 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) diff --git a/etc/news.scm b/etc/news.scm index 1bffb41c4d..6e8fbc75f1 100644 --- a/etc/news.scm +++ b/etc/news.scm @@ -14,7 +14,8 @@ (version 0) (entry (commit "8819551c8d2a12cd4e84e09b51e434d05a012c9d") - (title (en "Package transformations now apply to implicit inputs")) + (title (en "Package transformations now apply to implicit inputs") + (de "Paketumwandlungen betreffen jetzt auch implizite Eingaben")) (body (en "Package transformation options such as @option{--with-branch}, @option{--with-input}, and so on now apply to implicit inputs---previously @@ -35,10 +36,31 @@ guix build --with-graft=glibc=glibc@@2.31 hello @end example Run @command{info \"(guix) Package Transformation Options\"} for more -info."))) +info.") + (de "Paketumwandlungsoptionen wie @option{--with-branch}, +@option{--with-input} und so weiter betreffen nun auch implizite Eingaben — +zuvor haben sie sich nur auf die expliziten Eingaben eines Pakets +ausgewirkt. Dadurch kann jetzt zum Beispiel die Python-Abhängigkeit eines +Pakets, welches @code{python-build-system} benutzt, ersetzt werden: + +@example +guix install --with-input=python=python2 python-itsdangerous +@end example + +Ein weiteres Beispiel ist, mit einer anderen Version der GNU-C-Bibliothek zu +veredeln (@code{glibc} ist eine implizite Eingabe fast aller Pakete und steckt +„ganz tief“ im Abhängigkeitsgraphen): + +@example +guix build --with-graft=glibc=glibc@@2.31 hello +@end example + +Führen Sie für mehr Informationen @command{info \"(guix.de) +Paketumwandlungsoptionen\"} aus."))) (entry (commit "f458cfbcc54ed87b1a87dd9e150ea276f17eab74") - (title (en "New @option{--without-tests} transformation option")) + (title (en "New @option{--without-tests} transformation option") + (de "Neue Paketumwandlungsoption @option{--without-tests}")) (body (en "The new @option{--without-tests} package transformation option instructs Guix to skip the test suite of a given package. In the example @@ -52,7 +74,22 @@ guix build guile-gcrypt --without-tests=automake This is primarily useful as a way to speed up development cycles, or to work around flaky test suites---skipping tests can hide real issues, so use with care. Run @command{info \"(guix) Package Transformation Options\"} for more -info."))) +info.") + (de "Mit der neuen Paketumwandlungsoption @option{--without-tests} +wird Guix angewiesen, den Testkatalog des angegebenen Pakets zu +überspringen. Im folgenden Beispiel wird @code{guile-gcrypt} mit einer +Variante von @code{automake} erstellt, die wiederum ohne Durchlauf ihres (viel +Zeit in Anspruch nehmenden) Testkatalogs erstellt wird: + +@example +guix build guile-gcrypt --without-tests=automake +@end example + +Der hauptsächliche Nutzen liegt in der Beschleunigung von Entwicklungszyklen +oder im Umgehen unzuverlässiger Testkataloge. Allerdings kann das Überspringen +dazu führen, dass echte Probleme verborgen bleiben. Setzen Sie es mit Bedacht +ein. Führen Sie @command{info \"(guix.de) Paketumwandlungsoptionen\"} aus, um +mehr Informationen zu erhalten."))) (entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f") (title (en "New @command{guix git authenticate} command") From af56f60ef0394b35ab7926d10a4f825c2b1245f6 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 28 Sep 2020 11:39:16 +0200 Subject: [PATCH 493/757] gnu: guile-lzlib: Update to 0.0.2. * gnu/packages/guile.scm (guile-lzlib): Update to 0.0.2. --- gnu/packages/guile.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 280053bf06..74f4e5adbc 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -823,7 +823,7 @@ Guile's foreign function interface.") (define-public guile-lzlib (package (name "guile-lzlib") - (version "0.0.1") + (version "0.0.2") (source (origin (method url-fetch) @@ -833,7 +833,7 @@ Guile's foreign function interface.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0rdmszn1qix085ci2mddwq5cypipc004fk7arrrkgn9bv39hazza")))) + "11sggvncyx08ssp1s5xii4d6nskh1qwqihnbpzzvkrs7sivxn8w6")))) (build-system gnu-build-system) (arguments '(#:make-flags From 09ffacd455e6e93651536321339e18b64a752233 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 28 Sep 2020 11:32:35 +0200 Subject: [PATCH 494/757] doc: Clarify how to choose a user account shell. * doc/guix.texi (User Accounts): Add example with custom shell and custom home directory. Add examples of shell gexps. --- doc/guix.texi | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 81f46cc18d..c600d577ac 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -12830,8 +12830,19 @@ User accounts and groups are entirely managed through the "audio" ;sound card "video" ;video devices such as webcams "cdrom")) ;the good ol' CD-ROM - (comment "Bob's sister") - (home-directory "/home/alice")) + (comment "Bob's sister")) +@end lisp + +Here's a user account that uses a different shell and a custom home +directory (the default would be @file{"/home/bob"}): + +@lisp +(user-account + (name "bob") + (group "users") + (comment "Alice's bro") + (shell (file-append zsh "/bin/zsh")) + (home-directory "/home/robert")) @end lisp When booting or upon completion of @command{guix system reconfigure}, @@ -12876,7 +12887,19 @@ if it does not exist yet. @item @code{shell} (default: Bash) This is a G-expression denoting the file name of a program to be used as -the shell (@pxref{G-Expressions}). +the shell (@pxref{G-Expressions}). For example, you would refer to the +Bash executable like this: + +@lisp +(file-append bash "/bin/bash") +@end lisp + +@noindent +... and to the Zsh executable like that: + +@lisp +(file-append zsh "/bin/zsh") +@end lisp @item @code{system?} (default: @code{#f}) This Boolean value indicates whether the account is a ``system'' From be49f1133d6b531afc5459c1846299841fcb5a24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 28 Sep 2020 11:56:18 +0200 Subject: [PATCH 495/757] =?UTF-8?q?news:=20Add=20=E2=80=98fr=E2=80=99=20tr?= =?UTF-8?q?anslations.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * etc/news.scm: Add ‘fr’ translations. --- etc/news.scm | 47 +++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/etc/news.scm b/etc/news.scm index 6e8fbc75f1..aaf0dc9fee 100644 --- a/etc/news.scm +++ b/etc/news.scm @@ -15,7 +15,9 @@ (entry (commit "8819551c8d2a12cd4e84e09b51e434d05a012c9d") (title (en "Package transformations now apply to implicit inputs") - (de "Paketumwandlungen betreffen jetzt auch implizite Eingaben")) + (de "Paketumwandlungen betreffen jetzt auch implizite Eingaben") + (fr "Les transformations de paquets s'appliquent aux +dépendances implicites")) (body (en "Package transformation options such as @option{--with-branch}, @option{--with-input}, and so on now apply to implicit inputs---previously @@ -56,11 +58,33 @@ guix build --with-graft=glibc=glibc@@2.31 hello @end example Führen Sie für mehr Informationen @command{info \"(guix.de) -Paketumwandlungsoptionen\"} aus."))) +Paketumwandlungsoptionen\"} aus.") + (fr "Les options de transformation de paquets telles que +@option{--with-branch} et @option{--with-input} s'appliquent désormais aux +dépendances implicites — jusque là seules les dépendances explicites des +paquets étaient prises en compte. Cela permet certaines choses telles que +remplacer la dépendance sur Python d'un paquet utilisant +@code{python-build-system} : + +@example +guix install --with-input=python=python2 python-itsdangerous +@end example + +Un autre exemple est la possibilité de greffer une version différente de la +bibliothèque C GNU (la @code{glibc} est une dépendance implicite de tous les +paquets et se trouve « tout en bas » du graphe de dépendance) : + +@example +guix build --with-graft=glibc=glibc@@2.31 hello +@end example + +Voir @command{info \"(guix) Options de transformation de paquets\"} pour plus +de détails."))) (entry (commit "f458cfbcc54ed87b1a87dd9e150ea276f17eab74") (title (en "New @option{--without-tests} transformation option") - (de "Neue Paketumwandlungsoption @option{--without-tests}")) + (de "Neue Paketumwandlungsoption @option{--without-tests}") + (fr "Nouvelle option de transformation @option{--without-tests}")) (body (en "The new @option{--without-tests} package transformation option instructs Guix to skip the test suite of a given package. In the example @@ -89,7 +113,22 @@ Der hauptsächliche Nutzen liegt in der Beschleunigung von Entwicklungszyklen oder im Umgehen unzuverlässiger Testkataloge. Allerdings kann das Überspringen dazu führen, dass echte Probleme verborgen bleiben. Setzen Sie es mit Bedacht ein. Führen Sie @command{info \"(guix.de) Paketumwandlungsoptionen\"} aus, um -mehr Informationen zu erhalten."))) +mehr Informationen zu erhalten.") + (fr "La nouvelle option de transformation de paquets +@option{--without-tests} demande à Guix de sauter la suite de tests d'un +paquet. Dans l'exemple ci-dessous, @code{guile-gcrypt} est construit en +utilisant une variante de @code{automake} construite sans lancer sa suite de +tests : + +@example +guix build guile-gcrypt --without-tests=automake +@end example + +Cette option est surtout intéressante pour raccourcir le cycle de +développement ou pour contourner une suite de tests qui n'est pas +fiable — sauter les tests peut cacher des vrais problèmes, à utiliser avec +précaution donc. Voir @command{info \"(guix.fr) Options de transformation de +paquets\"} pour plus de détails."))) (entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f") (title (en "New @command{guix git authenticate} command") From a32c581a1d82a4d5f88af93856a021ec39154793 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Mon, 28 Sep 2020 07:05:49 -0400 Subject: [PATCH 496/757] gnu: openssh: Update to 8.4p1. * gnu/packages/ssh.scm (openssh): Update to 8.4p1. Signed-off-by: Tobias Geerinckx-Rice --- 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 3e0f5be077..d28e3ef83c 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -184,7 +184,7 @@ a server that supports the SSH-2 protocol.") (define-public openssh (package (name "openssh") - (version "8.3p1") + (version "8.4p1") (source (origin (method url-fetch) (uri (string-append "mirror://openbsd/OpenSSH/portable/" @@ -192,7 +192,7 @@ a server that supports the SSH-2 protocol.") (patches (search-patches "openssh-hurd.patch")) (sha256 (base32 - "1cl74ghi9y21dc3f4xa0qamb7dhwacbynh1ks9syprrg8zhgpgpj")))) + "091b3pxdlj47scxx6kkf4agkx8c8sdacdxx8m1dw1cby80pd40as")))) (build-system gnu-build-system) (native-inputs `(("groff" ,groff) ("pkg-config" ,pkg-config))) From 4c698cd51209a0102477478b026ea04bd7e45908 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 28 Sep 2020 15:55:55 +0200 Subject: [PATCH 497/757] =?UTF-8?q?services:=20Add=20elogind=20=E2=80=98ha?= =?UTF-8?q?ndle-lid-switch-external-power=E2=80=99.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/services/desktop.scm : Add an handle-lid-switch-external-power field, mapping to the HandleLidSwitchExternalPower logind.conf setting. * doc/guix.texi (Desktop Services): ‘Document’ it. --- doc/guix.texi | 2 + gnu/services/desktop.scm | 117 ++++++++++++++++++++------------------- 2 files changed, 62 insertions(+), 57 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index c600d577ac..452453241c 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -17262,6 +17262,8 @@ their default values are: @code{suspend} @item handle-lid-switch-docked @code{ignore} +@item handle-lid-switch-external-power +@code{ignore} @item power-key-ignore-inhibited? @code{#f} @item suspend-key-ignore-inhibited? diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 1dcf71d359..96bacf1cff 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -596,64 +596,66 @@ include the @command{udisksctl} command, part of UDisks, and GNOME Disks." (define-record-type* elogind-configuration make-elogind-configuration elogind-configuration? - (elogind elogind-package - (default elogind)) - (kill-user-processes? elogind-kill-user-processes? - (default #f)) - (kill-only-users elogind-kill-only-users - (default '())) - (kill-exclude-users elogind-kill-exclude-users - (default '("root"))) - (inhibit-delay-max-seconds elogind-inhibit-delay-max-seconds - (default 5)) - (handle-power-key elogind-handle-power-key - (default 'poweroff)) - (handle-suspend-key elogind-handle-suspend-key - (default 'suspend)) - (handle-hibernate-key elogind-handle-hibernate-key - ;; (default 'hibernate) - ;; XXX Ignore it for now, since we don't - ;; yet handle resume-from-hibernation in - ;; our initrd. - (default 'ignore)) - (handle-lid-switch elogind-handle-lid-switch - (default 'suspend)) - (handle-lid-switch-docked elogind-handle-lid-switch-docked - (default 'ignore)) - (power-key-ignore-inhibited? elogind-power-key-ignore-inhibited? - (default #f)) - (suspend-key-ignore-inhibited? elogind-suspend-key-ignore-inhibited? - (default #f)) - (hibernate-key-ignore-inhibited? elogind-hibernate-key-ignore-inhibited? - (default #f)) - (lid-switch-ignore-inhibited? elogind-lid-switch-ignore-inhibited? - (default #t)) - (holdoff-timeout-seconds elogind-holdoff-timeout-seconds - (default 30)) - (idle-action elogind-idle-action - (default 'ignore)) - (idle-action-seconds elogind-idle-action-seconds - (default (* 30 60))) - (runtime-directory-size-percent elogind-runtime-directory-size-percent - (default 10)) - (runtime-directory-size elogind-runtime-directory-size - (default #f)) - (remove-ipc? elogind-remove-ipc? - (default #t)) + (elogind elogind-package + (default elogind)) + (kill-user-processes? elogind-kill-user-processes? + (default #f)) + (kill-only-users elogind-kill-only-users + (default '())) + (kill-exclude-users elogind-kill-exclude-users + (default '("root"))) + (inhibit-delay-max-seconds elogind-inhibit-delay-max-seconds + (default 5)) + (handle-power-key elogind-handle-power-key + (default 'poweroff)) + (handle-suspend-key elogind-handle-suspend-key + (default 'suspend)) + (handle-hibernate-key elogind-handle-hibernate-key + ;; (default 'hibernate) + ;; XXX Ignore it for now, since we don't + ;; yet handle resume-from-hibernation in + ;; our initrd. + (default 'ignore)) + (handle-lid-switch elogind-handle-lid-switch + (default 'suspend)) + (handle-lid-switch-docked elogind-handle-lid-switch-docked + (default 'ignore)) + (handle-lid-switch-external-power elogind-handle-lid-switch-external-power + (default 'ignore)) + (power-key-ignore-inhibited? elogind-power-key-ignore-inhibited? + (default #f)) + (suspend-key-ignore-inhibited? elogind-suspend-key-ignore-inhibited? + (default #f)) + (hibernate-key-ignore-inhibited? elogind-hibernate-key-ignore-inhibited? + (default #f)) + (lid-switch-ignore-inhibited? elogind-lid-switch-ignore-inhibited? + (default #t)) + (holdoff-timeout-seconds elogind-holdoff-timeout-seconds + (default 30)) + (idle-action elogind-idle-action + (default 'ignore)) + (idle-action-seconds elogind-idle-action-seconds + (default (* 30 60))) + (runtime-directory-size-percent elogind-runtime-directory-size-percent + (default 10)) + (runtime-directory-size elogind-runtime-directory-size + (default #f)) + (remove-ipc? elogind-remove-ipc? + (default #t)) - (suspend-state elogind-suspend-state - (default '("mem" "standby" "freeze"))) - (suspend-mode elogind-suspend-mode - (default '())) - (hibernate-state elogind-hibernate-state - (default '("disk"))) - (hibernate-mode elogind-hibernate-mode - (default '("platform" "shutdown"))) - (hybrid-sleep-state elogind-hybrid-sleep-state - (default '("disk"))) - (hybrid-sleep-mode elogind-hybrid-sleep-mode - (default - '("suspend" "platform" "shutdown")))) + (suspend-state elogind-suspend-state + (default '("mem" "standby" "freeze"))) + (suspend-mode elogind-suspend-mode + (default '())) + (hibernate-state elogind-hibernate-state + (default '("disk"))) + (hibernate-mode elogind-hibernate-mode + (default '("platform" "shutdown"))) + (hybrid-sleep-state elogind-hybrid-sleep-state + (default '("disk"))) + (hybrid-sleep-mode elogind-hybrid-sleep-mode + (default + '("suspend" "platform" "shutdown")))) (define (elogind-configuration-file config) (define (yesno x) @@ -705,6 +707,7 @@ include the @command{udisksctl} command, part of UDisks, and GNOME Disks." ("HandleHibernateKey" (handle-action elogind-handle-hibernate-key)) ("HandleLidSwitch" (handle-action elogind-handle-lid-switch)) ("HandleLidSwitchDocked" (handle-action elogind-handle-lid-switch-docked)) + ("HandleLidSwitchExternalPower" (handle-action elogind-handle-lid-switch-external-power)) ("PowerKeyIgnoreInhibited" (yesno elogind-power-key-ignore-inhibited?)) ("SuspendKeyIgnoreInhibited" (yesno elogind-suspend-key-ignore-inhibited?)) ("HibernateKeyIgnoreInhibited" (yesno elogind-hibernate-key-ignore-inhibited?)) From 871539f3ad1d30967950f9bf3a1b7ad271ba3360 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Mon, 28 Sep 2020 17:06:56 +0200 Subject: [PATCH 498/757] gnu: r-chippeakanno: Update to 3.22.4. * gnu/packages/bioconductor.scm (r-chippeakanno): Update to 3.22.4. --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index d655253cf1..7eef0485be 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -1797,14 +1797,14 @@ determining dependencies between variables, code improvement suggestions.") (define-public r-chippeakanno (package (name "r-chippeakanno") - (version "3.22.3") + (version "3.22.4") (source (origin (method url-fetch) (uri (bioconductor-uri "ChIPpeakAnno" version)) (sha256 (base32 - "0q3f55hh0a2hl96272js6gagmgps9cxs8s13pf6fii64rzaz5m7y")))) + "0wxgjdikinkqj7jvs2725ak0291q6zhikyf1c93w8cngwvd9i1gq")))) (properties `((upstream-name . "ChIPpeakAnno"))) (build-system r-build-system) (propagated-inputs From 02210487334fcddc3e15654c8fee86500cc9581c Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 28 Sep 2020 18:08:23 +0200 Subject: [PATCH 499/757] gnu: cuirass: Update to 0.0.1-48.0ffcb80. * gnu/packages/ci.scm (cuirass): Update to 0.0.1-48.0ffcb80. --- gnu/packages/ci.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index e0d12537b4..9797b345b1 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -68,8 +68,8 @@ (file-name (string-append name "-" version "-checkout"))))))) (define-public cuirass - (let ((commit "b310f17aaff8f17af0e7cf77b0b9d6866fe89abe") - (revision "47")) + (let ((commit "0ffcb80ebbaa2b177f03548035a2ef21ae7ac41d") + (revision "48")) (package (name "cuirass") (version (git-version "0.0.1" revision commit)) @@ -81,7 +81,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "19cgwqsgikn2mf95406jzsaqa65whh8ygqripawnzl0hl7pnmrvn")))) + "04ks1ghsdb5r1brkngzb8ldm6h1zybdkwdqvl0lkh3qs8qyvmskq")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) From 4c09ec43db3ccd4eb70bf723289e5f7e0ab37f35 Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Mon, 28 Sep 2020 19:39:23 +0200 Subject: [PATCH 500/757] gnu: cm: Update to 0.3.1. * gnu/packages/algebra.scm (cm): Update to 0.3.1. --- gnu/packages/algebra.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 16a1853483..cb409ab22a 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -123,15 +123,15 @@ greatest common divisor operations.") (define-public cm (package (name "cm") - (version "0.3") + (version "0.3.1") (source (origin (method url-fetch) (uri (string-append - "http://www.multiprecision.org/cm/download/cm-" + "http://www.multiprecision.org/downloads/cm-" version ".tar.gz")) (sha256 (base32 - "1nf5kr0nqmhbzrsrinky18z0ighjpsmb5cr8zyg8jf04bfbyrfmc")))) + "0qq6b1kwb1byj8ws33ya5awq0ilkpm32037pi1l4cf2737fg9m42")))) (build-system gnu-build-system) (propagated-inputs `(("mpfrcx" ,mpfrcx) From 002c7a4f54961a2a35b85cc8586ca78e3c61336c Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sun, 27 Sep 2020 18:27:00 -0400 Subject: [PATCH 501/757] gnu: libpng-apng: Update to 1.6.37. * gnu/packages/image.scm (libpng-apng): Update to 1.6.37. (libpng): Add comment: a reminder to keep libpng-apng updated. --- gnu/packages/image.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 651c42b1e9..bec03886a6 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2017, 2019 Ludovic Courtès ;;; Copyright © 2013, 2015, 2016 Andreas Enge -;;; Copyright © 2014, 2015, 2016 Mark H Weaver +;;; Copyright © 2014, 2015, 2016, 2020 Mark H Weaver ;;; Copyright © 2014, 2015 Alex Kost ;;; Copyright © 2014, 2016, 2017, 2018, 2019 Ricardo Wurmus ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer @@ -129,7 +129,7 @@ code is Valgrind-clean and unit tested.") (define-public libpng (package (name "libpng") - (version "1.6.37") + (version "1.6.37") ; Remember to also update libpng-apng if possible! (source (origin (method url-fetch) (uri (list (string-append "mirror://sourceforge/libpng/libpng16/" @@ -162,7 +162,7 @@ library. It supports almost all PNG features and is extensible.") (define-public libpng-apng (package (name "libpng-apng") - (version "1.6.28") + (version "1.6.37") (source (origin (method url-fetch) @@ -176,7 +176,7 @@ library. It supports almost all PNG features and is extensible.") "/libpng16/libpng-" version ".tar.xz"))) (sha256 (base32 - "0ylgyx93hnk38haqrh8prd3ax5ngzwvjqw5cxw7p9nxmwsfyrlyq")))) + "1jl8in381z0128vgxnvn33nln6hzckl7l7j9nqvkaf1m9n1p0pjh")))) (build-system gnu-build-system) (arguments `(#:modules ((guix build gnu-build-system) @@ -210,7 +210,7 @@ library. It supports almost all PNG features and is extensible.") version "/libpng-" version "-apng.patch.gz")) (sha256 (base32 - "0m5nv70n9903x3xzxw9qqc6sgf2rp106ha0x6gix0xf8wcrljaab")))))) + "1dh0250mw9b2hx7cdmnb2blk7ddl49n6vx8zz7jdmiwxy38v4fw2")))))) (native-inputs `(("libtool" ,libtool))) ;; libpng.la says "-lz", so propagate it. From 1896c0c6ea3597c917bb57d41a7ca0ba29dbf3b1 Mon Sep 17 00:00:00 2001 From: Jonathan Brielmaier Date: Sun, 27 Sep 2020 12:43:51 +0200 Subject: [PATCH 502/757] gnu: Add nss@3.56. Icedove 78 requires nss > 3.53. This version is the only one building out-of-the-box. * gnu/packages/nss.scm (nss-3.56): New variable. * gnu/packages/patches/nss-3.56-pkgconfig.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Signed-off-by: Mark H Weaver --- gnu/local.mk | 1 + gnu/packages/nss.scm | 92 +++++++ gnu/packages/patches/nss-3.56-pkgconfig.patch | 228 ++++++++++++++++++ 3 files changed, 321 insertions(+) create mode 100644 gnu/packages/patches/nss-3.56-pkgconfig.patch diff --git a/gnu/local.mk b/gnu/local.mk index f3b5b17e84..da56f8a6ab 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1361,6 +1361,7 @@ dist_patch_DATA = \ %D%/packages/patches/nsis-env-passthru.patch \ %D%/packages/patches/nss-increase-test-timeout.patch \ %D%/packages/patches/nss-pkgconfig.patch \ + %D%/packages/patches/nss-3.56-pkgconfig.patch \ %D%/packages/patches/ntfs-3g-CVE-2019-9755.patch \ %D%/packages/patches/nvi-assume-preserve-path.patch \ %D%/packages/patches/nvi-dbpagesize-binpower.patch \ diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm index b19ad7e1e9..e4df93c8c4 100644 --- a/gnu/packages/nss.scm +++ b/gnu/packages/nss.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2020 Marius Bakke +;;; Copyright © 2020 Jonathan Brielmaier ;;; ;;; This file is part of GNU Guix. ;;; @@ -191,3 +192,94 @@ applications. Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security standards.") (license license:mpl2.0))) + +(define-public nss-3.56 + (package + (inherit nss) + (version "3.56") + (source (origin + (method url-fetch) + (uri (let ((version-with-underscores + (string-join (string-split version #\.) "_"))) + (string-append + "https://ftp.mozilla.org/pub/mozilla.org/security/nss/" + "releases/NSS_" version-with-underscores "_RTM/src/" + "nss-" version ".tar.gz"))) + (sha256 + (base32 + "174f0ki2f8szkgv02jlsg2ci332sl9dabr2vcwnyjp1vxplf0xgq")) + ;; Create nss.pc and nss-config. + (patches (search-patches "nss-3.56-pkgconfig.patch" + "nss-increase-test-timeout.patch")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete the bundled copy of these libraries. + (delete-file-recursively "nss/lib/zlib") + (delete-file-recursively "nss/lib/sqlite") + #t)))) + (arguments + `(#:parallel-build? #f ; not supported + #:make-flags + (let* ((out (assoc-ref %outputs "out")) + (nspr (string-append (assoc-ref %build-inputs "nspr"))) + (rpath (string-append "-Wl,-rpath=" out "/lib/nss"))) + (list "-C" "nss" (string-append "PREFIX=" out) + "NSDISTMODE=copy" + "NSS_USE_SYSTEM_SQLITE=1" + (string-append "NSPR_INCLUDE_DIR=" nspr "/include/nspr") + ;; Add $out/lib/nss to RPATH. + (string-append "RPATH=" rpath) + (string-append "LDFLAGS=" rpath))) + #:modules ((guix build gnu-build-system) + (guix build utils) + (ice-9 ftw) + (ice-9 match) + (srfi srfi-26)) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda _ + (setenv "CC" "gcc") + ;; Tells NSS to build for the 64-bit ABI if we are 64-bit system. + ,@(match (%current-system) + ((or "x86_64-linux" "aarch64-linux") + `((setenv "USE_64" "1"))) + (_ + '())) + #t)) + (replace 'check + (lambda _ + ;; Use 127.0.0.1 instead of $HOST.$DOMSUF as HOSTADDR for testing. + ;; The later requires a working DNS or /etc/hosts. + (setenv "DOMSUF" "localdomain") + (setenv "USE_IP" "TRUE") + (setenv "IP_ADDRESS" "127.0.0.1") + + ;; The "PayPalEE.cert" certificate expires every six months, + ;; leading to test failures: + ;; . To + ;; work around that, set the time to roughly the release date. + (invoke "faketime" "2020-02-01" "./nss/tests/all.sh"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append (assoc-ref outputs "bin") "/bin")) + (inc (string-append out "/include/nss")) + (lib (string-append out "/lib/nss")) + (obj (match (scandir "dist" (cut string-suffix? "OBJ" <>)) + ((obj) (string-append "dist/" obj))))) + ;; Install nss-config to $out/bin. + (install-file (string-append obj "/bin/nss-config") + (string-append out "/bin")) + (delete-file (string-append obj "/bin/nss-config")) + ;; Install nss.pc to $out/lib/pkgconfig. + (install-file (string-append obj "/lib/pkgconfig/nss.pc") + (string-append out "/lib/pkgconfig")) + (delete-file (string-append obj "/lib/pkgconfig/nss.pc")) + (rmdir (string-append obj "/lib/pkgconfig")) + ;; Install other files. + (copy-recursively "dist/public/nss" inc) + (copy-recursively (string-append obj "/bin") bin) + (copy-recursively (string-append obj "/lib") lib) + #t)))))))) diff --git a/gnu/packages/patches/nss-3.56-pkgconfig.patch b/gnu/packages/patches/nss-3.56-pkgconfig.patch new file mode 100644 index 0000000000..91b6aef604 --- /dev/null +++ b/gnu/packages/patches/nss-3.56-pkgconfig.patch @@ -0,0 +1,228 @@ +Description: Create nss.pc and nss-config +Author: Lars Wendler +Source: http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/nss/files/nss-3.17.1-gentoo-fixups.patch + +Modifications: + Change libdir from ${prefix}/lib64 to ${prefix}/lib/nss. + Remove optional patching in nss/Makefile. + Include -L$libdir in output from "nss-config --libs". + +Later adapted to apply cleanly to nss-3.53. + +--- nss-3.21/nss/config/Makefile ++++ nss-3.21/nss/config/Makefile +@@ -0,0 +1,40 @@ ++CORE_DEPTH = .. ++DEPTH = .. ++ ++include $(CORE_DEPTH)/coreconf/config.mk ++ ++NSS_MAJOR_VERSION = `grep "NSS_VMAJOR" ../lib/nss/nss.h | awk '{print $$3}'` ++NSS_MINOR_VERSION = `grep "NSS_VMINOR" ../lib/nss/nss.h | awk '{print $$3}'` ++NSS_PATCH_VERSION = `grep "NSS_VPATCH" ../lib/nss/nss.h | awk '{print $$3}'` ++PREFIX = /usr ++ ++all: export libs ++ ++export: ++ # Create the nss.pc file ++ mkdir -p $(DIST)/lib/pkgconfig ++ sed -e "s,@prefix@,$(PREFIX)," \ ++ -e "s,@exec_prefix@,\$${prefix}," \ ++ -e "s,@libdir@,\$${prefix}/lib/nss," \ ++ -e "s,@includedir@,\$${prefix}/include/nss," \ ++ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION),g" \ ++ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \ ++ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \ ++ nss.pc.in > nss.pc ++ chmod 0644 nss.pc ++ cp nss.pc $(DIST)/lib/pkgconfig ++ ++ # Create the nss-config script ++ mkdir -p $(DIST)/bin ++ sed -e "s,@prefix@,$(PREFIX)," \ ++ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION)," \ ++ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \ ++ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \ ++ nss-config.in > nss-config ++ chmod 0755 nss-config ++ cp nss-config $(DIST)/bin ++ ++libs: ++ ++dummy: all export libs ++ +--- nss-3.21/nss/config/nss-config.in ++++ nss-3.21/nss/config/nss-config.in +@@ -0,0 +1,145 @@ ++#!/bin/sh ++ ++prefix=@prefix@ ++ ++major_version=@NSS_MAJOR_VERSION@ ++minor_version=@NSS_MINOR_VERSION@ ++patch_version=@NSS_PATCH_VERSION@ ++ ++usage() ++{ ++ cat <&2 ++fi ++ ++lib_ssl=yes ++lib_smime=yes ++lib_nss=yes ++lib_nssutil=yes ++ ++while test $# -gt 0; do ++ case "$1" in ++ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;; ++ *) optarg= ;; ++ esac ++ ++ case $1 in ++ --prefix=*) ++ prefix=$optarg ++ ;; ++ --prefix) ++ echo_prefix=yes ++ ;; ++ --exec-prefix=*) ++ exec_prefix=$optarg ++ ;; ++ --exec-prefix) ++ echo_exec_prefix=yes ++ ;; ++ --includedir=*) ++ includedir=$optarg ++ ;; ++ --includedir) ++ echo_includedir=yes ++ ;; ++ --libdir=*) ++ libdir=$optarg ++ ;; ++ --libdir) ++ echo_libdir=yes ++ ;; ++ --version) ++ echo ${major_version}.${minor_version}.${patch_version} ++ ;; ++ --cflags) ++ echo_cflags=yes ++ ;; ++ --libs) ++ echo_libs=yes ++ ;; ++ ssl) ++ lib_ssl=yes ++ ;; ++ smime) ++ lib_smime=yes ++ ;; ++ nss) ++ lib_nss=yes ++ ;; ++ nssutil) ++ lib_nssutil=yes ++ ;; ++ *) ++ usage 1 1>&2 ++ ;; ++ esac ++ shift ++done ++ ++# Set variables that may be dependent upon other variables ++if test -z "$exec_prefix"; then ++ exec_prefix=`pkg-config --variable=exec_prefix nss` ++fi ++if test -z "$includedir"; then ++ includedir=`pkg-config --variable=includedir nss` ++fi ++if test -z "$libdir"; then ++ libdir=`pkg-config --variable=libdir nss` ++fi ++ ++if test "$echo_prefix" = "yes"; then ++ echo $prefix ++fi ++ ++if test "$echo_exec_prefix" = "yes"; then ++ echo $exec_prefix ++fi ++ ++if test "$echo_includedir" = "yes"; then ++ echo $includedir ++fi ++ ++if test "$echo_libdir" = "yes"; then ++ echo $libdir ++fi ++ ++if test "$echo_cflags" = "yes"; then ++ echo -I$includedir ++fi ++ ++if test "$echo_libs" = "yes"; then ++ libdirs=-L$libdir ++ if test -n "$lib_ssl"; then ++ libdirs="$libdirs -lssl${major_version}" ++ fi ++ if test -n "$lib_smime"; then ++ libdirs="$libdirs -lsmime${major_version}" ++ fi ++ if test -n "$lib_nss"; then ++ libdirs="$libdirs -lnss${major_version}" ++ fi ++ if test -n "$lib_nssutil"; then ++ libdirs="$libdirs -lnssutil${major_version}" ++ fi ++ echo $libdirs ++fi ++ +--- nss-3.21/nss/config/nss.pc.in ++++ nss-3.21/nss/config/nss.pc.in +@@ -0,0 +1,12 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: NSS ++Description: Network Security Services ++Version: @NSS_MAJOR_VERSION@.@NSS_MINOR_VERSION@.@NSS_PATCH_VERSION@ ++Requires: nspr >= 4.8 ++Libs: -L${libdir} -lssl3 -lsmime3 -lnss3 -lnssutil3 ++Cflags: -I${includedir} ++ +--- nss-3.21/nss/manifest.mn ++++ nss-3.21/nss/manifest.mn +@@ -10,7 +10,7 @@ + + RELEASE = nss + +-DIRS = coreconf lib cmd cpputil gtests ++DIRS = coreconf lib cmd cpputil gtests config + + lib: coreconf + cmd: lib From 597aa644afd5cc89c6224e9fbe61e6e03ccf465b Mon Sep 17 00:00:00 2001 From: Jonathan Brielmaier Date: Sun, 27 Sep 2020 12:43:52 +0200 Subject: [PATCH 503/757] gnu: icedove: Update to 78.3.0. * gnu/packages/gnuzilla.scm (icedove): Update to 78.3.0. [source]: Use source from Icecat 78. [arguments]: Use more flexible approach for generating cargo checksums from icecat. Update files in 'rename-to-icedove phase. Remove gone configure flags and rename `--disable-ion` to `--disable-jit`. [inputs]: Update icu4c to version 67 and nss to 3.56. [native-inputs]: Use ESR 78 mercurial repo for thunderbird soruces. Update rust and cargo to 1.41, rust-cbindgen to 0.14 and node to 10.22. Tested-by: Jonathan Brielmaier Signed-off-by: Mark H Weaver --- gnu/packages/gnuzilla.scm | 56 +++++++++++++++++---------------------- 1 file changed, 25 insertions(+), 31 deletions(-) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 85ad9678d0..2bc5dcfee1 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -1430,12 +1430,12 @@ standards of the IceCat project.") #t)))))))) ;; Update this together with icecat! -(define %icedove-build-id "20200825000000") ;must be of the form YYYYMMDDhhmmss +(define %icedove-build-id "20200924000000") ;must be of the form YYYYMMDDhhmmss (define-public icedove (package (name "icedove") - (version "68.12.0") - (source icecat-68-source) + (version "78.3.0") + (source icecat-source) (properties `((cpe-name . "thunderbird_esr"))) (build-system gnu-build-system) @@ -1460,10 +1460,15 @@ standards of the IceCat project.") (lambda _ (use-modules (guix build cargo-utils)) (let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855")) - (substitute* '("Cargo.lock" "gfx/wr/Cargo.lock") - (("(\"checksum .* = )\".*\"" all name) - (string-append name "\"" null-hash "\""))) - (generate-all-checksums "third_party/rust")) + (for-each (lambda (file) + (format #t "patching checksums in ~a~%" file) + (substitute* file + (("^checksum = \".*\"") + (string-append "checksum = \"" null-hash "\"")))) + (find-files "." "Cargo.lock$")) + (for-each generate-all-checksums + '("third_party/rust" + "toolkit/library/rust"))) #t)) ;; Fixes issue where each installation directory generates its own profile. ;; See e.g. https://trac.torproject.org/projects/tor/ticket/31457 @@ -1505,12 +1510,10 @@ standards of the IceCat project.") (("mozilla.org") "guix.gnu.org"))) ;; Remove other mentions of Thunderbird in user-visible text. (with-directory-excursion "comm/mail/base/content" - (substitute* '("newInstallPage.xhtml" - "overrides/app-license-name.html" - "newInstall.xul") + (substitute* '("overrides/app-license-name.html") (("Thunderbird") "Icedove"))) (with-directory-excursion "comm/mail/components/" - (substitute* '("mailGlue.js" + (substitute* '("MailGlue.jsm" "extensions/schemas/addressBook.json" "extensions/schemas/tabs.json" "extensions/schemas/cloudFile.json" @@ -1520,14 +1523,9 @@ standards of the IceCat project.") "im/messages/mail/Info.plist" "enterprisepolicies/moz.build" "enterprisepolicies/helpers/moz.build" - "enterprisepolicies/schemas/moz.build" - "preferences/chat.inc.xul") + "enterprisepolicies/schemas/moz.build") (("Thunderbird") "Icedove"))) - (substitute* "comm/calendar/lightning/lightning-packager.mk" - (("ifeq \\(thunderbird") - "ifeq (icedove")) (substitute* '("comm/mailnews/base/prefs/content/accountUtils.js" - "comm/mailnews/extensions/newsblog/content/feed-subscriptions.js" "comm/common/src/customizeToolbar.js") (("AppConstants.MOZ_APP_NAME (.)= \"thunderbird" _ e) (format #f "AppConstants.MOZ_APP_NAME ~a= \"icedove" e))) @@ -1600,8 +1598,7 @@ standards of the IceCat project.") "ac_add_options --disable-debug\n" "ac_add_options --disable-debug-symbols\n" "ac_add_options --disable-elf-hack\n" - "ac_add_options --disable-gconf\n" - "ac_add_options --disable-ion\n" + "ac_add_options --disable-jit\n" "ac_add_options --disable-necko-wifi\n" "ac_add_options --disable-official-branding\n" "ac_add_options --disable-tests\n" @@ -1609,16 +1606,13 @@ standards of the IceCat project.") "ac_add_options --disable-webrtc\n" "ac_add_options --enable-application=comm/mail\n" "ac_add_options --enable-calendar\n" - "ac_add_options --enable-content-sandbox\n" "ac_add_options --enable-default-toolkit=\"cairo-gtk3\"\n" "ac_add_options --enable-optimize\n" "ac_add_options --enable-pulseaudio\n" "ac_add_options --enable-release\n" - "ac_add_options --enable-startup-notification\n" "ac_add_options --enable-strip\n" "ac_add_options --enable-system-ffi\n" "ac_add_options --enable-system-pixman\n" - "ac_add_options --enable-system-sqlite\n" "ac_add_options --prefix=" out "\n" "ac_add_options --with-clang-path=" (assoc-ref %build-inputs "clang") "/bin/clang\n" "ac_add_options --with-distribution-id=org.gnu\n" @@ -1689,7 +1683,7 @@ standards of the IceCat project.") ("gtk+" ,gtk+) ("gtk+-2" ,gtk+-2) ("hunspell" ,hunspell) - ("icu4c" ,icu4c) + ("icu4c" ,icu4c-67) ("libcanberra" ,libcanberra) ("libevent" ,libevent) ("libffi" ,libffi) @@ -1705,7 +1699,7 @@ standards of the IceCat project.") ("mesa" ,mesa) ("mit-krb5" ,mit-krb5) ("nspr" ,nspr) - ("nss" ,nss) + ("nss" ,nss-3.56) ("pango" ,pango) ("pixman" ,pixman) ("pulseaudio" ,pulseaudio) @@ -1720,28 +1714,28 @@ standards of the IceCat project.") ;; in the Thunderbird release tarball. We don't use the release ;; tarball because it duplicates the Icecat sources and only adds the ;; "comm" directory, which is provided by this repository. - ,(let ((changeset "b41cdff70b185358d9c4c1d4a36cfad15a24f001")) + ,(let ((changeset "35e647ebd4fa09407a0fe151d3823b1b58172a2a")) (origin (method hg-fetch) (uri (hg-reference - (url "https://hg.mozilla.org/releases/comm-esr68") + (url "https://hg.mozilla.org/releases/comm-esr78") (changeset changeset))) (file-name (string-append "thunderbird-" version "-checkout")) (sha256 (base32 - "1xvky8p5r41mxdyg9amydy94p51wmmdwdz0zq2vzspr9viixf7xm"))))) + "0g27rapn1xf19i5pl2g12hndb55shzsk4vrrc6bnj4vf2q49zcwy"))))) ("autoconf" ,autoconf-2.13) - ("cargo" ,rust "cargo") + ("cargo" ,rust-1.41 "cargo") ("clang" ,clang) ("llvm" ,llvm) ("nasm" ,nasm) - ("node" ,node) + ("node" ,node-10.22) ("perl" ,perl) ("pkg-config" ,pkg-config) ("python" ,python) ("python2" ,python-2.7) - ("rust" ,rust) - ("rust-cbindgen" ,rust-cbindgen) + ("rust" ,rust-1.41) + ("rust-cbindgen" ,rust-cbindgen-0.14) ("which" ,which) ("yasm" ,yasm))) (home-page "https://www.thunderbird.net") From e6485333117f14492c19d974bf520a619bffb51f Mon Sep 17 00:00:00 2001 From: Jonathan Brielmaier Date: Sun, 27 Sep 2020 12:43:53 +0200 Subject: [PATCH 504/757] gnu: Remove icecat-68 source. It was necessary for icedove@68 which is now based on icecat@78. * gnu/packages/gnuzilla.scm (mozilla-68-compare-locales): Remove. (all-mozilla-68-locales): Remove. (%icecat-68-version): Remove. (icecat-68-source): Remove. * gnu/packages/patches/icecat-68-makeicecat.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. Modified-By: Mark H Weaver Signed-off-by: Mark H Weaver --- gnu/local.mk | 1 - gnu/packages/gnuzilla.scm | 273 ------------------ .../patches/icecat-68-makeicecat.patch | 110 ------- 3 files changed, 384 deletions(-) delete mode 100644 gnu/packages/patches/icecat-68-makeicecat.patch diff --git a/gnu/local.mk b/gnu/local.mk index da56f8a6ab..a278c83553 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1135,7 +1135,6 @@ dist_patch_DATA = \ %D%/packages/patches/hurd-xattr.patch \ %D%/packages/patches/hplip-remove-imageprocessor.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \ - %D%/packages/patches/icecat-68-makeicecat.patch \ %D%/packages/patches/icecat-makeicecat.patch \ %D%/packages/patches/icecat-avoid-bundled-libraries.patch \ %D%/packages/patches/icecat-use-older-reveal-hidden-html.patch \ diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 2bc5dcfee1..250904c7af 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -1156,279 +1156,6 @@ standards of the IceCat project.") (cpe-name . "firefox_esr") (cpe-version . ,(first (string-split version #\-))))))) -(define mozilla-68-compare-locales - (origin - (method hg-fetch) - (uri (hg-reference - (url "https://hg.mozilla.org/l10n/compare-locales/") - (changeset "RELEASE_3_3_0"))) - (file-name "mozilla-68-compare-locales") - (sha256 (base32 "0biazbq7vbi99b99rfn4szwyx032dkpi09c9z4zs6f1br0f86iy1")))) - -(define all-mozilla-68-locales - (mozilla-locales - ;; sha256 changeset locale - ;;--------------------------------------------------------------------------- - ("0pybx6j2ycbrr1xmv0spv19sd8a1dyzcs8kf6pzn71w8y6kiagcf" "35959cf2343c" "ach") - ("0dixmkha738w7fkx20nx95xkfyrqb9vczpy6m03qnqfvb76xaxj5" "e8dc1010f909" "af") - ("124j09va25gwfxdzyfixrli0skxv53c7niagjyp7g3a3kcv2lbhc" "4c67f6b96a7b" "an") - ("0flgqll3xx0ym0zj0w9j2jw3fmhs6h9m4l5da6m0bpnk5ff80r06" "34cbea5f44a5" "ar") - ("0kdb1yqfbfz508f4p77z3p1v6fwy190vs5ipj58hgdixjgbxkqay" "b4790b27633c" "ast") - ("1vm5xw6wg12pygswd3p0qpkaxyryah6nif5n15chb4sb42c1gqcm" "96d341bf49d4" "az") - ("1j2qrrws51qij6haz5b77n5vzqhsxgs1ppqqw4mdrkacwvz4ciwh" "4adaede00646" "be") - ("0ydr8f9lbd51prgcbjb5yacb461j8va0s5bqfs0rnglkvhmk6ard" "d1140972aefe" "bg") - ("0wyw90zjp8kpd1gljng00in9wr2cf59ww6z002lgx5k4gibnqcfd" "2b3ce92c2310" "bn") - ("0kkq621h1qdmimyrmms9g5p70m54z2ddw4cd962nqbkrnmabq9vn" "426896350893" "br") - ("0vibhnb3cbpbgf10db04g6vm372kb9i27p0jkwif019f7qprswd8" "7463f339ce07" "bs") - ("1l8cn2fqfvx7bswzfy9vavv8cd32ha9ygdxxdbxi64wcgw0f80bf" "dab3f05125e4" "ca") - ("0fik17y8zyg9w82lq501ic73a53c0q9r8v4zgn9bnzgsygig8qpq" "ebb9d989275a" "cak") - ("0sj29v6144h39wzb4rvxph3cwgvs4gzkgpr0463d3fcs6jdi0kjs" "522352780348" "cs") - ("1nz8jlx62l69jcdi59hlk8jysm15sh3d1cxqginjmx7w351wsidm" "0791b954c333" "cy") - ("1vc01q1vlq26xm1vm1x0119jawxxp975p9k8ashmiwncl1bvqb48" "121f5f876f4c" "da") - ("1iqny61rg57banfbbskc2y3pr6d35fabnxmynv7vxm9jd86pndz3" "95fb3e99a2bc" "de") - ("06v9j8acx5h8za7m65v6qm0wjbkx6vm46m8sigcp69phyg3fjc96" "90e681b74587" "dsb") - ("0lbk90x2dxdbh63fycqxspx6jqq2zlzys6grg45balw8yyvzqrkz" "58ba4c13fd42" "el") - ("0c2ypvy0z8g78s5158v6h9khckq1xps34r5wbiiciix289m43dgl" "8953d8c98a30" "en-CA") - ("0z3riz3w2z6p710p90ridmwwam4snnz5mn90gd4jc1h2n7vc9mr0" "5a2b9bca3f52" "en-GB") - ("102gn3h4ap8c3x1p7vfc88vapkfiz6264y6byhxy1axxjk3x3a77" "e87cb1c61d6e" "eo") - ("148wj6wsx0aq7cpaxk8njj7cb1wfjr2m96dgxq6b3qcv781ldvjn" "5db15fdf95d5" "es-AR") - ("0r11d8vzvbyz17n371byvkrnszcv1zhr7rg64i58xra3y6d7is7n" "ce2ee0e51a92" "es-CL") - ("1xmqa8p7lpqvkgg879hfnmf6kxcpawjk8z31cdzfp1hrdlmxg8n7" "7346617620f3" "es-ES") - ("0jxv3jh2018lnybr9mzqrffvwmr87yab9bh8lxqjj294fxw1hrxm" "687f05eb0c58" "es-MX") - ("1rpgv7pajv4xldsn1xxsia5j72vn3x8zl5wmbzkyw56lvn9fckvf" "839a5029c496" "et") - ("0hxp4fr3y05rkpamdb1hlmybn6d3bv3rcawjm3axbpqxbyfdpfzc" "54e8d87230c9" "eu") - ("1y50knymnmcihw8bhvahicc386mjm6dx4hx0j6fv8sl23wzx2h9m" "c5ffca960f9c" "fa") - ("0pj9zgi0c3yl3myhvb5afiijayp2lqzhlk630ahxn5hgjgkz0lx7" "75c000a8538d" "ff") - ("199jg0zv7wp1cq0ik2hf84j99jx5vq2jwac0gaayvjzkh2z83jqr" "f11b2e689e7b" "fi") - ("1vxkiwwni7470ywy99arxxa56ljkhjrhxslsp1l1l61g6gdbbspr" "49ec4f791806" "fr") - ("0d8gwdcj0jpjv03nhjds8jrg86pg371xpylaibwri76wlyl7m54i" "faa761a5cfdc" "fy-NL") - ("0nipbxx11a2sjadzhbi88vgknw5hzr4nqy2722q3kc1212jbi754" "5bd9466f9f9d" "ga-IE") - ("0bay8mrm65cvmnvqpwqgzr0h3cb18ifzg5kbsbxcvdfm9xv0zi9g" "a4f6a47e82dd" "gd") - ("00kn5w3nnpw1pxg6hhrn9asf9hgpjd6ia4038iwzcqs68w887qcy" "6c2aa01ada4e" "gl") - ("0jj13i0ach85c975vaz2rr83mibs29ipssa7qsjkb0y2ch6xya1k" "c2d607e36cb5" "gn") - ("1nhqbgzilcb0pr7941dxkhg079bf8v7ldikp1s5xli34wf9sabm2" "f34465d6ac1c" "gu-IN") - ("11bh0541d996cfin1zy72l66753q94i4idgv2waf0h40h9g3z1bm" "c2ecb2762274" "he") - ("1lslji7hh5lx5ig1xgfjh4cdindsgh3n2a7qlvzwz96gda43lvv4" "94d2bb10ee03" "hi-IN") - ("1nx5yw00l25i3m3grdm29mi9mi7h0cy5qx02pypir754pk3hiwcc" "08df0d94edd5" "hr") - ("19yc9dk2pwqycynmx58d1ik6x4mnyfxscgr6sg676dpl613xd7nq" "21b614e77025" "hsb") - ("0l3z64jlx6b6ivk1b5hwqyx9hm1m5721ywnb2m4zmg3g9fw4vn7f" "f82cad7170af" "hu") - ("1sn0dxbbf2zwcpybwcw77qb4p0hf6fxapnsnn4avaab5g55dlgz4" "d94c30920396" "hy-AM") - ("0c92cqxrhv4317kirmhpjk7mrq44yn6fp3v6syxnhz7xwxnhshjm" "6a5f176b0626" "ia") - ("03gyg9gqsd6pwb9nydglhm46fi2wk2p2qygmhmrf8hnav3ba7n0r" "94e4302e0f85" "id") - ("0ky8aaps92mn56rvkwn0i13wg8av8hzi1fvr0ahqhjcpj5sfgdwq" "eca348a59888" "is") - ("01py0sfg7nljcsgpivryrvai4p4wzbcvhgc2ymr19r579nv1vw7g" "d541a6197359" "it") - ("0iv7vmj43njmi7g1gjzsv68ax4j502d2wnkvbfz1rx11lrqs7yw1" "a5ab3a1d95b7" "ja") - ("1sr9ccshcw6agbj4hbnpblxixb1jz0m36glas6f9ahxmi7m605si" "63763ffa5a94" "ja-JP-mac") - ("1as33pzcsdkynrj16dv7w642vl6plbhk650am4l5djwm64f2rgms" "aa83e8555ddc" "ka") - ("1jwaqb5qps3i5y9iw8l2hrwa0n8lfnx1k9x0p54y3jkh6p3q3fzc" "0e0e25c26247" "kab") - ("0cjfiwv0q5i8d7fpwb4m2w5ahq687dqjlwlicgpa443yi2zsxr4s" "33117723ceb1" "kk") - ("0k5b56cv39aaxf9r0p9c27f3fp6yq2ffd4w6qmd0ibpl69sm629d" "aff7b2a7825e" "km") - ("1a0zg96jgq4zn9cz0h2qwc0vv1fbkfzs5qrgabg62wqgz286jvvv" "ea91638cb1dd" "kn") - ("0jhmv2n3yx55r6fg3myg7j1c1nhsv25g016m6lh2j023xbr723gp" "88821009b5b3" "ko") - ("06bybgv4m4i7r9p0qld65j31vbrnljhsdj649dl93msv2r69ilif" "88685d5f07b3" "lij") - ("1bzjf8smw6ngi88j5g3fawrg54m8fifbhshwjbgkpj7rnrpjgh4w" "e046c7ffa7d0" "lt") - ("18dmzmpavijb7fwzffas0j5nb6byqp8h6ki7hhf6qb35diqgfq6n" "c520ef4f576c" "lv") - ("055zf7xj5h1h8mzxj1cjzhngpcvg2p5vs2dmffsa5zfprj02d0dm" "9e43723f18ad" "mk") - ("1496fbyyzcl075gzcd3xy50h9jyhnzgb544k1scji56yhyfajacb" "ce615fef92c1" "mr") - ("1wc1q8ksry181pvnysqsq4dhhsg5adw5vgqafmmq5sf6i2bwn2z0" "4fefe88cfaee" "ms") - ("0awf6mrdwdhy2yvxynssvp1zg1nc2fqbmg2d2bhjcib69zx944xw" "3987a06866fd" "my") - ("1hycvz7i4jd40hfs5abx6sgfdkafg0jhdgqih9b7lb08aqcl35pj" "2b3b8997d9a1" "nb-NO") - ("048z1ib46izwryyy8l1x71kq4775n7l2ilbskhsyrbxqryma13k8" "f25324281615" "ne-NP") - ("1qkxqpyr4la9bn1bqsgc2h9869arglh9n2kwpkq6722jzdbynkz2" "04c7d32c57f6" "nl") - ("08gnmdll55dbqj7qs63gq1kljbvg24nzns6q4m0av3sszsic0jv5" "5587520e5019" "nn-NO") - ("1yh2p4ipj5p2b7gh0xxj0n7ndvwn5bw2773ibrh7vz932mkzhhjn" "499386b02695" "oc") - ("0kjbnixjzv9hvyba4ll20gs76vx84pviy134fvpjp9lfjpnpib55" "31c01c325675" "pa-IN") - ("0g61imvr4639bbydyi0kwc1il7l1gzlfij4ywx7hdcmq2x6vgb9v" "fb5f3b8dea09" "pl") - ("13n68d7z94d7943m6fwl4kizbqm3wp82xz69vng4w9vyqlvv7d41" "9a541cbdc748" "pt-BR") - ("1j8afvrl1afmj2zixrp91rrhag5w4xw90raca1ic6mxyih9kvdi4" "edc959a685c2" "pt-PT") - ("0wf4a6q9nvcmam2g8ksbymjdnrz59pdr5nirfpjprfhifjmxx4nn" "d2699db715cd" "rm") - ("1k9qalir5pbh490w1mxyq31yhy9hbxsyrrk11hwlwlgn6syp9nvp" "b5460a9017bc" "ro") - ("1avy6wyfa5lbvy36wai6mwhhh6x1y8a0jyjk8hvjn52yfxj1gypk" "59ffa8ad047a" "ru") - ("1cakhm4jxcw1ij0l1vhxw74hsp5wg68i3319dkdncyyc5a2s1qv9" "8b3c8a7ebdfa" "si") - ("0s534r09bqdfvw3q17y9b1035kzzlafjv656v73mqhyz3fkffsx5" "cb39dc77980e" "sk") - ("1s58vgmnb9aiaiaqwwcivq3iyzpzj527w2aqh2nrh6xmaw7f43sr" "17d7969b1d9a" "sl") - ("147qm7x5z8rkf24jpqvkdlqg0fjz1l3zwnaxvkh9y2jpzv7m0x7z" "c55b0e9ff99d" "son") - ("0nn4r1rxi8cy7x9nmn5ljd8gcsn2rjl2ma2j7waxkafkm4rs6n20" "2bb3808072da" "sq") - ("0jsb01b94z7qbm59yaj56nb7yx7a6hpgw8v6nzwhbvmnmcsird4p" "c323c0d02d61" "sr") - ("1n7vv9y4sk3gig56rgfd2jk8jr2160grxk31bd1wkm7fvbndd259" "4220ce487cbc" "sv-SE") - ("06270mq7gajxfrsb8gqd25v2dac68ask5vvlh6kkkp3hrgy02vid" "6a1dbc2fe1d3" "ta") - ("10az7pd3npa7n8wq0qywvsj2qrx9592i2wffs3rnc1fviv1i1q0y" "028505b5ecd1" "te") - ("0yj0c3iyibb3jyypvyiyhbr9asxa48v0nq21kcf9gphi8fnyp5if" "e44d38b6a67b" "th") - ("1qc4nvhw834lx7p304fxma0fjdr4xfj4lf69dhh6biqz795lx45p" "1e0771d95708" "tr") - ("1g4y2yq5xp61ncy7c08j7fqqr1jc0m1hjxmbg5659wzif3b3dkg4" "e3c96943e98f" "uk") - ("1zbi28z1c3p5il7ndixyjsv4nrimzq36zjvlmq10am38ycqr9df8" "f35da1b02691" "ur") - ("1jrxjjj8k771y0wljqbadxdj4pasg0771jmg4l3hvpgs929i3j9g" "6fd2084b3efe" "uz") - ("1f8sqgxzgqmw6vzjv3f49lg43q09i3j62f471864vr71815agl8n" "33b5dfd0cd63" "vi") - ("0ssnsbxw3q5k88fa081gkn1mbqn4j7bm6vb7yvz6h44j214xkz9x" "2d87c0740715" "xh") - ("0kd3mrvvgczhsmw4rvpxxxc71bb469ayr8r4azf7gc0y5nmlm950" "a2b6625688d3" "zh-CN") - ("0qy1asyfplkyc89z3g3gfm7b32aka92350b3ayv9d9dcgwxmfdwz" "4d6e959a13d1" "zh-TW"))) - -(define %icecat-68-version "68.12.0-guix0-preview1") - -;; 'icecat-68-source' is a "computed" origin that generates an IceCat 68 -;; tarball from the corresponding upstream Firefox ESR tarball, using the -;; 'makeicecat' script from the upstream IceCat project. -(define icecat-68-source - (let* ((base-version (first (string-split %icecat-68-version #\-))) - - (major-version (first (string-split base-version #\.))) - (minor-version (second (string-split base-version #\.))) - (sub-version (third (string-split base-version #\.))) - - (upstream-firefox-version (string-append base-version "esr")) - (upstream-firefox-source - (origin - (method url-fetch) - (uri (string-append - "https://ftp.mozilla.org/pub/firefox/releases/" - upstream-firefox-version "/source/" - "firefox-" upstream-firefox-version ".source.tar.xz")) - (sha256 - (base32 - "1k17pi4zh9hrvkzbw4rzzw879a15hpvwriylp75wl22rl7r2nsdf")))) - - (upstream-icecat-base-version "68.12.0") ; maybe older than base-version - ;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version)) - (gnuzilla-commit "15a7c3d991a670b6489d4f432b52a188358f4ca5") - (gnuzilla-source - (origin - (method git-fetch) - (uri (git-reference - (url "git://git.savannah.gnu.org/gnuzilla.git") - (commit gnuzilla-commit))) - (file-name (git-file-name "gnuzilla" - ;;upstream-icecat-base-version - (string-take gnuzilla-commit 8))) - (sha256 - (base32 - "0n7p067yay413iy0gzprz0xrdkcxj5f8ywhkcghhhzw1nwajckba")))) - - (makeicecat-patch - (local-file (search-patch "icecat-68-makeicecat.patch"))) - (gnuzilla-fixes-patch - (local-file (search-patch "icecat-use-older-reveal-hidden-html.patch")))) - - (origin - (method computed-origin-method) - (file-name (string-append "icecat-" %icecat-68-version ".tar.xz")) - (sha256 #f) - (uri - (delay - (with-imported-modules '((guix build utils)) - #~(begin - (use-modules (guix build utils)) - (let ((firefox-dir - (string-append "firefox-" #$base-version)) - (icecat-dir - (string-append "icecat-" #$%icecat-68-version))) - - (mkdir "/tmp/bin") - (set-path-environment-variable - "PATH" '("bin") - (list "/tmp" - #+(canonical-package bash) - #+(canonical-package coreutils) - #+(canonical-package findutils) - #+(canonical-package patch) - #+(canonical-package xz) - #+(canonical-package sed) - #+(canonical-package grep) - #+(canonical-package bzip2) - #+(canonical-package gzip) - #+(canonical-package tar) - #+rename)) - - (symlink #+(file-append rename "/bin/rename") - "/tmp/bin/prename") - - ;; We copy the gnuzilla source directory because it is - ;; read-only in 'gnuzilla-source', and the makeicecat script - ;; uses "cp -a" to copy parts of it and assumes that the - ;; copies will be writable. - (copy-recursively #+gnuzilla-source "/tmp/gnuzilla" - #:log (%make-void-port "w")) - - (with-directory-excursion "/tmp/gnuzilla" - (make-file-writable "makeicecat") - (invoke "patch" "--force" "--no-backup-if-mismatch" - "-p1" "--input" #+makeicecat-patch) - (invoke "patch" "--force" "--no-backup-if-mismatch" - "-p1" "--input" #+gnuzilla-fixes-patch) - (patch-shebang "makeicecat") - (substitute* "makeicecat" - (("^FFMAJOR=(.*)" all ffmajor) - (unless (string=? #$major-version - (string-trim-both ffmajor)) - ;; The makeicecat script cannot be expected to work - ;; properly on a different version of Firefox, even if - ;; no errors occur during execution. - (error "makeicecat major version mismatch")) - (string-append "FFMAJOR=" #$major-version "\n")) - (("^FFMINOR=.*") - (string-append "FFMINOR=" #$minor-version "\n")) - (("^FFSUB=.*") - (string-append "FFSUB=" #$sub-version "\n")) - (("^DATA=.*") - "DATA=/tmp/gnuzilla/data\n") - (("/bin/sed") - #+(file-append (canonical-package sed) "/bin/sed")))) - - (format #t "Unpacking upstream firefox tarball...~%") - (force-output) - (invoke "tar" "xf" #+upstream-firefox-source) - (rename-file firefox-dir icecat-dir) - - (with-directory-excursion icecat-dir - (format #t "Populating l10n directory...~%") - (force-output) - (mkdir "l10n") - (with-directory-excursion "l10n" - (for-each - (lambda (locale-dir) - (let ((locale - (string-drop (basename locale-dir) - (+ 32 ; length of hash - (string-length "-mozilla-locale-"))))) - (format #t " ~a~%" locale) - (force-output) - (copy-recursively locale-dir locale - #:log (%make-void-port "w")) - (for-each make-file-writable (find-files locale)) - (with-directory-excursion locale - (when (file-exists? ".hgtags") - (delete-file ".hgtags")) - (mkdir-p "browser/chrome/browser/preferences") - (call-with-output-file - "browser/chrome/browser/preferences/advanced-scripts.dtd" - (lambda (port) #f))))) - '#+all-mozilla-68-locales) - (copy-recursively #+mozilla-68-compare-locales - "compare-locales" - #:log (%make-void-port "w")) - (delete-file "compare-locales/.gitignore") - (delete-file "compare-locales/.hgignore") - (delete-file "compare-locales/.hgtags")) - - (format #t "Running makeicecat script...~%") - (force-output) - (invoke "bash" "/tmp/gnuzilla/makeicecat")) - - (format #t "Packing IceCat source tarball...~%") - (force-output) - (invoke "tar" "cfa" #$output - ;; Avoid non-determinism in the archive. We set the - ;; mtime of files in the archive to early 1980 because - ;; the build process fails if the mtime of source - ;; files is pre-1980, due to the creation of zip - ;; archives. - "--mtime=@315619200" ; 1980-01-02 UTC - "--owner=root:0" - "--group=root:0" - "--sort=name" - icecat-dir) - - #t)))))))) - ;; Update this together with icecat! (define %icedove-build-id "20200924000000") ;must be of the form YYYYMMDDhhmmss (define-public icedove diff --git a/gnu/packages/patches/icecat-68-makeicecat.patch b/gnu/packages/patches/icecat-68-makeicecat.patch deleted file mode 100644 index 265725ce36..0000000000 --- a/gnu/packages/patches/icecat-68-makeicecat.patch +++ /dev/null @@ -1,110 +0,0 @@ -Make some of the changes needed to the 'makeicecat' script, to allow it to run -in a snippet without network access. After this patch is applied, some -additional changes will be made using 'substitute*'. - -diff --git a/makeicecat b/makeicecat -index 8be2362..48716f2 100755 ---- a/makeicecat -+++ b/makeicecat -@@ -31,55 +31,55 @@ SOURCEDIR=icecat-$FFVERSION - - DATA="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/data - --mkdir -p output --cd output -+# mkdir -p output -+# cd output - - ############################################################################### - # Retrieve FF source code - ############################################################################### - --rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf -- --wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz --wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc --gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 --gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc --echo -n ae692bf2a15908cacbb9d4c7ccf78525a87410ff3f13befedc1926f849bc27cc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - -- --echo Extracting Firefox tarball --tar -xf firefox-${FFVERSION}esr.source.tar.xz -- --mv firefox-${FFVERSION} $SOURCEDIR -+# rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf -+# -+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz -+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc -+# gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 -+# gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc -+# echo -n ae692bf2a15908cacbb9d4c7ccf78525a87410ff3f13befedc1926f849bc27cc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - -+# -+# echo Extracting Firefox tarball -+# tar -xf firefox-${FFVERSION}esr.source.tar.xz -+# -+# mv firefox-${FFVERSION} $SOURCEDIR - - ############################################################################### - # Retrieve l10n - ############################################################################### - --mkdir l10n --cd l10n --while read line;do -- line=$(echo $line |cut -d' ' -f1) -- #[ $line = "es-ES" ] || continue # To speed up testing -- [ $line = "en-US" ] && continue -- hg clone https://hg.mozilla.org/l10n-central/$line -- mkdir -p $line/browser/chrome/browser/preferences -- touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd -- rm -rf $line/.hg* --done < ../$SOURCEDIR/browser/locales/shipped-locales --cd .. -- --mv l10n $SOURCEDIR -- --hg clone http://hg.mozilla.org/l10n/compare-locales/ --cd compare-locales/ --hg checkout RELEASE_3_3_0 --cd .. --rm compare-locales/.hg* compare-locales/.git* -rf --mv compare-locales $SOURCEDIR/l10n -+# mkdir l10n -+# cd l10n -+# while read line;do -+# line=$(echo $line |cut -d' ' -f1) -+# #[ $line = "es-ES" ] || continue # To speed up testing -+# [ $line = "en-US" ] && continue -+# hg clone https://hg.mozilla.org/l10n-central/$line -+# mkdir -p $line/browser/chrome/browser/preferences -+# touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd -+# rm -rf $line/.hg* -+# done < ../$SOURCEDIR/browser/locales/shipped-locales -+# cd .. -+# -+# mv l10n $SOURCEDIR -+# -+# hg clone http://hg.mozilla.org/l10n/compare-locales/ -+# cd compare-locales/ -+# hg checkout RELEASE_3_3_0 -+# cd .. -+# rm compare-locales/.hg* compare-locales/.git* -rf -+# mv compare-locales $SOURCEDIR/l10n - - ####################################################### - --cd $SOURCEDIR -+# cd $SOURCEDIR - - shopt -s nullglob - for patch in $DATA/patches/*.patch; do -@@ -603,6 +603,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in - # Fix CVE-2012-3386 - /bin/sed 's/chmod a+w/chmod u+w/' -i ./js/src/ctypes/libffi/Makefile.in ./toolkit/crashreporter/google-breakpad/Makefile.in ./toolkit/crashreporter/google-breakpad/src/third_party/glog/Makefile.in || true - --cd .. --echo Packaging tarball --tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR -+# cd .. -+# echo Packaging tarball -+# tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR From f0648a4b675c4951856ab9fbb414f8edc7ddfb54 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 28 Sep 2020 13:14:47 +0800 Subject: [PATCH 505/757] gnu: icecat: Use system icu4c. * gnu/packages/gnuzilla.scm (icecat)[native-inputs]: Add icu4c-67. [arguments]: Add "--with-system-icu". Signed-off-by: Mark H Weaver --- gnu/packages/gnuzilla.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 250904c7af..cf66958857 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -751,7 +751,7 @@ from forcing GEXP-PROMISE." ("libffi" ,libffi) ("ffmpeg" ,ffmpeg) ;; UNBUNDLE-ME! ("libvpx" ,libvpx) - ;; UNBUNDLE-ME! ("icu4c" ,icu4c) + ("icu4c" ,icu4c-67) ("pixman" ,pixman) ("pulseaudio" ,pulseaudio) ("mesa" ,mesa) @@ -854,8 +854,8 @@ from forcing GEXP-PROMISE." ;; UNBUNDLE-ME! "--with-system-vorbis" ;; UNBUNDLE-ME! "--with-system-theora" ; wants theora-1.2, not yet released ;; UNBUNDLE-ME! "--with-system-libvpx" - ;; UNBUNDLE-ME! "--with-system-icu" - + "--with-system-icu" + ;; See ;; and related comments in the ;; 'remove-bundled-libraries' phase below. From 981cdc901179d8feb4bdde5eefe1930ce32bb0d0 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Mon, 28 Sep 2020 13:16:21 +0800 Subject: [PATCH 506/757] gnu: icecat: Remove duplicate find-files call. * gnu/packages/gnuzilla.scm (icecat)[arguments]: In the patch-cargo-checksums phase, replace the inner "find-files" call with the already found file name. Signed-off-by: Mark H Weaver --- gnu/packages/gnuzilla.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index cf66958857..440d9509c1 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -1012,7 +1012,7 @@ from forcing GEXP-PROMISE." (let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855")) (for-each (lambda (file) (format #t "patching checksums in ~a~%" file) - (substitute* (find-files "." "Cargo.lock$") + (substitute* file (("^checksum = \".*\"") (string-append "checksum = \"" null-hash "\"")))) (find-files "." "Cargo.lock$")) From 63d69215e476a94a31eba2626db07cb25a4fec2c Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Mon, 28 Sep 2020 22:59:59 +0200 Subject: [PATCH 507/757] gnu: scummvm: Update to 2.2.0. * gnu/packages/emulators.scm (scummvm): Update to 2.2.0. [arguments]: Remove unnecessary phase. [inputs]: Add fribidi. --- gnu/packages/emulators.scm | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index d0d581c4db..a130aea88e 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -1327,34 +1327,20 @@ multi-system game/emulator system.") (define-public scummvm (package (name "scummvm") - (version "2.1.2") + (version "2.2.0") (source (origin (method url-fetch) (uri (string-append "http://www.scummvm.org/frs/scummvm/" version "/scummvm-" version ".tar.xz")) (sha256 - (base32 "1c4fz1nfg0nqnqx9iipayhzcsiqdmfxm2i95nw9dbhshhsdnrhf4")))) + (base32 "11vknasm5dna2vqr6gk343qynh7nhsq3kf60zayarn1vb5z6as8l")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;require "git" #:configure-flags (list "--enable-release") ;for optimizations #:phases (modify-phases %standard-phases - (add-after 'unpack 'fix-build - ;; XXX: The following works around a build failure introduced when - ;; Fluidsynth was updated to version 2.1. It has been applied - ;; upstream as 68758a879e0c8ecc0d40962516d4e808aa4e15e5 and can be - ;; removed once this commit makes it into a release. - (lambda _ - (substitute* "audio/softsynth/fluidsynth.cpp" - (("#include ") "") - (("#include \"common/scummsys.h\"") "#include \"config.h\"") - (("#include \"common/config-manager.h\"" line) - (string-append "#include \n" - "#include \"common/scummsys.h\"\n" - line))) - #t)) (replace 'configure ;; configure does not work followed by both "SHELL=..." and ;; "CONFIG_SHELL=..."; set environment variables instead @@ -1374,6 +1360,7 @@ multi-system game/emulator system.") ("faad2" ,faad2) ("fluidsynth" ,fluidsynth) ("freetype" ,freetype) + ("fribidi" ,fribidi) ("liba52" ,liba52) ("libflac" ,flac) ("libjpeg-turbo" ,libjpeg-turbo) From 9380b0a0752d7b922a664e6d96899047cb2f2811 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Mon, 28 Sep 2020 23:01:40 +0200 Subject: [PATCH 508/757] gnu: Add missing module. * gnu/packages/emulators.scm: Add missing module. --- gnu/packages/emulators.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index a130aea88e..601d8dd4a6 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages fribidi) #:use-module (gnu packages game-development) #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) From d8934360d2453a403b5433e71d09188e4ed23b57 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Fri, 25 Sep 2020 11:00:11 -0500 Subject: [PATCH 509/757] tests: Simplify shell exit status negation; * tests/guix-archive.sh, tests/guix-build-branch.sh, tests/guix-build.sh, tests/guix-daemon.sh, tests/guix-download.sh, tests/guix-environment.sh, tests/guix-gc.sh, tests/guix-git-authenticate.sh, tests/guix-graph.sh, tests/guix-hash.sh, tests/guix-lint.sh, tests/guix-pack-relocatable.sh, tests/guix-pack.sh, tests/guix-package-aliases.sh, tests/guix-package-net.sh, tests/guix-package.sh: Use the shell '!' keyword to negate command exit status in place of 'if ...; then false; else true; fi' --- tests/guix-archive.sh | 9 +++---- tests/guix-build-branch.sh | 3 +-- tests/guix-build.sh | 22 ++++++----------- tests/guix-daemon.sh | 2 +- tests/guix-download.sh | 12 +++------ tests/guix-environment.sh | 8 +++--- tests/guix-gc.sh | 13 ++++------ tests/guix-git-authenticate.sh | 5 ++-- tests/guix-graph.sh | 7 +++--- tests/guix-hash.sh | 12 +++------ tests/guix-lint.sh | 18 +++++--------- tests/guix-pack-relocatable.sh | 3 +-- tests/guix-pack.sh | 3 +-- tests/guix-package-aliases.sh | 14 ++++------- tests/guix-package-net.sh | 9 +++---- tests/guix-package.sh | 45 +++++++++++++--------------------- 16 files changed, 67 insertions(+), 118 deletions(-) diff --git a/tests/guix-archive.sh b/tests/guix-archive.sh index 4c5eea05cf..e796c62f9a 100644 --- a/tests/guix-archive.sh +++ b/tests/guix-archive.sh @@ -44,8 +44,7 @@ cmp "$archive" "$archive_alt" # Check the exit value upon import. guix archive --import < "$archive" -if guix archive something-that-does-not-exist -then false; else true; fi +! guix archive something-that-does-not-exist # This one must not be listed as missing. guix build guile-bootstrap > "$archive" @@ -62,8 +61,7 @@ cmp "$archive" "$archive_alt" # This is not a valid store file name, so an error. echo something invalid > "$archive" -if guix archive --missing < "$archive" -then false; else true; fi +! guix archive --missing < "$archive" # Check '--extract'. guile -c "(use-modules (guix serialization)) @@ -79,5 +77,4 @@ guix archive -t < "$archive" | grep "^D /share/guile" guix archive -t < "$archive" | grep "^x /bin/guile" guix archive -t < "$archive" | grep "^r /share/guile.*/boot-9\.scm" -if echo foo | guix archive --authorize -then false; else true; fi +! echo foo | guix archive --authorize diff --git a/tests/guix-build-branch.sh b/tests/guix-build-branch.sh index c5b07e07c6..79aa06a58f 100644 --- a/tests/guix-build-branch.sh +++ b/tests/guix-build-branch.sh @@ -58,5 +58,4 @@ guix gc -R "$v0_1_0_drv" | grep guile-gcrypt-8fe64e8 # this is the tag ID test "$v0_1_0_drv" != "$latest_drv" test "$v0_1_0_drv" != "$orig_drv" -if guix build guix --with-commit=guile-gcrypt=000 -d -then false; else true; fi +! guix build guix --with-commit=guile-gcrypt=000 -d diff --git a/tests/guix-build.sh b/tests/guix-build.sh index ec2f736ccb..6dbb53206e 100644 --- a/tests/guix-build.sh +++ b/tests/guix-build.sh @@ -24,8 +24,7 @@ guix build --version # Should fail. -if guix build -e +; -then false; else true; fi +! guix build -e + # Source-less packages are accepted; they just return nothing. guix build -e '(@ (gnu packages bootstrap) %bootstrap-glibc)' -S @@ -178,7 +177,7 @@ cat > "$module_dir/foo.scm" < "$module_dir/err" || true grep "unbound" "$module_dir/err" # actual error grep "forget.*(gnu packages base)" "$module_dir/err" # hint @@ -222,7 +221,7 @@ test "`guix build --log-file guile-bootstrap`" = "$log" test "`guix build --log-file $out`" = "$log" # Should fail because the name/version combination could not be found. -if guix build hello-0.0.1 -n; then false; else true; fi +! guix build hello-0.0.1 -n # Keep a symlink to the result, registered as a root. result="t-result-$$" @@ -231,8 +230,7 @@ guix build -r "$result" \ test -x "$result/bin/guile" # Should fail, because $result already exists. -if guix build -r "$result" -e '(@@ (gnu packages bootstrap) %bootstrap-guile)' -then false; else true; fi +! guix build -r "$result" -e '(@@ (gnu packages bootstrap) %bootstrap-guile)' rm -f "$result" @@ -270,8 +268,7 @@ drv2=`guix build hello -d --with-input=gcc=gcc-toolchain` test "$drv1" != "$drv2" guix gc -R "$drv2" | grep `guix build -d gcc-toolchain` -if guix build guile --with-input=libunistring=something-really-silly -then false; else true; fi +! guix build guile --with-input=libunistring=something-really-silly # Deprecated/superseded packages. test "`guix build superseded -d`" = "`guix build bar -d`" @@ -279,10 +276,8 @@ test "`guix build superseded -d`" = "`guix build bar -d`" # Parsing package names and versions. guix build -n time # PASS guix build -n time@1.9 # PASS, version found -if guix build -n time@3.2; # FAIL, version not found -then false; else true; fi -if guix build -n something-that-will-never-exist; # FAIL -then false; else true; fi +! guix build -n time@3.2 # FAIL, version not found +! guix build -n something-that-will-never-exist # FAIL # Invoking a monadic procedure. guix build -e "(begin @@ -354,5 +349,4 @@ export GUIX_BUILD_OPTIONS guix build emacs GUIX_BUILD_OPTIONS="--something-completely-crazy" -if guix build emacs; -then false; else true; fi +! guix build emacs diff --git a/tests/guix-daemon.sh b/tests/guix-daemon.sh index b58500966b..330ad68835 100644 --- a/tests/guix-daemon.sh +++ b/tests/guix-daemon.sh @@ -224,7 +224,7 @@ daemon_pid=$! GUIX_DAEMON_SOCKET="guix://$tcp_socket" export GUIX_DAEMON_SOCKET -if guix gc; then false; else true; fi +! guix gc unset GUIX_DAEMON_SOCKET kill "$daemon_pid" diff --git a/tests/guix-download.sh b/tests/guix-download.sh index 30f55fbe2b..5475d43e60 100644 --- a/tests/guix-download.sh +++ b/tests/guix-download.sh @@ -23,14 +23,11 @@ guix download --version # Make sure it fails here. -if guix download http://does.not/exist -then false; else true; fi +! guix download http://does.not/exist -if guix download unknown://some/where; -then false; else true; fi +! guix download unknown://some/where; -if guix download /does-not-exist -then false; else true; fi +! guix download /does-not-exist # This one should succeed. guix download "file://$abs_top_srcdir/README" @@ -46,5 +43,4 @@ GUIX_DAEMON_SOCKET="/nowhere" guix download -o "$output" \ cmp "$output" "$abs_top_srcdir/README" # This one should fail. -if guix download "file:///does-not-exist" "file://$abs_top_srcdir/README" -then false; else true; fi +! guix download "file:///does-not-exist" "file://$abs_top_srcdir/README" diff --git a/tests/guix-environment.sh b/tests/guix-environment.sh index 2faf38df06..f8be48f0c0 100644 --- a/tests/guix-environment.sh +++ b/tests/guix-environment.sh @@ -60,7 +60,7 @@ guix environment --bootstrap --ad-hoc guile-bootstrap --pure \ grep '^PATH=' "$tmpdir/a" grep '^GUIX_TEST_ABC=' "$tmpdir/a" grep '^GUIX_TEST_DEF=' "$tmpdir/a" -if grep '^GUIX_TEST_XYZ=' "$tmpdir/a"; then false; else true; fi +! grep '^GUIX_TEST_XYZ=' "$tmpdir/a" # Make sure the exit value is preserved. if guix environment --bootstrap --ad-hoc guile-bootstrap --pure \ @@ -194,8 +194,7 @@ then done # 'make-boot0' itself must not be listed. - if guix gc --references "$profile" | grep make-boot0 - then false; else true; fi + ! guix gc --references "$profile" | grep make-boot0 # Make sure that the shell spawned with '--exec' sees the same environment # as returned by '--search-paths'. @@ -212,8 +211,7 @@ then test "x$make_boot0_debug" != "x" # Make sure the "debug" output is not listed. - if guix gc --references "$profile" | grep "$make_boot0_debug" - then false; else true; fi + ! guix gc --references "$profile" | grep "$make_boot0_debug" # Compute the build environment for the initial GNU Make, but add in the # bootstrap Guile as an ad-hoc addition. diff --git a/tests/guix-gc.sh b/tests/guix-gc.sh index 8284287730..f40619876d 100644 --- a/tests/guix-gc.sh +++ b/tests/guix-gc.sh @@ -36,11 +36,11 @@ unset out # For some operations, passing extra arguments is an error. for option in "" "-C 500M" "--verify" "--optimize" "--list-roots" do - if guix gc $option whatever; then false; else true; fi + ! guix gc $option whatever done # This should fail. -if guix gc --verify=foo; then false; else true; fi +! guix gc --verify=foo # Check the references of a .drv. drv="`guix build guile-bootstrap -d`" @@ -51,8 +51,7 @@ guix gc --references "$drv" | grep -e -bash guix gc --references "$out" guix gc --references "$out/bin/guile" -if guix gc --references /dev/null; -then false; else true; fi +! guix gc --references /dev/null; # Check derivers. guix gc --derivers "$out" | grep "$drv" @@ -72,8 +71,7 @@ test -f "$drv" && test -L guix-gc-root guix gc --list-roots | grep "$PWD/guix-gc-root" guix gc --list-live | grep "$drv" -if guix gc --delete "$drv"; -then false; else true; fi +! guix gc --delete "$drv"; rm guix-gc-root guix gc --list-dead | grep "$drv" @@ -84,8 +82,7 @@ guix gc --delete "$drv" guix gc -C 1KiB # Check trivial error cases. -if guix gc --delete /dev/null; -then false; else true; fi +! guix gc --delete /dev/null; # Bug #19757 out="`guix build guile-bootstrap`" diff --git a/tests/guix-git-authenticate.sh b/tests/guix-git-authenticate.sh index 1c76e240b5..8ebbea398b 100644 --- a/tests/guix-git-authenticate.sh +++ b/tests/guix-git-authenticate.sh @@ -46,9 +46,8 @@ v1_0_0_signer="3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5" # civodul v1_0_1_commit="d68de958b60426798ed62797ff7c96c327a672ac" # This should fail because these commits lack '.guix-authorizations'. -if guix git authenticate "$v1_0_0_commit" "$v1_0_0_signer" \ - --cache-key="$cache_key" --end="$v1_0_1_commit"; -then false; else true; fi +! guix git authenticate "$v1_0_0_commit" "$v1_0_0_signer" \ + --cache-key="$cache_key" --end="$v1_0_1_commit" # This should work thanks to '--historical-authorizations'. guix git authenticate "$v1_0_0_commit" "$v1_0_0_signer" \ diff --git a/tests/guix-graph.sh b/tests/guix-graph.sh index ccb4933c88..666660ab4b 100644 --- a/tests/guix-graph.sh +++ b/tests/guix-graph.sh @@ -60,7 +60,7 @@ guix graph -t references guile-bootstrap | grep guile-bootstrap guix graph -e '(@ (gnu packages bootstrap) %bootstrap-guile)' \ | grep guile-bootstrap -if guix graph -e +; then false; else true; fi +! guix graph -e + # Try passing store file names. @@ -77,14 +77,13 @@ cmp "$tmpfile1" "$tmpfile2" # Try package transformation options. guix graph git | grep 'label = "openssl' guix graph git --with-input=openssl=libressl | grep 'label = "libressl' -if guix graph git --with-input=openssl=libressl | grep 'label = "openssl' -then false; else true; fi +! guix graph git --with-input=openssl=libressl | grep 'label = "openssl' # Try --load-path guix graph -L $module_dir dummy | grep 'label = "dummy' # Displaying shortest paths (or lack thereof). -if guix graph --path emacs vim; then false; else true; fi +! guix graph --path emacs vim path="\ emacs diff --git a/tests/guix-hash.sh b/tests/guix-hash.sh index 3538b9aeda..346355539f 100644 --- a/tests/guix-hash.sh +++ b/tests/guix-hash.sh @@ -34,8 +34,7 @@ test `guix hash -f base32 /dev/null` = 4oymiquy7qobjgx36tejs35zeqt24qpemsnzgtfes test `guix hash -H sha512 -f hex /dev/null` = cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e test `guix hash -H sha1 -f base64 /dev/null` = "2jmj7l5rSw0yVb/vlWAYkK/YBwk=" -if guix hash -H abcd1234 /dev/null; -then false; else true; fi +! guix hash -H abcd1234 /dev/null mkdir "$tmpdir" echo -n executable > "$tmpdir/exe" @@ -46,13 +45,11 @@ mkdir "$tmpdir/subdir" test `guix hash -r "$tmpdir"` = 10k1lw41wyrjf9mxydi0is5nkpynlsvgslinics4ppir13g7d74p # Without '-r', this should fail. -if guix hash "$tmpdir" -then false; else true; fi +! guix hash "$tmpdir" # This should fail because /dev/null is a character device, which # the archive format doesn't support. -if guix hash -r /dev/null -then false; else true; fi +! guix hash -r /dev/null # Adding a .git directory mkdir "$tmpdir/.git" @@ -65,6 +62,5 @@ test `guix hash -r $tmpdir` = 0a50z04zyzf7pidwxv0nwbj82pgzbrhdy9562kncnvkcfvb48m test `guix hash -r $tmpdir -x` = 10k1lw41wyrjf9mxydi0is5nkpynlsvgslinics4ppir13g7d74p # Without '-r', this should fail. -if guix hash "$tmpdir" -then false; else true; fi +! guix hash "$tmpdir" diff --git a/tests/guix-lint.sh b/tests/guix-lint.sh index ebe79efb84..fdf548fbf1 100644 --- a/tests/guix-lint.sh +++ b/tests/guix-lint.sh @@ -58,24 +58,19 @@ grep_warning () # 3) the description has a single space following the end-of-sentence period. out=`guix lint -c synopsis,description dummy 2>&1` -if [ `grep_warning "$out"` -ne 3 ] -then false; else true; fi +test `grep_warning "$out"` -eq 3 out=`guix lint -c synopsis dummy 2>&1` -if [ `grep_warning "$out"` -ne 2 ] -then false; else true; fi +test `grep_warning "$out"` -eq 2 out=`guix lint -c description dummy 2>&1` -if [ `grep_warning "$out"` -ne 1 ] -then false; else true; fi +test `grep_warning "$out"` -eq 1 out=`guix lint -c description,synopsis dummy 2>&1` -if [ `grep_warning "$out"` -ne 3 ] -then false; else true; fi +test `grep_warning "$out"` -eq 3 -if guix lint -c synopsis,invalid-checker dummy 2>&1 | \ +guix lint -c synopsis,invalid-checker dummy 2>&1 | \ grep -q 'invalid-checker: invalid checker' -then true; else false; fi # Make sure specifying multiple packages works. guix lint -c inputs-should-be-native dummy dummy@42 dummy @@ -85,8 +80,7 @@ guix lint -c inputs-should-be-native dummy dummy@42 dummy unset GUIX_PACKAGE_PATH out=`guix lint -L $module_dir -c synopsis,description dummy 2>&1` -if [ `grep_warning "$out"` -ne 3 ] -then false; else true; fi +test `grep_warning "$out"` -eq 3 # Make sure specifying multiple packages works. guix lint -L $module_dir -c inputs-should-be-native dummy dummy@42 dummy diff --git a/tests/guix-pack-relocatable.sh b/tests/guix-pack-relocatable.sh index b8d36a02c6..a960ecd209 100644 --- a/tests/guix-pack-relocatable.sh +++ b/tests/guix-pack-relocatable.sh @@ -77,8 +77,7 @@ then grep 'GNU sed' "$test_directory/output" # Check whether the exit code is preserved. - if run_without_store "$test_directory/Bin/sed" --does-not-exist; - then false; else true; fi + ! run_without_store "$test_directory/Bin/sed" --does-not-exist chmod -Rf +w "$test_directory"; rm -rf "$test_directory"/* else diff --git a/tests/guix-pack.sh b/tests/guix-pack.sh index 39b64791e2..0339221ac2 100644 --- a/tests/guix-pack.sh +++ b/tests/guix-pack.sh @@ -45,8 +45,7 @@ guix gc -R "$drv" | grep "`guix build coreutils -d --no-grafts`" drv="`guix pack idutils -d --no-grafts --target=arm-linux-gnueabihf`" guix gc -R "$drv" | \ grep "`guix build idutils --target=arm-linux-gnueabihf -d --no-grafts`" -if guix gc -R "$drv" | grep "`guix build idutils -d --no-grafts`"; -then false; else true; fi +! guix gc -R "$drv" | grep "`guix build idutils -d --no-grafts`" # Build a tarball with no compression. guix pack --compression=none --bootstrap guile-bootstrap diff --git a/tests/guix-package-aliases.sh b/tests/guix-package-aliases.sh index e24bff3a56..e4ddace057 100644 --- a/tests/guix-package-aliases.sh +++ b/tests/guix-package-aliases.sh @@ -36,26 +36,22 @@ guix install --bootstrap guile-bootstrap -p "$profile" test -x "$profile/bin/guile" # Make sure '-r' isn't passed as-is to 'guix package'. -if guix install -r guile-bootstrap -p "$profile" --bootstrap -then false; else true; fi +! guix install -r guile-bootstrap -p "$profile" --bootstrap test -x "$profile/bin/guile" guix upgrade --version guix upgrade -n guix upgrade gui.e -n -if guix upgrade foo bar -n; -then false; else true; fi +! guix upgrade foo bar -n; guix remove --version guix remove --bootstrap guile-bootstrap -p "$profile" ! test -x "$profile/bin/guile" test `guix package -p "$profile" -I | wc -l` -eq 0 -if guix remove -p "$profile" this-is-not-installed --bootstrap -then false; else true; fi +! guix remove -p "$profile" this-is-not-installed --bootstrap -if guix remove -i guile-bootstrap -p "$profile" --bootstrap -then false; else true; fi +! guix remove -i guile-bootstrap -p "$profile" --bootstrap guix search '\' game | grep '^name: gnubg' @@ -64,7 +60,7 @@ guix show guile guix show python@3 | grep "^name: python" # "python@2" exists but is deprecated; make sure it doesn't show up. -if guix show python@2; then false; else true; fi +! guix show python@2 # Specifying multiple packages. output="`guix show sed grep | grep ^name:`" diff --git a/tests/guix-package-net.sh b/tests/guix-package-net.sh index 3876701fa2..6d21c6cff6 100644 --- a/tests/guix-package-net.sh +++ b/tests/guix-package-net.sh @@ -95,10 +95,8 @@ test "`guix package -p "$profile" -l | cut -f1 | grep guile | head -n1`" \ = " guile-bootstrap" # Exit with 1 when a generation does not exist. -if guix package -p "$profile" --list-generations=42; -then false; else true; fi -if guix package -p "$profile" --switch-generation=99; -then false; else true; fi +! guix package -p "$profile" --list-generations=42 +! guix package -p "$profile" --switch-generation=99 # Remove a package. guix package --bootstrap -p "$profile" -r "guile-bootstrap" @@ -174,8 +172,7 @@ test -z "`guix package -p "$profile" -l 3`" rm "$profile" guix package --bootstrap -p "$profile" -i guile-bootstrap guix package --bootstrap -p "$profile_alt" -i gcc-bootstrap -if guix package -p "$profile" --search-paths | grep LIBRARY_PATH -then false; fi +! guix package -p "$profile" --search-paths | grep LIBRARY_PATH guix package -p "$profile" -p "$profile_alt" --search-paths \ | grep "LIBRARY_PATH.*$profile/lib.$profile_alt/lib" diff --git a/tests/guix-package.sh b/tests/guix-package.sh index 1f955257be..1a95b8e9a4 100644 --- a/tests/guix-package.sh +++ b/tests/guix-package.sh @@ -36,8 +36,7 @@ rm -f "$profile" "$tmpfile" trap 'rm -f "$profile" "$profile.lock" "$profile-"[0-9]* "$tmpfile"; rm -rf "$module_dir" t-home-'"$$" EXIT # Use `-e' with a non-package expression. -if guix package --bootstrap -e +; -then false; else true; fi +! guix package --bootstrap -e + # Install a store item and make sure the version and output in the manifest # are correct. @@ -62,8 +61,7 @@ test -f "$profile/bin/guile" # Collisions are properly flagged (in this case, 'g-wrap' propagates # guile@2.2, which conflicts with guile@2.0.) -if guix package --bootstrap -n -p "$profile" -i g-wrap guile@2.0 -then false; else true; fi +! guix package --bootstrap -n -p "$profile" -i g-wrap guile@2.0 guix package --bootstrap -n -p "$profile" -i g-wrap guile@2.0 \ --allow-collisions @@ -78,8 +76,7 @@ test "`guix package -p "$profile" --search-paths | wc -l`" = 1 # $PATH type -P rm ) # Exit with 1 when a generation does not exist. -if guix package -p "$profile" --delete-generations=42; -then false; else true; fi +! guix package -p "$profile" --delete-generations=42 # Exit with 0 when trying to delete the zeroth generation. guix package -p "$profile" --delete-generations=0 @@ -92,15 +89,12 @@ guix package --bootstrap -i "glibc:debug" -p "$profile" -n # Make sure nonexistent outputs are reported. guix package --bootstrap -i "guile-bootstrap:out" -p "$profile" -n -if guix package --bootstrap -i "guile-bootstrap:does-not-exist" -p "$profile" -n; -then false; else true; fi -if guix package --bootstrap -i "guile-bootstrap:does-not-exist" -p "$profile"; -then false; else true; fi +! guix package --bootstrap -i "guile-bootstrap:does-not-exist" -p "$profile" -n +! guix package --bootstrap -i "guile-bootstrap:does-not-exist" -p "$profile" # Make sure we get an error when trying to remove something that's not # installed. -if guix package --bootstrap -r something-not-installed -p "$profile"; -then false; else true; fi +! guix package --bootstrap -r something-not-installed -p "$profile" # Check whether `--list-available' returns something sensible. guix package -p "$profile" -A 'gui.*e' | grep guile @@ -112,8 +106,8 @@ guix package --show=guile | grep "^name: guile" guix package --show=texlive # Fail for non-existent packages or package/version pairs. -if guix package --show=does-not-exist; then false; else true; fi -if guix package --show=emacs@42; then false; else true; fi +! guix package --show=does-not-exist +! guix package --show=emacs@42 # Search. LC_MESSAGES=C @@ -157,22 +151,19 @@ guix package --search="" > /dev/null # There's no generation older than 12 months, so the following command should # have no effect. generation="`readlink_base "$profile"`" -if guix package -p "$profile" --delete-generations=12m; -then false; else true; fi +! guix package -p "$profile" --delete-generations=12m test "`readlink_base "$profile"`" = "$generation" # The following command should not delete the current generation, even though # it matches the given pattern (see .) And since # there's nothing else to delete, it should just fail. guix package --list-generations -p "$profile" -if guix package --bootstrap -p "$profile" --delete-generations=1.. -then false; else true; fi +! guix package --bootstrap -p "$profile" --delete-generations=1.. test "`readlink_base "$profile"`" = "$generation" # Make sure $profile is a GC root at this point. real_profile="`readlink -f "$profile"`" -if guix gc -d "$real_profile" -then false; else true; fi +! guix gc -d "$real_profile" test -d "$real_profile" # Now, let's remove all the symlinks to $real_profile, and make sure @@ -238,16 +229,15 @@ done # Check whether '-p ~/.guix-profile' makes any difference. # See . -if test -e "$HOME/.guix-profile-0-link"; then false; fi -if test -e "$HOME/.guix-profile-1-link"; then false; fi +! test -e "$HOME/.guix-profile-0-link" +! test -e "$HOME/.guix-profile-1-link" guix package --bootstrap -p "$HOME/.guix-profile" -i guile-bootstrap -if test -e "$HOME/.guix-profile-1-link"; then false; fi +! test -e "$HOME/.guix-profile-1-link" guix package --bootstrap --roll-back -p "$HOME/.guix-profile" -if test -e "$HOME/.guix-profile-0-link"; then false; fi +! test -e "$HOME/.guix-profile-0-link" # Extraneous argument. -if guix package install foo-bar; -then false; else true; fi +! guix package install foo-bar # Make sure the "broken pipe" doesn't yield an error. # Note: 'pipefail' is a Bash-specific option. @@ -336,8 +326,7 @@ cat > "$module_dir/package.scm"< Date: Sun, 27 Sep 2020 14:37:22 +0200 Subject: [PATCH 510/757] gnu: komikku: Update to 0.21.1. * gnu/packages/gnome.scm (komikku): Update to 0.21.1. Signed-off-by: Efraim Flashner --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 7812f7973e..0da85fddf6 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -11539,7 +11539,7 @@ integrated profiler via Sysprof, debugging support, and more.") (define-public komikku (package (name "komikku") - (version "0.21.0") + (version "0.21.1") (source (origin (method git-fetch) @@ -11549,7 +11549,7 @@ integrated profiler via Sysprof, debugging support, and more.") (file-name (git-file-name name version)) (sha256 (base32 - "0bl2wcvshhp7pwwk6blrq6rzvrlb13jhhif5afwpqdznzyqfh2ka")))) + "17ss5k2hnymk6xyx1dy3q0y2pwcld78cw7d0cs9c0hnhskh5dirh")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t From e7cacc91e66105d5ffe70420d201bcf8adc2a765 Mon Sep 17 00:00:00 2001 From: Leo Prikler Date: Sun, 27 Sep 2020 14:37:24 +0200 Subject: [PATCH 511/757] gnu: ppsspp: Update to 1.10.3. * gnu/packages/emulators.scm (ppsspp): Update to 1.10.3. [snippet]: Update the snippet, that strips glslang from build. [inputs]: Update lang. Signed-off-by: Efraim Flashner --- gnu/packages/emulators.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 601d8dd4a6..f18a01e36e 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -1890,7 +1890,7 @@ framework based on QEMU.") (define-public ppsspp (package (name "ppsspp") - (version "1.10") + (version "1.10.3") (source (origin (method git-fetch) @@ -1898,7 +1898,7 @@ framework based on QEMU.") (url "https://github.com/hrydgard/ppsspp") (commit (string-append "v" version)))) (sha256 - (base32 "02yx1w0ygclnmdl0imsvgj24lkzi55wvxkf47q617j0jgrqhy8yl")) + (base32 "0znxlbj6cfw7gn0naay0mzhc0k5saw8nrwpspcn7gap1023p06w2")) (file-name (git-file-name name version)) (patches (search-patches "ppsspp-disable-upgrade-and-gold.patch")) @@ -1949,7 +1949,7 @@ framework based on QEMU.") " spirv-cross-reflect spirv-cross-util"))) (substitute* "ext/CMakeLists.txt" (("add_subdirectory\\(glew\\)") "") - (("add_subdirectory\\(glslang\\)") "") + (("add_subdirectory\\(glslang( [A-Z_]*)*\\)") "") (("add_subdirectory\\(snappy\\)") "") (("add_subdirectory\\(SPIRV-Cross-build\\)") "")) ;; Finally, we can delete the bundled sources. @@ -1992,14 +1992,14 @@ framework based on QEMU.") ;; TODO: unbundle armips. ("armips-source" ,(package-source armips)) ("lang" - ,(let ((commit "d184ba2b607a03435be579406b816c90add334e6")) + ,(let ((commit "1c64b8fbd3cb6bd87935eb53f302f7de6f86e209")) (origin (method git-fetch) (uri (git-reference (url "https://github.com/hrydgard/ppsspp-lang") (commit commit))) (sha256 - (base32 "0s003x6247nx09qd6a1jz1l2hsk5d6k1zmh8mg3m6hjjhvbvd9j9")) + (base32 "0rprn3yd8xfrvi0fm62sgpqa8n73jk7zmlscp8cp0h2fawqpiamd")) (file-name (git-file-name "ppsspp-lang" commit))))) ("tests" ,(let ((commit "328b839c7243e7f733f9eae88d059485e3d808e7")) From 5323d59c6af1826b7d866627a7893481a766b603 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Sep 2020 08:55:49 +0300 Subject: [PATCH 512/757] gnu: dino: Add debug output. * gnu/packages/messaging.scm (dino)[outputs]: Add debug output. --- gnu/packages/messaging.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 43f54d3c18..674ae8e842 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -878,6 +878,7 @@ on Axolotl and PEP.") (package (name "dino") (version "0.1.0") + (outputs '("out" "debug")) (source (origin (method url-fetch) From e86e049305313c975ed34a1c1784b13e1c8f0b36 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Sep 2020 09:25:20 +0300 Subject: [PATCH 513/757] gnu: quaternion: Add debug output. * gnu/packages/messaging.scm (quaternion)[outputs]: Add debug output. --- gnu/packages/messaging.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 674ae8e842..5a915f7977 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -2075,6 +2075,7 @@ There is support for: (package (name "quaternion") (version "0.0.9.4e") + (outputs '("out" "debug")) (source (origin (method git-fetch) From fbc15e548533a794ebe43eace487bf9061a6c0b3 Mon Sep 17 00:00:00 2001 From: Florian Pelz Date: Tue, 29 Sep 2020 08:09:24 +0200 Subject: [PATCH 514/757] =?UTF-8?q?news:=20Fix=20typo=20in=20=E2=80=98fr?= =?UTF-8?q?=E2=80=99=20translation.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * etc/news.scm: Update ‘fr’ translation. --- etc/news.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/etc/news.scm b/etc/news.scm index aaf0dc9fee..6fe9a68008 100644 --- a/etc/news.scm +++ b/etc/news.scm @@ -78,8 +78,8 @@ paquets et se trouve « tout en bas » du graphe de dépendance) : guix build --with-graft=glibc=glibc@@2.31 hello @end example -Voir @command{info \"(guix) Options de transformation de paquets\"} pour plus -de détails."))) +Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour +plus de détails."))) (entry (commit "f458cfbcc54ed87b1a87dd9e150ea276f17eab74") (title (en "New @option{--without-tests} transformation option") From 58d743942cd72610ef6473aa12b4430fb7a22166 Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Sun, 27 Sep 2020 18:38:56 -0300 Subject: [PATCH 515/757] gnu: python-httpx: Update to 0.15.4. * gnu/packages/python-web.scm (python-httpx): Update to 0.15.4. [home-page]: Change from public repository to project's webpage. Signed-off-by: Efraim Flashner --- gnu/packages/python-web.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index aa08b776d5..bb2fc850c9 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -4531,7 +4531,7 @@ Some things HTTP Core does do: (define-public python-httpx (package (name "python-httpx") - (version "0.15.0") + (version "0.15.4") (source (origin ;; PyPI tarball does not contain tests. @@ -4541,7 +4541,7 @@ Some things HTTP Core does do: (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "06w50br6b825sd70l6rm2s0fca1lnjbyx9n8nmcdlwg673z25kc6")))) + (base32 "1qr91xw6jxynvihmw953bi5446ssm9ffmb2c4nhfa77v7883sp21")))) (build-system python-build-system) (arguments `(#:phases @@ -4584,7 +4584,7 @@ Some things HTTP Core does do: ("python-idna" ,python-idna) ("python-rfc3986" ,python-rfc3986) ("python-sniffio" ,python-sniffio))) - (home-page "https://github.com/encode/httpx") + (home-page "https://www.python-httpx.org/") (synopsis "HTTP client for Python") (description "HTTPX is a fully featured HTTP client for Python 3, which provides sync From cdf0e84c34caf62162af8d90c2ad0c6a7dcfbc66 Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Fri, 25 Sep 2020 01:53:33 +0800 Subject: [PATCH 516/757] gnu: Add rust-bit-vec-0.4. * gnu/packages/crates-io.scm (rust-bit-vec-0.4): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index c26ac4cae5..c5d5d5236c 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -1787,6 +1787,24 @@ that uses Serde for transforming structs into bytes and vice versa!") "This package provides a vector of bits.") (license (list license:expat license:asl2.0)))) +(define-public rust-bit-vec-0.4 + (package + (inherit rust-bit-vec-0.5) + (name "rust-bit-vec") + (version "0.4.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "bit-vec" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0pw902a8ail0k64a7092a8vngfzsq7xkj2r22hz6q1z62s5zzd02")))) + (arguments + `(#:cargo-development-inputs + (("rust-rand" ,rust-rand-0.3)))))) + (define-public rust-bitflags-1 (package (name "rust-bitflags") From 463f41e62dabaf35d55b8b90106b4506bf4b906d Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Fri, 25 Sep 2020 01:53:34 +0800 Subject: [PATCH 517/757] gnu: Add rust-bit-set-0.4. * gnu/packages/crates-io.scm (rust-bit-set-0.4): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index c5d5d5236c..f8e9694ed7 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -1761,6 +1761,27 @@ that uses Serde for transforming structs into bytes and vice versa!") "This package provides a set of bits.") (license (list license:asl2.0 license:expat)))) +(define-public rust-bit-set-0.4 + (package + (inherit rust-bit-set-0.5) + (name "rust-bit-set") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "bit-set" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0320hhcbr73yzjpj2237vw2zq728yg7vmzb8dardg04ff4263gyr")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-bit-vec" ,rust-bit-vec-0.4)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.3)))))) + (define-public rust-bit-vec-0.5 (package (name "rust-bit-vec") From dfcfb4f490b733cc01ff318f9d25714ed0908339 Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Fri, 25 Sep 2020 01:53:35 +0800 Subject: [PATCH 518/757] gnu: Add rust-ansi-term-0.9. * gnu/packages/crates-io.scm (rust-ansi-term-0.9): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index f8e9694ed7..7c42fdf18f 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -520,6 +520,22 @@ text or blue underlined text, on ANSI terminals.") #:cargo-inputs (("rust-winapi" ,rust-winapi-0.3)))))) +(define-public rust-ansi-term-0.9 + (package + (inherit rust-ansi-term-0.11) + (name "rust-ansi-term") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "ansi_term" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1xif1bh938qpfc3d0f9xgidibpm65xix11w9gszwqnia00q7rb13")))) + (arguments `()))) + (define-public rust-antidote-1.0 (package (name "rust-antidote") From a24a02f61aade45d97b76657010bbf880a6d36d3 Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Fri, 25 Sep 2020 01:53:36 +0800 Subject: [PATCH 519/757] gnu: Add rust-pretty-assertions-0.4. * gnu/packages/crates-io.scm (rust-pretty-assertions-0.4): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 7c42fdf18f..d49fb493fd 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -18903,6 +18903,27 @@ dependency to expose a precomputed hash.") replacements, adding colorful diffs.") (license (list license:expat license:asl2.0)))) +(define-public rust-pretty-assertions-0.4 + (package + (inherit rust-pretty-assertions-0.6) + (name "rust-pretty-assertions") + (version "0.4.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "pretty_assertions" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1llxlnhh4qz9kda27v6nllgzvgi1fv08i3djfk4zn6zlw8c53si8")))) + (build-system cargo-build-system) + (arguments + `(#:tests? #f + #:cargo-inputs + (("rust-ansi-term" ,rust-ansi-term-0.9) + ("rust-difference" ,rust-difference-1)))))) + (define-public rust-pretty-assertions-0.2 (package (name "rust-pretty-assertions") From a3911b4e6ca697bcbfa226981c1627b3ee50404d Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Fri, 25 Sep 2020 01:53:37 +0800 Subject: [PATCH 520/757] gnu: Add rust-proptest-0.3. * gnu/packages/crates-io.scm (rust-proptest-0.3): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index d49fb493fd..8be663deb6 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -19353,6 +19353,30 @@ macro use case.") #:cargo-development-inputs (("rust-regex" ,rust-regex-0.2)))))) +(define-public rust-proptest-0.3 + (package + (inherit rust-proptest-0.7) + (name "rust-proptest") + (version "0.3.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "proptest" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "15633iq8x3x0im5vyij2gr8ncpflv4fa9w63rh94k20xhzv4m308")))) + (arguments + `(#:cargo-inputs + (("rust-bit-set" ,rust-bit-set-0.4) + ("rust-lazy-static" ,rust-lazy-static-0.2) + ("rust-quick-error" ,rust-quick-error-1.2) + ("rust-rand" ,rust-rand-0.3) + ("rust-regex-syntax" ,rust-regex-syntax-0.4)) + #:cargo-development-inputs + (("rust-regex" ,rust-regex-0.2)))))) + (define-public rust-psm-0.1 (package (name "rust-psm") From d556028f5bdbb164ebc4bbcffc9ab164daa8e313 Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Fri, 25 Sep 2020 01:53:38 +0800 Subject: [PATCH 521/757] gnu: Add rust-stfu8-0.2. * gnu/packages/crates-io.scm (rust-stfu8-0.2): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 8be663deb6..7cb2fd40cb 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -25207,6 +25207,37 @@ crate.") (license (list license:asl2.0 license:expat)))) +(define-public rust-stfu8-0.2 + (package + (name "rust-stfu8") + (version "0.2.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "stfu8" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0xyv4axwc9rihg3f5fjdy7s0ahnz1iq6lq06blwkq2ihwcrh9xsb")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-lazy-static" ,rust-lazy-static-1) + ("rust-regex" ,rust-regex-0.2)) + #:cargo-development-inputs + (("rust-pretty-assertions" ,rust-pretty-assertions-0.4) + ("rust-proptest" ,rust-proptest-0.3)))) + (home-page "https://github.com/vitiral/stfu8") + (synopsis "Sorta Text Format in UTF-8") + (description + "STFU-8 is a hacky text encoding/decoding protocol for files that +partially uses UTF-8. Its primary purpose is to allow a human to visualize and +edit data that is mostly UTF-8. It will encode all non-UTF8-compliant bytes as +longform text (e.g., ESC becomes @code{r\x1B}) and tries to encode ill-formed +UTF-8.") + (license (list license:expat license:asl2.0)))) + (define-public rust-stream-cipher-0.3 (package (name "rust-stream-cipher") From f7e9054617a05e860c51813ebb5626050d0f857a Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 29 Sep 2020 10:36:08 +0200 Subject: [PATCH 522/757] gnu: scintilla: Update to 4.4.5. * gnu/packages/text-editors.scm (scintilla): Update to 4.4.5. --- gnu/packages/text-editors.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index 78828bb5a9..ed88c8de1c 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -802,14 +802,14 @@ Octave. TeXmacs is completely extensible via Guile.") (define-public scintilla (package (name "scintilla") - (version "4.4.4") + (version "4.4.5") (source (origin (method url-fetch) (uri (let ((v (apply string-append (string-split version #\.)))) (string-append "https://www.scintilla.org/scintilla" v ".tgz"))) (sha256 - (base32 "1zjsb6iiqi4cw9r9md3xv8qyy86ssz11p680xn7vmllrxshxvs8y")))) + (base32 "1v1kyxj7rv5rxadbg8gl8wh1jafpy7zj0wr6dcyxq9209dl6h8ag")))) (build-system gnu-build-system) (arguments `(#:make-flags (list "GTK3=1" "CC=gcc" "-Cgtk") From 7592ddfee779e25437690f6914dc65c132a1603b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Sep 2020 11:29:40 +0300 Subject: [PATCH 523/757] gnu: vim: Update to 8.2.1770. * gnu/packages/vim.scm (vim): Update to 8.2.1770. --- gnu/packages/vim.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 5a7d5fb3f9..6b741e1198 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -70,7 +70,7 @@ (define-public vim (package (name "vim") - (version "8.2.1738") + (version "8.2.1770") (source (origin (method git-fetch) (uri (git-reference @@ -79,7 +79,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0g5kblrqyyyn1bs8jna5n2zwxy0lbkbml20w2kds8y2iha3nha44")))) + "14mbrbnjwb8r4pl06vafd56x0pmbcgqvr57s2ns2arh7xcy9bri7")))) (build-system gnu-build-system) (arguments `(#:test-target "test" From c4d3eb569ca08776895c15d3bd38a34c8c37a68a Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 29 Sep 2020 11:31:57 +0200 Subject: [PATCH 524/757] gnu: fet: Update to 5.47.0. * gnu/packages/education.scm (fet): Update to 5.47.0. --- gnu/packages/education.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm index 32807fa05f..1c3aff9465 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -613,14 +613,14 @@ Portuguese, Spanish and Italian.") (define-public fet (package (name "fet") - (version "5.46.1") + (version "5.47.0") (source (origin (method url-fetch) (uri (string-append "https://www.lalescu.ro/liviu/fet/download/" "fet-" version ".tar.bz2")) (sha256 - (base32 "1sakzizjsyjn6705zl283i81zxn1gxskg2i4jv7iq75vw3nzm6kv")))) + (base32 "1a4mzzd6qy7hpb3yvmf922dbrqrzacz60ld8dsds78m018jf9gaj")))) (build-system gnu-build-system) (arguments `(#:phases From f441e3e8b5fbc2406fa924d3761774bbd50cc683 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Tue, 29 Sep 2020 11:37:19 +0200 Subject: [PATCH 525/757] image: Add support for compressed-qcow2 format. * gnu/build/image.scm (convert-disk-image): New procedure. (genimage): Remove target argument. * gnu/system/image.scm (system-disk-image): Add support for 'compressed-qcow2 image format. Call "convert-disk-image" to apply image conversions on the final image. Add "qemu-minimal" to the build inputs. (system-image): Also add support for 'compressed-qcow2. --- gnu/build/image.scm | 16 +++++++++++++--- gnu/system/image.scm | 30 ++++++++++++++++-------------- 2 files changed, 29 insertions(+), 17 deletions(-) diff --git a/gnu/build/image.scm b/gnu/build/image.scm index d8efa73f16..8a2d0eb5fd 100644 --- a/gnu/build/image.scm +++ b/gnu/build/image.scm @@ -37,6 +37,7 @@ #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) #:export (make-partition-image + convert-disk-image genimage initialize-efi-partition initialize-root-partition @@ -120,13 +121,22 @@ ROOT directory to populate the image." (format (current-error-port) "Unsupported partition type~%."))))) -(define* (genimage config target) +(define (convert-disk-image image format output) + "Convert IMAGE to OUTPUT according to the given FORMAT." + (case format + ((compressed-qcow2) + (begin + (invoke "qemu-img" "convert" "-c" "-f" "raw" + "-O" "qcow2" image output))) + (else + (copy-file image output)))) + +(define* (genimage config) "Use genimage to generate in TARGET directory, the image described in the given CONFIG file." ;; genimage needs a 'root' directory. (mkdir "root") - (invoke "genimage" "--config" config - "--outputpath" target)) + (invoke "genimage" "--config" config)) (define* (register-closure prefix closure #:key diff --git a/gnu/system/image.scm b/gnu/system/image.scm index 49cdd9e7de..0f2fb62a6b 100644 --- a/gnu/system/image.scm +++ b/gnu/system/image.scm @@ -47,11 +47,13 @@ #:use-module (gnu packages hurd) #:use-module (gnu packages linux) #:use-module (gnu packages mtools) + #:use-module (gnu packages virtualization) #:use-module ((srfi srfi-1) #:prefix srfi-1:) #:use-module (srfi srfi-11) #:use-module (srfi srfi-26) #:use-module (srfi srfi-35) #:use-module (rnrs bytevectors) + #:use-module (ice-9 format) #:use-module (ice-9 match) #:export (root-offset root-label @@ -207,8 +209,8 @@ used in the image." (define (format->image-type format) ;; Return the genimage format corresponding to FORMAT. For now, only ;; the hdimage format (raw disk-image) is supported. - (case format - ((disk-image) "hdimage") + (cond + ((memq format '(disk-image compressed-qcow2)) "hdimage") (else (raise (condition (&message @@ -306,25 +308,24 @@ image ~a { (name (if image-name (symbol->string image-name) name)) + (format (image-format image)) (substitutable? (image-substitutable? image)) (builder (with-imported-modules* - (let ((inputs '#+(list genimage coreutils findutils)) + (let ((inputs '#+(list genimage coreutils findutils qemu-minimal)) (bootloader-installer - #+(bootloader-disk-image-installer bootloader))) + #+(bootloader-disk-image-installer bootloader)) + (out-image (string-append "images/" #$genimage-name))) (set-path-environment-variable "PATH" '("bin" "sbin") inputs) - (genimage #$(image->genimage-cfg image) #$output) + (genimage #$(image->genimage-cfg image)) ;; Install the bootloader directly on the disk-image. (when bootloader-installer (bootloader-installer #+(bootloader-package bootloader) #$(root-partition-index image) - (string-append #$output "/" #$genimage-name)))))) - (image-dir (computed-file "image-dir" builder))) - (computed-file name - #~(symlink - (string-append #$image-dir "/" #$genimage-name) - #$output) + out-image)) + (convert-disk-image out-image '#$format #$output))))) + (computed-file name builder #:options `(#:substitutable? ,substitutable?)))) @@ -523,19 +524,20 @@ image, depending on IMAGE format." (with-parameters ((%current-target-system target)) (let* ((os (operating-system-for-image image)) (image* (image-with-os image os)) + (image-format (image-format image)) (register-closures? (has-guix-service-type? os)) (bootcfg (operating-system-bootcfg os)) (bootloader (bootloader-configuration-bootloader (operating-system-bootloader os)))) - (case (image-format image) - ((disk-image) + (cond + ((memq image-format '(disk-image compressed-qcow2)) (system-disk-image image* #:bootcfg bootcfg #:bootloader bootloader #:register-closures? register-closures? #:inputs `(("system" ,os) ("bootcfg" ,bootcfg)))) - ((iso9660) + ((memq image-format '(iso9660)) (system-iso9660-image image* #:bootcfg bootcfg From 644cdc819fc6c49bbfcfa48d2d2cd52034862d2b Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Tue, 29 Sep 2020 11:40:58 +0200 Subject: [PATCH 526/757] images: hurd: Add hurd-barebones-qcow2-image. * gnu/system/images/hurd.scm (hurd-barebones-qcow2-image): New variable. --- gnu/system/images/hurd.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gnu/system/images/hurd.scm b/gnu/system/images/hurd.scm index d87640e8e3..6d46eb5eda 100644 --- a/gnu/system/images/hurd.scm +++ b/gnu/system/images/hurd.scm @@ -31,7 +31,8 @@ #:use-module (gnu system image) #:export (hurd-barebones-os hurd-disk-image - hurd-barebones-disk-image)) + hurd-barebones-disk-image + hurd-barebones-qcow2-image)) (define hurd-barebones-os (operating-system @@ -87,3 +88,9 @@ (inherit hurd-disk-image) (name 'hurd-barebones-disk-image) (operating-system hurd-barebones-os))) + +(define hurd-barebones-qcow2-image + (image + (inherit hurd-barebones-disk-image) + (name 'hurd-barebones.qcow2) + (format 'compressed-qcow2))) From 3d0e875026f5caa186f4a5b193586ffa4422a522 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Tue, 29 Sep 2020 11:41:43 +0200 Subject: [PATCH 527/757] ci: Build hurd-barebones-qcow2-image. Build hurd-barebones-qcow2-image instead of hurd-barebones-disk-image to speed downloads. * gnu/ci.scm (%guix-system-images): Build 'hurd-barebones-qcow2-image instead of 'hurd-barebones-disk-image. --- gnu/ci.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/ci.scm b/gnu/ci.scm index d612e0e25f..2329a38b84 100644 --- a/gnu/ci.scm +++ b/gnu/ci.scm @@ -195,7 +195,7 @@ SYSTEM." '("x86_64-linux" "i686-linux")) (define %guix-system-images - (list hurd-barebones-disk-image)) + (list hurd-barebones-qcow2-image)) (define (image-jobs store system) "Return a list of jobs that build images for SYSTEM." From 1c8a63b18b62cfd18335733485a6b49f17f715e9 Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Tue, 29 Sep 2020 08:21:53 +0200 Subject: [PATCH 528/757] gnu: obs: Update to 26.0.0. * gnu/packages/video.scm (obs): Update to 26.0.0. Signed-off-by: Efraim Flashner --- 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 0f727a6e9e..24854e04c4 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -2995,7 +2995,7 @@ be used for realtime video capture via Linux-specific APIs.") (define-public obs (package (name "obs") - (version "25.0.8") + (version "26.0.0") (source (origin (method git-fetch) (uri (git-reference @@ -3004,7 +3004,7 @@ be used for realtime video capture via Linux-specific APIs.") (file-name (git-file-name name version)) (sha256 (base32 - "0j2k65q3wfyfxhvkl6icz4qy0s3kfqhksizy2i3ah7yml266axbj")))) + "09y57b3c88szl3wyx3cxq8jrm3pfnyg2n25hxl1ynkq3rgaavdq2")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; no test suite From 676c866b458e3532743979435279d208f6ffdc16 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Sep 2020 12:08:34 +0300 Subject: [PATCH 529/757] gnu: obs: Build with speexdsp. * gnu/packages/video.scm (obs)[inputs]: Replace speex with speexdsp. --- gnu/packages/video.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 24854e04c4..07cc66ad21 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -3029,7 +3029,7 @@ be used for realtime video capture via Linux-specific APIs.") ("qtbase" ,qtbase) ("qtsvg" ,qtsvg) ("qtx11extras" ,qtx11extras) - ("speex" ,speex) + ("speexdsp" ,speexdsp) ("v4l-utils" ,v4l-utils) ("zlib" ,zlib))) (synopsis "Live streaming software") From cbbdf047d48013fadd5476e64d0dfda131fa50fd Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Sep 2020 12:48:51 +0300 Subject: [PATCH 530/757] gnu: obs: Enable building on all architectures. * gnu/packages/video.scm (obs)[supported-systems]: Remove field. --- gnu/packages/video.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 07cc66ad21..d60fa3b31d 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -3038,7 +3038,6 @@ video recording and live streaming. OBS supports capturing audio and video from many input sources such as webcams, X11 (for screencasting), PulseAudio, and JACK.") (home-page "https://obsproject.com") - (supported-systems '("x86_64-linux" "i686-linux")) (license license:gpl2+))) (define-public libvdpau From 5257618bf8b5d559aed8c8be887d56ce35b7aed1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Sep 2020 13:02:42 +0300 Subject: [PATCH 531/757] gnu: obs: Enable tests. * gnu/packages/video.scm (obs)[arguments]: Enable tests. Add configure-flag to enable unit tests. [native-inputs]: Add cmocka. --- gnu/packages/video.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index d60fa3b31d..bdc4115349 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -3007,11 +3007,12 @@ be used for realtime video capture via Linux-specific APIs.") "09y57b3c88szl3wyx3cxq8jrm3pfnyg2n25hxl1ynkq3rgaavdq2")))) (build-system cmake-build-system) (arguments - `(#:tests? #f ; no test suite - #:configure-flags - (list (string-append "-DOBS_VERSION_OVERRIDE=" ,version)))) + `(#:configure-flags + (list (string-append "-DOBS_VERSION_OVERRIDE=" ,version) + "-DENABLE_UNIT_TESTS=TRUE"))) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("cmocka" ,cmocka) + ("pkg-config" ,pkg-config))) (inputs `(("alsa-lib" ,alsa-lib) ("curl" ,curl) From 7806e568f6c61b97660e91f4f97dfbb9e81b9e06 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 29 Sep 2020 12:16:20 +0200 Subject: [PATCH 532/757] gnu: micropython: Update to 1.13. * gnu/packages/python.scm (micropython): Update to 1.13. --- gnu/packages/python.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 993ca0b40f..8f2651decf 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -591,7 +591,7 @@ To function properly, this package should not be installed together with the (define-public micropython (package (name "micropython") - (version "1.12") + (version "1.13") (source (origin (method url-fetch) @@ -599,8 +599,7 @@ To function properly, this package should not be installed together with the "releases/download/v" version "/micropython-" version ".tar.gz")) (sha256 - (base32 - "1fl1dm2aay23hyqbarnv69qj7z2wljcvkwmvfwfac8yadcv05zcq")) + (base32 "0lfl7dv5v9rqckslrjqy5swjri29x1nj5d79wxnjys4sq6r2xcws")) (modules '((guix build utils))) (snippet '(begin From 07c3c3ba5385d48d4923f68f86f40256add6b41d Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 29 Sep 2020 13:57:38 +0200 Subject: [PATCH 533/757] gnu: giac: Update to 1.6.0-23. * gnu/packages/algebra.scm (giac): Update to 1.6.0-23. [arguments]: Fix more hard-coded /bin/cp in Make files. [native-inputs]: Add python-wrapper. --- gnu/packages/algebra.scm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index cb409ab22a..262a7939df 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -354,7 +354,7 @@ precision.") (define-public giac (package (name "giac") - (version "1.6.0-7") + (version "1.6.0-23") (source (origin (method url-fetch) @@ -366,7 +366,7 @@ precision.") "~parisse/debian/dists/stable/main/source/" "giac_" version ".tar.gz")) (sha256 - (base32 "1pvgp137zcl0rbhdn1j41xxfml7fp771a7x4ph8qrhhlx0hxzn3p")))) + (base32 "0bgc3jw9r0f2bkqv0m4hla7r7mxi3fzscnkjfc5cvffp3nk2gwvf")))) (build-system gnu-build-system) (arguments `(#:modules ((ice-9 ftw) @@ -377,7 +377,8 @@ precision.") (add-after 'unpack 'patch-bin-cp ;; Some Makefiles contain hard-coded "/bin/cp". (lambda _ - (substitute* (find-files "doc" "^Makefile") + (substitute* (cons "micropython-1.12/xcas/Makefile" + (find-files "doc" "^Makefile")) (("/bin/cp") (which "cp"))) #t)) (add-after 'unpack 'disable-failing-test @@ -406,7 +407,7 @@ precision.") (delete-file (string-append out "/bin/xcasnew")) #t)))))) (inputs -;;; TODO: Add libnauty. + ;; TODO: Add libnauty, unbundle "libmicropython.a". `(("fltk" ,fltk) ("glpk" ,glpk) ("gmp" ,gmp) @@ -430,6 +431,7 @@ precision.") (native-inputs `(("bison" ,bison) ("flex" ,flex) + ("python" ,python-wrapper) ("readline" ,readline) ("texlive" ,texlive-tiny))) (home-page "https://www-fourier.ujf-grenoble.fr/~parisse/giac.html") From 088347300bb4d63c3fac50364f052525a91a5400 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 29 Sep 2020 14:06:25 +0200 Subject: [PATCH 534/757] gnu: snap: Update to 6.2.1. * gnu/packages/education.scm (snap): Update to 6.2.1. --- gnu/packages/education.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm index 1c3aff9465..ff1a9e309d 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -275,7 +275,7 @@ easy.") (define-public snap (package (name "snap") - (version "6.1.4") + (version "6.2.1") (source (origin (method git-fetch) @@ -284,7 +284,7 @@ easy.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0qvnm5jg2hlf32say531m8nmp3aib93mqnllw1g289s58fzk5li6")))) + (base32 "163pskgrssw0l6c73lrdx613fridnv0162lscl4xqx9sgg7hfaxh")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) From e75443d4f28ff1aa97e545f2b47b311c3a5ac32a Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Wed, 16 Sep 2020 23:32:00 +0200 Subject: [PATCH 535/757] guix build: Add a hint for unspecified value. * guix/scripts/build.scm (options->things-to-build): Add a hint when we cannot build something. --- guix/scripts/build.scm | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm index f238e9b876..476e556618 100644 --- a/guix/scripts/build.scm +++ b/guix/scripts/build.scm @@ -38,6 +38,7 @@ #:use-module (guix monads) #:use-module (guix gexp) #:use-module (guix profiles) + #:use-module (guix diagnostics) #:autoload (guix http-client) (http-fetch http-get-error?) #:use-module (ice-9 format) #:use-module (ice-9 match) @@ -46,6 +47,7 @@ #:use-module (srfi srfi-11) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) + #:use-module (srfi srfi-35) #:use-module (srfi srfi-37) #:use-module (gnu packages) #:autoload (guix download) (download-to-store) @@ -830,7 +832,28 @@ must be one of 'package', 'all', or 'transitive'~%") build---packages, gexps, derivations, and so on." (define (validate-type x) (unless (or (derivation? x) (file-like? x) (gexp? x) (procedure? x)) - (leave (G_ "~s: not something we can build~%") x))) + (raise (make-compound-condition + (formatted-message (G_ "~s: not something we can build~%") x) + (condition + (&fix-hint + (hint + (if (unspecified? x) + (G_ "If you build from a file, make sure the last Scheme +expression returns a package value. @code{define-public} defines a variable, +but returns @code{#}. To fix this, add a Scheme expression at +the end of the file that consists only of the package's variable name you +defined, as in this example: + +@example +(define-public my-package + (package + ...)) + +my-package +@end example") + (G_ "If you build from a file, make sure the last +Scheme expression returns a package, gexp, derivation or a list of such +values."))))))))) (define (ensure-list x) (let ((lst (match x From c69156fc89ac46b7bebfb35e6ad205ed1b2e6df6 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 29 Sep 2020 15:32:38 +0200 Subject: [PATCH 536/757] nls: Fix documentation pot generation. * po/doc/local.mk: Fix POT_OPTIONS to properly assign copyright and define the proper license. --- po/doc/local.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/po/doc/local.mk b/po/doc/local.mk index 4f3ad0a37e..751ea5a45f 100644 --- a/po/doc/local.mk +++ b/po/doc/local.mk @@ -32,9 +32,9 @@ EXTRA_DIST = \ $(DOC_PO_FILES) \ $(DOC_COOKBOOK_PO_FILES) -POT_OPTIONS = --package-name "guix" --package-version "$(VERSION)" \ - --copyright-holder "Ludovic Courtès" \ - --msgid-bugs-address "ludo@gnu.org" +POT_OPTIONS = --package-name "guix manual" --package-version "$(VERSION)" \ + --copyright-holder "the authors of Guix (msgids)" \ + --msgid-bugs-address "bug-guix@gnu.org" doc-po-update-%: @lang=`echo "$@" | sed -e's/^doc-po-update-//'` ; \ From ac324be105977d531928ef7da79483ae7a461b68 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 29 Sep 2020 15:39:09 +0200 Subject: [PATCH 537/757] nls: Fix copyright and bug address in pot files. * po/guix/Makevars: Fix COPYRIGHT_HOLDER and MSGID_BUGS_ADDRESS. * po/packages/Makevars: idem. --- po/guix/Makevars | 4 ++-- po/packages/Makevars | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/po/guix/Makevars b/po/guix/Makevars index adbc8e246c..c000d1feb2 100644 --- a/po/guix/Makevars +++ b/po/guix/Makevars @@ -15,9 +15,9 @@ XGETTEXT_OPTIONS = \ --keyword=description \ --keyword=n_ -COPYRIGHT_HOLDER = Ludovic Courtès +COPYRIGHT_HOLDER = the authors of Guix (msgids) -MSGID_BUGS_ADDRESS = ludo@gnu.org +MSGID_BUGS_ADDRESS = bug-guix@gnu.org EXTRA_LOCALE_CATEGORIES = diff --git a/po/packages/Makevars b/po/packages/Makevars index c29f3d306c..39366fbee9 100644 --- a/po/packages/Makevars +++ b/po/packages/Makevars @@ -12,9 +12,9 @@ XGETTEXT_OPTIONS = \ --language=Scheme --from-code=UTF-8 \ --keyword=synopsis --keyword=description -COPYRIGHT_HOLDER = Ludovic Courtès +COPYRIGHT_HOLDER = the authors of Guix (msgids) -MSGID_BUGS_ADDRESS = ludo@gnu.org +MSGID_BUGS_ADDRESS = bug-guix@gnu.org EXTRA_LOCALE_CATEGORIES = From d692ebf98077d6b651d426aba92bf2a38599c4dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 26 Sep 2020 16:50:49 +0200 Subject: [PATCH 538/757] services: hurd-vm: Run QEMU as an unprivileged user. Until qemu was running as "root", which is unnecessary. * gnu/services/virtualization.scm (%hurd-vm-accounts): New variable. (hurd-vm-service-type)[extensions]: Add ACCOUNT-SERVICE-TYPE extension. --- gnu/services/virtualization.scm | 43 +++++++++++++++++++++++---------- 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index 20e104f48c..55a19d7af9 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -959,28 +959,45 @@ is added to the OS specified in CONFIG." (with-imported-modules (source-module-closure '((gnu build secret-service) (guix build utils))) - #~(let ((spawn (make-forkexec-constructor #$vm-command))) - (lambda _ - (let ((pid (spawn)) - (port #$(hurd-vm-port config %hurd-vm-secrets-port)) - (root #$(hurd-vm-configuration-secret-root config))) - (catch #t - (lambda _ - (secret-service-send-secrets port root)) - (lambda (key . args) - (kill (- pid) SIGTERM) - (apply throw key args))) - pid))))) + #~(lambda () + (let ((pid (fork+exec-command #$vm-command + #:user "childhurd" + #:group "childhurd" + #:environment-variables + ;; QEMU tries to write to /var/tmp + ;; by default. + '("TMPDIR=/tmp"))) + (port #$(hurd-vm-port config %hurd-vm-secrets-port)) + (root #$(hurd-vm-configuration-secret-root config))) + (catch #t + (lambda _ + (secret-service-send-secrets port root) + pid) + (lambda (key . args) + (kill (- pid) SIGTERM) + (apply throw key args))))))) (modules `((gnu build secret-service) (guix build utils) ,@%default-modules)) (stop #~(make-kill-destructor)))))) +(define %hurd-vm-accounts + (list (user-group (name "childhurd") (system? #t)) + (user-account + (name "childhurd") + (group "childhurd") + (comment "Privilege separation user for the childhurd") + (home-directory "/var/empty") + (shell (file-append shadow "/sbin/nologin")) + (system? #t)))) + (define hurd-vm-service-type (service-type (name 'hurd-vm) (extensions (list (service-extension shepherd-root-service-type - hurd-vm-shepherd-service))) + hurd-vm-shepherd-service) + (service-extension account-service-type + (const %hurd-vm-accounts)))) (default-value (hurd-vm-configuration)) (description "Provide a Virtual Machine running the GNU/Hurd."))) From dabb00ffee94cea6e2fbd3b356eb57f5292fdb27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 26 Sep 2020 16:55:16 +0200 Subject: [PATCH 539/757] services: childhurd: Tweak description. * gnu/services/virtualization.scm (hurd-vm-service-type)[description]: Mention "childhurd". --- gnu/services/virtualization.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index 55a19d7af9..d184eea746 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -1000,4 +1000,5 @@ is added to the OS specified in CONFIG." (const %hurd-vm-accounts)))) (default-value (hurd-vm-configuration)) (description - "Provide a Virtual Machine running the GNU/Hurd."))) + "Provide a virtual machine (VM) running GNU/Hurd, also known as a +@dfn{childhurd}."))) From 118b6dbb46ff3376db7467301fe59673c042d220 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 26 Sep 2020 22:39:32 +0200 Subject: [PATCH 540/757] secret-service: Clarify the origin of messages. * gnu/build/secret-service.scm (secret-service-send-secrets) (secret-service-receive-secrets): Prefix messages by "secret service". --- gnu/build/secret-service.scm | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/gnu/build/secret-service.scm b/gnu/build/secret-service.scm index 781651e90d..aafb1684b5 100644 --- a/gnu/build/secret-service.scm +++ b/gnu/build/secret-service.scm @@ -54,11 +54,14 @@ local PORT. If connect fails, sleep 1s and retry RETRY times." (lambda (key . args) (when (zero? retry) (apply throw key args)) - (format (current-error-port) "retrying connection~%") + (format (current-error-port) + "secret service: retrying connection [~a attempts left]~%" + (- retry 1)) (sleep 1) (loop (1- retry))))) - (format (current-error-port) "connected! sending files in ~s %~" + (format (current-error-port) + "secret service: connected; sending files in ~s~%" secret-root) (let* ((files (if secret-root (find-files secret-root) '())) (files-sizes-modes (map file->file+size+mode files)) @@ -82,11 +85,12 @@ Write them to the file system." (bind sock AF_INET INADDR_ANY port) (listen sock 1) (format (current-error-port) - "waiting for secrets on port ~a...~%" + "secret service: waiting for secrets on port ~a...~%" port) (match (accept sock) ((client . address) - (format (current-error-port) "client connection from ~a~%" + (format (current-error-port) + "secret service: client connection from ~a~%" (inet-ntop (sockaddr:fam address) (sockaddr:addr address))) (close-port sock) @@ -116,7 +120,8 @@ Write them to the file system." ('files ((files sizes modes) ...))) (for-each (lambda (file size mode) (format (current-error-port) - "installing file '~a' (~a bytes)...~%" + "secret service: \ +installing file '~a' (~a bytes)...~%" file size) (mkdir-p (dirname file)) (call-with-output-file file @@ -126,7 +131,7 @@ Write them to the file system." files sizes modes)) (_ (format (current-error-port) - "invalid secrets received~%") + "secret service: invalid secrets received~%") #f))) (let* ((port (wait-for-client port)) From 8ac318068b22b34fbee9980e607020f45a5b549e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 26 Sep 2020 22:45:01 +0200 Subject: [PATCH 541/757] services: hurd-vm: Check whether /dev/kvm exists at run time. This change allows a childhurd to run within Guix System in a VM. * gnu/services/virtualization.scm (hurd-vm-shepherd-service)[vm-command]: Stage the 'file-exists?' call. --- gnu/services/virtualization.scm | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index d184eea746..b84203ad18 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -937,13 +937,14 @@ is added to the OS specified in CONFIG." (provisions '(hurd-vm childhurd))) (define vm-command - #~(list - (string-append #$qemu "/bin/qemu-system-i386") - #$@(if (file-exists? "/dev/kvm") '("--enable-kvm") '()) - "-m" (number->string #$memory-size) - #$@net-options - #$@options - "--hda" #+image)) + #~(append (list #$(file-append qemu "/bin/qemu-system-i386") + "-m" (number->string #$memory-size) + #$@net-options + #$@options + "--hda" #+image) + (if (file-exists? "/dev/kvm") + '("--enable-kvm") + '()))) (list (shepherd-service From d367a7f3d00de20d5c6a88123297f878b3044fee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 27 Sep 2020 14:55:32 +0200 Subject: [PATCH 542/757] services: guix: Generate key pair if needed during activation. * gnu/services/base.scm (guix-activation): Invoke "guix archive --generate-key". * doc/guix.texi (Invoking guix archive) (Invoking guix deploy): Mention that 'guix-service-type' takes care of generating the key pair. --- doc/guix.texi | 11 +++++++---- gnu/services/base.scm | 13 +++++++++---- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 452453241c..e6f04e1413 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -4600,9 +4600,11 @@ the store. @item --generate-key[=@var{parameters}] @cindex signing, archives Generate a new key pair for the daemon. This is a prerequisite before -archives can be exported with @option{--export}. Note that this -operation usually takes time, because it needs to gather enough entropy -to generate the key pair. +archives can be exported with @option{--export}. This +operation is usually instantaneous but it can take time if the system's +entropy pool needs to be refilled. On Guix System, +@code{guix-service-type} takes care of generating this key pair the +first boot. The generated key pair is typically stored under @file{/etc/guix}, in @file{signing-key.pub} (public key) and @file{signing-key.sec} (private @@ -29684,7 +29686,8 @@ a Virtual Private Server (VPS) provider. In such a case, a different Do note that you first need to generate a key pair on the coordinator machine to allow the daemon to export signed archives of files from the store -(@pxref{Invoking guix archive}). +(@pxref{Invoking guix archive}), though this step is automatic on Guix +System: @example # guix archive --generate-key diff --git a/gnu/services/base.scm b/gnu/services/base.scm index bef4eef241..04bc991356 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1653,10 +1653,15 @@ proxy of 'guix-daemon'...~%") ;; otherwise call 'chown' here, but the problem is that on a COW overlayfs, ;; chown leads to an entire copy of the tree, which is a bad idea. - ;; Optionally authorize substitute server keys. - (if authorize-key? - (substitute-key-authorization keys guix) - #~#f)))) + ;; Generate a key pair and optionally authorize substitute server keys. + #~(begin + (unless (file-exists? "/etc/guix/signing-key.pub") + (system* #$(file-append guix "/bin/guix") "archive" + "--generate-key")) + + #$(if authorize-key? + (substitute-key-authorization keys guix) + #~#f))))) (define* (references-file item #:optional (name "references")) "Return a file that contains the list of references of ITEM." From 37283f9f3e0130e262e0e4e0dc4b260471bc485b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 27 Sep 2020 15:14:36 +0200 Subject: [PATCH 543/757] services: hurd-vm: Initialize the guest's SSH/Guix keys at activation time. * gnu/services/virtualization.scm (initialize-hurd-vm-substitutes) (hurd-vm-activation): New procedures. (hurd-vm-service-type)[extensions]: Add ACTIVATION-SERVICE-TYPE extension. * doc/guix.texi (Transparent Emulation with QEMU): Mention GNU/Hurd. (The Hurd in a Virtual Machine): Explain which files are automatically installed and mention offloading. --- doc/guix.texi | 33 ++++++++++++++-- gnu/services/virtualization.scm | 67 ++++++++++++++++++++++++++++++++- 2 files changed, 96 insertions(+), 4 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index e6f04e1413..ff2e582347 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -25445,6 +25445,8 @@ emulation of program binaries built for different architectures---e.g., it allows you to transparently execute an ARMv7 program on an x86_64 machine. It achieves this by combining the @uref{https://www.qemu.org, QEMU} emulator and the @code{binfmt_misc} feature of the kernel Linux. +This feature only allows you to emulate GNU/Linux on a different +architecture, but see below for GNU/Hurd support. @defvr {Scheme Variable} qemu-binfmt-service-type This is the type of the QEMU/binfmt service for transparent emulation. @@ -25647,10 +25649,11 @@ If the @file{/etc/childhurd} directory does not exist, the @code{secret-service} running in the Childhurd will be sent an empty list of secrets. -Typical use to populate @file{"/etc/childhurd"} with a tree of -non-volatile secrets, like so +By default, the service automatically populates @file{/etc/childhurd} +with the following non-volatile secrets, unless they already exist: @example +/etc/childhurd/etc/guix/acl /etc/childhurd/etc/guix/signing-key.pub /etc/childhurd/etc/guix/signing-key.sec /etc/childhurd/etc/ssh/ssh_host_ed25519_key @@ -25659,8 +25662,32 @@ non-volatile secrets, like so /etc/childhurd/etc/ssh/ssh_host_ecdsa_key.pub @end example -to be sent to the Childhurd, including permissions. +These files are automatically sent to the guest Hurd VM when it boots, +including permissions. +@cindex childhurd, offloading +@cindex Hurd, offloading +Having these files in place means that only a couple of things are +missing to allow the host to offload @code{i586-gnu} builds to the +childhurd: + +@enumerate +@item +Authorizing the childhurd's key on the host so that the host accepts +build results coming from the childhurd, which can be done like so: + +@example +guix archive --authorize < \ + /etc/childhurd/etc/guix/signing-key.pub +@end example + +@item +Adding the childhurd to @file{/etc/guix/machines.scm} (@pxref{Daemon +Offload Setup}). +@end enumerate + +We're working towards making that happen automatically---get in touch +with us at @email{guix-devel@@gnu.org} to discuss it! @end table @end deftp diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index b84203ad18..c639fa3741 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -23,6 +23,7 @@ #:use-module (gnu bootloader grub) #:use-module (gnu image) #:use-module (gnu packages admin) + #:use-module (gnu packages package-management) #:use-module (gnu packages ssh) #:use-module (gnu packages virtualization) #:use-module (gnu services base) @@ -992,13 +993,77 @@ is added to the OS specified in CONFIG." (shell (file-append shadow "/sbin/nologin")) (system? #t)))) +(define (initialize-hurd-vm-substitutes) + "Initialize the Hurd VM's key pair and ACL and store it on the host." + (define run + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils) + (ice-9 match)) + + (define host-key + "/etc/guix/signing-key.pub") + + (define host-acl + "/etc/guix/acl") + + (match (command-line) + ((_ guest-config-directory) + (setenv "GUIX_CONFIGURATION_DIRECTORY" + guest-config-directory) + (invoke #+(file-append guix "/bin/guix") "archive" + "--generate-key") + + (when (file-exists? host-acl) + ;; Copy the host ACL. + (copy-file host-acl + (string-append guest-config-directory + "/acl"))) + + (when (file-exists? host-key) + ;; Add the host key to the childhurd's ACL. + (let ((key (open-fdes host-key O_RDONLY))) + (close-fdes 0) + (dup2 key 0) + (execl #+(file-append guix "/bin/guix") + "guix" "archive" "--authorize")))))))) + + (program-file "initialize-hurd-vm-substitutes" run)) + +(define (hurd-vm-activation config) + "Return a gexp to activate the Hurd VM according to CONFIG." + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) + + (define secret-directory + #$(hurd-vm-configuration-secret-root config)) + + (define ssh-directory + (string-append secret-directory "/etc/ssh")) + + (define guix-directory + (string-append secret-directory "/etc/guix")) + + (unless (file-exists? ssh-directory) + ;; Generate SSH host keys under SSH-DIRECTORY. + (mkdir-p ssh-directory) + (invoke #$(file-append openssh "/bin/ssh-keygen") + "-A" "-f" secret-directory)) + + (unless (file-exists? guix-directory) + (invoke #$(initialize-hurd-vm-substitutes) + guix-directory))))) + (define hurd-vm-service-type (service-type (name 'hurd-vm) (extensions (list (service-extension shepherd-root-service-type hurd-vm-shepherd-service) (service-extension account-service-type - (const %hurd-vm-accounts)))) + (const %hurd-vm-accounts)) + (service-extension activation-service-type + hurd-vm-activation))) (default-value (hurd-vm-configuration)) (description "Provide a virtual machine (VM) running GNU/Hurd, also known as a From 1edb7c7eec88904afae49b6b399ff23bbb4d2a28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 27 Sep 2020 16:00:01 +0200 Subject: [PATCH 544/757] services: hurd-vm: Pass "-no-reboot" when spawning the Hurd VM. * gnu/services/virtualization.scm (hurd-vm-shepherd-service)[vm-command]: Add "--no-reboot". --- gnu/services/virtualization.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index c639fa3741..a50cf8b733 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -942,7 +942,12 @@ is added to the OS specified in CONFIG." "-m" (number->string #$memory-size) #$@net-options #$@options - "--hda" #+image) + "--hda" #+image + + ;; Cause the service to be respawned if the guest + ;; reboots (it can reboot for instance if it did not + ;; receive valid secrets, or if it crashed.) + "--no-reboot") (if (file-exists? "/dev/kvm") '("--enable-kvm") '()))) From 4d047853da76dc5fa5dd50ecb750c861342ef47b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 27 Sep 2020 17:21:16 +0200 Subject: [PATCH 545/757] secret-service: Add a timeout when waiting for a client. * gnu/build/secret-service.scm (secret-service-receive-secrets) [wait-for-client]: Call 'select' with a 60s timeout before 'accept'. Return #f upon timeout. [read-secrets]: Return FILES on success. Adjust caller of 'wait-for-client' to handle #f. --- gnu/build/secret-service.scm | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/gnu/build/secret-service.scm b/gnu/build/secret-service.scm index aafb1684b5..40c24abf09 100644 --- a/gnu/build/secret-service.scm +++ b/gnu/build/secret-service.scm @@ -75,7 +75,8 @@ local PORT. If connect fails, sleep 1s and retry RETRY times." (define (secret-service-receive-secrets port) "Listen to local PORT and wait for a secret service client to send secrets. -Write them to the file system." +Write them to the file system. Return the list of files installed on success, +and #f otherwise." (define (wait-for-client port) ;; Wait for a TCP connection on PORT. Note: We cannot use the @@ -87,14 +88,20 @@ Write them to the file system." (format (current-error-port) "secret service: waiting for secrets on port ~a...~%" port) - (match (accept sock) - ((client . address) + (match (select (list sock) '() '() 60) + (((_) () ()) + (match (accept sock) + ((client . address) + (format (current-error-port) + "secret service: client connection from ~a~%" + (inet-ntop (sockaddr:fam address) + (sockaddr:addr address))) + (close-port sock) + client))) + ((() () ()) (format (current-error-port) - "secret service: client connection from ~a~%" - (inet-ntop (sockaddr:fam address) - (sockaddr:addr address))) - (close-port sock) - client)))) + "secret service: did not receive any secrets; time out~%") + #f)))) ;; TODO: Remove when (@ (guix build utils) dump-port) has a 'size' ;; parameter. @@ -128,15 +135,17 @@ installing file '~a' (~a bytes)...~%" (lambda (output) (dump port output size) (chmod file mode)))) - files sizes modes)) + files sizes modes) + files) (_ (format (current-error-port) "secret service: invalid secrets received~%") #f))) - (let* ((port (wait-for-client port)) - (result (read-secrets port))) - (close-port port) + (let* ((port (wait-for-client port)) + (result (and=> port read-secrets))) + (when port + (close-port port)) result)) ;;; secret-service.scm ends here From f9090015c58e6f47be74fe6116ef10a90378a899 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 29 Sep 2020 09:35:35 +0200 Subject: [PATCH 546/757] secret-service: Fix file port leak in 'secret-service-send-secrets'. * gnu/build/secret-service.scm (secret-service-send-secrets): Use 'call-with-input-file' instead of 'open-input-file'. --- gnu/build/secret-service.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/build/secret-service.scm b/gnu/build/secret-service.scm index 40c24abf09..6697e6e1b0 100644 --- a/gnu/build/secret-service.scm +++ b/gnu/build/secret-service.scm @@ -69,8 +69,10 @@ local PORT. If connect fails, sleep 1s and retry RETRY times." (version 0) (files ,files-sizes-modes)))) (write secrets sock) - (for-each (compose (cute dump-port <> sock) - (cute open-input-file <>)) + (for-each (lambda (file) + (call-with-input-file file + (lambda (input) + (dump-port input sock)))) files)))) (define (secret-service-receive-secrets port) From e352706ad39a4d14fe9601785bd2fa9d168ad05e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 29 Sep 2020 11:13:20 +0200 Subject: [PATCH 547/757] services: secret-service: Move instance last in the list of services. * gnu/services/virtualization.scm (secret-service-operating-system): Add the SECRET-SERVICE-TYPE instance to the end of the list. --- gnu/services/virtualization.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index a50cf8b733..2410be450b 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -841,8 +841,12 @@ can only be accessed by their host."))) that will be listening to receive secret keys on port 1004, TCP." (operating-system (inherit os) - (services (cons (service secret-service-type 1004) - (operating-system-user-services os))))) + ;; Arrange so that the secret service activation snippet shows up before + ;; the OpenSSH and Guix activation snippets. That way, we receive OpenSSH + ;; and Guix keys before the activation snippets try to generate fresh keys + ;; for nothing. + (services (append (operating-system-user-services os) + (list (service secret-service-type 1004)))))) ;;; From 59261a22f9819b1fdf797ffba17af17d385d6c92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 29 Sep 2020 11:45:55 +0200 Subject: [PATCH 548/757] services: secret-service: Add initial client/server handshake. This allows the client running on the host to know when it's actually connect to the server running in the guest. Failing that, the client would connect right away to QEMU and send secrets even though the server is not running yet in the guest, which is unreliable. * gnu/build/secret-service.scm (secret-service-send-secrets): Add #:handshake-timeout. Read from SOCK an initial message from the server. Return #f on error. (secret-service-receive-secrets): Send 'secret-service-server' message to the client. Close SOCK upon timeout. * gnu/services/virtualization.scm (hurd-vm-shepherd-service): 'start' method returns #f when 'secret-service-send-secrets' returns #f. --- gnu/build/secret-service.scm | 75 +++++++++++++++++++++++++-------- gnu/services/virtualization.scm | 11 ++++- 2 files changed, 67 insertions(+), 19 deletions(-) diff --git a/gnu/build/secret-service.scm b/gnu/build/secret-service.scm index 6697e6e1b0..2cc59e0ee1 100644 --- a/gnu/build/secret-service.scm +++ b/gnu/build/secret-service.scm @@ -35,19 +35,37 @@ ;;; ;;; Code: -(define* (secret-service-send-secrets port secret-root #:key (retry 60)) +(define* (secret-service-send-secrets port secret-root + #:key (retry 60) + (handshake-timeout 120)) "Copy all files under SECRET-ROOT using TCP to secret-service listening at -local PORT. If connect fails, sleep 1s and retry RETRY times." - +local PORT. If connect fails, sleep 1s and retry RETRY times; once connected, +wait for at most HANDSHAKE-TIMEOUT seconds for handshake to complete. Return +#f on failure." (define (file->file+size+mode file-name) (let ((stat (stat file-name)) (target (substring file-name (string-length secret-root)))) (list target (stat:size stat) (stat:mode stat)))) + (define (send-files sock) + (let* ((files (if secret-root (find-files secret-root) '())) + (files-sizes-modes (map file->file+size+mode files)) + (secrets `(secrets + (version 0) + (files ,files-sizes-modes)))) + (write secrets sock) + (for-each (lambda (file) + (call-with-input-file file + (lambda (input) + (dump-port input sock)))) + files))) + (format (current-error-port) "sending secrets to ~a~%" port) (let ((sock (socket AF_INET SOCK_STREAM 0)) (addr (make-socket-address AF_INET INADDR_LOOPBACK port))) - ;; connect to wait for port + ;; Connect to QEMU on the forwarded port. The 'connect' call succeeds as + ;; soon as QEMU is ready, even if there's no server listening on the + ;; forward port inside the guest. (let loop ((retry retry)) (catch 'system-error (cute connect sock addr) @@ -61,19 +79,35 @@ local PORT. If connect fails, sleep 1s and retry RETRY times." (loop (1- retry))))) (format (current-error-port) - "secret service: connected; sending files in ~s~%" - secret-root) - (let* ((files (if secret-root (find-files secret-root) '())) - (files-sizes-modes (map file->file+size+mode files)) - (secrets `(secrets - (version 0) - (files ,files-sizes-modes)))) - (write secrets sock) - (for-each (lambda (file) - (call-with-input-file file - (lambda (input) - (dump-port input sock)))) - files)))) + "secret service: connected; waiting for handshake...~%") + + ;; Wait for "hello" message from the server. This is the only way to know + ;; that we're really connected to the server inside the guest. + (match (select (list sock) '() '() handshake-timeout) + (((_) () ()) + (match (read sock) + (('secret-service-server ('version version ...)) + (format (current-error-port) + "secret service: sending files from ~s...~%" + secret-root) + (send-files sock) + (format (current-error-port) + "secret service: done sending files to port ~a~%" + port) + (close-port sock) + secret-root) + (x + (format (current-error-port) + "secret service: invalid handshake ~s~%" + x) + (close-port sock) + #f))) + ((() () ()) ;timeout + (format (current-error-port) + "secret service: timeout while sending files to ~a~%" + port) + (close-port sock) + #f)))) (define (secret-service-receive-secrets port) "Listen to local PORT and wait for a secret service client to send secrets. @@ -98,11 +132,18 @@ and #f otherwise." "secret service: client connection from ~a~%" (inet-ntop (sockaddr:fam address) (sockaddr:addr address))) + + ;; Send a "hello" message. This allows the client running on the + ;; host to know that it's now actually connected to server running + ;; in the guest. + (write '(secret-service-server (version 0)) client) + (force-output client) (close-port sock) client))) ((() () ()) (format (current-error-port) "secret service: did not receive any secrets; time out~%") + (close-port sock) #f)))) ;; TODO: Remove when (@ (guix build utils) dump-port) has a 'size' diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index 2410be450b..7e2f5a1490 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -982,8 +982,15 @@ is added to the OS specified in CONFIG." (root #$(hurd-vm-configuration-secret-root config))) (catch #t (lambda _ - (secret-service-send-secrets port root) - pid) + ;; XXX: 'secret-service-send-secrets' won't complete until + ;; the guest has booted and its secret service server is + ;; running, which could take 20+ seconds during which PID 1 + ;; is stuck waiting. + (if (secret-service-send-secrets port root) + pid + (begin + (kill (- pid) SIGTERM) + #f))) (lambda (key . args) (kill (- pid) SIGTERM) (apply throw key args))))))) From d5366500ec1aeecad6fc292b195088e30aa715fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 29 Sep 2020 12:02:09 +0200 Subject: [PATCH 549/757] secret-service: Add proper logging procedure and log to syslog. * gnu/build/secret-service.scm (log): New macro. (secret-service-send-secrets, secret-service-receive-secrets): Use it instead of raw 'format' calls. --- gnu/build/secret-service.scm | 62 +++++++++++++++++------------------- 1 file changed, 29 insertions(+), 33 deletions(-) diff --git a/gnu/build/secret-service.scm b/gnu/build/secret-service.scm index 2cc59e0ee1..46dcf1b9c3 100644 --- a/gnu/build/secret-service.scm +++ b/gnu/build/secret-service.scm @@ -35,6 +35,18 @@ ;;; ;;; Code: +(define-syntax log + (lambda (s) + "Log the given message." + (syntax-case s () + ((_ fmt args ...) + (with-syntax ((fmt (string-append "secret service: " + (syntax->datum #'fmt)))) + ;; Log to the current output port. That way, when + ;; 'secret-service-send-secrets' is called from shepherd, output goes + ;; to syslog. + #'(format (current-output-port) fmt args ...)))))) + (define* (secret-service-send-secrets port secret-root #:key (retry 60) (handshake-timeout 120)) @@ -60,7 +72,7 @@ wait for at most HANDSHAKE-TIMEOUT seconds for handshake to complete. Return (dump-port input sock)))) files))) - (format (current-error-port) "sending secrets to ~a~%" port) + (log "sending secrets to ~a~%" port) (let ((sock (socket AF_INET SOCK_STREAM 0)) (addr (make-socket-address AF_INET INADDR_LOOPBACK port))) ;; Connect to QEMU on the forwarded port. The 'connect' call succeeds as @@ -72,14 +84,12 @@ wait for at most HANDSHAKE-TIMEOUT seconds for handshake to complete. Return (lambda (key . args) (when (zero? retry) (apply throw key args)) - (format (current-error-port) - "secret service: retrying connection [~a attempts left]~%" - (- retry 1)) + (log "retrying connection [~a attempts left]~%" + (- retry 1)) (sleep 1) (loop (1- retry))))) - (format (current-error-port) - "secret service: connected; waiting for handshake...~%") + (log "connected; waiting for handshake...~%") ;; Wait for "hello" message from the server. This is the only way to know ;; that we're really connected to the server inside the guest. @@ -87,25 +97,17 @@ wait for at most HANDSHAKE-TIMEOUT seconds for handshake to complete. Return (((_) () ()) (match (read sock) (('secret-service-server ('version version ...)) - (format (current-error-port) - "secret service: sending files from ~s...~%" - secret-root) + (log "sending files from ~s...~%" secret-root) (send-files sock) - (format (current-error-port) - "secret service: done sending files to port ~a~%" - port) + (log "done sending files to port ~a~%" port) (close-port sock) secret-root) (x - (format (current-error-port) - "secret service: invalid handshake ~s~%" - x) + (log "invalid handshake ~s~%" x) (close-port sock) #f))) ((() () ()) ;timeout - (format (current-error-port) - "secret service: timeout while sending files to ~a~%" - port) + (log "timeout while sending files to ~a~%" port) (close-port sock) #f)))) @@ -121,17 +123,14 @@ and #f otherwise." (let ((sock (socket AF_INET SOCK_STREAM 0))) (bind sock AF_INET INADDR_ANY port) (listen sock 1) - (format (current-error-port) - "secret service: waiting for secrets on port ~a...~%" - port) + (log "waiting for secrets on port ~a...~%" port) (match (select (list sock) '() '() 60) (((_) () ()) (match (accept sock) ((client . address) - (format (current-error-port) - "secret service: client connection from ~a~%" - (inet-ntop (sockaddr:fam address) - (sockaddr:addr address))) + (log "client connection from ~a~%" + (inet-ntop (sockaddr:fam address) + (sockaddr:addr address))) ;; Send a "hello" message. This allows the client running on the ;; host to know that it's now actually connected to server running @@ -141,8 +140,7 @@ and #f otherwise." (close-port sock) client))) ((() () ()) - (format (current-error-port) - "secret service: did not receive any secrets; time out~%") + (log "did not receive any secrets; time out~%") (close-port sock) #f)))) @@ -169,20 +167,18 @@ and #f otherwise." (('secrets ('version 0) ('files ((files sizes modes) ...))) (for-each (lambda (file size mode) - (format (current-error-port) - "secret service: \ -installing file '~a' (~a bytes)...~%" - file size) + (log "installing file '~a' (~a bytes)...~%" + file size) (mkdir-p (dirname file)) (call-with-output-file file (lambda (output) (dump port output size) (chmod file mode)))) files sizes modes) + (log "received ~a secret files~%" (length files)) files) (_ - (format (current-error-port) - "secret service: invalid secrets received~%") + (log "invalid secrets received~%") #f))) (let* ((port (wait-for-client port)) From c11c19bd4d0dc4ec56b949647057dbf00567f2ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 29 Sep 2020 21:33:49 +0200 Subject: [PATCH 550/757] services: hurd-vm: Add system test. * gnu/tests/virtualization.scm (%childhurd-os): New variable. (run-childhurd-test): New procedure. (%test-childhurd): New variable. --- gnu/tests/virtualization.scm | 141 ++++++++++++++++++++++++++++++++++- 1 file changed, 140 insertions(+), 1 deletion(-) diff --git a/gnu/tests/virtualization.scm b/gnu/tests/virtualization.scm index fbdec20805..9d381695be 100644 --- a/gnu/tests/virtualization.scm +++ b/gnu/tests/virtualization.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 Christopher Baines +;;; Copyright © 2020 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,9 +27,16 @@ #:use-module (gnu services networking) #:use-module (gnu services virtualization) #:use-module (gnu packages virtualization) + #:use-module (gnu packages ssh) #:use-module (guix gexp) #:use-module (guix store) - #:export (%test-libvirt)) + #:export (%test-libvirt + %test-childhurd)) + + +;;; +;;; Libvirt. +;;; (define %libvirt-os (simple-operating-system @@ -93,3 +101,134 @@ (name "libvirt") (description "Connect to the running LIBVIRT service.") (value (run-libvirt-test)))) + + +;;; +;;; GNU/Hurd virtual machines, aka. childhurds. +;;; + +(define %childhurd-os + (simple-operating-system + (service dhcp-client-service-type) + (service hurd-vm-service-type))) + +(define (run-childhurd-test) + (define os + (marionette-operating-system + %childhurd-os + #:imported-modules '((gnu services herd) + (guix combinators)))) + + (define vm + (virtual-machine + (operating-system os) + (memory-size (* 1024 3)))) + + (define run-uname-over-ssh + ;; Program that runs 'uname' over SSH and prints the result on standard + ;; output. + (let () + (define run + (with-extensions (list guile-ssh) + #~(begin + (use-modules (ssh session) + (ssh auth) + (ssh popen) + (ice-9 match) + (ice-9 textual-ports)) + + (let ((session (make-session #:user "root" + #:port 10022 + #:host "localhost" + #:log-verbosity 'rare))) + (match (connect! session) + ('ok + (userauth-password! session "") + (display + (get-string-all + (open-remote-input-pipe* session "uname" "-on")))) + (status + (error "could not connect to childhurd over SSH" + session status))))))) + + (program-file "run-uname-over-ssh" run))) + + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-64) + (ice-9 match)) + + (define marionette + (make-marionette (list #$vm))) + + (mkdir #$output) + (chdir #$output) + + (test-begin "childhurd") + + (test-assert "service running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (match (start-service 'childhurd) + (#f #f) + (('service response-parts ...) + (match (assq-ref response-parts 'running) + ((pid) (number? pid)))))) + marionette)) + + (test-equal "childhurd SSH server replies" + "SSH" + ;; Check from within the guest whether its childhurd's SSH + ;; server is reachable. Do that from the guest: port forwarding + ;; to the host won't work because QEMU listens on 127.0.0.1. + (marionette-eval + '(begin + (use-modules (ice-9 match)) + + (let loop ((n 60)) + (if (zero? n) + 'all-attempts-failed + (let ((s (socket PF_INET SOCK_STREAM 0)) + (a (make-socket-address AF_INET + INADDR_LOOPBACK + 10022))) + (format #t "connecting to childhurd SSH server...~%") + (connect s a) + (match (get-string-n s 3) + ((? eof-object?) + (close-port s) + (sleep 1) + (loop (- n 1))) + (str + (close-port s) + str)))))) + marionette)) + + (test-equal "SSH up and running" + "childhurd GNU\n" + + ;; Connect from the guest to the chidhurd over SSH and run the + ;; 'uname' command. + (marionette-eval + '(begin + (use-modules (ice-9 popen)) + + (get-string-all + (open-input-pipe #$run-uname-over-ssh))) + marionette)) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "childhurd-test" test)) + +(define %test-childhurd + (system-test + (name "childhurd") + (description + "Connect to the GNU/Hurd virtual machine service, aka. a childhurd, making +sure that the childhurd boots and runs its SSH server.") + (value (run-childhurd-test)))) From c99845c0d81f1503db1c6ca732f659a61e4da0d4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 29 Sep 2020 22:02:07 +0200 Subject: [PATCH 551/757] gnu: claws-mail: Update to 3.17.7. * gnu/packages/mail.scm (claws-mail): Update to 3.17.7. --- gnu/packages/mail.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 70e2fcd76b..b7267245e4 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1316,7 +1316,7 @@ compresses it.") (define-public claws-mail (package (name "claws-mail") - (version "3.17.6") + (version "3.17.7") (source (origin (method url-fetch) (uri (string-append @@ -1324,7 +1324,7 @@ compresses it.") ".tar.xz")) (sha256 (base32 - "1s05qw0r0gqwvvkxvrrwbjkbi61dvilixiwrpgcq21qc9csc9r0m")))) + "1j6x09621wng0lavh53nwzh9vqjzpspl8kh5azh7kbihpi4ldfb0")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("bogofilter" ,bogofilter) From 680b80e37453d4e23ad8188d60894916e1c07162 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Tue, 29 Sep 2020 10:29:23 +0200 Subject: [PATCH 552/757] openpgp: Fix argument order of 'fxbit-set?'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * guix/openpgp.scm (fxbit-set?): Change to swap arguments compared to 'bit-set?'. * tests/openpgp.scm (%binary-sample): New test vector. ("port-ascii-armored?, #t"): Add test. ("port-ascii-armored?, #f"): Add another test. Co-authored-by: Ludovic Courtès --- guix/openpgp.scm | 2 +- tests/openpgp.scm | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/guix/openpgp.scm b/guix/openpgp.scm index 33c851255b..153752ee73 100644 --- a/guix/openpgp.scm +++ b/guix/openpgp.scm @@ -110,7 +110,7 @@ (define-alias fx/ /) (define-alias fxdiv quotient) (define-alias fxand logand) -(define-alias fxbit-set? bit-set?) +(define-inlinable (fxbit-set? n index) (bit-set? index n)) (define-alias fxbit-field bit-field) (define-alias bitwise-bit-field bit-field) (define-alias fxarithmetic-shift-left ash) diff --git a/tests/openpgp.scm b/tests/openpgp.scm index 0beab6f88b..c2be26fa49 100644 --- a/tests/openpgp.scm +++ b/tests/openpgp.scm @@ -50,6 +50,12 @@ vBSFjNSiVHsuAA== =AAAA -----END PGP MESSAGE-----\n") +(define %binary-sample + ;; Same message as %radix-64-sample, decoded into bytevector. + (base16-string->bytevector + "c838013b6d96c411efecef17ecefe3ca0004ce8979ea250a897995f979a9\ +0ad9a9a9050a890ac5a9c945a940c1a2fcd2bc14858cd4a2547b2e00")) + (define %civodul-fingerprint "3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5") @@ -155,6 +161,12 @@ Pz7oopeN72xgggYUNT37ezqN3MeCqw0= read-radix-64)) list)) +(test-assert "port-ascii-armored?, #t" + (call-with-input-string %radix-64-sample port-ascii-armored?)) + +(test-assert "port-ascii-armored?, #f" + (not (port-ascii-armored? (open-bytevector-input-port %binary-sample)))) + (test-assert "get-openpgp-keyring" (let* ((key (search-path %load-path "tests/civodul.key")) (keyring (get-openpgp-keyring From d94be771fc2a96b7290f7b43aee2f042cbcd6ded Mon Sep 17 00:00:00 2001 From: Brendan Tildesley Date: Sun, 27 Sep 2020 15:35:02 +1000 Subject: [PATCH 553/757] gnu: wev: Use version tag instead of commit. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/freedesktop.scm (wev): Update to the 1.0.0 version tag, which happens to be the same commit anyway. Signed-off-by: Ludovic Courtès --- gnu/packages/freedesktop.scm | 64 +++++++++++++++++------------------- 1 file changed, 31 insertions(+), 33 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 721feb1e69..cfb87178fb 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -909,41 +909,39 @@ multiplexer to the KMS/DRM Linux kernel devices.") (license license:expat))) (define-public wev - ;; There simple tool has no version or release yet. - (let ((commit "cee3dfb2a8b40ee303611018c68ae182d84a7f46")) - (package - (name "wev") - (version (string-append "2020-02-06-" (string-take commit 8))) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://git.sr.ht/~sircmpwn/wev") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0l71v3fzgiiv6xkk365q1l08qvaymxd4kpaya6r2g8yzkr7i2hms")))) - (build-system gnu-build-system) - (arguments - `(#:tests? #f ; no tests - #:make-flags - (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))) - #:phases - (modify-phases %standard-phases - (delete 'configure)))) - (native-inputs - `(("pkg-config" ,pkg-config) - ("scdoc" ,scdoc))) - (inputs - `(("libxkbcommon" ,libxkbcommon) - ("wayland" ,wayland) - ("wayland-protocols" ,wayland-protocols))) - (home-page "https://git.sr.ht/~sircmpwn/wev") - (synopsis "Wayland event viewer") - (description "Wev is a tool that opens a window, printing all events + (package + (name "wev") + (version "1.0.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://git.sr.ht/~sircmpwn/wev") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0l71v3fzgiiv6xkk365q1l08qvaymxd4kpaya6r2g8yzkr7i2hms")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:make-flags + (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("scdoc" ,scdoc))) + (inputs + `(("libxkbcommon" ,libxkbcommon) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols))) + (home-page "https://git.sr.ht/~sircmpwn/wev") + (synopsis "Wayland event viewer") + (description "Wev is a tool that opens a window, printing all events sent to a Wayland window, such as key presses. It is analogous to the X11 tool XEv.") - (license license:expat)))) + (license license:expat))) (define-public exempi (package From 276144a99fb387dc53a90270bc897728960d80cf Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 29 Sep 2020 23:25:08 +0200 Subject: [PATCH 554/757] gnu: escpr: Install PPDs where CUPS can find them. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/cups.scm (escpr)[arguments]: Fix ‘--with-cupsppddir=’. --- gnu/packages/cups.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 281c2718e8..0626468d02 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -771,7 +771,7 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.") ,(string-append "--with-cupsfilterdir=" (assoc-ref %outputs "out") "/lib/cups/filter") ,(string-append "--with-cupsppddir=" - (assoc-ref %outputs "out") "/share/ppd")))) + (assoc-ref %outputs "out") "/share/cups/model")))) (inputs `(("cups" ,cups-minimal))) (synopsis "ESC/P-R printer driver") (description From 7158dc2d49329748c9ecd78bda3028ae53157a8e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 29 Sep 2020 23:29:41 +0200 Subject: [PATCH 555/757] gnu: escpr: Update to 1.7.7. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/cups.scm (escpr): Update to 1.7.7. [arguments]: Add a ‘patch-autotools-version-requirement’ phase. --- gnu/packages/cups.scm | 40 ++++++++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 0626468d02..66ae87efca 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -749,20 +749,19 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.") (define-public escpr (package (name "escpr") - (version "1.6.30") + (version "1.7.7") ;; XXX: This currently works. But it will break as soon as a newer ;; version is available since the URLs for older versions are not ;; preserved. An alternative source will be added as soon as ;; available. - (source (origin - (method url-fetch) - ;; The uri has to be chopped up in order to satisfy guix lint. - (uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/08/18/20/" - "e94de600e28e510c1cfa158929d8b2c0aadc8aa0/" - "epson-inkjet-printer-escpr-1.6.30-1lsb3.2.tar.gz")) - (sha256 - (base32 - "0m8pyfkixisp0vclwxj340isn15zzisal0v2xvv66kxfd68dzf12")))) + (source + (origin + (method url-fetch) + (uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/10/49/18/" + "f3016be6120a7271a6d9cb64872f817bce1920b8/" + "epson-inkjet-printer-escpr-1.7.7-1lsb3.2.tar.gz")) + (sha256 + (base32 "0khdf2a9iwh9aplj2gzyzl53yyfnfv0kszk3p018jnirl5l475ld")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -771,8 +770,25 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.") ,(string-append "--with-cupsfilterdir=" (assoc-ref %outputs "out") "/lib/cups/filter") ,(string-append "--with-cupsppddir=" - (assoc-ref %outputs "out") "/share/cups/model")))) - (inputs `(("cups" ,cups-minimal))) + (assoc-ref %outputs "out") "/share/cups/model")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-autotools-version-requirement + (lambda _ + (substitute* "aclocal.m4" + (("1\\.15") + ,(package-version automake))) + (substitute* "configure" + (("^(ACLOCAL=).*" _ match) + (string-append match "aclocal")) + (("^(AUTOMAKE=).*" _ match) + (string-append match "automake"))) + #t))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake))) + (inputs + `(("cups" ,cups-minimal))) (synopsis "ESC/P-R printer driver") (description "This package provides a filter for the Common UNIX Printing From cca7cbe932f7c07b4a83e4f1d1bd22b06aa81494 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Sep 2020 14:45:20 +0300 Subject: [PATCH 556/757] gnu: Add rust-once-cell-1. * gnu/packages/crates-io.scm (rust-once-cell-1): New variable. (rust-once-cell-1.2): Inherit from rust-once-cell-1. --- gnu/packages/crates-io.scm | 36 +++++++++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 7 deletions(-) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 7cb2fd40cb..a72334189c 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -16110,8 +16110,36 @@ You probably don't want to link to this crate directly; instead check out the @code{onig} crate.") (license license:expat))) +(define-public rust-once-cell-1 + (package + (name "rust-once-cell") + (version "1.4.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "once-cell" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "138n52yni5qym7ds8kxckvhdy4x0m0scy0gl74brmwsahmz1yqqb")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-parking-lot" ,rust-parking-lot-0.10)) + #:cargo-development-inputs + (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.7) + ("rust-lazy-static" ,rust-lazy-static-1) + ("rust-regex" ,rust-regex-1)))) + (home-page "https://github.com/matklad/once_cell") + (synopsis "Single assignment cells and lazy values") + (description + "Single assignment cells and lazy values.") + (license (list license:expat license:asl2.0)))) + (define-public rust-once-cell-1.2 (package + (inherit rust-once-cell-1) (name "rust-once-cell") (version "1.2.0") (source @@ -16123,7 +16151,6 @@ You probably don't want to link to this crate directly; instead check out the (sha256 (base32 "1vdz8xlg3r05w3wfjimnc347hgm54i5nrqf72r4mlp0fcdplh7w9")))) - (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs @@ -16131,12 +16158,7 @@ You probably don't want to link to this crate directly; instead check out the #:cargo-development-inputs (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6) ("rust-lazy-static" ,rust-lazy-static-1) - ("rust-regex" ,rust-regex-1)))) - (home-page "https://github.com/matklad/once_cell") - (synopsis "Single assignment cells and lazy values") - (description - "Single assignment cells and lazy values.") - (license (list license:expat license:asl2.0)))) + ("rust-regex" ,rust-regex-1)))))) (define-public rust-once-cell-0.1 (package From 51b46fa28cd31cf1cc973ef6ccd05fbef3c4b39d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Sep 2020 14:47:43 +0300 Subject: [PATCH 557/757] gnu: rust-once-cell-1.2: Replace with rust-once-cell-1. * gnu/packages/crates-io.scm (rust-once-cell-1.2): Remove variable. (rust-arc-swap-0.4, rust-duct-0.13): Adjust accordingly. * gnu/packages/gnome.scm (librsvg-next): Same. --- gnu/packages/crates-io.scm | 29 +++-------------------------- gnu/packages/gnome.scm | 2 +- 2 files changed, 4 insertions(+), 27 deletions(-) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index a72334189c..581109398d 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -703,7 +703,7 @@ text or blue underlined text, on ANSI terminals.") ("rust-itertools" ,rust-itertools-0.8) ("rust-model" ,rust-model-0.1) ("rust-num-cpus" ,rust-num-cpus-1) - ("rust-once-cell" ,rust-once-cell-1.2) + ("rust-once-cell" ,rust-once-cell-1) ("rust-proptest" ,rust-proptest-0.8) ("rust-version-sync" ,rust-version-sync-0.8)))) (home-page "https://github.com/vorner/arc-swap") @@ -6391,7 +6391,7 @@ floating-point primitives to an @code{io::Write}.") `(#:skip-build? #t #:cargo-inputs (("rust-libc" ,rust-libc-0.2) - ("rust-once-cell" ,rust-once-cell-1.2) + ("rust-once-cell" ,rust-once-cell-1) ("rust-os-pipe" ,rust-os-pipe-0.8) ("rust-shared-child" ,rust-shared-child-0.3)) #:cargo-development-inputs @@ -16137,32 +16137,9 @@ You probably don't want to link to this crate directly; instead check out the "Single assignment cells and lazy values.") (license (list license:expat license:asl2.0)))) -(define-public rust-once-cell-1.2 - (package - (inherit rust-once-cell-1) - (name "rust-once-cell") - (version "1.2.0") - (source - (origin - (method url-fetch) - (uri (crate-uri "once-cell" version)) - (file-name - (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1vdz8xlg3r05w3wfjimnc347hgm54i5nrqf72r4mlp0fcdplh7w9")))) - (arguments - `(#:skip-build? #t - #:cargo-inputs - (("rust-parking-lot" ,rust-parking-lot-0.9)) - #:cargo-development-inputs - (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6) - ("rust-lazy-static" ,rust-lazy-static-1) - ("rust-regex" ,rust-regex-1)))))) - (define-public rust-once-cell-0.1 (package - (inherit rust-once-cell-1.2) + (inherit rust-once-cell-1) (name "rust-once-cell") (version "0.1.8") (source diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 0da85fddf6..77ed6678cd 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3208,7 +3208,7 @@ library.") ("rust-markup5ever" ,rust-markup5ever-0.10) ("rust-nalgebra" ,rust-nalgebra-0.19) ("rust-num-traits" ,rust-num-traits-0.2) - ("rust-once-cell" ,rust-once-cell-1.2) + ("rust-once-cell" ,rust-once-cell-1) ("rust-pkg-config" ,rust-pkg-config-0.3) ("rust-pango" ,rust-pango-0.8) ("rust-pango-sys" ,rust-pango-sys-0.9) From c9b101f1197feab2f50a6d5d788622b7cdab37ed Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Sep 2020 08:34:23 +0300 Subject: [PATCH 558/757] gnu: rust-serde-1: Update to 1.0.113. * gnu/packages/crates-io.scm (rust-serde-1, rust-serde-derive-1, rust-serde-test-1): Update to 1.0.113. [arguments]: Don't skip build. --- gnu/packages/crates-io.scm | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 581109398d..4116d7b51b 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -23215,7 +23215,7 @@ proven statistical guarantees.") (define-public rust-serde-1 (package (name "rust-serde") - (version "1.0.105") + (version "1.0.113") (source (origin (method url-fetch) @@ -23223,11 +23223,10 @@ proven statistical guarantees.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1zrj157dxvmymp5ii60anap2qqks4pkr3fwsp71wi3sv4nzzn1z7")))) + "0smc5pj00nci5g9a9hrz9w7rs7f5cir7gvsqf54pj74qc62cfdb1")))) (build-system cargo-build-system) (arguments - `(#:skip-build? #t - #:cargo-inputs + `(#:cargo-inputs (("rust-serde-derive" ,rust-serde-derive-1)) #:cargo-development-inputs (("rust-serde-derive" ,rust-serde-derive-1)))) @@ -23471,7 +23470,7 @@ for the serde framework.") (define-public rust-serde-derive-1 (package (name "rust-serde-derive") - (version "1.0.105") + (version "1.0.113") (source (origin (method url-fetch) @@ -23479,11 +23478,10 @@ for the serde framework.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1y5gzwpy8yjv9pwh1js11vr18nfz4gg1g2kmyr6p58hvavy00pdc")))) + "0cdf4r6bwxw6cwg2fj93kwd7mypwhjfzxzyw3i4cnm09gnhymick")))) (build-system cargo-build-system) (arguments - `(#:skip-build? #t - #:cargo-inputs + `(#:cargo-inputs (("rust-proc-macro2" ,rust-proc-macro2-1) ("rust-quote" ,rust-quote-1) ("rust-syn" ,rust-syn-1)) @@ -23620,7 +23618,7 @@ for the serde framework.") (define-public rust-serde-test-1 (package (name "rust-serde-test") - (version "1.0.105") + (version "1.0.113") (source (origin (method url-fetch) @@ -23629,11 +23627,10 @@ for the serde framework.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1vnp0wld20z1wjr8qp2hxcy6yh2zhicg1mfb0qrzxgwq2a4n6raa")))) + "02s7zjs12m5abk13j5farc00rzissk1anpl015vawpzz914jsan3")))) (build-system cargo-build-system) (arguments - `(#:skip-build? #t - #:cargo-inputs + `(#:cargo-inputs (("rust-serde" ,rust-serde-1)) #:cargo-development-inputs (("rust-serde" ,rust-serde-1) From 1537587e4653f0931e001cbc81a91fb68c38677f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Sep 2020 08:43:55 +0300 Subject: [PATCH 559/757] gnu: rust-instant-0.1: Update to 0.1.4. * gnu/packages/crates-io.scm (rust-instant-0.1): Update to 0.1.4. [arguments]: Don't skip build. Skip tests. Add rust-js-sys-0.3, rust-wasm-bindgen-0.2 to cargo-inputs. --- gnu/packages/crates-io.scm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 4116d7b51b..5c31a66208 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -11734,7 +11734,7 @@ in Rust.") (define-public rust-instant-0.1 (package (name "rust-instant") - (version "0.1.2") + (version "0.1.4") (source (origin (method url-fetch) @@ -11743,13 +11743,15 @@ in Rust.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1bwca9fr29a1pyimfl94q6m6k2l57ljw1hhhvjafzs1zkqlnqd3c")))) + "10k1170waz1na056wvjvkps3lz28z9pc8kp8vpy4kpp53i5a4xvp")))) (build-system cargo-build-system) (arguments - `(#:skip-build? #t + `(#:tests? #f ; Issue during the wasm test. #:cargo-inputs - (("rust-stdweb" ,rust-stdweb-0.4) + (("rust-js-sys" ,rust-js-sys-0.3) + ("rust-stdweb" ,rust-stdweb-0.4) ("rust-time" ,rust-time-0.1) + ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2) ("rust-web-sys" ,rust-web-sys-0.3)) #:cargo-development-inputs (("rust-wasm-bindgen-test" ,rust-wasm-bindgen-test-0.2)))) From 1628d57bb5c6ab30a04202c229de642b94faac85 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Sep 2020 08:57:27 +0300 Subject: [PATCH 560/757] gnu: Fix package references. * gnu/packages/algebra.scm (iml)[inputs]: Correctly refer to package inputs. * gnu/packages/astronomy.scm (xplanet), * gnu/packages/audio.scm (redkite, libaudec, lv2lint, lv2toweb), * gnu/packages/bioconductor.scm (r-cummerbund), * gnu/packages/chicken.scm (chicken), * gnu/packages/conky.scm (conky), * gnu/packages/cran.scm (r-latex2exp), * gnu/packages/crates-io.scm (rust-rgb), * gnu/packages/databases.scm (mariadb), * gnu/packages/diffoscope.scm (reprotest), * gnu/packages/file-systems.scm (glusterfs), * gnu/packages/finance.scm (electron-cash), * gnu/packages/games.scm (rinutils, ksudoku, kdiamond, kigo), * gnu/packages/geo.scm (grass), * gnu/packages/gnome.scm (libmediaart, gnome-contacts, geoclue), * gnu/packages/gnucash.scm (aqbanking), * gnu/packages/image.scm (mtpaint), * gnu/packages/kde-internet.scm (kopete, ktorrent), * gnu/packages/kde-utils.scm (kmousetool, kmouth, kronometer), * gnu/packages/linphone.scm (liblinphone), * gnu/packages/maths.scm (ppl), * gnu/packages/mercury.scm (mercury-minimal), * gnu/packages/music.scm (bjumblr, bschaffl, lsp-plugins, spectacle-analyzer, helm, tap-lv2, wolf-shaper, shiru-lv2), * gnu/packages/networking.scm (restinio), * gnu/packages/prolog.scm (swi-prolog), * gnu/packages/python-web.scm (gunicorn), * gnu/packages/python-xyz.scm (python-docusign-esign), * gnu/packages/ruby.scm (ruby-cucumber, ruby_version, ruby-addressable), * gnu/packages/sagemath.scm (python-cypari2), * gnu/packages/skarnet.scm (s6-linux-init), * gnu/packages/vpn.scm (sshuttle), * gnu/packages/web.scm (libcyaml), * gnu/packages/xdisorg.scm (kbdd), * gnu/packages/xorg.scm (xpra): Same. --- gnu/packages/algebra.scm | 2 +- gnu/packages/astronomy.scm | 2 +- gnu/packages/audio.scm | 20 +++++------ gnu/packages/bioconductor.scm | 2 +- gnu/packages/chicken.scm | 2 +- gnu/packages/conky.scm | 2 +- gnu/packages/cran.scm | 2 +- gnu/packages/crates-io.scm | 2 +- gnu/packages/databases.scm | 2 +- gnu/packages/diffoscope.scm | 2 +- gnu/packages/file-systems.scm | 10 +++--- gnu/packages/finance.scm | 4 +-- gnu/packages/games.scm | 8 ++--- gnu/packages/geo.scm | 2 +- gnu/packages/gnome.scm | 6 ++-- gnu/packages/gnucash.scm | 2 +- gnu/packages/image.scm | 6 ++-- gnu/packages/kde-internet.scm | 4 +-- gnu/packages/kde-utils.scm | 8 ++--- gnu/packages/linphone.scm | 2 +- gnu/packages/maths.scm | 4 +-- gnu/packages/mercury.scm | 2 +- gnu/packages/music.scm | 68 +++++++++++++++++------------------ gnu/packages/networking.scm | 4 +-- gnu/packages/prolog.scm | 2 +- gnu/packages/python-web.scm | 2 +- gnu/packages/python-xyz.scm | 14 ++++---- gnu/packages/ruby.scm | 6 ++-- gnu/packages/sagemath.scm | 2 +- gnu/packages/skarnet.scm | 2 +- gnu/packages/vpn.scm | 2 +- gnu/packages/web.scm | 2 +- gnu/packages/xdisorg.scm | 2 +- gnu/packages/xorg.scm | 2 +- 34 files changed, 102 insertions(+), 102 deletions(-) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 262a7939df..912ec2fe64 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -1553,7 +1553,7 @@ structure constants of Schubert polynomials.") "0akwhhz9b40bz6lrfxpamp7r7wkk48p455qbn04mfnl9a1l6db8x")))) (build-system gnu-build-system) (inputs - `(("gmp", gmp) + `(("gmp" ,gmp) ("cblas" ,openblas))) ; or any other BLAS library; the documentation ; mentions ATLAS in particular (arguments diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 785d281887..353ba96a32 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -328,7 +328,7 @@ Mechanics, Astrometry and Astrodynamics library.") ("freetype" ,freetype) ("pango" ,pango) ("giflib" ,giflib) - ("libjpeg", libjpeg-turbo) + ("libjpeg" ,libjpeg-turbo) ("libpng" ,libpng) ("libtiff" ,libtiff) ("netpbm" ,netpbm) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index a50266965b..0e93a7263e 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -4519,7 +4519,7 @@ workstations as well as consumer software such as music players.") (inputs `(("cairo" ,cairo))) (native-inputs - `(("pkg-config", pkg-config))) + `(("pkg-config" ,pkg-config))) (synopsis "Small GUI toolkit") (description "Redkite is a small GUI toolkit developed in C++17 and inspired from other well known GUI toolkits such as Qt and GTK. It is @@ -4665,7 +4665,7 @@ in the package.") `(("libsamplerate" ,libsamplerate) ("libsndfile" ,libsndfile))) (native-inputs - `(("pkg-config", pkg-config))) + `(("pkg-config" ,pkg-config))) (synopsis "Library for reading and resampling audio files") (description "libaudec is a wrapper library over ffmpeg, sndfile and libsamplerate for reading and resampling audio files, based on Robin Gareus' @@ -4693,11 +4693,11 @@ libsamplerate for reading and resampling audio files, based on Robin Gareus' `("-Delf-tests=true" ; for checking symbol visibility "-Donline-tests=true"))) ; for checking URI existence (inputs - `(("curl", curl) - ("libelf", libelf) - ("lilv", lilv))) + `(("curl" ,curl) + ("libelf" ,libelf) + ("lilv" ,lilv))) (native-inputs - `(("pkg-config", pkg-config))) + `(("pkg-config" ,pkg-config))) (synopsis "LV2 plugin lint tool") (description "lv2lint is an LV2 lint-like tool that checks whether a given plugin and its UI(s) match up with the provided metadata and adhere @@ -4728,11 +4728,11 @@ to well-known best practices.") (modify-phases %standard-phases (delete 'configure)))) (inputs - `(("jalv", jalv) - ("lilv", lilv))) + `(("jalv" ,jalv) + ("lilv" ,lilv))) (native-inputs - `(("help2man", help2man) - ("pkg-config", pkg-config))) + `(("help2man" ,help2man) + ("pkg-config" ,pkg-config))) (synopsis "Documentation generator for LV2 plugins") (description "lv2toweb allows the user to create an xhtml page with information diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 7eef0485be..4ca0906fbf 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -1115,7 +1115,7 @@ how the coverage distributed across the genome.") (propagated-inputs `(("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-fastcluster", r-fastcluster) + ("r-fastcluster" ,r-fastcluster) ("r-ggplot2" ,r-ggplot2) ("r-gviz" ,r-gviz) ("r-plyr" ,r-plyr) diff --git a/gnu/packages/chicken.scm b/gnu/packages/chicken.scm index 7b86a58012..729cf25a6c 100644 --- a/gnu/packages/chicken.scm +++ b/gnu/packages/chicken.scm @@ -59,7 +59,7 @@ ;; Parallel builds are not supported, as noted in README. #:parallel-build? #f)) - (propagated-inputs `(("gcc-toolchain", gcc-toolchain))) + (propagated-inputs `(("gcc-toolchain" ,gcc-toolchain))) (home-page "https://www.call-cc.org/") (synopsis "R5RS Scheme implementation that compiles native code via C") (description diff --git a/gnu/packages/conky.scm b/gnu/packages/conky.scm index 6bae336b1c..0df6d1f760 100644 --- a/gnu/packages/conky.scm +++ b/gnu/packages/conky.scm @@ -79,7 +79,7 @@ ("libxext" ,libxext) ("libxft" ,libxft) ("libxinerama" ,libxinerama) - ("pulseaudio", pulseaudio) + ("pulseaudio" ,pulseaudio) ("lua" ,lua) ("ncurses" ,ncurses) ("curl" ,curl))) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 50ce111123..0939c4d5a6 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -21899,7 +21899,7 @@ appropriate dog and cat images for many status codes.") (build-system r-build-system) (propagated-inputs `(("r-stringr" ,r-stringr) - ("r-magrittr", r-magrittr))) + ("r-magrittr" ,r-magrittr))) (home-page "https://github.com/stefano-meschiari/latex2exp/") (synopsis "Use LaTeX expressions in plots") (description "@code{latex2exp} parses and converts LaTeX math formulas to diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 5c31a66208..37e4e69d3f 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -21255,7 +21255,7 @@ uses finite automata and guarantees linear time matching on all inputs.") (arguments `(#:cargo-inputs (("rust-bytemuck" ,rust-bytemuck-1) - ("rust-serde", rust-serde-1)) + ("rust-serde" ,rust-serde-1)) #:cargo-development-inputs (("rust-serde-json" ,rust-serde-json-1)))) (home-page "https://lib.rs/crates/rgb") diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index c86297b293..a3eef034a6 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -944,7 +944,7 @@ Language.") `(("bison" ,bison) ;; XXX: On armhf, use GCC 5 to work around . ,@(if (string-prefix? "armhf" (%current-system)) - `(("gcc@5", gcc-5)) + `(("gcc@5" ,gcc-5)) '()) ("perl" ,perl))) (inputs diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm index 9480f1f226..3e7ab7d7ba 100644 --- a/gnu/packages/diffoscope.scm +++ b/gnu/packages/diffoscope.scm @@ -254,7 +254,7 @@ install.") (inputs `(("python-debian" ,python-debian) ("python-distro" ,python-distro) - ("python-libarchive-c", python-libarchive-c) + ("python-libarchive-c" ,python-libarchive-c) ("python-rstr" ,python-rstr))) (native-inputs `(("diffoscope" ,diffoscope) diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index 046deb67ab..0d897a6307 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -504,8 +504,8 @@ non-determinism in the build process.") (lambda _ (invoke "./autogen.sh")))))) (native-inputs `(("pkg-config" ,pkg-config) - ("libtirpc", libtirpc) - ("rpcsvc-proto", rpcsvc-proto) + ("libtirpc" ,libtirpc) + ("rpcsvc-proto" ,rpcsvc-proto) ("python-2" ,python-2) ; must be version 2 ("flex" ,flex) ("bison" ,bison) @@ -515,15 +515,15 @@ non-determinism in the build process.") ("cmocka" ,cmocka))) (inputs `(("acl" ,acl) - ("fuse", fuse) + ("fuse" ,fuse) ("openssl" ,openssl) ("liburcu" ,liburcu) ("libuuid" ,util-linux "lib") ("libxml2" ,libxml2) ("readline" ,readline) ("zlib" ,zlib) - ("libaio", libaio) - ("rdma-core", rdma-core))) + ("libaio" ,libaio) + ("rdma-core" ,rdma-core))) (home-page "https://www.gluster.org") (synopsis "Distributed file system") (description "GlusterFS is a distributed scalable network file system diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 863914bd35..05cb0ad88b 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -493,10 +493,10 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.") (build-system python-build-system) (inputs `(("libevent" ,libevent) - ("libsecp256k1", libsecp256k1-bitcoin-cash) + ("libsecp256k1" ,libsecp256k1-bitcoin-cash) ("openssl" ,openssl) ("python-cython" ,python-cython) - ("python-dateutil", python-dateutil) + ("python-dateutil" ,python-dateutil) ("python-dnspython" ,python-dnspython) ("python-ecdsa" ,python-ecdsa) ("python-hidapi" ,python-hidapi) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index a90e708ab3..4423d51336 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -7180,7 +7180,7 @@ original.") ("pkg-config" ,pkg-config))) (inputs `(("cmocka" ,cmocka) - ("perl-env-path", perl-env-path) + ("perl-env-path" ,perl-env-path) ("perl-inline" ,perl-inline) ("perl-inline-c" ,perl-inline-c) ("perl-string-shellquote" ,perl-string-shellquote) @@ -10176,7 +10176,7 @@ This package is part of the KDE games module.") `(("extra-cmake-modules" ,extra-cmake-modules) ("kdoctools" ,kdoctools))) (inputs - `(("karchive", karchive) + `(("karchive" ,karchive) ("kconfig" ,kconfig) ("kconfigwidgets" ,kconfigwidgets) ("kcoreaddons" ,kcoreaddons) @@ -10322,7 +10322,7 @@ This package is part of the KDE games module.") `(("extra-cmake-modules" ,extra-cmake-modules) ("kdoctools" ,kdoctools))) (inputs - `(("kcompletion", kcompletion) + `(("kcompletion" ,kcompletion) ("kconfig" ,kconfig) ("kconfigwidgets" ,kconfigwidgets) ("kcoreaddons" ,kcoreaddons) @@ -10714,7 +10714,7 @@ This package is part of the KDE games module.") ("kdbusaddons" ,kdbusaddons) ("ki18n" ,ki18n) ("kio" ,kio) - ("knewstuff", knewstuff) + ("knewstuff" ,knewstuff) ("ktextwidgets" ,ktextwidgets) ("kxmlgui" ,kxmlgui) ("libkdegames" ,libkdegames) diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index 291b928338..0605d84c0e 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -1776,7 +1776,7 @@ track your position right from your laptop.") (base32 "1fwsm99kz0bxvjk7442qq1h45ikrmhba8bqclafb61gqg1q6ymrk")))) (build-system gnu-build-system) (inputs - `(("bzip2", bzip2) + `(("bzip2" ,bzip2) ("cairo" ,cairo) ("fftw" ,fftw) ("freetype" ,freetype) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 77ed6678cd..da4b2771e8 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1299,7 +1299,7 @@ and implementation of UPnP A/V profiles.") `(("gdk-pixbuf" ,gdk-pixbuf) ("gettext" ,gettext-minimal) ("gobject-introspection" ,gobject-introspection) - ("gtk+:doc", gtk+ "doc") + ("gtk+:doc" ,gtk+ "doc") ("vala" ,vala))) (synopsis "Media art library for the GNOME desktop") (description @@ -1961,7 +1961,7 @@ commonly used macros.") ("telepathy-glib" ,telepathy-glib) ("vala" ,vala))) (propagated-inputs - `(("folks", folks) + `(("folks" ,folks) ("telepathy-mission-control" ,telepathy-mission-control))) (synopsis "GNOME's integrated address book") (description @@ -5025,7 +5025,7 @@ output devices.") ("gobject-introspection" ,gobject-introspection) ("modem-manager" ,modem-manager) ("libnotify" ,libnotify) - ("gtk-doc", gtk-doc) + ("gtk-doc" ,gtk-doc) ("intltool" ,intltool))) (inputs `(("avahi" ,avahi) diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm index 43aad3ed02..8f58ce332a 100644 --- a/gnu/packages/gnucash.scm +++ b/gnu/packages/gnucash.scm @@ -293,7 +293,7 @@ applications and libraries. It is used by AqBanking.") ("gnutls" ,gnutls))) (native-inputs `(("pkg-config" ,pkg-config) - ("gettext-minimal", gettext-minimal) + ("gettext-minimal" ,gettext-minimal) ("libltdl" ,libltdl))) (home-page "https://www.aquamaniac.de/sites/aqbanking/index.php") (synopsis "Interface for online banking tasks") diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index bec03886a6..8fbdd0b4ae 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -2180,12 +2180,12 @@ by AOM, including with alpha.") `(("imlib2" ,imlib2) ("libtiff" ,libtiff) ("libpng" ,libpng) - ("libungif", libungif) - ("libjpeg", libjpeg-turbo) + ("libungif" ,libungif) + ("libjpeg" ,libjpeg-turbo) ("libwebp" ,libwebp) ("openjpeg" ,openjpeg) ("lcms" ,lcms) - ("zlib", zlib) + ("zlib" ,zlib) ("glib" ,glib) ;; Support for gtk3 is in the testing stage. ("gtk+" ,gtk+-2))) diff --git a/gnu/packages/kde-internet.scm b/gnu/packages/kde-internet.scm index f9cd29e9b8..800554a36e 100644 --- a/gnu/packages/kde-internet.scm +++ b/gnu/packages/kde-internet.scm @@ -297,7 +297,7 @@ Features are: ("libxml2" ,libxml2) ("libxstl" ,libxslt) ;; TODO: Mediastreamer - ("openssl", openssl) + ("openssl" ,openssl) ("ortp" ,ortp) ("phonon" ,phonon) ("qca" ,qca) @@ -403,7 +403,7 @@ This package is part of the KDE networking module.") ("knotifyconfig" ,knotifyconfig) ("kparts" ,kparts) ("kplotting" ,kplotting) - ("kross", kross) + ("kross" ,kross) ("kwidgetsaddons" ,kwidgetsaddons) ("kwindowsystem" ,kwindowsystem) ("kxmlgui" ,kxmlgui) diff --git a/gnu/packages/kde-utils.scm b/gnu/packages/kde-utils.scm index 4d9f3736c8..00ef15b9d9 100644 --- a/gnu/packages/kde-utils.scm +++ b/gnu/packages/kde-utils.scm @@ -149,7 +149,7 @@ artists to web-designers to people with low vision.") (inputs `(("kauth" ,kauth) ("kcoreaddons" ,kcoreaddons) - ("kconfigwidgets", kconfigwidgets) + ("kconfigwidgets" ,kconfigwidgets) ("kdbusaddons" ,kdbusaddons) ("ki18n" ,ki18n) ("kiconthemes" ,kiconthemes) @@ -187,8 +187,8 @@ whom pressing buttons hurts.") ("kdoctools" ,kdoctools))) (inputs `(("kcompletion" ,kcompletion) - ("kconfig", kconfig) - ("kconfigwidgets", kconfigwidgets) + ("kconfig" ,kconfig) + ("kconfigwidgets" ,kconfigwidgets) ("kcoreaddons" ,kcoreaddons) ("kcrash" ,kcrash) ("ki18n" ,ki18n) @@ -228,7 +228,7 @@ sentences to be re-spoken.") (inputs `(("kauth" ,kauth) ("kconfig" ,kconfig) - ("kconfigwidgets", kconfigwidgets) + ("kconfigwidgets" ,kconfigwidgets) ("kcoreaddons" ,kcoreaddons) ("kcrash" ,kcrash) ("ki18n" ,ki18n) diff --git a/gnu/packages/linphone.scm b/gnu/packages/linphone.scm index a6492893c8..777485b9ea 100644 --- a/gnu/packages/linphone.scm +++ b/gnu/packages/linphone.scm @@ -483,7 +483,7 @@ including media capture, encoding and decoding, and rendering.") `(("bctoolbox" ,bctoolbox) ("belcard" ,belcard) ("bellesip" ,belle-sip) - ("bzrtp", bzrtp) + ("bzrtp" ,bzrtp) ("iconv" ,libiconv) ("glib" ,glib) ("gtk2" ,gtk+-2) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index ce393cba80..93ee2db60a 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -5764,10 +5764,10 @@ compiled against the nauty library.") "1j5aji1g2vmdvc0gqz45n2ll2l2f6czca04wiyfl5g3sm3a6vhvb")))) (build-system gnu-build-system) (native-inputs - `(("m4", m4))) + `(("m4" ,m4))) (inputs `(("glpk" ,glpk) - ("gmp", gmp))) + ("gmp" ,gmp))) (home-page "https://www.bugseng.com/parma-polyhedra-library") (synopsis "Parma Polyhedra Library for computations with polyhedra") diff --git a/gnu/packages/mercury.scm b/gnu/packages/mercury.scm index a6ae451e63..bab8909862 100644 --- a/gnu/packages/mercury.scm +++ b/gnu/packages/mercury.scm @@ -138,7 +138,7 @@ (native-inputs `(("texinfo" ,texinfo) ("flex" ,flex) - ("tcsh", tcsh) + ("tcsh" ,tcsh) ("bison" ,bison) ("readline" ,readline) ("libatomic-ops" ,(package-source diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 54c8e14669..1727bac7b8 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1391,9 +1391,9 @@ B.Choppr is the successor of B.Slizr.") (base32 "0kl6hrxmqrdf0195bfnzsa2h1073fgiqrfhg2276fm1954sm994v")))) (inputs - `(("cairo", cairo) - ("libsndfile", libsndfile) - ("lv2", lv2))) + `(("cairo" ,cairo) + ("libsndfile" ,libsndfile) + ("lv2" ,lv2))) (synopsis "Pattern-controlled audio stream/sample re-sequencer LV2 plugin") (description "B.Jumblr is a pattern-controlled audio stream / sample re-sequencer LV2 plugin.") @@ -1416,11 +1416,11 @@ re-sequencer LV2 plugin.") (base32 "1c09acqrbd387ba41f8ch1qykdap5h6cg9if5pgd16i4dmjnpghj")))) (inputs - `(("cairo", cairo) + `(("cairo" ,cairo) ("fontconfig" ,fontconfig) - ("libsndfile", libsndfile) + ("libsndfile" ,libsndfile) ("libx11" ,libx11) - ("lv2", lv2))) + ("lv2" ,lv2))) (home-page "https://github.com/sjaehn/BSchaffl") (synopsis "Pattern-controlled MIDI amp & time stretch LV2 plugin") (description "This package provides an LV2 plugin that allows for @@ -5098,15 +5098,15 @@ and reverb.") (delete 'configure)) ; no configure #:test-target "test")) (inputs - `(("cairo", cairo) - ("hicolor-icon-theme", hicolor-icon-theme) - ("jack", jack-1) - ("ladspa", ladspa) - ("libsndfile", libsndfile) - ("lv2", lv2) - ("mesa", mesa))) + `(("cairo" ,cairo) + ("hicolor-icon-theme" ,hicolor-icon-theme) + ("jack" ,jack-1) + ("ladspa" ,ladspa) + ("libsndfile" ,libsndfile) + ("lv2" ,lv2) + ("mesa" ,mesa))) (native-inputs - `(("pkg-config", pkg-config))) + `(("pkg-config" ,pkg-config))) (synopsis "Audio plugin collection") (description "LSP (Linux Studio Plugins) is a collection of audio plugins available as LADSPA/LV2 plugins and as standalone JACK @@ -5216,12 +5216,12 @@ as a whole to realisticly reproduce the features and flaws of the real deal.") `(("pkg-config" ,pkg-config) ("xxd" ,xxd))) (inputs - `(("cairo", cairo) - ("fftw", fftw) - ("fftwf", fftwf) - ("jack", jack-1) - ("lv2", lv2) - ("mesa", mesa))) + `(("cairo" ,cairo) + ("fftw" ,fftw) + ("fftwf" ,fftwf) + ("jack" ,jack-1) + ("lv2" ,lv2) + ("mesa" ,mesa))) (synopsis "Realtime graphical spectrum analyzer") (description "Spectacle is a real-time spectral analyzer using the short-time Fourier transform, available as LV2 audio plugin and JACK client.") @@ -5515,12 +5515,12 @@ MIDI drums and comes as two separate drumkits: Black Pearl and Red Zeppelin.") ("freetype2" ,freetype) ("hicolor-icon-theme" ,hicolor-icon-theme) ("libxcursor" ,libxcursor) - ("libxinerama", libxinerama) - ("jack", jack-1) + ("libxinerama" ,libxinerama) + ("jack" ,jack-1) ("mesa" ,mesa))) (native-inputs `(("pkg-config" ,pkg-config) - ("lv2", lv2))) + ("lv2" ,lv2))) (home-page "https://tytel.org/helm/") (synopsis "Polyphonic synth with lots of modulation") (description "Helm is a cross-platform polyphonic synthesizer available standalone @@ -5845,9 +5845,9 @@ plugin and a standalone JACK application.") "/lib/lv2") "install")))))) (inputs - `(("lv2", lv2))) + `(("lv2" ,lv2))) (native-inputs - `(("pkg-config", pkg-config))) + `(("pkg-config" ,pkg-config))) (synopsis "Audio plugin collection") (description "TAP (Tom's Audio Processing) plugins is a collection of audio effect plugins originally released as LADSPA plugins. This package @@ -5903,9 +5903,9 @@ plugin and a standalone JACK application.") (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("jack", jack-1) - ("lv2", lv2) - ("mesa", mesa))) + `(("jack" ,jack-1) + ("lv2" ,lv2) + ("mesa" ,mesa))) (synopsis "Waveshaper plugin") (description "Wolf Shaper is a waveshaper plugin with a graph editor. It is provided as an LV2 plugin and as a standalone Jack application.") @@ -5985,12 +5985,12 @@ It is provided as an LV2 plugin and as a standalone Jack application.") (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("cairo", cairo) - ("glu", glu) - ("jack", jack-1) - ("lv2", lv2) - ("mesa", mesa) - ("pango", pango))) + `(("cairo" ,cairo) + ("glu" ,glu) + ("jack" ,jack-1) + ("lv2" ,lv2) + ("mesa" ,mesa) + ("pango" ,pango))) (synopsis "Audio plugin collection") (description "Shiru plugins is a collection of audio plugins created by Shiru, ported to LV2 by the Linux MAO project using the DISTRHO plugin diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 8b46bd7d24..7679d62059 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -3275,9 +3275,9 @@ communication over HTTP.") ("pcre2" ,pcre2) ("sobjectizer" ,sobjectizer))) (propagated-inputs - `(("asio", asio) + `(("asio" ,asio) ("fmt" ,fmt) - ("http-parser", http-parser))) + ("http-parser" ,http-parser))) (arguments `(#:configure-flags '("-DRESTINIO_INSTALL=on") #:tests? #f ; TODO: The tests are called from the root CMakelist, need RESTINIO_TEST=on. diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm index 86b4bd2107..0e5f4b9b01 100644 --- a/gnu/packages/prolog.scm +++ b/gnu/packages/prolog.scm @@ -125,7 +125,7 @@ manner. It also features an interactive interpreter.") ("texinfo" ,texinfo) ("libarchive" ,libarchive) ("libunwind" ,libunwind) - ("libjpeg", libjpeg-turbo) + ("libjpeg" ,libjpeg-turbo) ("libxft" ,libxft) ("fontconfig" ,fontconfig) ("perl" ,perl) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index bb2fc850c9..dde0e447e3 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -4118,7 +4118,7 @@ event loop. It is implemented in Cython and uses libuv under the hood.") #t))))) (native-inputs `(("binutils" ,binutils) ;; for ctypes.util.find_library() - ("python-aiohttp", python-aiohttp) + ("python-aiohttp" ,python-aiohttp) ("python-pytest" ,python-pytest) ("python-pytest-cov" ,python-pytest-cov) ("python-sphinx" ,python-sphinx) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 6c3e991de8..22a356d11b 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -20788,13 +20788,13 @@ content models.") ;; Testing requires undocumented setup changes, and so testing is disabled here. (arguments `(#:tests? #f)) (propagated-inputs - `(("python-certifi", python-certifi) - ("python-six", python-six) - ("python-dateutil", python-dateutil) - ("python-urllib3", python-urllib3) - ("python-pyjwt", python-pyjwt) - ("python-cryptography", python-cryptography) - ("python-nose", python-nose))) + `(("python-certifi" ,python-certifi) + ("python-six" ,python-six) + ("python-dateutil" ,python-dateutil) + ("python-urllib3" ,python-urllib3) + ("python-pyjwt" ,python-pyjwt) + ("python-cryptography" ,python-cryptography) + ("python-nose" ,python-nose))) (synopsis "DocuSign Python Client") (description "The Official DocuSign Python Client Library used to interact with the eSign REST API. Send, sign, and approve documents using this client.") diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 3266db3fe8..7348f29eb1 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -7792,7 +7792,7 @@ master/html-formatter/ruby") (native-inputs `(;; Use a untested version of aruba, to avoid a circular dependency, as ;; ruby-aruba depends on ruby-cucumber. - ("ruby-aruba", ruby-aruba-without-tests) + ("ruby-aruba" ,ruby-aruba-without-tests) ("ruby-rspec" ,ruby-rspec) ("ruby-pry" ,ruby-pry) ("ruby-nokogiri" ,ruby-nokogiri) @@ -8851,7 +8851,7 @@ display width of strings in Ruby.") (native-inputs `(("ruby-rdoc" ,ruby-rdoc) ("ruby-rspec" ,ruby-rspec) - ("ruby-rubygems-tasks", ruby-rubygems-tasks))) + ("ruby-rubygems-tasks" ,ruby-rubygems-tasks))) (synopsis "Ruby library to help check the Ruby version") (description "@code{ruby_version} provides a @code{RubyVersion} module to simplify checking for the right Ruby version in software.") @@ -9963,7 +9963,7 @@ all known public suffixes.") ("bundler" ,bundler) ("ruby-idn-ruby" ,ruby-idn-ruby) ("ruby-sporkmonger-rack-mount" ,ruby-sporkmonger-rack-mount) - ("ruby-rspec-its", ruby-rspec-its-minimal) + ("ruby-rspec-its" ,ruby-rspec-its-minimal) ("ruby-yard" ,ruby-yard) ("ruby-simplecov" ,ruby-simplecov))) (propagated-inputs diff --git a/gnu/packages/sagemath.scm b/gnu/packages/sagemath.scm index 8c837fdaeb..943e9ba5b9 100644 --- a/gnu/packages/sagemath.scm +++ b/gnu/packages/sagemath.scm @@ -59,7 +59,7 @@ `(("python-cysignals" ,python-cysignals))) (inputs `(("gmp" ,gmp) - ("pari-gp", pari-gp))) + ("pari-gp" ,pari-gp))) (home-page "https://cypari2.readthedocs.io/") (synopsis "Python interface to the number theory library libpari") diff --git a/gnu/packages/skarnet.scm b/gnu/packages/skarnet.scm index 8032a5e505..f171967957 100644 --- a/gnu/packages/skarnet.scm +++ b/gnu/packages/skarnet.scm @@ -307,7 +307,7 @@ systems and other constrained environments, but they work everywhere."))) (build-system gnu-build-system) (inputs `(("execline" ,execline) - ("s6", s6) + ("s6" ,s6) ("skalibs" ,skalibs))) (arguments '(#:configure-flags diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index c704106221..d22f9ccd5d 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -405,7 +405,7 @@ private network between hosts on the internet.") (native-inputs `(("python-setuptools-scm" ,python-setuptools-scm) ;; For tests only. - ("python-flake8", python-flake8) + ("python-flake8" ,python-flake8) ("python-mock" ,python-mock) ("python-pytest-cov" ,python-pytest-cov) ("python-pytest-runner" ,python-pytest-runner))) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 21c227d8eb..ab8daf31cf 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -5050,7 +5050,7 @@ written in C. It is developed as part of the NetSurf project.") (inputs `(("libyaml" ,libyaml))) (native-inputs - `(("pkg-config", pkg-config))) + `(("pkg-config" ,pkg-config))) (synopsis "C library for reading and writing YAML") (description "LibCYAML is a C library written in ISO C11 for reading and writing diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index bbbbd0d7f5..5398761c65 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -2437,7 +2437,7 @@ After selection, the clip is put onto the PRIMARY and CLIPBOARD X selections.") ("glib" ,glib "bin") ("pkg-config" ,pkg-config))) (inputs - `(("dbus-glib", dbus-glib) + `(("dbus-glib" ,dbus-glib) ("glib" ,glib) ("libx11" ,libx11))) (home-page "https://github.com/qnikst/kbdd") diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 8df6407e26..8ff62a1a84 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -6339,7 +6339,7 @@ basic eye-candy effects.") ("python-pillow" ,python-pillow) ;; Optional dependencies. ("python-rencode" ,python-rencode) ; For speed. - ("python-numpy", python-numpy) + ("python-numpy" ,python-numpy) ("python-pyopengl" ,python-pyopengl) ; Drawing acceleration. ("python-pyopengl-accelerate" ,python-pyopengl-accelerate) ; Same. ("python-paramiko" ,python-paramiko) ; Tunneling over SSH. From 97750c200472f756a26deaac94f2476a9ea08e4c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Sep 2020 09:39:32 +0300 Subject: [PATCH 561/757] gnu: newsboat: Fix inputs. This is a follow-up to 51b46fa28cd31cf1cc973ef6ccd05fbef3c4b39d. * gnu/packages/syndication.scm (newsboat)[arguments]: Replace rust-once-cell-1.2 with rust-once-cell-1. --- gnu/packages/syndication.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/syndication.scm b/gnu/packages/syndication.scm index eea6817ce6..64d8a47085 100644 --- a/gnu/packages/syndication.scm +++ b/gnu/packages/syndication.scm @@ -100,7 +100,7 @@ ("rust-libz-sys" ,rust-libz-sys-1) ("rust-natord" ,rust-natord-1.0) ("rust-nom" ,rust-nom-5) - ("rust-once-cell" ,rust-once-cell-1.2) + ("rust-once-cell" ,rust-once-cell-1) ("rust-percent-encoding" ,rust-percent-encoding-2.1) ("rust-rand" ,rust-rand-0.6) ("rust-smallvec" ,rust-smallvec-0.6) From 23611680c880c97b84bbe815eb1338449feb8782 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Wed, 30 Sep 2020 09:46:15 +0200 Subject: [PATCH 562/757] gnu: sbcl-kmrcl: Update to 1.111. * gnu/packages/lisp-xyz.scm (sbcl-kmrcl): Update to 1.111. --- gnu/packages/lisp-xyz.scm | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index 10b4f65481..62fa30bdc1 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -3662,8 +3662,8 @@ Development into CL+SSL was done by David Lichteblau.") (sbcl-package->cl-source-package sbcl-cl+ssl)) (define-public sbcl-kmrcl - (let ((version "1.109.0") - (commit "5260068b2eb735af6796740c2db4955afac21636") + (let ((version "1.111") + (commit "4a27407aad9deb607ffb8847630cde3d041ea25a") (revision "1")) (package (name "sbcl-kmrcl") @@ -3676,19 +3676,15 @@ Development into CL+SSL was done by David Lichteblau.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "1va7xjgzfv674bpsli674i7zj3f7wg5kxic41kz18r6hh4n52dfv")))) + (base32 "06gx04mah5nc8w78s0j8628divbf1s5w7af8w7pvzb2d5mgvrbd2")))) (build-system asdf-build-system/sbcl) - (arguments - ;; Tests fail with: :FORCE and :FORCE-NOT arguments not allowed in a - ;; nested call to ASDF/OPERATE:OPERATE unless identically to toplevel - '(#:tests? #f)) (inputs `(("sbcl-rt" ,sbcl-rt))) (home-page "http://files.kpe.io/kmrcl/") (synopsis "General utilities for Common Lisp programs") (description "KMRCL is a collection of utilities used by a number of Kevin -Rosenberg's CL packages.") +Rosenberg's Common Lisp packages.") (license license:llgpl)))) (define-public cl-kmrcl From df5d1c83936a61a37baa152dfc53a9b6fe82d604 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Batista?= Date: Tue, 29 Sep 2020 09:38:21 -0300 Subject: [PATCH 563/757] gnu: Add rust-multi-default-trait-impl-0.1. * gnu/packages/crates-io.scm (rust-multi-default-trait-impl-0.1): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 37e4e69d3f..39e792af6e 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2020 Jakub Kądziołka ;;; Copyright © 2020 Leo Famulari ;;; Copyright © 2020 Gabriel Arazas +;;; Copyright © 2020 André Batista ;;; ;;; This file is part of GNU Guix. ;;; @@ -14633,6 +14634,34 @@ checking.") "Chaining APIs for both self -> Self and &mut self methods.") (license license:expat))) +(define-public rust-multi-default-trait-impl-0.1 + (package + (name "rust-multi-default-trait-impl") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "multi-default-trait-impl" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1r6y5zb6kg655zi02yk4amkwsgds5ay9ag1dk30cls7rn3dlvvqs")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-lazy-static" ,rust-lazy-static-1) + ("rust-proc-macro2" ,rust-proc-macro2-1) + ("rust-quote" ,rust-quote-1) + ("rust-syn" ,rust-syn-1)))) + (home-page "https://github.com/hainish/multi-default-trait-impl") + (synopsis "Define multiple implementations of trait") + (description + "This library contains two attribute macros: @code{default_trait_impl} +which defines a default trait implementation, and @code{trait_impl} which uses +a default trait implementation you've defined.") + (license license:lgpl2.1+))) + (define-public rust-nasm-rs-0.1 (package (name "rust-nasm-rs") From 2f1f7b6667e9130654987942a63fd95c8b1788be Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Tue, 29 Sep 2020 11:56:57 +0200 Subject: [PATCH 564/757] services: virtualization: Use a compressed qcow2 hurd disk-image. * gnu/services/virtualization.scm (hurd-vm-disk-image): Use 'compressed-qcow2 format. --- gnu/services/virtualization.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index 7e2f5a1490..539e4fa86a 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -905,6 +905,7 @@ is added to the OS specified in CONFIG." (system-image (image (inherit hurd-disk-image) + (format 'compressed-qcow2) (size disk-size) (operating-system os))))) From 99d036ce8402326352c8aa181d89c6d0c7ce85a8 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Fri, 31 Jul 2020 16:49:27 +0200 Subject: [PATCH 565/757] image: Add image-type support. * gnu/image.scm (): New record, (image-type, image-type?, image-type-name, image-type-constructor, os->image): new procedures. Signed-off-by: Mathieu Othacehe --- gnu/image.scm | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/gnu/image.scm b/gnu/image.scm index dc66f2c533..a60d83b175 100644 --- a/gnu/image.scm +++ b/gnu/image.scm @@ -39,7 +39,14 @@ image-partitions image-compression? image-volatile-root? - image-substitutable?)) + image-substitutable? + + image-type + image-type? + image-type-name + image-type-constructor + + os->image)) ;;; @@ -84,3 +91,23 @@ (default #t)) (substitutable? image-substitutable? ;boolean (default #t))) + + +;;; +;;; Image type. +;;; + +(define-record-type* + image-type make-image-type + image-type? + (name image-type-name) ;symbol + (constructor image-type-constructor)) ; -> + + +;;; +;;; Image creation. +;;; + +(define* (os->image os #:key type) + (let ((constructor (image-type-constructor type))) + (constructor os))) From 10b135cef54348e48805bd9c64b463c465c65eb5 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Fri, 31 Jul 2020 16:49:28 +0200 Subject: [PATCH 566/757] system: image: Add image-type support. * gnu/system/image.scm (image-with-os): New macro. Rename the old "image-with-os" procedure to ... (image-with-os*): ... this new procedure, (system-image): adapt according, (raw-image-type, iso-image-type, uncompressed-iso-image-type %image-types): new variables, (lookup-image-type-by-name): new procedure. (find-image): remove it. * gnu/system/images/hurd.scm (hurd-image-type): New variable, use it to define ... (hurd-disk-image): ... this variable, using "os->image" procedure. * gnu/tests/install.scm (run-install): Rename installation-disk-image-file-system-type parameter to installation-image-type, use os->config instead of find-image to compute the image passed to system-image, (%test-iso-image-installer) adapt accordingly, (guided-installation-test): ditto. Signed-off-by: Mathieu Othacehe --- gnu/system/image.scm | 90 +++++++++++++++++++++++++++++++------- gnu/system/images/hurd.scm | 29 +++++++++--- gnu/tests/install.scm | 46 ++++++++++--------- 3 files changed, 118 insertions(+), 47 deletions(-) diff --git a/gnu/system/image.scm b/gnu/system/image.scm index 0f2fb62a6b..c81054f847 100644 --- a/gnu/system/image.scm +++ b/gnu/system/image.scm @@ -18,6 +18,8 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu system image) + #:use-module (guix diagnostics) + #:use-module (guix discovery) #:use-module (guix gexp) #:use-module (guix modules) #:use-module (guix monads) @@ -64,9 +66,16 @@ efi-disk-image iso9660-image - find-image + image-with-os + raw-image-type + iso-image-type + uncompressed-iso-image-type + + image-with-label system-image - image-with-label)) + + %image-types + lookup-image-type-by-name)) ;;; @@ -113,6 +122,37 @@ (label "GUIX_IMAGE") (flags '(boot))))))) + +;;; +;;; Images types. +;;; + +(define-syntax-rule (image-with-os base-image os) + "Return an image inheriting from BASE-IMAGE, with the operating-system field +set to the given OS." + (image + (inherit base-image) + (operating-system os))) + +(define raw-image-type + (image-type + (name 'raw) + (constructor (cut image-with-os efi-disk-image <>)))) + +(define iso-image-type + (image-type + (name 'iso9660) + (constructor (cut image-with-os iso9660-image <>)))) + +(define uncompressed-iso-image-type + (image-type + (name 'uncompressed-iso9660) + (constructor (cut image-with-os + (image + (inherit iso9660-image) + (compression? #f)) + <>)))) + ;; ;; Helpers. @@ -442,7 +482,7 @@ returns an image record where the first partition's label is set to