From bb69b97d20c1f53930283725348cc54c11bfba69 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 27 Dec 2022 22:22:56 +0200 Subject: [PATCH 001/141] gnu: tree: Update to 2.1.0. * gnu/packages/admin.scm (tree): Update to 2.1.0. --- 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 b9fd3dab27..589b2c92a6 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2608,14 +2608,14 @@ characters can be replaced as well, as can UTF-8 characters.") (define-public tree (package (name "tree") - (version "2.0.4") + (version "2.1.0") (source (origin (method url-fetch) (uri (string-append "https://mama.indstate.edu/users/ice/tree/src/tree-" version ".tgz")) (sha256 - (base32 "0x7s9wxvf83fw4qah16kapswl2277pybw3d514zrlms9g0cr5smh")))) + (base32 "1xmbxgx72w7ddjlqsx1yys076hp3h7ll968bhdmdrc7jpwswaq01")))) (build-system gnu-build-system) (arguments (list From 392789e0450e8969f7a2dcf9fc3259c7747aded5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 27 Dec 2022 22:38:01 +0200 Subject: [PATCH 002/141] gnu: parallel: Update to 20221222. * gnu/packages/parallel.scm (parallel): Update to 20221222. --- gnu/packages/parallel.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 410f7321e0..853fdaaa5f 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -64,14 +64,14 @@ (define-public parallel (package (name "parallel") - (version "20221122") + (version "20221222") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/parallel/parallel-" version ".tar.bz2")) (sha256 - (base32 "17akk6nskyqp3ckggli2dadp49m164ij79pijgb4iwad8ci9sgda")) + (base32 "0zsrz25yyhkvrkvlblmgrqhcyr9zavflknz3nhql9a8qxixhraad")) (snippet '(begin (use-modules (guix build utils)) From 07eaa781d7a4823219f5adc2e3e8f324e66ded86 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 28 Dec 2022 10:24:02 +0100 Subject: [PATCH 003/141] gnu: emacs-company-math: Update to 1.5.1. * gnu/packages/emacs-xyz.scm (emacs-company-math): Update to 1.5.1. [propagated-inputs]: Reorder inputs alphabetically. --- 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 fb4c9b70f9..5961f074a5 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -8053,7 +8053,7 @@ features: (define-public emacs-company-math (package (name "emacs-company-math") - (version "1.5") + (version "1.5.1") (source (origin (method git-fetch) @@ -8062,10 +8062,10 @@ features: (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "010p3rhb7win6ndx3ilz2lcg69d2qyxfvpi0hcid2srzxffpwn3i")))) + (base32 "1pj10i7ml5d2spcmf8035ngcq5zc6rs3lqx09d0qj6bsghglr6j3")))) (build-system emacs-build-system) (propagated-inputs - (list emacs-math-symbol-lists emacs-company)) + (list emacs-company emacs-math-symbol-lists)) (home-page "https://github.com/vspinu/company-math") (synopsis "Completion backends for math symbols and @code{LaTeX} tags") (description From cf041578b245a33cd0f9423a5f521c62201c9357 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 28 Dec 2022 10:25:09 +0100 Subject: [PATCH 004/141] gnu: emacs-geiser: Update to 0.28.2. * gnu/packages/emacs-xyz.scm (emacs-geiser): Update to 0.28.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 5961f074a5..4fc6b6b2b4 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -261,7 +261,7 @@ (define-public emacs-geiser (package (name "emacs-geiser") - (version "0.28.1") + (version "0.28.2") (source (origin (method git-fetch) @@ -270,7 +270,7 @@ (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "111as99278vbv6pwj8rpl308g327f8iznnrz71mngl6d5mr0xpa1")))) + (base32 "01sif1pw3shhdzcg9vidc2j5cqmrgjh5kynicf5mh3kmlvvsg9k6")))) (build-system emacs-build-system) (arguments '(#:phases From 4e00a85e200860c099a5259c2b870599d0097497 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 28 Dec 2022 10:26:33 +0100 Subject: [PATCH 005/141] gnu: emacs-orderless: Update to 1.0. * gnu/packages/emacs-xyz.scm (emacs-orderless): Update to 1.0. --- 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 4fc6b6b2b4..5d2c302e09 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -10167,7 +10167,7 @@ interface.") (let ((commit "004cee6b8e01f8eb0cb1c683d0a637b14890600f")) (package (name "emacs-orderless") - (version "0.8") + (version "1.0") (source (origin (method git-fetch) From acab8e1d47de3ad96645a5b753b41a548c8d6495 Mon Sep 17 00:00:00 2001 From: jgart Date: Sun, 25 Dec 2022 21:06:18 -0600 Subject: [PATCH 006/141] gnu: Add emacs-tempel-collection. * gnu/packages/emacs-xyz.scm (emacs-tempel-collection): 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 5d2c302e09..4149ec6d8c 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -15489,6 +15489,29 @@ been adapted to also work with mu4e.") the Emacs Tempo library. You may also write your templates in Lisp.") (license license:gpl3+))) +(define-public emacs-tempel-collection + (let ((commit "cd9529b2a2fdfd49010117d2a1fc49adf9725051") + (revision "0")) + (package + (name "emacs-tempel-collection") + (version (git-version "0.1" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Crandel/tempel-collection") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02x6jq5k7fa46ni64qf8wrmkay6zfbmkildb727zs6wchmyg2znn")))) + (build-system emacs-build-system) + (propagated-inputs (list emacs-tempel)) + (home-page "https://github.com/Crandel/tempel-collection") + (synopsis "Collection of TempEl templates") + (description "This package provides a collection of templates for +the Emacs TempEl package.") + (license license:gpl3+)))) + (define-public emacs-yasnippet (package (name "emacs-yasnippet") From dade225788ee162bdbdc77385f77c891c6b3c781 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Tue, 27 Dec 2022 08:13:13 +0100 Subject: [PATCH 007/141] gnu: Add emacs-consult-xdg-recent-files. * gnu/packages/emacs-xyz.scm (emacs-consult-xdg-recent-files): New variable. Signed-off-by: Nicolas Goaziou --- gnu/packages/emacs-xyz.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 4149ec6d8c..8b0bb58275 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -10368,6 +10368,37 @@ call.") library with Eglot instead of Yasnippet.") (license license:gpl3+)))) +(define-public emacs-consult-xdg-recent-files + (let ((commit "593023ffb99a368152ebd4e739488fa560bdfdea") + (revision "0")) + (package + (name "emacs-consult-xdg-recent-files") + (version (git-version "0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hrehfeld/consult-xdg-recent-files") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0nd23n67dmlflw52dc1rbhy04mc9ymydnsmvfr75hqb7sznn3343")))) + (build-system emacs-build-system) + (propagated-inputs (list emacs-consult)) + (home-page "https://github.com/hrehfeld/consult-xdg-recent-files") + (synopsis "Include files used by other programs than Emacs in Consult") + (description + "This package provides the ability to include files used by other +programs in the candidate lists of commands like @code{consult-recent-file} +and @code{consult-buffer}. This allows to use the same interface for file +opening. + +On systems that comply with the XDG specification, these files are listed in +the file @file{recently-used.xbel}, which is found in the directory +@file{~/.local/share} or the location described by the environment variable +@code{XDG_DATA_HOME}.") + (license license:gpl3+)))) + (define-public emacs-consult-yasnippet (let ((commit "ae0450889484f23dc4ec37518852a2c61b89f184") (revision "0")) From 708b29a3958fa86d705e998c64360909a4e541bc Mon Sep 17 00:00:00 2001 From: Petr Hodina Date: Wed, 14 Dec 2022 00:56:34 +0100 Subject: [PATCH 008/141] gnu: Add pdfcrack. * gnu/packages/pdf.scm (pdfcrack): New variable. Signed-off-by: Nicolas Goaziou --- gnu/packages/pdf.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 19e10649f3..c4b1b3fb46 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -23,6 +23,7 @@ ;;; Copyright © 2020, 2022 Maxim Cournoyer ;;; Copyright © 2021 Maxime Devos ;;; Copyright © 2022 Paul A. Patience +;;; Copyright © 2022 Petr Hodina ;;; ;;; This file is part of GNU Guix. ;;; @@ -1203,6 +1204,35 @@ information for every pixel as the input.") the framebuffer.") (license license:gpl2+))) +(define-public pdfcrack + (package + (name "pdfcrack") + (version "0.20") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/pdfcrack/pdfcrack/" + "pdfcrack-" version "/" + "pdfcrack-" version ".tar.gz")) + (sha256 + (base32 + "1d751n38cbagxqpw6ncvf3jfv7zhxl3fwh5nms2bjp6diyqjk2vv")))) + (build-system gnu-build-system) + (arguments + (list #:tests? #f ;no test suite + #:make-flags #~(list (string-append "CC=" + #$(cc-for-target))) + #:phases #~(modify-phases %standard-phases + (delete 'configure) ;no configure script + (replace 'install + (lambda _ + (install-file "pdfcrack" + (string-append #$output "/bin"))))))) + (home-page "https://pdfcrack.sourceforge.net/") + (synopsis "Password recovery tool for PDF files") + (description "PDFCrack is a simple tool for recovering passwords from PDF +documents that use the standard security handler.") + (license license:gpl2+))) + (define-public pdf2svg (package (name "pdf2svg") From 612a3f8716b553969855cd5e288621f3a1793f30 Mon Sep 17 00:00:00 2001 From: Sughosha Date: Fri, 16 Dec 2022 10:01:13 +0000 Subject: [PATCH 009/141] gnu: ardour: Update to 7.2 * gnu/packages/audio.scm (ardour): Update to 7.2. Signed-off-by: Nicolas Goaziou --- 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 b1a16ef3d3..1654c57bdf 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -731,7 +731,7 @@ purposes developed at Queen Mary, University of London.") (define-public ardour (package (name "ardour") - (version "7.1") + (version "7.2") (source (origin (method git-fetch) (uri (git-reference @@ -748,7 +748,7 @@ purposes developed at Queen Mary, University of London.") namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \"\"; }"))))) (sha256 (base32 - "11ca9xpzmzafl8xl0r0w32lxjqwy532hfd2bzb0d73bdpngpvcbq")) + "1gv0wkzyx59lbnaf5iz9yva4akrd2zkhsmdk8wda3wz06zmk4w1r")) (file-name (string-append name "-" version)))) (build-system waf-build-system) (arguments From fc5dc3e04789a15d80a7b35987adaefc1a94b97c Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Thu, 8 Sep 2022 15:24:06 +0000 Subject: [PATCH 010/141] gnu: Add paraview. * gnu/packages/graphics.scm (paraview): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/image-processing.scm | 277 ++++++++++++++++++++++++++++++ 1 file changed, 277 insertions(+) diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm index ab796d7719..85acc3f5b5 100644 --- a/gnu/packages/image-processing.scm +++ b/gnu/packages/image-processing.scm @@ -21,6 +21,7 @@ ;;; Copyright © 2021 Ivan Gankevich ;;; Copyright © 2022 Maxim Cournoyer ;;; Copyright © 2022 Tomasz Jeneralczyk +;;; Copyright © 2022 Paul A. Patience ;;; ;;; This file is part of GNU Guix. ;;; @@ -60,6 +61,8 @@ #:use-module (gnu packages documentation) #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) + #:use-module (gnu packages game-development) + #:use-module (gnu packages gcc) #:use-module (gnu packages geo) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gimp) @@ -75,16 +78,21 @@ #:use-module (gnu packages imagemagick) #:use-module (gnu packages linux) #:use-module (gnu packages maths) + #:use-module (gnu packages mpi) #:use-module (gnu packages pdf) #:use-module (gnu packages perl) #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pretty-print) #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages python-check) + #:use-module (gnu packages python-science) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) + #:use-module (gnu packages sdl) #:use-module (gnu packages serialization) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages tbb) #:use-module (gnu packages textutils) @@ -958,6 +966,275 @@ and quantitative techniques. The data exploration can be done interactively in 3D or programmatically using ParaView’s batch processing capabilities.") (license license:bsd-3))) +(define-public paraview + (package + (name "paraview") + (version "5.11.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.kitware.com/paraview/paraview.git") + (commit (string-append "v" version)) + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0qifzsbgg8f7zvg5a4934nql6nv5b6sm1f59bylyc6v5bqd0myas")) + (modules '((guix build utils))) + (snippet + ;; TODO: Also remove unused bundled libraries and plugins? + #~(begin + ;; Remove bundled ParaView libraries which are available in Guix + ;; or undesired. + (for-each (lambda (dir) + (delete-file-recursively + (string-append "ThirdParty/" dir "/vtk" + (string-downcase dir)))) + '(;;"CosmoHaloFinder" + ;;"IceT" + "NvPipe" ; Don't want NvPipe support + ;;"QtTesting" + ;;"cinema" + ;;"cinemasci" + "protobuf")) + ;; Remove undesired ParaView plugins. + (delete-file-recursively "Plugins/pvNVIDIAIndeX") + ;; Remove bundled VTK libraries which are available in Guix. + (for-each (lambda (dir) + (delete-file-recursively + (string-append "VTK/ThirdParty/" dir "/vtk" dir))) + '(;;"cgns" + "cli11" + ;;"diy2" + "doubleconversion" + "eigen" + ;;"exodusII" + "expat" + ;;"exprtk" + ;;"fides" + "fmt" + "freetype" + "gl2ps" + "glew" + ;;"h5part" + "hdf5" + ;;"ioss" + "jpeg" + "jsoncpp" + ;;"kissfft" + ;;"libharu" ; Requires some PRs applied to 2.3.0 + "libproj" + "libxml2" + ;;"loguru" + "lz4" + "lzma" + "mpi4py" + "netcdf" + ;;"nlohmannjson" ; ParFlow build fails even with bundled + "ogg" + ;;"pegtl" + "png" + "pugixml" + "sqlite" + "theora" + "tiff" + "utf8" + ;;"verdict" + ;;"vpic" + ;;"vtkm" + ;;"xdmf2" + ;;"xdmf3" + ;;"zfp" + "zlib")))))) + (build-system qt-build-system) + (arguments + (list + #:build-type "Release" ; 542 MiB in release mode + #:tests? #f ; Downloads test data + #:configure-flags + #~(let ((doc (string-append #$output "/share/doc/" #$name "-" #$version))) + (list + (string-append "-DCMAKE_INSTALL_DOCDIR=" doc) ; For paraview.qch + + ;; ParaView build options + "-DPARAVIEW_BUILD_DEVELOPER_DOCUMENTATION=ON" + (string-append "-DPARAVIEW_GENERATED_DOCUMENTATION_OUTPUT_DIRECTORY=" doc) + + ;; ParaView capability options + ;;"-DPARAVIEW_USE_EXTERNAL_VTK=ON" ; Unsupported by ParaView + "-DPARAVIEW_USE_MPI=ON" + "-DPARAVIEW_USE_PYTHON=ON" + "-DPARAVIEW_USE_QTWEBENGINE=ON" + + ;; ParaView features + ;; + ;; Enable those that are disabled by default. + ;; Commented means the dependencies are missing from Guix + ;; (or are otherwise described). + ;;"-DPARAVIEW_ENABLE_ADIOS2=ON" + ;;"-DPARAVIEW_ENABLE_COSMOTOOLS=ON" + ;;"-DPARAVIEW_ENABLE_CATALYST=ON" + "-DPARAVIEW_ENABLE_FFMPEG=ON" + ;;"-DPARAVIEW_ENABLE_FIDES=ON" + "-DPARAVIEW_ENABLE_GDAL=ON" + ;;"-DPARAVIEW_ENABLE_LAS=ON" + ;;"-DPARAVIEW_ENABLE_LOOKINGGLASS=ON" ; Downloads dependency + ;;"-DPARAVIEW_ENABLE_MOMENTINVARIANTS=ON" ; Downloads dependency + "-DPARAVIEW_ENABLE_MOTIONFX=ON" + ;;"-DPARAVIEW_ENABLE_OPENTURNS=ON" + ;;"-DPARAVIEW_ENABLE_OPENVDB=ON" ; Dependency not found + ;;"-DPARAVIEW_ENABLE_PDAL=ON" + ;;"-DPARAVIEW_ENABLE_RAYTRACING=ON" + "-DPARAVIEW_ENABLE_VISITBRIDGE=ON" + "-DPARAVIEW_ENABLE_XDMF3=ON" + + ;; ParaView miscellaneous options + ;; + ;; Without -DPARAVIEW_DATA_EXCLUDE_FROM_ALL=OFF, test data is + ;; downloaded even with tests disabled. + "-DPARAVIEW_VERSIONED_INSTALL=OFF" + "-DPARAVIEW_DATA_EXCLUDE_FROM_ALL=OFF" + + ;; ParaView plugins + ;; + ;; Enable those that are disabled by default. + ;; Commented means the dependencies are missing from Guix + ;; (or are otherwise described). + ;;"-DPARAVIEW_PLUGIN_ENABLE_AdiosReaderPixie=ON" + ;;"-DPARAVIEW_PLUGIN_ENABLE_AdiosReaderStaging=ON" + "-DPARAVIEW_PLUGIN_ENABLE_CAVEInteraction=ON" + ;;"-DPARAVIEW_PLUGIN_ENABLE_CDIReader=ON" + "-DPARAVIEW_PLUGIN_ENABLE_GeographicalMap=ON" + "-DPARAVIEW_PLUGIN_ENABLE_GmshIO=ON" + "-DPARAVIEW_PLUGIN_ENABLE_InSituExodus=ON" + ;;"-DPARAVIEW_PLUGIN_ENABLE_LookingGlass=ON" + "-DPARAVIEW_PLUGIN_ENABLE_NetCDFTimeAnnotationPlugin=ON" + ;;"-DPARAVIEW_PLUGIN_ENABLE_ParFlow=ON" ; Build fails + ;;"-DPARAVIEW_PLUGIN_ENABLE_PythonQtPlugin=ON" + "-DPARAVIEW_PLUGIN_ENABLE_SpaceMouseInteractor=ON" + ;;"-DPARAVIEW_PLUGIN_ENABLE_VDFReaderPlugin=ON" + ;;"-DPARAVIEW_PLUGIN_ENABLE_XRInterface=ON" ; Build fails + ;;"-DPARAVIEW_PLUGIN_ENABLE_zSpace=ON" + + ;; VTK options + "-DVTK_SMP_IMPLEMENTATION_TYPE=TBB" + "-DVTKm_ENABLE_MPI=ON" + + ;; External libraries for ParaView and VTK + "-DVTK_MODULE_USE_EXTERNAL_ParaView_protobuf=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_cli11=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_doubleconversion=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_eigen=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_expat=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_fmt=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_freetype=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_glew=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_hdf5=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_jpeg=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_jsoncpp=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_libproj=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_libxml2=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_lz4=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_lzma=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_mpi4py=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_netcdf=ON" + ;;"-DVTK_MODULE_USE_EXTERNAL_VTK_nlohmannjson=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_ogg=ON" + ;;"-DVTK_MODULE_USE_EXTERNAL_VTK_pegtl=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_png=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_pugixml=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_sqlite=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_theora=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_tiff=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_utf8=ON" + "-DVTK_MODULE_USE_EXTERNAL_VTK_zlib=ON")) + #:phases + #~(modify-phases %standard-phases + (add-after 'set-paths 'hide-gfortran + (lambda _ + (setenv "CPLUS_INCLUDE_PATH" + (string-join + (delete (string-append #$(this-package-native-input "gfortran") + "/include/c++") + (string-split (getenv "CPLUS_INCLUDE_PATH") #\:)) + ":")))) + (replace 'install-license-files + (lambda _ + (let ((src (string-append #$output "/share/licenses/ParaView")) + (dst (string-append #$output "/share/doc/" + #$name "-" #$version "/licenses"))) + (copy-recursively src dst) + (delete-file-recursively (dirname src)))))))) + (native-inputs + (list gfortran + ;; For the documentation + doxygen + graphviz + perl + python-sphinx)) + (inputs + (list boost + cli11 + curl + double-conversion + eigen + expat + ffmpeg + fmt + freetype + gdal + gl2ps + glew + gmsh + hdf5 + ;;json-modern-cxx ;For ParFlow; build fails + jsoncpp + libjpeg-turbo + libogg + libpng + libtheora + libtiff + libxcursor + libxml2 + libxt + lz4 + lzip + mesa + netcdf + openmpi + ;;openvdb ;For OpenVDB; dependency not found + ;;openvr ;For XRInterface; build fails + ;;pegtl ;For VTK; build fails + proj + protobuf + pugixml + python-cftime + python-matplotlib + python-mpi4py + python-numpy + python-wrapper + qtbase-5 + qtdeclarative-5 + qtmultimedia-5 + qtsvg-5 + qttools-5 + qtwebchannel-5 + qtwebengine-5 + qtx11extras + qtxmlpatterns + sdl2 + sqlite + tbb + utfcpp + zlib)) + (home-page "https://www.paraview.org/") + (synopsis "VTK-based, parallel data analyzer and visualizer") + (description "ParaView is a VTK-based, parallel data analyzer and +visualizer which allows exploring data interactively in 3D or +programmatically.") + (license license:bsd-3))) + (define-public vxl (package (name "vxl") From b0e9736103ec47ff644a8fc6245ffc5cc25e48d9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 28 Dec 2022 18:40:58 +0100 Subject: [PATCH 011/141] gnu: Add emacs-hide-lines. * gnu/packages/emacs-xyz.scm (emacs-hide-lines): New variable. --- gnu/packages/emacs-xyz.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 8b0bb58275..d58495db87 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -647,6 +647,26 @@ current buffer.") "Abstract Emacs Lisp framework for tree navigation.") (license license:gpl3+)))) +(define-public emacs-hide-lines + (package + (name "emacs-hide-lines") + (version "20210513.1636") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/vapniks/hide-lines.git") + (commit "f0828c15e50db5eddb905de783e7683b04d1eca3"))) + (sha256 + (base32 + "1pw0wp1pzy6snycvz12nj0q7jxxj07h3lqas184w44nhrira7qhj")))) + (build-system emacs-build-system) + (home-page "https://github.com/vapniks/hide-lines") + (synopsis "Commands for hiding lines based on a regexp") + (description + "This package provides commands to hide lines based on a regular +expression.") + (license license:gpl3+))) + (define-public emacs-hgignore-mode ;; From 2021-03-14. ;; No releases available. From bf1f2122698e37aa796d5446ed9d027b0245730a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 28 Dec 2022 18:41:04 +0100 Subject: [PATCH 012/141] gnu: Add emacs-hsluv. * gnu/packages/emacs-xyz.scm (emacs-hsluv): New variable. --- gnu/packages/emacs-xyz.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index d58495db87..50f3929aa4 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -693,6 +693,33 @@ editing @file{.hgignore} files used by the Mercurial version control system.") (license license:gpl3+)))) +(define-public emacs-hsluv + (package + (name "emacs-hsluv") + (version "20181127.1206") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hsluv/hsluv-emacs.git") + (commit "c3bc5228e30d66e7dee9ff1a0694c2b976862fc0"))) + (sha256 + (base32 + "19q8qlq4s2kfydpadkq1zd92611dvq7dr8vlhlbd9gplzpx7dhfd")))) + (build-system emacs-build-system) + (propagated-inputs (list emacs-seq)) + (home-page "https://github.com/hsluv/hsluv-emacs") + (synopsis "HSLuv color space conversions") + (description + "This package provides an elisp implementation of the HSLUV colorspace +conversions documented on @url{http://www.hsluv.org/}. HSLuv is a +human-friendly alternative to HSL. CIELUV is a color space designed for +perceptual uniformity based on human experiments. When accessed by polar +coordinates, it becomes functionally similar to HSL with a single problem: its +chroma component doesn't fit into a specific range. HSLuv extends CIELUV with +a new saturation component that allows you to span all the available chroma as +a neat percentage.") + (license license:expat))) + (define-public emacs-platformio-mode (package (name "emacs-platformio-mode") From 9b3df371429e7f5343491dc1bf4c0417389cadd1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 28 Dec 2022 18:43:30 +0100 Subject: [PATCH 013/141] gnu: Add emacs-syslog-mode. * gnu/packages/emacs-xyz.scm (emacs-syslog-mode): New variable. --- 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 50f3929aa4..f020426750 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -30176,6 +30176,28 @@ challenge the three computer opponents in one player mode. You can even train opponent slimes.") (license license:gpl3+))) +(define-public emacs-syslog-mode + (package + (name "emacs-syslog-mode") + (version "20210910.1952") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/vapniks/syslog-mode.git") + (commit "072664784dae41a573a9de8d178bf577b7526b82"))) + (sha256 + (base32 + "04ddpn6il6mh1f992x3fxl6yljryghi51q4845lx08cbc74wnfz0")))) + (build-system emacs-build-system) + (propagated-inputs (list emacs-hide-lines emacs-ov emacs-hsluv)) + (home-page "https://github.com/vapniks/syslog-mode") + (synopsis "Major-mode for viewing log files and strace output") + (description "This library provides a major-mode for viewing syslog and +strace files. You can highlight and filter the lines of the file by regular +expressions and by timestamp, view notes associated with files, extract text, +count matches, etc.") + (license license:gpl3+))) + (define-public emacs-systemd-mode (package (name "emacs-systemd-mode") From 003b79576df4e483781c8464f08021e513846235 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 28 Dec 2022 19:11:59 +0100 Subject: [PATCH 014/141] gnu: Add jacktrip. * gnu/packages/audio.scm (jacktrip): New variable. --- gnu/packages/audio.scm | 43 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 1654c57bdf..278a2f31e8 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -2463,6 +2463,49 @@ synchronous execution of all clients, and low latency operation.") ;; Most files are under GPLv2+, but some headers are under LGPLv2.1+ (license (list license:gpl2+ license:lgpl2.1+)))) +(define-public jacktrip + (package + (name "jacktrip") + (version "1.6.8") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jacktrip/jacktrip/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0719ng799kingv0y9yk07bvnmprk25c09ph3yaia5dhapg0jz17m")))) + (build-system gnu-build-system) + (arguments + (list + #:phases + '(modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (invoke "qmake" + (string-append "PREFIX=" + (assoc-ref outputs "out")) + "-config" "novs" + "-config" "noupdater" + "jacktrip.pro")))))) + (inputs + (list jack-2 + python + python-jinja2 + python-pyyaml + qtbase-5 + rtaudio)) + (native-inputs + (list pkg-config qtbase-5)) ;for qmake + (home-page "https://jacktrip.github.io/jacktrip/") + (synopsis "Multi-machine audio system for network music performance") + (description + "JackTrip is a multi-machine audio system used for network music +performance over the Internet. It supports any number of channels (as many as +the computer/network can handle) of bidirectional, high quality, uncompressed +audio signal streaming.") + (license (list license:gpl3+ license:lgpl3 license:expat)))) + (define-public jalv (package (name "jalv") From bbada5967d791776c7f6a81e272a0e6a67d216bb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 28 Dec 2022 19:26:10 +0100 Subject: [PATCH 015/141] gnu: r-giotto: Update to 1.1.2-1.3c8067c. * gnu/packages/bioinformatics.scm (r-giotto): Update to 1.1.2-1.3c8067c. --- gnu/packages/bioinformatics.scm | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 8cdce01e73..c2e6b9f320 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -12785,20 +12785,20 @@ is then merged.") (license license:gpl2)))) (define-public r-giotto - (let ((commit "68d7390dce87223cac11d4d8f31705fe0144d011") + (let ((commit "3c8067cedbf6e3112edcac2ae796de05fd9d6fe4") (revision "1")) (package (name "r-giotto") - (version (git-version "1.1.1" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/RubD/Giotto/") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0mv60khc05wrxzr4ir6cirn7dpqvgwan5hm00lmafsyalr51nf5i")))) + (version (git-version "1.1.2" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/RubD/Giotto/") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1nbbqs0jk07wafshvqsdp8ds3kr9bwq88aafc5m0kdiqs7winb0d")))) (properties `((upstream-name . "Giotto"))) (build-system r-build-system) (propagated-inputs From 4f5ea195ffd2cb97b80a706c231d998304cecafc Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 19 Dec 2022 16:17:10 -0500 Subject: [PATCH 016/141] teams: Add a "get-maintainer" command. This can be used as a compatibility mode with the get_maintainer.pl Perl script included in the Linux (or U-Boot) source tree. * etc/teams.scm.in (git-patch->commit-id): New procedure. (main) : Register new command. Document it. Series-changes: 2 - Move newline character (~%) in usage output to the bottom --- etc/teams.scm.in | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/etc/teams.scm.in b/etc/teams.scm.in index f42a7f6f28..e50efea786 100644 --- a/etc/teams.scm.in +++ b/etc/teams.scm.in @@ -5,6 +5,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2022 Ricardo Wurmus ;;; Copyright © 2022 Mathieu Othacehe +;;; Copyright © 2022 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -34,6 +35,7 @@ (ice-9 format) (ice-9 regex) (ice-9 match) + (ice-9 rdelim) (guix ui) (git)) @@ -623,6 +625,15 @@ and REV-END, two git revision strings." (const 0)) files)) +(define (git-patch->commit-id file) + "Parse the commit ID from the first line of FILE, a patch produced with git." + (call-with-input-file file + (lambda (port) + (let ((m (string-match "^From ([0-9a-f]{40})" (read-line port)))) + (unless m + (error "invalid patch file:" file)) + (match:substring m 1))))) + (define (main . args) (match args @@ -631,6 +642,12 @@ and REV-END, two git revision strings." (("cc-members" rev-start rev-end) (apply cc (find-team-by-scope (diff-revisions rev-start rev-end)))) + (("get-maintainer" patch-file) + (let* ((rev-end (git-patch->commit-id patch-file)) + (rev-start (string-append rev-end "^"))) + (apply main "list-members" + (map (compose symbol->string team-id) + (find-team-by-scope (diff-revisions rev-start rev-end)))))) (("list-teams" . args) (list-teams)) (("list-members" . team-names) @@ -646,6 +663,7 @@ Commands: cc get git send-email flags for cc-ing cc-members cc teams related to files changed between revisions list-teams list teams and their members - list-members list members belonging to ~%")))) + list-members list members belonging to + get-maintainer compatibility mode with Linux get_maintainer.pl~%")))) (apply main (cdr (command-line))) From a6b98cdc07dff83413a3f32687e4671517991721 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Tue, 27 Dec 2022 09:57:56 -0500 Subject: [PATCH 017/141] teams: Allow a patch-file argument to cc-members. * etc/teams.scm.in (git-patch->revisions): New procedure. (main) [cc-members]: New match pattern to support patch file argument. [get-maintainer]: Simplify using the newly introduced procedure from above. (main): Update usage doc. Series-changes: 2 - New: support passing a patch file to the cc-members command --- etc/teams.scm.in | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/etc/teams.scm.in b/etc/teams.scm.in index e50efea786..96a04aca3d 100644 --- a/etc/teams.scm.in +++ b/etc/teams.scm.in @@ -634,20 +634,29 @@ and REV-END, two git revision strings." (error "invalid patch file:" file)) (match:substring m 1))))) +(define (git-patch->revisions file) + "Return the start and end revisions of FILE, a patch file produced with git." + (let* ((rev-end (git-patch->commit-id file)) + (rev-start (string-append rev-end "^"))) + (list rev-start rev-end))) + (define (main . args) (match args (("cc" . team-names) (apply cc (map find-team team-names))) + (("cc-members" patch-file) + (unless (file-exists? patch-file) + (error "patch file does not exist:" patch-file)) + (apply main "cc-members" (git-patch->revisions patch-file))) (("cc-members" rev-start rev-end) (apply cc (find-team-by-scope (diff-revisions rev-start rev-end)))) (("get-maintainer" patch-file) - (let* ((rev-end (git-patch->commit-id patch-file)) - (rev-start (string-append rev-end "^"))) - (apply main "list-members" - (map (compose symbol->string team-id) - (find-team-by-scope (diff-revisions rev-start rev-end)))))) + (apply main "list-members" + (map (compose symbol->string team-id) + (find-team-by-scope (apply diff-revisions + (git-patch->revisions patch-file)))))) (("list-teams" . args) (list-teams)) (("list-members" . team-names) @@ -660,10 +669,15 @@ and REV-END, two git revision strings." "Usage: etc/teams.scm [] Commands: - cc get git send-email flags for cc-ing - cc-members cc teams related to files changed between revisions - list-teams list teams and their members - list-members list members belonging to - get-maintainer compatibility mode with Linux get_maintainer.pl~%")))) + cc + get git send-email flags for cc-ing + cc-members | patch + cc teams related to files changed between revisions or in a patch file + list-teams + list teams and their members + list-members + list members belonging to + get-maintainer + compatibility mode with Linux get_maintainer.pl~%")))) (apply main (cdr (command-line))) From fde5af3962c8fafc5d20e5d742cc7aea907f3563 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 19 Dec 2022 17:00:38 -0500 Subject: [PATCH 018/141] .patman: New configuration file. * .patman: New file. Series-to: 60218@debbugs.gnu.org Series-cc: rekado@elephly.net, othacehe@gnu.org Series-version: 2 --- .patman | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 .patman diff --git a/.patman b/.patman new file mode 100644 index 0000000000..20c3362ac1 --- /dev/null +++ b/.patman @@ -0,0 +1,10 @@ +# This config file allows for Patchwork integration with +# https://patches.guix-patches.cbaines.net/. + +[settings] +project: guix-patches +patchwork_url: https://patches.guix-patches.cbaines.net +add_signoff: False +get_maintainer_script: etc/teams.scm get-maintainer +# TODO: enable check_patch +check_patch: False From 0d4587d65fe1ad0d9357a6d9f776bc7d17391b8e Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 16 Dec 2022 13:39:48 -0500 Subject: [PATCH 019/141] gnu: Add u-boot-documentation. * gnu/packages/patches/u-boot-infodocs-target.patch: New patch. * gnu/local.mk: (dist_patch_DATA): Register it. * gnu/packages/bootloaders.scm (u-boot): Apply it. (u-boot-documentation): New variable. --- gnu/local.mk | 1 + gnu/packages/bootloaders.scm | 41 ++++++++- .../patches/u-boot-infodocs-target.patch | 84 +++++++++++++++++++ 3 files changed, 125 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/u-boot-infodocs-target.patch diff --git a/gnu/local.mk b/gnu/local.mk index 0d4028a161..71b8ba506b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1916,6 +1916,7 @@ dist_patch_DATA = \ %D%/packages/patches/tuxpaint-stamps-path.patch \ %D%/packages/patches/twinkle-bcg729.patch \ %D%/packages/patches/u-boot-allow-disabling-openssl.patch \ + %D%/packages/patches/u-boot-infodocs-target.patch \ %D%/packages/patches/u-boot-nintendo-nes-serial.patch \ %D%/packages/patches/u-boot-rockchip-inno-usb.patch \ %D%/packages/patches/u-boot-sifive-prevent-reloc-initrd-fdt.patch \ diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 89f051f337..a0d1bb279e 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2021 Brice Waegeneire ;;; Copyright © 2022 Denis 'GNUtoo' Carikli ;;; Copyright © 2021 Stefan +;;; Copyright © 2022 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -62,6 +63,7 @@ #:use-module (gnu packages texinfo) #:use-module (gnu packages tls) #:use-module (gnu packages sdl) + #:use-module (gnu packages sphinx) #:use-module (gnu packages serialization) #:use-module (gnu packages swig) #:use-module (gnu packages valgrind) @@ -638,7 +640,8 @@ tree binary files. These are board description files used by Linux and BSD.") (list %u-boot-rockchip-inno-usb-patch %u-boot-allow-disabling-openssl-patch %u-boot-sifive-prevent-relocating-initrd-fdt - %u-boot-rk3399-enable-emmc-phy-patch)) + %u-boot-rk3399-enable-emmc-phy-patch + (search-patch "u-boot-infodocs-target.patch"))) (method url-fetch) (uri (string-append "https://ftp.denx.de/pub/u-boot/" @@ -669,6 +672,42 @@ tree binary files. These are board description files used by Linux and BSD.") also initializes the boards (RAM etc).") (license license:gpl2+))) +;;; This is very similar to the linux-libre-documentation package, since it +;;; reuses the same Makefile-based build system. +(define-public u-boot-documentation + (package + (inherit u-boot) + (name "u-boot-documentation") + (arguments + (list + #:make-flags #~(list "HOSTCC=gcc" + ;; Avoid treating Sphinx warnings as errors. + "SPHINXOPTS=") + #:tests? #f + #:phases #~(modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda* (#:key make-flags #:allow-other-keys) + (apply invoke "make" "infodocs" make-flags))) + (replace 'install + (lambda* (#:key make-flags #:allow-other-keys) + (let* ((info-dir (string-append #$output "/share/info")) + (info (string-append info-dir + "/DasUBoot.info.gz"))) + (with-directory-excursion "doc/output" + (apply invoke "make" "-C" "texinfo" "install-info" + (string-append "infodir=" info-dir) + make-flags)))))))) + (native-inputs + (modify-inputs (package-native-inputs u-boot) + (append fontconfig + python-sphinx + texinfo + which))) + (synopsis "U-Boot documentation") + (description "This package provides the documentation for U-Boot, as an +Info manual."))) + (define-public u-boot-tools (package (inherit u-boot) diff --git a/gnu/packages/patches/u-boot-infodocs-target.patch b/gnu/packages/patches/u-boot-infodocs-target.patch new file mode 100644 index 0000000000..5b21a99de3 --- /dev/null +++ b/gnu/packages/patches/u-boot-infodocs-target.patch @@ -0,0 +1,84 @@ +Upstream status: https://patchwork.ozlabs.org/project/uboot/list/?series=333259 + +diff --git a/Makefile b/Makefile +index de5746399a..597a8886c3 100644 +--- a/Makefile ++++ b/Makefile +@@ -2372,7 +2372,7 @@ tcheck: + # Documentation targets + # --------------------------------------------------------------------------- + DOC_TARGETS := xmldocs latexdocs pdfdocs htmldocs epubdocs cleandocs \ +- linkcheckdocs dochelp refcheckdocs ++ linkcheckdocs dochelp refcheckdocs texinfodocs infodocs + PHONY += $(DOC_TARGETS) + $(DOC_TARGETS): scripts_basic FORCE + $(Q)$(MAKE) $(build)=doc $@ +diff --git a/doc/Makefile b/doc/Makefile +index f5de65e927..d0904a9f99 100644 +--- a/doc/Makefile ++++ b/doc/Makefile +@@ -69,6 +69,14 @@ quiet_cmd_sphinx = SPHINX $@ --> file://$(abspath $(BUILDDIR)/$3/$4) + htmldocs: + @+$(foreach var,$(SPHINXDIRS),$(call loop_cmd,sphinx,html,$(var),,$(var))) + ++texinfodocs: ++ @+$(foreach var,$(SPHINXDIRS),$(call loop_cmd,sphinx,texinfo,$(var),texinfo,$(var))) ++ ++# Note: the 'info' Make target is generated by sphinx itself when ++# running the texinfodocs target defined above. ++infodocs: texinfodocs ++ $(MAKE) -C $(BUILDDIR)/texinfo info ++ + linkcheckdocs: + @$(foreach var,$(SPHINXDIRS),$(call loop_cmd,sphinx,linkcheck,$(var),,$(var))) + +@@ -109,6 +117,8 @@ cleandocs: + dochelp: + @echo ' U-Boot documentation in different formats from ReST:' + @echo ' htmldocs - HTML' ++ @echo ' texinfodocs - Texinfo' ++ @echo ' infodocs - Info' + @echo ' latexdocs - LaTeX' + @echo ' pdfdocs - PDF' + @echo ' epubdocs - EPUB' +diff --git a/doc/conf.py b/doc/conf.py +index 62c8d31270..3db70f80c1 100644 +--- a/doc/conf.py ++++ b/doc/conf.py +@@ -449,7 +449,7 @@ for fn in os.listdir('.'): + # One entry per manual page. List of tuples + # (source start file, name, description, authors, manual section). + man_pages = [ +- (master_doc, 'dasuboot', 'The U-Boot Documentation', ++ (master_doc, 'u-boot', 'The U-Boot Documentation', + [author], 1) + ] + +@@ -463,8 +463,8 @@ man_pages = [ + # (source start file, target name, title, author, + # dir menu entry, description, category) + texinfo_documents = [ +- (master_doc, 'DasUBoot', 'The U-Boot Documentation', +- author, 'DasUBoot', 'One line description of project.', ++ (master_doc, 'u-boot', 'The U-Boot Documentation', ++ author, 'U-Boot', 'Boot loader for embedded systems', + 'Miscellaneous'), + ] + +diff --git a/doc/media/Makefile b/doc/media/Makefile +index b9b43a34c3..9b32258696 100644 +--- a/doc/media/Makefile ++++ b/doc/media/Makefile +@@ -22,10 +22,11 @@ $(BUILDDIR)/linker_lists.h.rst: ${API}/linker_lists.h ${PARSER} $(SRC_DIR)/linke + + # Media build rules + +-.PHONY: all html epub xml latex ++.PHONY: all html texinfo epub xml latex + + all: $(IMGDOT) $(BUILDDIR) ${TARGETS} + html: all ++texinfo: all + epub: all + xml: all + latex: $(IMGPDF) all From bcd131dafbaf61ae823c0a3ba1b886f5b0c15ea9 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 16 Dec 2022 15:29:27 -0500 Subject: [PATCH 020/141] gnu: Add patman. * gnu/packages/bootloaders.scm (patman): New variable. * gnu/packages/patches/u-boot-patman-fix-help.patch: New patch. * gnu/packages/patches/u-boot-patman-get-maintainer.patch: Likewise. * gnu/packages/patches/u-boot-patman-local-conf.patch: Likewise. * gnu/local.mk (dist_patch_DATA): Register them. --- gnu/local.mk | 3 + gnu/packages/bootloaders.scm | 36 +++- .../patches/u-boot-patman-fix-help.patch | 40 ++++ .../u-boot-patman-get-maintainer.patch | 104 +++++++++++ .../patches/u-boot-patman-local-conf.patch | 176 ++++++++++++++++++ 5 files changed, 358 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/u-boot-patman-fix-help.patch create mode 100644 gnu/packages/patches/u-boot-patman-get-maintainer.patch create mode 100644 gnu/packages/patches/u-boot-patman-local-conf.patch diff --git a/gnu/local.mk b/gnu/local.mk index 71b8ba506b..7c7b5c12bd 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1917,6 +1917,9 @@ dist_patch_DATA = \ %D%/packages/patches/twinkle-bcg729.patch \ %D%/packages/patches/u-boot-allow-disabling-openssl.patch \ %D%/packages/patches/u-boot-infodocs-target.patch \ + %D%/packages/patches/u-boot-patman-fix-help.patch \ + %D%/packages/patches/u-boot-patman-get-maintainer.patch \ + %D%/packages/patches/u-boot-patman-local-conf.patch \ %D%/packages/patches/u-boot-nintendo-nes-serial.patch \ %D%/packages/patches/u-boot-rockchip-inno-usb.patch \ %D%/packages/patches/u-boot-sifive-prevent-reloc-initrd-fdt.patch \ diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index a0d1bb279e..406f885253 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -69,7 +69,10 @@ #:use-module (gnu packages valgrind) #:use-module (gnu packages virtualization) #:use-module (gnu packages xorg) + #:use-module (gnu packages python-web) + #:use-module (gnu packages python-xyz) #:use-module (guix build-system gnu) + #:use-module (guix build-system pyproject) #:use-module (guix build-system trivial) #:use-module (guix download) #:use-module (guix gexp) @@ -641,7 +644,10 @@ tree binary files. These are board description files used by Linux and BSD.") %u-boot-allow-disabling-openssl-patch %u-boot-sifive-prevent-relocating-initrd-fdt %u-boot-rk3399-enable-emmc-phy-patch - (search-patch "u-boot-infodocs-target.patch"))) + (search-patch "u-boot-infodocs-target.patch") + (search-patch "u-boot-patman-fix-help.patch") + (search-patch "u-boot-patman-local-conf.patch") + (search-patch "u-boot-patman-get-maintainer.patch"))) (method url-fetch) (uri (string-append "https://ftp.denx.de/pub/u-boot/" @@ -816,6 +822,34 @@ def test_ctrl_c")) " This package provides board-independent tools " "of U-Boot.")))) +;;; This is packaged separately, as it can be used in other contexts than for +;;; U-Boot development. +(define-public patman + (package + (inherit u-boot) + (name "patman") + (build-system pyproject-build-system) + (arguments + ;; The test suite strongly relies on the git metadata being available (23 + ;; failed, 14 passed). + (list + #:tests? #f + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ + (chdir "tools/patman")))))) + (inputs (list python-pygit2 python-requests)) + (synopsis "Patch automation tool") + (description "Patman is a patch automation script which: +@itemize +@item Creates patches directly from your branch +@item Cleans them up by removing unwanted tags +@item Inserts a cover letter with change lists +@item Runs the patches through automated checks +@item Optionally emails them out to selected people. +@end itemize"))) + (define*-public (make-u-boot-package board triplet #:key defconfig diff --git a/gnu/packages/patches/u-boot-patman-fix-help.patch b/gnu/packages/patches/u-boot-patman-fix-help.patch new file mode 100644 index 0000000000..89bac06c2f --- /dev/null +++ b/gnu/packages/patches/u-boot-patman-fix-help.patch @@ -0,0 +1,40 @@ +Upstream status: https://patchwork.ozlabs.org/project/uboot/list/?series=333156 + +diff --git a/tools/patman/main.py b/tools/patman/main.py +index 5a7756a221..bf300c6e64 100755 +--- a/tools/patman/main.py ++++ b/tools/patman/main.py +@@ -7,6 +7,7 @@ + """See README for more information""" + + from argparse import ArgumentParser ++import importlib.resources + import os + import re + import shutil +@@ -163,11 +164,8 @@ elif args.cmd == 'send': + fd.close() + + elif args.full_help: +- tools.print_full_help( +- os.path.join(os.path.dirname(os.path.realpath(sys.argv[0])), +- 'README.rst') +- ) +- ++ with importlib.resources.path('patman', 'README.rst') as readme: ++ tools.print_full_help(str(readme)) + else: + # If we are not processing tags, no need to warning about bad ones + if not args.process_tags: +diff --git a/tools/patman/setup.py b/tools/patman/setup.py +index 43fdc00ce6..ce9bb4aa63 100644 +--- a/tools/patman/setup.py ++++ b/tools/patman/setup.py +@@ -7,6 +7,6 @@ setup(name='patman', + scripts=['patman'], + packages=['patman'], + package_dir={'patman': ''}, +- package_data={'patman': ['README']}, ++ package_data={'patman': ['README.rst']}, + classifiers=['Environment :: Console', + 'Topic :: Software Development']) diff --git a/gnu/packages/patches/u-boot-patman-get-maintainer.patch b/gnu/packages/patches/u-boot-patman-get-maintainer.patch new file mode 100644 index 0000000000..4377f8394e --- /dev/null +++ b/gnu/packages/patches/u-boot-patman-get-maintainer.patch @@ -0,0 +1,104 @@ +Upstream status: https://patchwork.ozlabs.org/project/uboot/list/?series=333427 + +diff --git a/tools/patman/patman.rst b/tools/patman/patman.rst +index 7828899879..95b6c9c3f0 100644 +--- a/tools/patman/patman.rst ++++ b/tools/patman/patman.rst +@@ -88,7 +88,7 @@ To add your own, create a file `~/.patman` like this:: + Patman will also look for a `.patman` configuration file at the root + of the current project git repository, which makes it possible to + override the `project` settings variable or anything else in a +-project-specific way. The values of this "local" configuration file ++project-specific way. The values of this "local" configuration file + take precedence over those of the "global" one. + + Aliases are recursive. +diff --git a/tools/patman/test_settings.py b/tools/patman/test_settings.py +index 9c14b4aaa3..c768a2fc64 100644 +--- a/tools/patman/test_settings.py ++++ b/tools/patman/test_settings.py +@@ -6,38 +6,62 @@ + import argparse + import contextlib + import os +-import subprocess ++import sys + import tempfile + + from patman import settings ++from patman import tools + + + @contextlib.contextmanager + def empty_git_repository(): + with tempfile.TemporaryDirectory() as tmpdir: + os.chdir(tmpdir) +- subprocess.check_call(['git', 'init']) ++ tools.run('git', 'init', raise_on_error=True) + yield tmpdir + + ++@contextlib.contextmanager ++def cleared_command_line_args(): ++ old_value = sys.argv[:] ++ sys.argv = [sys.argv[0]] ++ try: ++ yield ++ finally: ++ sys.argv = old_value ++ ++ + def test_git_local_config(): +- with empty_git_repository(): +- with tempfile.NamedTemporaryFile() as global_config: +- global_config.write(b'[settings]\n' +- b'project=u-boot\n') +- global_config.flush() +- parser = argparse.ArgumentParser() +- parser.add_argument('-p', '--project', default='unknown') +- +- # Test "global" config is used. +- settings.Setup(parser, 'unknown', global_config.name) +- args, _ = parser.parse_known_args() +- assert args.project == 'u-boot' +- +- # Test local config can shadow it. +- with open('.patman', 'w', buffering=1) as f: +- f.write('[settings]\n' +- 'project=guix-patches\n') +- settings.Setup(parser, 'unknown', global_config.name) +- args, _ = parser.parse_known_args([]) +- assert args.project == 'guix-patches' ++ # Clearing the command line arguments is required, otherwise ++ # arguments passed to the test running such as in 'pytest -k ++ # filter' would be processed by _UpdateDefaults and fail. ++ with cleared_command_line_args(): ++ with empty_git_repository(): ++ with tempfile.NamedTemporaryFile() as global_config: ++ global_config.write(b'[settings]\n' ++ b'project=u-boot\n') ++ global_config.flush() ++ parser = argparse.ArgumentParser() ++ parser.add_argument('-p', '--project', default='unknown') ++ subparsers = parser.add_subparsers(dest='cmd') ++ send = subparsers.add_parser('send') ++ send.add_argument('--no-check', action='store_false', ++ dest='check_patch', default=True) ++ ++ # Test "global" config is used. ++ settings.Setup(parser, 'unknown', global_config.name) ++ args, _ = parser.parse_known_args([]) ++ assert args.project == 'u-boot' ++ send_args, _ = send.parse_known_args([]) ++ assert send_args.check_patch ++ ++ # Test local config can shadow it. ++ with open('.patman', 'w', buffering=1) as f: ++ f.write('[settings]\n' ++ 'project: guix-patches\n' ++ 'check_patch: False\n') ++ settings.Setup(parser, 'unknown', global_config.name) ++ args, _ = parser.parse_known_args([]) ++ assert args.project == 'guix-patches' ++ send_args, _ = send.parse_known_args([]) ++ assert not send_args.check_patch diff --git a/gnu/packages/patches/u-boot-patman-local-conf.patch b/gnu/packages/patches/u-boot-patman-local-conf.patch new file mode 100644 index 0000000000..3400982356 --- /dev/null +++ b/gnu/packages/patches/u-boot-patman-local-conf.patch @@ -0,0 +1,176 @@ +Upstream status: https://patchwork.ozlabs.org/project/uboot/list/?series=333354 + +diff --git a/tools/patman/main.py b/tools/patman/main.py +index bf300c6e64..3616b28f27 100755 +--- a/tools/patman/main.py ++++ b/tools/patman/main.py +@@ -116,7 +116,7 @@ status.add_argument('-f', '--force', action='store_true', + argv = sys.argv[1:] + args, rest = parser.parse_known_args(argv) + if hasattr(args, 'project'): +- settings.Setup(gitutil, parser, args.project, '') ++ settings.Setup(parser, args.project) + args, rest = parser.parse_known_args(argv) + + # If we have a command, it is safe to parse all arguments +diff --git a/tools/patman/patman.rst b/tools/patman/patman.rst +index 8c5c9cc2cc..7828899879 100644 +--- a/tools/patman/patman.rst ++++ b/tools/patman/patman.rst +@@ -74,7 +74,7 @@ out where to send patches pretty well. + During the first run patman creates a config file for you by taking the default + user name and email address from the global .gitconfig file. + +-To add your own, create a file ~/.patman like this:: ++To add your own, create a file `~/.patman` like this:: + + # patman alias file + +@@ -85,6 +85,12 @@ To add your own, create a file ~/.patman like this:: + wolfgang: Wolfgang Denk + others: Mike Frysinger , Fred Bloggs + ++Patman will also look for a `.patman` configuration file at the root ++of the current project git repository, which makes it possible to ++override the `project` settings variable or anything else in a ++project-specific way. The values of this "local" configuration file ++take precedence over those of the "global" one. ++ + Aliases are recursive. + + The checkpatch.pl in the U-Boot tools/ subdirectory will be located and +diff --git a/tools/patman/settings.py b/tools/patman/settings.py +index 903d6fcb0b..e8e2908f1f 100644 +--- a/tools/patman/settings.py ++++ b/tools/patman/settings.py +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0+ + # Copyright (c) 2011 The Chromium OS Authors. ++# Copyright (c) 2022 Maxim Cournoyer + # + + try: +@@ -11,8 +12,7 @@ import argparse + import os + import re + +-from patman import command +-from patman import tools ++from patman import gitutil + + """Default settings per-project. + +@@ -190,7 +190,8 @@ def ReadGitAliases(fname): + + fd.close() + +-def CreatePatmanConfigFile(gitutil, config_fname): ++ ++def CreatePatmanConfigFile(config_fname): + """Creates a config file under $(HOME)/.patman if it can't find one. + + Args: +@@ -328,26 +329,46 @@ def GetItems(config, section): + except: + raise + +-def Setup(gitutil, parser, project_name, config_fname=''): ++def Setup(parser, project_name, config_fname=None): + """Set up the settings module by reading config files. + ++ Unless `config_fname` is specified, a `.patman` config file local ++ to the git repository is consulted, followed by the global ++ `$HOME/.patman`. If none exists, the later is created. Values ++ defined in the local config file take precedence over those ++ defined in the global one. ++ + Args: +- parser: The parser to update ++ parser: The parser to update. + project_name: Name of project that we're working on; we'll look + for sections named "project_section" as well. +- config_fname: Config filename to read ('' for default) ++ config_fname: Config filename to read. An error is raised if it ++ does not exist. + """ + # First read the git alias file if available + _ReadAliasFile('doc/git-mailrc') + config = _ProjectConfigParser(project_name) +- if config_fname == '': ++ ++ if config_fname and not os.path.exists(config_fname): ++ raise Exception(f'provided {config_fname} does not exist') ++ ++ if not config_fname: + config_fname = '%s/.patman' % os.getenv('HOME') ++ has_config = os.path.exists(config_fname) ++ ++ git_local_config_fname = os.path.join(gitutil.get_top_level(), '.patman') ++ has_git_local_config = os.path.exists(git_local_config_fname) + +- if not os.path.exists(config_fname): +- print("No config file found ~/.patman\nCreating one...\n") +- CreatePatmanConfigFile(gitutil, config_fname) ++ # Read the git local config last, so that its values override ++ # those of the global config, if any. ++ if has_config: ++ config.read(config_fname) ++ if has_git_local_config: ++ config.read(git_local_config_fname) + +- config.read(config_fname) ++ if not (has_config or has_git_local_config): ++ print("No config file found.\nCreating ~/.patman...\n") ++ CreatePatmanConfigFile(config_fname) + + for name, value in GetItems(config, 'alias'): + alias[name] = value.split(',') +diff --git a/tools/patman/test_settings.py b/tools/patman/test_settings.py +new file mode 100644 +index 0000000000..9c14b4aaa3 +--- /dev/null ++++ b/tools/patman/test_settings.py +@@ -0,0 +1,43 @@ ++# SPDX-License-Identifier: GPL-2.0+ ++# ++# Copyright (c) 2022 Maxim Cournoyer ++# ++ ++import argparse ++import contextlib ++import os ++import subprocess ++import tempfile ++ ++from patman import settings ++ ++ ++@contextlib.contextmanager ++def empty_git_repository(): ++ with tempfile.TemporaryDirectory() as tmpdir: ++ os.chdir(tmpdir) ++ subprocess.check_call(['git', 'init']) ++ yield tmpdir ++ ++ ++def test_git_local_config(): ++ with empty_git_repository(): ++ with tempfile.NamedTemporaryFile() as global_config: ++ global_config.write(b'[settings]\n' ++ b'project=u-boot\n') ++ global_config.flush() ++ parser = argparse.ArgumentParser() ++ parser.add_argument('-p', '--project', default='unknown') ++ ++ # Test "global" config is used. ++ settings.Setup(parser, 'unknown', global_config.name) ++ args, _ = parser.parse_known_args() ++ assert args.project == 'u-boot' ++ ++ # Test local config can shadow it. ++ with open('.patman', 'w', buffering=1) as f: ++ f.write('[settings]\n' ++ 'project=guix-patches\n') ++ settings.Setup(parser, 'unknown', global_config.name) ++ args, _ = parser.parse_known_args([]) ++ assert args.project == 'guix-patches' From 4ca649e978f08335fcabdcef693a7049082b5373 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Wed, 28 Dec 2022 14:26:44 -0500 Subject: [PATCH 021/141] services: pulseaudio: Fix /etc/pulse/default.pa not being used. Fixes . * gnu/services/sound.scm (pulseaudio-etc): Produce daemon.conf unconditionally, with the correct default-script-file location. Produce client.conf unconditionally. Reported-by: Bruno Victal --- gnu/services/sound.scm | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/gnu/services/sound.scm b/gnu/services/sound.scm index 8410ba2418..3e778f3cea 100644 --- a/gnu/services/sound.scm +++ b/gnu/services/sound.scm @@ -204,17 +204,13 @@ computed-file object~%") file)))) '() `(("default.pa.d" ,(extra-script-files->file-union extra-script-files)))) - ,@(if (null? daemon-conf) - '() - `(("daemon.conf" - ,(apply mixed-text-file "daemon.conf" - "default-script-file = " default-script-file "\n" - (map pulseaudio-conf-entry daemon-conf))))) - ,@(if (null? client-conf) - '() - `(("client.conf" - ,(apply mixed-text-file "client.conf" - (map pulseaudio-conf-entry client-conf)))))))))))) + ("daemon.conf" + ,(apply mixed-text-file "daemon.conf" + "default-script-file = /etc/pulse/default.pa\n" + (map pulseaudio-conf-entry daemon-conf))) + ("client.conf" + ,(apply mixed-text-file "client.conf" + (map pulseaudio-conf-entry client-conf)))))))))) (define pulseaudio-service-type (service-type From bac6689d3f47c68c5d1c7b6f339051b73b18cfad Mon Sep 17 00:00:00 2001 From: Simon Josefsson Date: Wed, 28 Dec 2022 01:49:55 +0100 Subject: [PATCH 022/141] gnu: podman: Update to 4.3.1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/containers.scm (podman): Update to 4.3.1. [native-inputs]: Add python, for hack/markdown-preprocess. Signed-off-by: 宋文武 --- gnu/packages/containers.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm index e2d698dcc2..985dea7bdb 100644 --- a/gnu/packages/containers.scm +++ b/gnu/packages/containers.scm @@ -274,7 +274,7 @@ configure network interfaces in Linux containers.") (define-public podman (package (name "podman") - (version "4.2.1") + (version "4.3.1") (source (origin (method git-fetch) @@ -282,7 +282,7 @@ configure network interfaces in Linux containers.") (url "https://github.com/containers/podman") (commit (string-append "v" version)))) (sha256 - (base32 "0ph8gf5gk9z1hm1v5kv924dipswvgrz0sgk23plnh2q0vbnh4wvv")) + (base32 "05hv4xdf06n728lmsx793zygypc9i404bgcgpy0fyrg8c2s11q2h")) (file-name (git-file-name name version)))) (build-system gnu-build-system) @@ -346,7 +346,8 @@ configure network interfaces in Linux containers.") git go ; strace ; XXX debug - pkg-config)) + pkg-config + python)) (home-page "https://podman.io") (synopsis "Manage containers, images, pods, and their volumes") (description From 57037cddf3104792d558c5363620068f7ee570f0 Mon Sep 17 00:00:00 2001 From: Timotej Lazar Date: Tue, 27 Dec 2022 19:52:26 +0100 Subject: [PATCH 023/141] gnu: asciinema: Update to 2.2.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/terminals.scm (asciinema): Update to 2.2.0. [build-system]: Use pyproject-build-system. [arguments]: Drop custom 'check phase. Add 'fix-python-path phase. [native-inputs]: Drop python-nose. Add python-pytest. Signed-off-by: 宋文武 --- gnu/packages/terminals.scm | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index f6673388d2..06b7b8b725 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -56,6 +56,7 @@ #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system go) #:use-module (guix build-system meson) + #:use-module (guix build-system pyproject) #:use-module (guix build-system python) #:use-module (guix download) #:use-module (guix git-download) @@ -241,7 +242,7 @@ keybindings have different functions.") (define-public asciinema (package (name "asciinema") - (version "2.1.0") + (version "2.2.0") (source (origin (method git-fetch) @@ -250,16 +251,18 @@ keybindings have different functions.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1alcz018jrrpasrmgs8nw775a6pf62xq2xgs54c4mb396prdqy4x")))) - (build-system python-build-system) + (base32 "0pcrghfi9p1p40d0339lcmhcv24hm1vxqr4rsdln34v385vqv14a")))) + (build-system pyproject-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ (invoke "nosetests" "-v")))))) + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-python-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "tests/pty_test.py" + (("python3") (search-input-file inputs "/bin/python3")))))))) (native-inputs ;; For tests. - (list python-nose)) + (list python-pytest)) (home-page "https://asciinema.org") (synopsis "Terminal session recorder") (description From 783b85f6436fba3bc7155be33da8fdcf16c4877a Mon Sep 17 00:00:00 2001 From: Jessica Tallon Date: Tue, 27 Dec 2022 12:45:10 +0100 Subject: [PATCH 024/141] gnu: svtplay-dl: Update to 4.17. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/video.scm (svtplay-dl): Update to 4.17. Signed-off-by: 宋文武 --- 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 456376d597..41e8ccfb1e 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -5637,7 +5637,7 @@ for details on how to change this.") (define-public svtplay-dl (package (name "svtplay-dl") - (version "4.14") + (version "4.17") (source (origin (method git-fetch) (uri (git-reference @@ -5646,7 +5646,7 @@ for details on how to change this.") (file-name (git-file-name name version)) (sha256 (base32 - "1wdrdszalvhv80m5jizbvjz4jc08acmbpxcsslyfb5cwh842in8m")))) + "0yjxmvldskw4pji3lg69pbx05izvxahz9my7z5p31mkiz6v33dmx")))) (build-system python-build-system) (inputs (list ffmpeg python-pyaml python-requests python-pysocks python-cryptography)) From d6ea9f8b38df7de1194d8106488a8c33cce64fd1 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 26 Dec 2022 21:44:25 -0500 Subject: [PATCH 025/141] gnu: u-boot-am335x-boneblack: Revert to old name. This reverts to the name this package had previous to commit c2c1dfdf5760873f1db86d14873f725a105f7feb ("gnu: bootloader: Add U-Boot packages for Raspberry Pi models."), which caused the package name to be derived from the board name. * gnu/packages/bootloaders.scm (u-boot-am335x-evm-boneblack): Remove the NAME-SUFFIX keyword argument. Specify the full name via the name field. * gnu/bootloader/u-boot.scm (u-boot-beaglebone-black-bootloader): Adjust to the renamed package. Reported-by: Vagrant Cascadian --- gnu/bootloader/u-boot.scm | 2 +- gnu/packages/bootloaders.scm | 28 +++++++++++++++++----------- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm index de3a43ed70..6cad33b741 100644 --- a/gnu/bootloader/u-boot.scm +++ b/gnu/bootloader/u-boot.scm @@ -144,7 +144,7 @@ (define u-boot-beaglebone-black-bootloader (bootloader (inherit u-boot-bootloader) - (package u-boot-am335x-evm-boneblack) + (package u-boot-am335x-boneblack) (disk-image-installer install-beaglebone-black-u-boot))) (define u-boot-allwinner-bootloader diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 406f885253..e3a63882e9 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -963,17 +963,23 @@ appended to the package description." (define-public u-boot-malta (make-u-boot-package "malta" "mips64el-linux-gnuabi64")) -(define-public u-boot-am335x-evm-boneblack - (make-u-boot-package - "am335x_evm" "arm-linux-gnueabihf" - ;; Patch out other device trees to build an image small enough to fit - ;; within typical partitioning schemes where the first partition begins at - ;; sector 2048. - #:configs '("CONFIG_OF_LIST=\"am335x-evm am335x-boneblack\"") - #:name-suffix "-boneblack" - #:append-description "This U-Boot is built for the BeagleBone Black, which -was removed upstream, adjusted from the am335x_evm build with several device -trees removed so that it fits within common partitioning schemes.")) +(define-public u-boot-am335x-boneblack + (let ((base (make-u-boot-package + "am335x_evm" "arm-linux-gnueabihf" + ;; Patch out other device trees to build an image small enough + ;; to fit within typical partitioning schemes where the first + ;; partition begins at sector 2048. + #:configs '("CONFIG_OF_LIST=\"am335x-evm am335x-boneblack\"") + #:append-description + "This U-Boot is built for the BeagleBone Black, which was +removed upstream, adjusted from the am335x_evm build with several device trees +removed so that it fits within common partitioning schemes."))) + (package + (inherit base) + ;; The name is not derived from the board name on purpose, as the config + ;; is modified per the comment above, parting from the default + ;; am335x_evm configuration. + (name "u-boot-am335x-boneblack")))) (define-public u-boot-am335x-evm (make-u-boot-package "am335x_evm" "arm-linux-gnueabihf")) From 72875031a44673e7867ac7b1e8f17feab8d6fa45 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Wed, 28 Dec 2022 22:55:00 -0500 Subject: [PATCH 026/141] gnu: ddcutil: Install udev rules at their expected location. * gnu/packages/hardware.scm (ddcutil) [arguments]: New field. [description]: Document how the included udev rules can be used. --- gnu/packages/hardware.scm | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm index f73896460b..81f38d069b 100644 --- a/gnu/packages/hardware.scm +++ b/gnu/packages/hardware.scm @@ -491,6 +491,22 @@ RGB animations.") (sha256 (base32 "0hm0cm4m4hk1jjy7kddg613mynvwlii3kp8al0j9v3c6mcx3p4mx")))) (build-system gnu-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'install-udev-rules + (lambda* (#:key outputs #:allow-other-keys) + ;; Move the udev rules to their expected location in Guix + ;; System, so they can be more easily used. + (let ((rules.d (string-append #$output "/lib/udev/rules.d"))) + (mkdir-p (dirname rules.d)) + (rename-file (string-append #$output "/share/ddcutil/data") + rules.d) + ;; Patch a reference to the ddcutil command. + (substitute* (string-append rules.d "/45-ddcutil-usb.rules") + (("/usr/bin/ddcutil") + (search-input-file outputs "bin/ddcutil"))))))))) (native-inputs (list pkg-config)) (inputs @@ -498,9 +514,9 @@ RGB animations.") glib kmod i2c-tools - libdrm ; enhanced diagnostics - libusb ; support USB monitors - libx11 ; enhanced diagnostics + libdrm ;enhanced diagnostics + libusb ;support USB monitors + libx11 ;enhanced diagnostics libxrandr zlib)) (home-page "https://www.ddcutil.com/") @@ -519,7 +535,11 @@ communicate over USB as per the USB Monitor Control Class Specification. One particular use case is in colour profile management. Monitor calibration is relative to the monitor colour settings currently in effect, e.g. red gain. ddcutil allows colour-related settings to be saved at the time a monitor is -calibrated, and restored when the calibration is applied.") +calibrated, and restored when the calibration is applied. + +This package includes udev rules that can be used by adding this package to +the @code{rules} field of the @code{udev-configuration} record. It gives +read/write access to i2c devices to users in the @samp{i2c} group.") (license (list license:bsd-3 ; FindDDCUtil.cmake license:gpl2+)))) ; everything else From 77d4bff94c6918eb0c0ccd20ee610e6dfc823aec Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Sat, 24 Dec 2022 12:17:59 +0100 Subject: [PATCH 027/141] gnu: Add fuse-overlayfs. * gnu/packages/file-systems.scm (fuse-overlayfs): New variable. --- gnu/packages/file-systems.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index 57a25a0d90..3d45634169 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -1766,3 +1766,27 @@ and modifying @acronym{UDF, Universal Disk Format} file systems. and other optical media. It supports read-only media (DVD/CD-R) and rewritable media that wears out (DVD/CD-RW).") (license license:gpl2+))) + +(define-public fuse-overlayfs + (package + (name "fuse-overlayfs") + (version "1.10") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/containers/fuse-overlayfs") + (commit (string-append "v" version)))) + (sha256 + (base32 + "085hrz0nrdsjfjci0z2qfyqrydn8wwdp790dx2x67hwdw1kib3wp")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (native-inputs + (list automake autoconf libtool pkg-config)) + (inputs + (list fuse-3)) + (home-page "https://github.com/containers/fuse-overlayfs") + (synopsis "FUSE implementation of overlayfs") + (description "This package provides an implementation of overlay+shiftfs +in FUSE for rootless containers.") + (license license:gpl3))) From d07d6ea31a883d395d692483d84e7797b4c2ce0f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 27 Dec 2022 21:23:32 -0500 Subject: [PATCH 028/141] maint: Add a manifest for everything related to linux-libre. * etc/kernels-manifest.scm: New file. * Makefile.am (EXTRA_DIST): Add it. --- Makefile.am | 1 + etc/kernels-manifest.scm | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 etc/kernels-manifest.scm diff --git a/Makefile.am b/Makefile.am index b54288c0fc..8b026b6da6 100644 --- a/Makefile.am +++ b/Makefile.am @@ -689,6 +689,7 @@ EXTRA_DIST += \ etc/guix-install.sh \ etc/historical-authorizations \ etc/news.scm \ + etc/kernels-manifest.scm \ etc/release-manifest.scm \ etc/source-manifest.scm \ etc/system-tests.scm \ diff --git a/etc/kernels-manifest.scm b/etc/kernels-manifest.scm new file mode 100644 index 0000000000..6da7e374c5 --- /dev/null +++ b/etc/kernels-manifest.scm @@ -0,0 +1,33 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2022 Leo Famulari +;;; +;;; 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 . + +;;; This file returns a manifest of packages related to linux-libre. +;;; Simplistically, it selects packages whose names begin with "linux-libre". +;;; It is used to assist continuous integration of the kernel packages. + +(use-modules (guix packages)) + +(manifest + (map package->manifest-entry + (fold-packages + (lambda (package lst) + (if (string-prefix? "linux-libre" + (package-name package)) + (cons package lst) + lst)) + '()))) From d0d700526c362272d11b0c3be8ba7861a21e1e42 Mon Sep 17 00:00:00 2001 From: Karl Hallsby Date: Wed, 28 Dec 2022 17:40:58 -0600 Subject: [PATCH 029/141] doc: Describe format of channel that uses directory field. * doc/guix.texi (Package Modules in a Sub-directory): Explain that directory must be the module root. --- doc/guix.texi | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index 053cd1ad41..7c02e2d392 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5614,6 +5614,12 @@ add a meta-data file @file{.guix-channel} that contains: (directory "guix")) @end lisp +The modules must be @b{underneath} the specified directory, as the +@code{directory} changes Guile's @code{load-path}. For example, if +@file{.guix-channel} has @code{(directory "base")}, then a module +defined as @code{(define-module (gnu packages fun))} must be located at +@code{base/gnu/packages/fun.scm}. + @node Declaring Channel Dependencies @section Declaring Channel Dependencies From de781de2e9cb10feeef8dfa5caf26bcc0e6ac745 Mon Sep 17 00:00:00 2001 From: Karl Hallsby Date: Wed, 28 Dec 2022 17:40:59 -0600 Subject: [PATCH 030/141] doc: Give example of when to use describe in .guix-channel file. * doc/guix.texi (Package Modules in a Sub-directory): Mention "guix deploy" files as an example. Signed-off-by: Ricardo Wurmus --- doc/guix.texi | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index 7c02e2d392..3ed71424fa 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5620,6 +5620,12 @@ The modules must be @b{underneath} the specified directory, as the defined as @code{(define-module (gnu packages fun))} must be located at @code{base/gnu/packages/fun.scm}. +Doing this allows for only parts of a repository to be used as a +channel, as Guix expects valid Guile modules when pulling. For +instance, @command{guix deploy} machine configuration files are not +valid Guile modules, and treating them as such would make @command{guix +pull} fail. + @node Declaring Channel Dependencies @section Declaring Channel Dependencies From 15d9578e1d73a67d344709cc9a7ea85efac42e7b Mon Sep 17 00:00:00 2001 From: Kyle Andrews Date: Thu, 12 May 2022 02:10:22 +0000 Subject: [PATCH 031/141] gnu: Add r-piton. * gnu/packages/cran.scm (r-piton): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index fccf0002a7..c54329614c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -7813,6 +7813,28 @@ annotation file. This package is intended to be used as example data for packages that work with genomic data.") (license license:gpl2+))) +(define-public r-piton + (package + (name "r-piton") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "piton" version)) + (sha256 + (base32 "1krf6zi238m275nxjlpyayv8y2drbgs2kg19dpkqm0lmlz5y5ar8")))) + (properties `((upstream-name . "piton"))) + (build-system r-build-system) + (propagated-inputs (list r-rcpp)) + (home-page "https://github.com/Ironholds/piton") + (synopsis "Parsing expression grammars in Rcpp") + (description + "This package provides a wrapper around the Parsing Expression Grammar +Template Library, a C++11 library for generating parsing expression grammars, +that makes it accessible within Rcpp. With this, developers can implement +their own grammars and easily expose them in R packages.") + (license license:expat))) + (define-public r-uuid (package (name "r-uuid") From 03544dd8e8a1a94e88e097e7442b469f3a999232 Mon Sep 17 00:00:00 2001 From: Kyle Andrews Date: Thu, 12 May 2022 02:10:25 +0000 Subject: [PATCH 032/141] gnu: Add r-unglue. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c54329614c..cf0d801073 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -18983,6 +18983,26 @@ methods.") ;; Any version of the GPL (license license:gpl2+))) +(define-public r-unglue + (package + (name "r-unglue") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "unglue" version)) + (sha256 + (base32 "0w8ld4xllx0lj1jz8i2sj92f8136hlwri1d8ldpg1ymxj7aw93vg")))) + (properties `((upstream-name . "unglue"))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/package=unglue") + (synopsis "Extract matched substrings using a pattern") + (description + "This package lets you use syntax inspired by the package @code{glue} to +extract matched substrings in a more intuitive and compact way than by using +standard regular expressions.") + (license license:gpl3))) + (define-public r-untb (package (name "r-untb") From 9ac12e7cb6c03a0b8f5a5acd8842d4f30087e6ae Mon Sep 17 00:00:00 2001 From: Peter Lo Date: Sun, 18 Jul 2021 19:05:46 +0800 Subject: [PATCH 033/141] gnu: Add r-rpostgres. * gnu/packages/cran.scm (r-rpostgres): New variable. Co-authored-by: Ricardo Wurmus --- gnu/packages/cran.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index cf0d801073..96239a351d 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -6181,6 +6181,38 @@ to access PostgreSQL database systems.") ;; under the PostgreSQL license. (license license:gpl2))) +(define-public r-rpostgres + (package + (name "r-rpostgres") + (version "1.3.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "RPostgres" version)) + (sha256 + (base32 + "0a3f7l1c0q732g8shys6g8f3nq2y3q7p840i0wdbyq0i243srfz0")))) + (properties `((upstream-name . "RPostgres"))) + (build-system r-build-system) + (inputs (list postgresql)) + (propagated-inputs + (list r-bit64 + r-blob + r-dbi + r-hms + r-lubridate + r-plogr + r-rcpp + r-withr)) + (native-inputs + (list pkg-config r-knitr)) + (home-page "https://rpostgres.r-dbi.org") + (synopsis "Rcpp Interface to PostgreSQL") + (description + "This package provides a fully @code{DBI}-compliant @code{Rcpp}-backed +interface to @code{PostgreSQL}, a relational database.") + (license license:gpl3))) + (define-public r-linprog (package (name "r-linprog") From 11fce2ddd7e3fbf8bb7402b09177252db6fae53e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 29 Dec 2022 22:19:25 +0100 Subject: [PATCH 034/141] gnu: r-rpostgres: Update to 1.4.4. * gnu/packages/cran.scm (r-rpostgres): Update to 1.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 96239a351d..42b19e7d30 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -6184,14 +6184,14 @@ to access PostgreSQL database systems.") (define-public r-rpostgres (package (name "r-rpostgres") - (version "1.3.3") + (version "1.4.4") (source (origin (method url-fetch) (uri (cran-uri "RPostgres" version)) (sha256 (base32 - "0a3f7l1c0q732g8shys6g8f3nq2y3q7p840i0wdbyq0i243srfz0")))) + "1z6diaq4kwinl97d1v9cb96j8mrkj2s2v4ml1vykgy1jqi40dk69")))) (properties `((upstream-name . "RPostgres"))) (build-system r-build-system) (inputs (list postgresql)) From 74ef7fd9a33f48f5ad8db5d22fbb7116f0a5aa6a Mon Sep 17 00:00:00 2001 From: son0p Date: Mon, 2 May 2022 13:02:00 -0500 Subject: [PATCH 035/141] gnu: Add r-treemap. * gnu/packages/cran.scm (r-treemap): New variable. --- gnu/packages/cran.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 42b19e7d30..e2942064fe 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -24806,6 +24806,34 @@ dissimilarity useful for clustering mixed data, and, optionally, perform the clustering.") (license license:gpl2+))) +(define-public r-treemap + (package + (name "r-treemap") + (version "2.4-3") + (source + (origin + (method url-fetch) + (uri (cran-uri "treemap" version)) + (sha256 + (base32 "1fg8gygw38x7msn32barx2irvcv8flm6wqvipnbj1qkh9w89y3q4")))) + (properties `((upstream-name . "treemap"))) + (build-system r-build-system) + (propagated-inputs + (list r-colorspace + r-data-table + r-ggplot2 + r-gridbase + r-igraph + r-rcolorbrewer + r-shiny)) + (native-inputs (list r-knitr)) + (home-page "https://cran.r-project.org/package=treemap") + (synopsis "Treemap visualization") + (description + "A treemap is a space-filling visualization of hierarchical structures. +This package offers great flexibility to draw treemaps.") + (license license:gpl3+))) + (define-public r-acrosstic (package (name "r-acrosstic") From 8d02c4f6182f9c939d0e251166ad0d5ff567c430 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wiktor=20=C5=BBelazny?= Date: Fri, 7 Oct 2022 15:38:19 +0200 Subject: [PATCH 036/141] gnu: Add r-prospectr. * gnu/packages/cran.scm (r-prospectr): New variable. --- gnu/packages/cran.scm | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index e2942064fe..a2642fbf26 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -17,7 +17,7 @@ ;;; Copyright © 2018 Marius Bakke ;;; Copyright © 2018, 2019 Brett Gilio ;;; Copyright © 2019 Nicolò Balzarotti -;;; Copyright © 2019, 2020, 2021 Wiktor Żelazny +;;; Copyright © 2019, 2020, 2021, 2022 Wiktor Żelazny ;;; Copyright © 2019 Arne Babenhauserheide ;;; Copyright © 2019, 2020 Efraim Flashner ;;; Copyright © 2020 Todor Kondić @@ -17434,6 +17434,33 @@ library.") profiling R code.") (license license:gpl3))) +(define-public r-prospectr + (package + (name "r-prospectr") + (version "0.2.6") + (source (origin + (method url-fetch) + (uri (cran-uri "prospectr" version)) + (sha256 + (base32 + "1p53hcgcs2p09zhc2n7byjzrgvcgz6w7q00mlsn4kmnz7l4p7rrm")))) + (properties `((upstream-name . "prospectr"))) + (build-system r-build-system) + (propagated-inputs + (list r-foreach + r-iterators + r-lifecycle + r-mathjaxr + r-rcpp + r-rcpparmadillo)) + (home-page "https://github.com/l-ramirez-lopez/prospectr") + (synopsis "Functions for processing and sample selection of spectroscopic data") + (description + "@code{prospectr} provides miscellaneous functions to preprocess +spectroscopic data and conduct representative sample selection, or calibration +sampling.") + (license license:expat))) + (define-public r-protviz (package (name "r-protviz") From e830bf71f2f2887e138932aca32650c5b1f44be0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wiktor=20=C5=BBelazny?= Date: Thu, 25 Aug 2022 11:44:52 +0200 Subject: [PATCH 037/141] gnu: Add r-mapdata. * gnu/packages/cran.scm (r-mapdata): New variable. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index a2642fbf26..076cf6aa88 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -4015,6 +4015,26 @@ work well on small screens.") data store designed for maximum speed.") (license license:asl2.0))) +(define-public r-mapdata + (package + (name "r-mapdata") + (version "2.3.0") + (source (origin + (method url-fetch) + (uri (cran-uri "mapdata" version)) + (sha256 + (base32 + "0xnxh73rgcq55zrw81a2bq8yd67bxc2rafp4shf6nyrqj04iip0y")))) + (properties `((upstream-name . "mapdata"))) + (build-system r-build-system) + (propagated-inputs (list r-maps)) + (home-page "https://cran.r-project.org/package=mapdata") + (synopsis "Extra map databases") + (description + "This is a supplement to the @code{maps} package providing the larger +and/or higher-resolution databases.") + (license license:gpl2))) + (define-public r-maps (package (name "r-maps") From f030d0433f1e3dc0b95623022c24e416eaed83c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wiktor=20=C5=BBelazny?= Date: Thu, 25 Aug 2022 12:09:53 +0200 Subject: [PATCH 038/141] gnu: Add r-climatol. * gnu/packages/cran.scm (r-climatol): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 076cf6aa88..2f744fd6d5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -1124,6 +1124,28 @@ isolated functions, also called crates, print to the console with their total size and can be easily tested locally before being sent to a remote.") (license license:gpl3))) +(define-public r-climatol + (package + (name "r-climatol") + (version "3.1.2") + (source (origin + (method url-fetch) + (uri (cran-uri "climatol" version)) + (sha256 + (base32 + "0p3nk4n7izj0cmmqd9apa1gix5lfdzp08ydy0n7rkl5kbkmrkb6n")))) + (properties `((upstream-name . "climatol"))) + (build-system r-build-system) + (propagated-inputs (list r-mapdata r-maps)) + (home-page "http://www.climatol.eu/") + (synopsis "Climate tools") + (description + "This package provides functions for the quality control, homogenization +and missing data infilling of climatological series, and to obtain +climatological summaries and grids from the results. Also functions to draw +wind-roses and Walter&Lieth climate diagrams are included.") + (license license:gpl2+))) + (define-public r-clipr (package (name "r-clipr") From fc23100030e2640dc8b1077db38fe8ab541b9dc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wiktor=20=C5=BBelazny?= Date: Thu, 25 Aug 2022 12:09:54 +0200 Subject: [PATCH 039/141] gnu: Add r-climaemet. * gnu/packages/cran.scm (r-climaemet): New variable. --- gnu/packages/cran.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 2f744fd6d5..bb1ecfdf65 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -1124,6 +1124,39 @@ isolated functions, also called crates, print to the console with their total size and can be easily tested locally before being sent to a remote.") (license license:gpl3))) +(define-public r-climaemet + (package + (name "r-climaemet") + (version "1.0.2") + (source (origin + (method url-fetch) + (uri (cran-uri "climaemet" version)) + (sha256 + (base32 + "1z0i8iz7f32kns8j1yb3sp2m0zhl4pgp4bf52aiqykjp9i791dqm")))) + (properties `((upstream-name . "climaemet"))) + (build-system r-build-system) + (propagated-inputs + (list r-dplyr + r-ggplot2 + r-httr + r-jsonlite + r-rappdirs + r-readr + r-rlang + r-tibble + r-tidyr)) + (native-inputs (list r-knitr)) + (home-page "https://ropenspain.github.io/climaemet/") + (synopsis "Climate AEMET Tools") + (description + "This package provides tools to download the climatic data of the Spanish +Meteorological Agency (AEMET) directly from R using their API and create +scientific graphs (climate charts, trend analysis of climate time series, +temperature and precipitation anomalies maps, warming stripes graphics, +climatograms, etc.).") + (license license:gpl3))) + (define-public r-climatol (package (name "r-climatol") From fa0cb6d2eb3762067c69bcb0671e75d93d4d306c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 29 Dec 2022 23:29:33 +0100 Subject: [PATCH 040/141] gnu: r-mapdata: Update to 2.3.1. * gnu/packages/cran.scm (r-mapdata): Update to 2.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 bb1ecfdf65..e8119e4794 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -4073,13 +4073,13 @@ data store designed for maximum speed.") (define-public r-mapdata (package (name "r-mapdata") - (version "2.3.0") + (version "2.3.1") (source (origin (method url-fetch) (uri (cran-uri "mapdata" version)) (sha256 (base32 - "0xnxh73rgcq55zrw81a2bq8yd67bxc2rafp4shf6nyrqj04iip0y")))) + "1m2r4c8f7fp900g3sdjbfxxnxjla86hn75jd8hi96ms188p0j8b0")))) (properties `((upstream-name . "mapdata"))) (build-system r-build-system) (propagated-inputs (list r-maps)) From 00494490f22c9856dbf7b94a1342b2eacb03de1a Mon Sep 17 00:00:00 2001 From: Andy Tai Date: Sat, 24 Dec 2022 14:39:15 -0800 Subject: [PATCH 041/141] gnu: libopenshot-audio: Update to 0.3.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/audio.scm (libopenshot-audio): Update to 0.3.0. Signed-off-by: 宋文武 --- gnu/packages/audio.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 278a2f31e8..49e33402eb 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -39,6 +39,7 @@ ;;; Copyright © 2022 Arjan Adriaanse ;;; Copyright © 2022 Juliana Sims ;;; Copyright © 2022 Simon Streit +;;; Copyright © 2022 Andy Tai ;;; ;;; This file is part of GNU Guix. ;;; @@ -4979,7 +4980,7 @@ library supports sample rates up to 96 kHz and up to eight channels (7.1 (define-public libopenshot-audio (package (name "libopenshot-audio") - (version "0.2.2") + (version "0.3.0") (source (origin (method git-fetch) (uri (git-reference @@ -4988,7 +4989,7 @@ library supports sample rates up to 96 kHz and up to eight channels (7.1 (file-name (git-file-name name version)) (sha256 (base32 - "03dygh85riljk7dpn5a5a0d22a2kz45fs13gzwqgnbzzr1k17p2y")))) + "1y3apyn71ysks88bv71knjvk832imnbpbb8mgib3q9b8pvdmjw3g")))) (build-system cmake-build-system) (inputs (list alsa-lib From 2fb26d8d8cd1f30d32ccb3e0a870bda5f2a6a43d Mon Sep 17 00:00:00 2001 From: Andy Tai Date: Sat, 24 Dec 2022 14:41:29 -0800 Subject: [PATCH 042/141] gnu: openshot: Update to 3.0.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/video.scm (libopenshot): Update to 0.3.0. (openshot): Update to 3.0.0. Signed-off-by: 宋文武 --- gnu/packages/video.scm | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 41e8ccfb1e..2a70c4496f 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -62,6 +62,7 @@ ;;; Copyright © 2022 Bird ;;; Copyright © 2022 Jai Vetrivelan ;;; Copyright © 2022 Chadwain Holness +;;; Copyright © 2022 Andy Tai ;;; ;;; This file is part of GNU Guix. ;;; @@ -4748,7 +4749,7 @@ create smoother and stable videos.") (define-public libopenshot (package (name "libopenshot") - (version "0.2.7") + (version "0.3.0") (source (origin (method git-fetch) (uri (git-reference @@ -4757,7 +4758,7 @@ create smoother and stable videos.") (file-name (git-file-name name version)) (sha256 (base32 - "0i9bsn8gklm1mvj60l3d3xrxdgy8svpxjfqcwsr308j5zjn30pv8")) + "0q2899hbaqwh1gxyl9x84l116g82glk0wmr3r1xvfwb107m3mvx9")) (modules '((guix build utils))) (snippet '(begin ;; Allow overriding of the python installation dir @@ -4783,6 +4784,7 @@ create smoother and stable videos.") libopenshot-audio qtbase-5 qtmultimedia-5 + qtsvg-5 zeromq)) (arguments `(#:configure-flags @@ -4811,7 +4813,7 @@ API. It includes bindings for Python, Ruby, and other languages.") (define-public openshot (package (name "openshot") - (version "2.6.1") + (version "3.0.0") (source (origin (method git-fetch) (uri (git-reference @@ -4820,7 +4822,7 @@ API. It includes bindings for Python, Ruby, and other languages.") (file-name (git-file-name name version)) (sha256 (base32 - "0pa8iwl217503bjlqg2zlrw5lxyq5hvxrf5apxrh3843hj1w1myv")) + "1az59whx9sga6m8m2c3ndfls5h07r0jn4jipnyxckpxl32vpd147")) (modules '((guix build utils))) (snippet '(begin @@ -4857,12 +4859,6 @@ API. It includes bindings for Python, Ruby, and other languages.") (("fonts") "share/fonts/truetype") (("[A-Za-z_-]+.ttf") "DejaVuSans.ttf"))) #t)) - ;; https://github.com/OpenShot/openshot-qt/issues/4502 - (add-before 'ensure-no-mtimes-pre-1980 'fix-symbolic-link - (lambda _ - (delete-file "images/Humanity/actions/custom/razor_line_with_razor.png") - (symlink "../../../../src/timeline/media/images/razor_line_with_razor.png" - "images/Humanity/actions/custom/razor_line_with_razor.png"))) (add-before 'install 'set-tmp-home (lambda _ ;; src/classes/info.py "needs" to create several From a09f28758af24e947f9daaf549740e52af111941 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Fri, 23 Dec 2022 18:47:42 +0000 Subject: [PATCH 043/141] gnu: glances: Update to 3.3.0.4. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/python-xyz.scm (glances): Update to 3.3.0.4. [propagated-inputs]: Add python-defusedxml and python-packaging. Signed-off-by: 宋文武 --- gnu/packages/python-xyz.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d0cedf696a..2b28e8bd53 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -18889,13 +18889,13 @@ numbers, real numbers, mixed types and more, and comes with a shell command (define-public glances (package (name "glances") - (version "3.1.7") + (version "3.3.0.4") (source (origin (method url-fetch) (uri (pypi-uri "Glances" version)) (sha256 - (base32 "020vb38qrb0m3sdr7xjr43cmcfxpnyg4hmb97wgxsa9zvwsjwa5x")) + (base32 "0klyyxqc7cbrf1i741304i3rrwan19qm2v58xmrlgqsmxac542la")) (modules '((guix build utils))) (snippet '(begin @@ -18909,7 +18909,7 @@ numbers, real numbers, mixed types and more, and comes with a shell command #t)))) (build-system python-build-system) (propagated-inputs - (list python-future python-psutil)) + (list python-defusedxml python-future python-packaging python-psutil)) (home-page "https://github.com/nicolargo/glances") (synopsis "Cross-platform curses-based monitoring tool") (description From 6df0f59f31e297e4a9afe6812fe20bbafdb14821 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 30 Dec 2022 10:29:20 +0100 Subject: [PATCH 044/141] gnu: emacs-counsel-tramp: Update to 0.7.6. * gnu/packages/emacs-xyz.scm (emacs-counsel-tramp): Update to 0.7.6. --- 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 f020426750..a7a53525d9 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -29012,7 +29012,7 @@ well as an option for visually flashing evaluated s-expressions.") (define-public emacs-counsel-tramp (package (name "emacs-counsel-tramp") - (version "0.7.5") + (version "0.7.6") (source (origin (method git-fetch) @@ -29021,7 +29021,7 @@ well as an option for visually flashing evaluated s-expressions.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "18qlwyjqxap2qfbz14ma6yqp4p3v4q2y8idc355s4szjdd2as2lr")))) + (base32 "02dhchmyaqv6855mafjxizzgpl32rmnwdmw0nbm6rkckr13cgjl1")))) (build-system emacs-build-system) (propagated-inputs (list emacs-counsel)) From 3ae212491773eaccbc02d954bc7d7babd88c28a6 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 30 Dec 2022 10:32:26 +0100 Subject: [PATCH 045/141] gnu: emacs-mood-line: Update to 2.1.0. * gnu/packages/emacs-xyz.scm (emacs-mood-line): Update to 2.1.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 a7a53525d9..bb3fa34ad6 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -30955,7 +30955,7 @@ icon support, git integration, and several other utilities.") (define-public emacs-mood-line (package (name "emacs-mood-line") - (version "2.0.0") + (version "2.1.0") (source (origin (method git-fetch) @@ -30964,7 +30964,7 @@ icon support, git integration, and several other utilities.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0g29di2g8w8639z8d73kq9x2p8krzmjfn1bqd5jsv28v77j80k8h")))) + (base32 "1j2fjsqbv2f7m1hrrb18gl4cj4kn749xkvpm2p82d7rh4a37q2pr")))) (build-system emacs-build-system) (home-page "https://gitlab.com/jessieh/mood-line") (synopsis "Minimal mode-line for Emacs") From 16d8b524357acc388dbd2f99def53411ec359fb4 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 30 Dec 2022 10:54:58 +0100 Subject: [PATCH 046/141] gnu: emacs-org-re-reveal: Update to 3.17.0. * gnu/packages/emacs-xyz.scm (emacs-org-re-reveal): Update to 3.17.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 bb3fa34ad6..ef808c2953 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -22280,7 +22280,7 @@ powerful Org contents.") (define-public emacs-org-re-reveal (package (name "emacs-org-re-reveal") - (version "3.16.1") + (version "3.17.0") (source (origin (method git-fetch) @@ -22289,7 +22289,7 @@ powerful Org contents.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1jzr7xlzinhfb0197anbkrr5zrs13f7kyznr5q3zyxdndhg6a53n")))) + (base32 "1bp3kz2awy2mizs59qsa2yl7wfa0197fklnramzifz6z2zv5kbrx")))) (build-system emacs-build-system) (propagated-inputs (list emacs-htmlize emacs-org)) From 5e3b47319f960624bda271f68a6931332bcb84e0 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 30 Dec 2022 11:07:47 +0100 Subject: [PATCH 047/141] gnu: emacs-pyim: Update to 5.2.9. * gnu/packages/emacs-xyz.scm (emacs-pyim): Update to 5.2.9. --- 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 ef808c2953..a60254313e 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -16603,13 +16603,13 @@ containing words from the Rime project.") (define-public emacs-pyim (package (name "emacs-pyim") - (version "5.2.8") + (version "5.2.9") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/pyim-" version ".tar")) (sha256 - (base32 "1klarzr5lfga09ysq3c7gkgmzl6r08gpl4519x5damxd82x4r3y2")))) + (base32 "0blsz344jq1zx4qs73zinb8fhh2a35k5nx12i2wn76902qx2qc6j")))) (build-system emacs-build-system) (propagated-inputs (list emacs-async emacs-popup emacs-posframe emacs-xr)) From 091502f398df5739f5e07ac7f52efb09fdcf6b23 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 30 Dec 2022 11:08:29 +0100 Subject: [PATCH 048/141] gnu: emacs-tempel: Update to 0.6. * gnu/packages/emacs-xyz.scm (emacs-tempel): Update to 0.6. --- 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 a60254313e..6616cbe084 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -15549,7 +15549,7 @@ been adapted to also work with mu4e.") (define-public emacs-tempel (package (name "emacs-tempel") - (version "0.5") + (version "0.6") (source (origin (method git-fetch) (uri (git-reference @@ -15558,7 +15558,7 @@ been adapted to also work with mu4e.") (file-name (git-file-name name version)) (sha256 (base32 - "1za73zszj373r8pxf89cwwfrwsf8dy6nxciw11adcccrm92xwdsz")))) + "1jgsjhrfdd72a0na4s1qp8yc24mbgrpxkv8yqac0vgqipg98cdg6")))) (build-system emacs-build-system) (home-page "https://github.com/minad/tempel") (synopsis "Simple templates for Emacs") From 30f1966bbb1f2a4347a8099ab5747db928321920 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 30 Dec 2022 11:10:59 +0100 Subject: [PATCH 049/141] gnu: emacs-libmpdel: Update to 2.0.0. * gnu/packages/emacs-xyz.scm (emacs-libmpdel): Update to 2.0.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 6616cbe084..a4ebc53a2b 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -26559,7 +26559,7 @@ comments.") (define-public emacs-libmpdel (package (name "emacs-libmpdel") - (version "1.3.1") + (version "2.0.0") (source (origin (method git-fetch) (uri (git-reference @@ -26568,7 +26568,7 @@ comments.") (file-name (git-file-name name version)) (sha256 (base32 - "0fsg2si7afrnsz91i0ziza6nbc4ds9kpnr2z71wf6896zb1afhfx")))) + "03bavca89cf7dsjmg7hb48qnvca41ndiij33iw5yjjhbq1zyj8r4")))) (build-system emacs-build-system) (arguments (list From c1f9861c600a9663335fe5c94147d164352dc93d Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Wed, 28 Dec 2022 23:17:28 +0800 Subject: [PATCH 050/141] gnu: Add emacs-eat. * gnu/packages/emacs-xyz.scm (emacs-eat): New variable. Signed-off-by: Nicolas Goaziou --- gnu/packages/emacs-xyz.scm | 48 +++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index a4ebc53a2b..be511a2371 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -81,7 +81,7 @@ ;;; Copyright © 2020, 2021, 2022 Niklas Eklund ;;; Copyright © 2020 Marco Grassi ;;; Copyright © 2020 Tomás Ortín Fernández -;;; Copyright © 2020, 2021 Zhu Zihao +;;; Copyright © 2020-2022 Zhu Zihao ;;; Copyright © 2020 Adam Kandur ;;; Copyright © 2020 Tim Howes ;;; Copyright © 2020 Noah Landis @@ -26639,6 +26639,52 @@ developers to define user-interfaces based on tablists (also known as tabulated-lists).") (license license:gpl3+))) +(define-public emacs-eat + (package + (name "emacs-eat") + (version "0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://codeberg.org/akib/emacs-eat") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0zs1fwbapgsap8vai97f1inginb896gl15kyjm521nvaywk4rc12")) + (modules '((guix build utils))) + (snippet + #~(begin + ;; Remove generated terminfo database. + (delete-file-recursively "terminfo"))))) + (build-system emacs-build-system) + (arguments + (list + #:tests? #t + #:include #~(cons* "^term/" + "^terminfo/" + "^integration/" + "\\.ti$" + %default-include) + #:phases + #~(modify-phases %standard-phases + (add-before 'install 'build-info + (lambda _ + (invoke "make" "info"))) + (add-before 'install 'build-terminfo-database + (lambda _ + (invoke "make" "terminfo")))))) + (native-inputs + (list ncurses texinfo)) + (home-page "https://codeberg.org/akib/emacs-eat") + (synopsis "Terminal emulator in Emacs") + (description + "Eat (Emulate A Terminal) is a terminal emulator in Emacs, written in +pure Elisp. It has features like complete mouse support and shell +integration.") + (license license:gpl3+))) + (define-public emacs-vterm (let ((version "0.0.1") (revision "1") From 01762b7171f9afaf7ffa364f7926461bdebc903f Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 30 Dec 2022 11:32:12 +0100 Subject: [PATCH 051/141] gnu: naev: Update to 0.10.1. * gnu/packages/games.scm (naev): Update to 0.10.1. --- 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 19c689dee1..e0660ba850 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -7930,7 +7930,7 @@ ncurses for text display.") (define-public naev (package (name "naev") - (version "0.10.0") + (version "0.10.1") (source (origin (method git-fetch) @@ -7940,7 +7940,7 @@ ncurses for text display.") (recursive? #t))) ; for game data (file-name (git-file-name name version)) (sha256 - (base32 "183dbi4a91xggxm1rmn7vr8rq519yz7b3zhrd03azsg6fxylv9wn")))) + (base32 "0kvfv2ra0jq1ggf4apsx1j1xhrhjz3fn1j8p4q3a9c4m19fq4qzr")))) (build-system meson-build-system) (arguments ;; XXX: Do not add debugging symbols, which cause the build to fail. From ff092b94540e56c32db0487ee19ad3f788a295f0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 29 Dec 2022 09:15:42 +0200 Subject: [PATCH 052/141] services: enlightenment: Load ddcutil udev rules. * gnu/services/desktop.scm (enlightenment-desktop-service-type): Extend the enlightenment-desktop-service-type with the udev rules from the ddcutil input in the udev-service-type. --- gnu/services/desktop.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 9fd77642a1..fe1f0fd20a 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2016 Sou Bunnbu ;;; Copyright © 2017, 2020, 2022 Maxim Cournoyer ;;; Copyright © 2017 Nikita -;;; Copyright © 2018, 2020 Efraim Flashner +;;; Copyright © 2018, 2020, 2022 Efraim Flashner ;;; Copyright © 2018 Ricardo Wurmus ;;; Copyright © 2017, 2019 Christopher Baines ;;; Copyright © 2019 Tim Gesthuizen @@ -760,7 +760,7 @@ site} for more information." (bluetooth-configuration-enable-adv-mon-interleave-scan config)) 1 0)) - + "\n[GATT]" "\nCache = " (symbol->string (bluetooth-configuration-cache config)) "\nKeySize = " (number->string (bluetooth-configuration-key-size config)) @@ -1541,6 +1541,11 @@ rules." (package-direct-input-selector "efl") enlightenment-package)) + (service-extension udev-service-type + (compose list + (package-direct-input-selector + "ddcutil") + enlightenment-package)) (service-extension setuid-program-service-type enlightenment-setuid-programs) (service-extension profile-service-type From f7b2108e62cddc344d84a7481fb4704376fe8aa6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 29 Dec 2022 16:46:21 +0200 Subject: [PATCH 053/141] gnu: node: Add case for cross-building to riscv64-linux. * gnu/packages/node.scm (node)[arguments]: Adjust custom 'configure phase to specify the correct architecture when cross-compiling to riscv64-linux. --- gnu/packages/node.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm index 4e9daa522d..be39f3b25a 100644 --- a/gnu/packages/node.scm +++ b/gnu/packages/node.scm @@ -224,6 +224,8 @@ "x64") ((? (cut string-prefix? "powerpc64" <>)) "ppc64") + ((? (cut string-prefix? "riscv64" <>)) + "riscv64") (_ "unsupported")))) ''())) (flags (cons (string-append "--prefix=" prefix) From e84f17ea939013f25a0dd1276659e27bc4c2198f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 30 Dec 2022 15:05:53 +0100 Subject: [PATCH 054/141] gnu: Add r-domultibarheatmap. * gnu/packages/bioinformatics.scm (r-domultibarheatmap): New variable. --- gnu/packages/bioinformatics.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index c2e6b9f320..46febf579a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -12710,6 +12710,31 @@ known and yet unknown splice junctions. Circular-to-linear ratios of circRNAs can be calculated, and a number of descriptive plots easily generated.") (license license:artistic2.0))) +(define-public r-domultibarheatmap + (let ((commit "9e65afa0aa69fee631c61b7bf3e7742632c9cb95") + (revision "1")) + (package + (name "r-domultibarheatmap") + (version (git-version "0.1.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/elliefewings/DoMultiBarHeatmap") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0q9mrc6md08aff6hhzlw3igvv3w7pr1wildzm8i0km9xvbi9iyy9")))) + (properties `((upstream-name . "DoMultiBarHeatmap"))) + (build-system r-build-system) + (propagated-inputs (list r-ggplot2 r-magrittr r-rlang r-seurat)) + (home-page "https://github.com/elliefewings/DoMultiBarHeatmap") + (synopsis "Produce heatmap from a Seurat object with multiple annotation bars") + (description "This package builds on Seurat's @code{Doheatmap} function +code to produce a heatmap from a Seurat object with multiple annotation +bars.") + (license license:cc0)))) + (define-public r-doubletfinder (let ((commit "554097ba4e2c0ed7c28dc7f0b5b75277f3a50551") (revision "1")) From 01a2b3cce618b3b3ecb8431bba54747fe2b3377f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 31 Dec 2022 00:53:27 +0100 Subject: [PATCH 055/141] gnu: Add spdlog-for-kodi. * gnu/packages/logging.scm (spdlog-for-kodi): New variable. --- gnu/packages/logging.scm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/gnu/packages/logging.scm b/gnu/packages/logging.scm index 58af70c7c5..76b8f6a6b7 100644 --- a/gnu/packages/logging.scm +++ b/gnu/packages/logging.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2016, 2022 Ricardo Wurmus ;;; Copyright © 2016, 2017, 2018 Ludovic Courtès ;;; Copyright © 2017 Stefan Reichör ;;; Copyright © 2017 Eric Bavier @@ -252,6 +252,20 @@ library.") (sha256 (base32 "02xz017ba9fssm1rp1fcfld7h79awbr6fqai9dxaqp02akp3davk")))))) +(define-public spdlog-for-kodi + (package + (inherit spdlog) + (version "1.5.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gabime/spdlog") + (commit (string-append "v" version)))) + (file-name (git-file-name "spdlog" version)) + (sha256 + (base32 "0dn44r3xbw1w0bk9yflnxkh3rzdq2bpxkks44skfmqig0rsj1f1x")))))) + (define-public rsyslog (package (name "rsyslog") From dbd9305a5682b1c5cd0b2a516b09f1f3af47209d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 31 Dec 2022 00:55:43 +0100 Subject: [PATCH 056/141] gnu: kodi: Update to 19.5. * gnu/packages/kodi.scm (kodi): Update to 19.5. [source]: Remove obsolete patches; delete bundled jars. [arguments]: Update configure flags; adjust build phase 'patch-stuff to use Groovy from Guix; adjust file names; remove obsolete substitutions; disable TestCPUInfo.GetCPUFrequency test; remove trailing #T from build phases. [native-inputs]: Drop input labels; add googletest, groovy, openjdk9, and java-commons-lang; remove icedtea. [inputs]: Add spdlog-for-kodi; replace fmt-7 with fmt-6 (for spdlog). (kodi/wayland)[arguments]: Adjust configure flags. [inputs]: Use modify-inputs. * gnu/local.mk (dist_patch_DATA): Remove obsolete patches. * gnu/packages/patches/kodi-set-libcurl-ssl-parameters.patch: Adjust. * gnu/packages/patches/kodi-increase-test-timeout.patch: Remove file. * gnu/packages/patches/kodi-skip-test-449.patch: Remove file. --- gnu/local.mk | 2 - gnu/packages/kodi.scm | 231 +++++++++--------- .../patches/kodi-increase-test-timeout.patch | 18 -- .../kodi-set-libcurl-ssl-parameters.patch | 13 +- gnu/packages/patches/kodi-skip-test-449.patch | 53 ---- 5 files changed, 129 insertions(+), 188 deletions(-) delete mode 100644 gnu/packages/patches/kodi-increase-test-timeout.patch delete mode 100644 gnu/packages/patches/kodi-skip-test-449.patch diff --git a/gnu/local.mk b/gnu/local.mk index 7c7b5c12bd..f0b1b3fd15 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1398,9 +1398,7 @@ dist_patch_DATA = \ %D%/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch \ %D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch \ %D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch \ - %D%/packages/patches/kodi-increase-test-timeout.patch \ %D%/packages/patches/kodi-set-libcurl-ssl-parameters.patch \ - %D%/packages/patches/kodi-skip-test-449.patch \ %D%/packages/patches/kwayland-skip-flaky-test.patch \ %D%/packages/patches/laby-make-install.patch \ %D%/packages/patches/ldns-drill-examples.patch \ diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm index 18791359f2..c43f812ece 100644 --- a/gnu/packages/kodi.scm +++ b/gnu/packages/kodi.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2018, 2020 Efraim Flashner ;;; Copyright © 2020 Michael Rohleder ;;; Copyright © 2021 Greg Hogan +;;; Copyright © 2022 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -39,6 +40,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages cdrom) + #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) #:use-module (gnu packages curl) @@ -55,12 +57,14 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gperf) #:use-module (gnu packages groff) + #:use-module (gnu packages groovy) #:use-module (gnu packages gnunet) #:use-module (gnu packages gnupg) #:use-module (gnu packages image) #:use-module (gnu packages java) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) + #:use-module (gnu packages logging) #:use-module (gnu packages mp3) #:use-module (gnu packages pcre) #:use-module (gnu packages pkg-config) @@ -270,43 +274,40 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.") (define-public kodi (package (name "kodi") - (version "18.8") + (version "19.5") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/xbmc/xbmc") - (commit (string-append version "-Leia")))) + (commit (string-append version "-Matrix")))) (file-name (git-file-name name version)) (sha256 (base32 - "0qpkpz43s207msvv3qkiy6vzqwcgmydxv3py7vc29mv6h30chrva")) - (patches (search-patches "kodi-skip-test-449.patch" - "kodi-increase-test-timeout.patch" - "kodi-set-libcurl-ssl-parameters.patch")) + "1pfd1ajivr865h0fkpbv778626c4czrvq8650bzqv9aqzh8f36my")) + (patches (search-patches "kodi-set-libcurl-ssl-parameters.patch")) + (modules '((guix build utils))) (snippet '(begin (use-modules (guix build utils)) (for-each delete-file-recursively '("project/BuildDependencies/" - ;; TODO: Purge these jars. - ;;"tools/codegenerator/groovy" - ;; And these sources: + "tools/codegenerator/groovy/commons-lang-2.6.jar" + "tools/codegenerator/groovy/groovy-all-2.4.4.jar" + ;; Purge these sources: ;; "tools/depend/native/JsonSchemaBuilder" ;; "tools/depend/native/TexturePacker" - ;; "lib/gtest" - ;; "lib/cpluff" ;; "lib/libUPnP" "lib/libUPnP/Neptune/ThirdParty" - "project/Win32BuildSetup/tools/7z")) - #t)) - (modules '((guix build utils))))) + "project/Win32BuildSetup/tools/7z")))))) (build-system cmake-build-system) (arguments '(#:modules ((srfi srfi-1) (guix build cmake-build-system) (guix build utils)) #:configure-flags - (list "-DENABLE_INTERNAL_FFMPEG=OFF" + (list "-DCORE_PLATFORM_NAME=x11" + "-DAPP_RENDER_SYSTEM=gl" + "-DENABLE_INTERNAL_FFMPEG=OFF" "-DENABLE_INTERNAL_CROSSGUID=OFF" (string-append "-Dlibdvdread_URL=" (assoc-ref %build-inputs "libdvdread-bootstrapped")) @@ -324,28 +325,36 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.") ;; bootstrap it on our own instead. (add-after 'unpack 'bootstrap-bundled-software (lambda _ - (let ((dirs '("tools/depends/native/JsonSchemaBuilder/src" - "lib/cpluff"))) + (let ((dirs '("tools/depends/native/JsonSchemaBuilder/src"))) (every (lambda (third-party) (with-directory-excursion third-party (invoke "autoreconf" "-vif"))) dirs)))) (add-after 'bootstrap-bundled-software 'patch-stuff (lambda* (#:key inputs #:allow-other-keys) + ;; Run groovy executable directly. + (substitute* "xbmc/interfaces/swig/CMakeLists.txt" + (("COMMAND \\$\\{Java_JAVA_EXECUTABLE\\}") + "COMMAND groovy") + (("ARGS \\$\\{JAVA_OPEN_OPTS\\} -cp \"\\$\\{classpath\\}\" groovy.ui.GroovyMain") + "ARGS -cp \"${classpath}\" ") + (("classpath \\$\\{GROOVY_DIR\\}/groovy-all-\\$\\{GROOVY_VER\\}.jar") + "classpath ") + (("\\$\\{GROOVY_DIR\\}/commons-lang-\\$\\{COMMONS_VER\\}.jar") + (search-input-file inputs "/share/java/commons-lang-2.6.jar")) + (("^set\\(GROOVY_VER.*") + (string-append "set(GROOVY_VER 3.0.5)\n"))) + ;; Prevent the build scripts from calling autoreconf in the ;; build stage. Otherwise, it would undo the bootstrapping ;; and shebang patching that we worked so hard for. - (substitute* "cmake/modules/FindCpluff.cmake" - (("autoreconf -vif") "true")) - (substitute* "lib/cpluff/po/Makefile.in.in" - (("/bin/sh") (which "sh"))) (substitute* "cmake/modules/FindLibDvd.cmake" ;; The libdvd* sources that we bootstrapped separately are ;; unpacked in the build phase. This is our best opportunity ;; to make them writable before the build process starts. (("autoreconf -vif") "chmod -R u+w .")) - (substitute* "xbmc/platform/linux/LinuxTimezone.cpp" + (substitute* "xbmc/platform/posix/PosixTimezone.cpp" (("/usr/share/zoneinfo") (search-input-directory inputs "share/zoneinfo"))) @@ -357,20 +366,21 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.") ;; Let's disable some tests that are known not to work here. ;; Doing this later while in the cmake "../build" directory ;; is trickier. - (substitute* '("xbmc/utils/test/TestSystemInfo.cpp") + (substitute* "xbmc/utils/test/TestSystemInfo.cpp" (("TEST_F\\(TestSystemInfo, GetOsPrettyNameWithVersion\\)") "TEST_F(TestSystemInfo, DISABLED_GetOsPrettyNameWithVersion)") (("TEST_F\\(TestSystemInfo, GetOsName\\)") "TEST_F(TestSystemInfo, DISABLED_GetOsName)") (("TEST_F\\(TestSystemInfo, GetOsVersion\\)") "TEST_F(TestSystemInfo, DISABLED_GetOsVersion)")) - #t)) + (substitute* "xbmc/utils/test/TestCPUInfo.cpp" + (("TEST_F\\(TestCPUInfo, GetCPUFrequency\\)") + "TEST_F(TestCPUInfo, DISABLED_GetCPUFrequency)")))) (add-before 'build 'set-build-environment (lambda _ ;; Some bundled build scripts fall back to /bin/sh ;; if this is not set. - (setenv "CONFIG_SHELL" (which "sh")) - #t)) + (setenv "CONFIG_SHELL" (which "sh")))) (add-before 'check 'build-kodi-test (lambda _ (invoke "make" "kodi-test")))))) @@ -379,77 +389,81 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.") ;; - plist ;; - shairplay (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("gettext" ,gettext-minimal) - ("icedtea" ,icedtea) ; needed at build-time only, mandatory - ("libdvdcss-bootstrapped" ,libdvdcss/kodi) - ("libdvdnav-bootstrapped" ,libdvdnav/kodi) - ("libdvdread-bootstrapped" ,libdvdread/kodi) - ("libtool" ,libtool) - ("pkg-config" ,pkg-config) - ("swig" ,swig) - ("yasm" ,yasm))) + (list autoconf + automake + gettext-minimal + googletest + groovy + openjdk9 ;like groovy + java-commons-lang + libdvdcss/kodi + libdvdnav/kodi + libdvdread/kodi + libtool + pkg-config + swig + yasm)) (inputs - `(("alsa-lib" ,alsa-lib) - ("avahi" ,avahi) - ("bluez" ,bluez) - ("crossguid" ,crossguid) - ("curl" ,curl) - ("dcadec" ,dcadec) - ("dbus" ,dbus) - ("eudev" ,eudev) - ("ffmpeg" ,ffmpeg-4) - ("flac" ,flac) - ("flatbuffers" ,flatbuffers) - ("fmt" ,fmt-7) - ("fontconfig" ,fontconfig) - ("freetype" ,freetype) - ("fribidi" ,fribidi) - ("fstrcmp" ,fstrcmp) - ("giflib" ,giflib) - ("glew" ,glew) - ("gnutls" ,gnutls) - ("lame" ,lame) - ("lcms" ,lcms) - ("libass" ,libass) - ("libbluray" ,libbluray) - ("libcap" ,libcap) - ("libcdio" ,libcdio) - ("libdrm" ,libdrm) - ("libgcrypt" ,libgcrypt) - ("libjpeg" ,libjpeg-turbo) - ("libltdl" ,libltdl) - ("libmad" ,libmad) - ("libmicrohttpd" ,libmicrohttpd) - ("libmpeg2" ,libmpeg2) - ("libnfs" ,libnfs) - ("libogg" ,libogg) - ("libpng" ,libpng) - ("libssh" ,libssh) - ("libtiff" ,libtiff) - ("libva" ,libva) - ("libvorbis" ,libvorbis) - ("libxml2" ,libxml2) - ("libxrandr" ,libxrandr) - ("libxrender" ,libxrender) - ("libxslt" ,libxslt) - ("lzo" ,lzo) - ("mariadb-dev" ,mariadb "lib") - ("mariadb-dev" ,mariadb "dev") - ("openssl" ,openssl) - ("pcre" ,pcre) - ("pulseaudio" ,pulseaudio) - ("python" ,python-2) - ("rapidjson" ,rapidjson) - ("samba" ,samba) - ("sqlite" ,sqlite) - ("taglib" ,taglib) - ("tinyxml" ,tinyxml) - ("tzdata" ,tzdata) - ("util-linux" ,util-linux) - ("zip" ,zip) - ("zlib" ,zlib))) + (list alsa-lib + avahi + bluez + crossguid + curl + dcadec + dbus + eudev + ffmpeg-4 + flac + flatbuffers + fmt-6 + fontconfig + freetype + fribidi + fstrcmp + giflib + glew + gnutls + lame + lcms + libass + libbluray + libcap + libcdio + libdrm + libgcrypt + libjpeg-turbo + libltdl + libmad + libmicrohttpd + libmpeg2 + libnfs + libogg + libpng + libssh + libtiff + libva + libvorbis + libxml2 + libxrandr + libxrender + libxslt + lzo + (list mariadb "lib") + (list mariadb "dev") + openssl + pcre + pulseaudio + python + rapidjson + samba + spdlog-for-kodi + sqlite + taglib + tinyxml + tzdata + util-linux + zip + zlib)) (synopsis "Media center for home theater computers") (description "Kodi is a media center application for playing videos, music, games, etc. Kodi is highly customizable and features a theme and @@ -458,11 +472,11 @@ plug-in system.") ;; XBMC is largely GPL2+, with some library components as LGPL2.1+, but ;; there are some other licenses spread throughout. (license (list license:gpl2+ license:lgpl2.1+ - license:gpl3+ ;WiiRemote client - license:expat ;cpluff, dbwrappers - license:public-domain ;cpluff/examples - license:bsd-3 ;misc, gtest - license:bsd-2)))) ;xbmc/freebsd + license:gpl3+ ;WiiRemote client + license:expat ;cpluff, dbwrappers + license:public-domain ;cpluff/examples + license:bsd-3 ;misc + license:bsd-2)))) ;xbmc/freebsd (define-public kodi/wayland (package/inherit kodi @@ -470,15 +484,14 @@ plug-in system.") (arguments (substitute-keyword-arguments (package-arguments kodi) ((#:configure-flags flags) - `(append '("-DCORE_PLATFORM_NAME=wayland" - "-DWAYLAND_RENDER_SYSTEM=gl") - ,flags)))) + `(cons "-DCORE_PLATFORM_NAME=wayland" + (delete "-DCORE_PLATFORM_NAME=x11" ,flags))))) (inputs - `(("libinput" ,libinput) - ("libxkbcommon" ,libxkbcommon) - ("waylandpp" ,waylandpp) - ("waylandp-protocols" ,wayland-protocols) - ,@(package-inputs kodi))) + (modify-inputs (package-input kodi) + (prepend (list libinput + libxkbcommon + waylandpp + wayland-protocols)))) (synopsis "Kodi with Wayland rendering backend"))) (define-public kodi-cli diff --git a/gnu/packages/patches/kodi-increase-test-timeout.patch b/gnu/packages/patches/kodi-increase-test-timeout.patch deleted file mode 100644 index 8fb149ff9d..0000000000 --- a/gnu/packages/patches/kodi-increase-test-timeout.patch +++ /dev/null @@ -1,18 +0,0 @@ -Increase thread timeout to reduce flakiness. - -Taken from upstream: -https://github.com/xbmc/xbmc/commit/574b0182d8b641fd24029f372ebdcccc897123e2 - -diff --git a/xbmc/threads/test/TestEvent.cpp b/xbmc/threads/test/TestEvent.cpp -index 42fb8c2fc609..40e644c0ed3c 100644 ---- a/xbmc/threads/test/TestEvent.cpp -+++ b/xbmc/threads/test/TestEvent.cpp -@@ -484,7 +484,7 @@ TEST(TestEvent, GroupTimedWait) - EXPECT_TRUE(w3.result == NULL); - - // this should end given the wait is for only 50 millis -- EXPECT_TRUE(waitThread3.timed_join(MILLIS(100))); -+ EXPECT_TRUE(waitThread3.timed_join(MILLIS(200))); - - EXPECT_TRUE(!w3.waiting); - EXPECT_TRUE(w3.result == NULL); diff --git a/gnu/packages/patches/kodi-set-libcurl-ssl-parameters.patch b/gnu/packages/patches/kodi-set-libcurl-ssl-parameters.patch index 2f60737e30..99d8a45de6 100644 --- a/gnu/packages/patches/kodi-set-libcurl-ssl-parameters.patch +++ b/gnu/packages/patches/kodi-set-libcurl-ssl-parameters.patch @@ -3,15 +3,16 @@ connections work we can set them based on SSL_CERT_DIR and SSL_CERT_FILE. --- a/xbmc/filesystem/CurlFile.cpp +++ b/xbmc/filesystem/CurlFile.cpp -@@ -626,5 +626,9 @@ +@@ -626,8 +626,12 @@ if (!m_cipherlist.empty()) g_curlInterface.easy_setopt(h, CURLOPT_SSL_CIPHER_LIST, m_cipherlist.c_str()); - + + // Load certificate data from environment paths + g_curlInterface.easy_setopt(m_state->m_easyHandle, CURLOPT_CAPATH, getenv("SSL_CERT_DIR")); + g_curlInterface.easy_setopt(m_state->m_easyHandle, CURLOPT_CAINFO, getenv("SSL_CERT_FILE")); + - // enable HTTP2 support. default: CURL_HTTP_VERSION_1_1. Curl >= 7.62.0 defaults to CURL_HTTP_VERSION_2TLS - g_curlInterface.easy_setopt(h, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); -- - } + if (CServiceBroker::GetSettingsComponent()->GetAdvancedSettings()->m_curlDisableHTTP2) + g_curlInterface.easy_setopt(h, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); + else + // enable HTTP2 support. default: CURL_HTTP_VERSION_1_1. Curl >= 7.62.0 defaults to CURL_HTTP_VERSION_2TLS + g_curlInterface.easy_setopt(h, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2TLS); diff --git a/gnu/packages/patches/kodi-skip-test-449.patch b/gnu/packages/patches/kodi-skip-test-449.patch deleted file mode 100644 index a418239a7c..0000000000 --- a/gnu/packages/patches/kodi-skip-test-449.patch +++ /dev/null @@ -1,53 +0,0 @@ -This test fails regularly between 18.0rc3 and 18.0rc5.2 - -449/520 Test #449: TestWebServer.CanHeadFile................................................***Failed 0.90 sec -Note: Google Test filter = TestWebServer.CanHeadFile -[==========] Running 1 test from 1 test case. -[----------] Global test environment set-up. -[----------] 1 test from TestWebServer -[ RUN ] TestWebServer.CanHeadFile -/tmp/guix-build-kodi-18.0rc5.2.drv-0/kodi-18.0rc5.2-checkout/xbmc/network/test/TestWebServer.cpp:156: Failure - Expected: "4" -To be equal to: httpHeader.GetValue("Content-Length").c_str() - Which is: "0" -[ FAILED ] TestWebServer.CanHeadFile (6 ms) -[----------] 1 test from TestWebServer (6 ms total) - -[----------] Global test environment tear-down -[==========] 1 test from 1 test case ran. (635 ms total) -[ PASSED ] 0 tests. -[ FAILED ] 1 test, listed below: -[ FAILED ] TestWebServer.CanHeadFile - ---- - xbmc/network/test/TestWebServer.cpp | 14 +++++++------- - 1 file changed, 7 insertions(+), 7 deletions(-) - -diff --git a/xbmc/network/test/TestWebServer.cpp b/xbmc/network/test/TestWebServer.cpp -index a87d9f4..b2240f4 100644 ---- a/xbmc/network/test/TestWebServer.cpp -+++ b/xbmc/network/test/TestWebServer.cpp -@@ -520,13 +520,13 @@ TEST_F(TestWebServer, CanNotHeadNonExistingFile) - ASSERT_FALSE(curl.Exists(CURL(GetUrlOfTestFile("file_does_not_exist")))); - } - --TEST_F(TestWebServer, CanHeadFile) --{ -- CCurlFile curl; -- ASSERT_TRUE(curl.Exists(CURL(GetUrlOfTestFile(TEST_FILES_HTML)))); -- -- CheckHtmlTestFileResponse(curl); --} -+//TEST_F(TestWebServer, CanHeadFile) -+//{ -+// CCurlFile curl; -+// ASSERT_TRUE(curl.Exists(CURL(GetUrlOfTestFile(TEST_FILES_HTML)))); -+// -+// CheckHtmlTestFileResponse(curl); -+//} - - TEST_F(TestWebServer, CanNotGetNonExistingFile) - { --- -2.20.1 - From 8e883dc8210d4a7c3f09961994685ed54942fd73 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 31 Dec 2022 01:02:16 +0100 Subject: [PATCH 057/141] gnu: kodi/wayland: Fix typo. * gnu/packages/kodi.scm (kodi/wayland)[inputs]: Use package-inputs instead of package-input. --- gnu/packages/kodi.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm index c43f812ece..1411f147cd 100644 --- a/gnu/packages/kodi.scm +++ b/gnu/packages/kodi.scm @@ -487,7 +487,7 @@ plug-in system.") `(cons "-DCORE_PLATFORM_NAME=wayland" (delete "-DCORE_PLATFORM_NAME=x11" ,flags))))) (inputs - (modify-inputs (package-input kodi) + (modify-inputs (package-inputs kodi) (prepend (list libinput libxkbcommon waylandpp From 2b7e7b4a139ecd506c42d8e7d29a9143d03e5897 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Tue, 20 Dec 2022 22:31:48 +0100 Subject: [PATCH 058/141] gnu: dino: Fix icons when used in pure shells. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/messaging.scm (dino)[#:phases]: Add ‘generate-gdk-pixbuf-loaders-cache-file’. : Also wrap “GDK_PIXBUF_MODULE_FILE”. [inputs]: Add adwaita-icon-theme. --- gnu/packages/messaging.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 27a68439ef..7b693a07fa 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -1398,13 +1398,18 @@ Encryption to Gajim.") #:phases #~(modify-phases %standard-phases ;; For A/V support. + (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file + (assoc-ref glib-or-gtk:%standard-phases + 'generate-gdk-pixbuf-loaders-cache-file)) (add-after 'install 'wrap (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (dino (string-append out "/bin/dino")) (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))) (wrap-program dino - `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)))))) + `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)) + `("GDK_PIXBUF_MODULE_FILE" = + (,(getenv "GDK_PIXBUF_MODULE_FILE"))))))) (add-after 'install 'glib-or-gtk-wrap (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) (replace 'check @@ -1421,7 +1426,8 @@ Encryption to Gajim.") pkg-config vala)) (inputs - (list atk + (list adwaita-icon-theme + atk cairo librsvg glib From 211524df849f7cbf197455b66a24f4f93b8ad3f9 Mon Sep 17 00:00:00 2001 From: Adam Faiz Date: Sun, 18 Dec 2022 23:51:04 +0800 Subject: [PATCH 059/141] gnu: python-pygame: Update to 2.1.2. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/game-development.scm (python-pygame): Update to 2.1.2. [arguments]<#:phases>: Add ‘fix-build-config’ and ‘fix-sdl2-headers’. [inputs]: Remove “sdl”, “sdl-image”, “sdl-mixer”, “sdl-ttf”, and “sdl-gfx”. Add “sdl2”, “sdl2-image”, “sdl2-mixer”, “sdl2-ttf”, and “sdl2-gfx”. Signed-off-by: Liliana Marie Prikler --- gnu/packages/game-development.scm | 95 ++++++++++--------------------- 1 file changed, 31 insertions(+), 64 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 8fec474d0b..07b2c6f3fe 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1194,82 +1194,49 @@ interface (API).") (define-public python-pygame (package (name "python-pygame") - (version "1.9.4") + (version "2.1.2") (source (origin (method url-fetch) (uri (pypi-uri "pygame" version)) (sha256 (base32 - "1dn0nb86jl7yr8709cncxdr0yrmviqakw7zx3g8jbbwrr60if3bh")))) + "0g6j79naab7583kymf1bgxc5l5c9h5laq887rmvh8vw8iyifrl6n")))) (build-system python-build-system) (arguments `(#:tests? #f ; tests require pygame to be installed first #:phases (modify-phases %standard-phases - ;; Set the paths to the dependencies manually because - ;; the configure script does not allow passing them as - ;; parameters. This also means we can skip the configure - ;; phase. - (add-before 'build 'set-library-paths - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((sdl-ref (assoc-ref inputs "sdl")) - (font-ref (assoc-ref inputs "sdl-ttf")) - (image-ref (assoc-ref inputs "sdl-image")) - (mixer-ref (assoc-ref inputs "sdl-mixer")) - (smpeg-ref (assoc-ref inputs "libsmpeg")) - (png-ref (assoc-ref inputs "libpng")) - (jpeg-ref (assoc-ref inputs "libjpeg")) - (freetype-ref (assoc-ref inputs "freetype")) - (v4l-ref (assoc-ref inputs "v4l-utils")) - (out-ref (assoc-ref outputs "out"))) - (substitute* "Setup.in" - (("SDL = -I/usr/include/SDL") - (string-append "SDL = -I" sdl-ref "/include/SDL -I."))) - (substitute* "Setup.in" - (("FONT = -lSDL_ttf") - (string-append "FONT = -I" font-ref "/include/SDL -L" - font-ref "/lib -lSDL_ttf"))) - (substitute* "Setup.in" - (("IMAGE = -lSDL_image") - (string-append "IMAGE = -I" image-ref "/include/SDL -L" - image-ref "/lib -lSDL_image"))) - (substitute* "Setup.in" - (("MIXER = -lSDL_mixer") - (string-append "MIXER = -I" mixer-ref "/include/SDL -L" - mixer-ref "/lib -lSDL_mixer"))) - (substitute* "Setup.in" - (("SMPEG = -lsmpeg") - (string-append "SMPEG = -I" smpeg-ref "/include/smpeg -L" - smpeg-ref "/lib -lsmpeg"))) - (substitute* "Setup.in" - (("PNG = -lpng") - (string-append "PNG = -I" png-ref "/include -L" - png-ref "/lib -lpng"))) - (substitute* "Setup.in" - (("JPEG = -ljpeg") - (string-append "JPEG = -I" jpeg-ref "/include -L" - jpeg-ref "/lib -ljpeg"))) - - (substitute* "Setup.in" - (("FREETYPE = -lfreetype") - (string-append "FREETYPE = -I" freetype-ref "/include/freetype2 -L" - freetype-ref "/lib -lfreetype"))) - - (substitute* "Setup.in" - (("^pypm") "#pypm")) - ;; Create a path to a header file provided by v4l-utils. - (system* "mkdir" "linux") - (system* "ln" "--symbolic" - (string-append v4l-ref "/include/libv4l1-videodev.h") - "linux/videodev.h") - (system* "ln" "--symbolic" "Setup.in" "Setup"))))))) + (add-after 'unpack 'fix-build-config + (lambda _ + (substitute* "buildconfig/config_unix.py" + (("origincdirs = \\[.*\\]") + "origincdirs = os.environ['C_INCLUDE_PATH'].split(\":\")") + (("ORIGLIBDIRS") "LIBRARY_PATH") + (("incdirs = \\[\\]") "incdirs = origincdirs") + (("libdirs = \\[\\]") "libdirs = origlibdirs")))) + (add-after 'unpack 'fix-sdl2-headers + (lambda _ + (substitute* "buildconfig/config_unix.py" + (("SDL_ttf.h") "SDL2/SDL_ttf.h") + (("SDL_image.h") "SDL2/SDL_image.h") + (("SDL_mixer.h") "SDL2/SDL_mixer.h")) + (substitute* "src_c/imageext.c" + (("SDL_image.h") "SDL2/SDL_image.h")) + (substitute* "src_c/font.h" + (("SDL_ttf.h") "SDL2/SDL_ttf.h")) + (substitute* "src_c/mixer.h" + (("SDL_mixer.h") "SDL2/SDL_mixer.h")) + (substitute* "src_c/_sdl2/mixer.c" + (("SDL_mixer.h") "SDL2/SDL_mixer.h"))))))) + (native-inputs + (list pkg-config)) (inputs `(("freetype" ,freetype) - ("sdl" ,sdl) - ("sdl-image" ,sdl-image) - ("sdl-mixer" ,sdl-mixer) - ("sdl-ttf" ,sdl-ttf) - ("sdl-gfx" ,sdl-gfx) + ("sdl2" ,sdl2) + ("sdl2-image" ,sdl2-image) + ("sdl2-mixer" ,sdl2-mixer) + ("sdl2-ttf" ,sdl2-ttf) + ("sdl2-gfx" ,sdl2-gfx) ("libjpeg" ,libjpeg-turbo) ("libpng" ,libpng) ("libX11" ,libx11) From 6dba52892bced922c30ebfe62debcfd656d26393 Mon Sep 17 00:00:00 2001 From: Adam Faiz Date: Sun, 18 Dec 2022 23:54:22 +0800 Subject: [PATCH 060/141] gnu: python-pygame: Use G-Expressions and new-style inputs. * gnu/packages/game-development.scm (python-pygame)[arguments]: Convert to list of G-Expressions. [inputs]: Drop labels. Signed-off-by: Liliana Marie Prikler --- gnu/packages/game-development.scm | 75 ++++++++++++++++--------------- 1 file changed, 38 insertions(+), 37 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 07b2c6f3fe..31bc76d4fd 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1203,46 +1203,47 @@ interface (API).") "0g6j79naab7583kymf1bgxc5l5c9h5laq887rmvh8vw8iyifrl6n")))) (build-system python-build-system) (arguments - `(#:tests? #f ; tests require pygame to be installed first - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'fix-build-config - (lambda _ - (substitute* "buildconfig/config_unix.py" - (("origincdirs = \\[.*\\]") - "origincdirs = os.environ['C_INCLUDE_PATH'].split(\":\")") - (("ORIGLIBDIRS") "LIBRARY_PATH") - (("incdirs = \\[\\]") "incdirs = origincdirs") - (("libdirs = \\[\\]") "libdirs = origlibdirs")))) - (add-after 'unpack 'fix-sdl2-headers - (lambda _ - (substitute* "buildconfig/config_unix.py" - (("SDL_ttf.h") "SDL2/SDL_ttf.h") - (("SDL_image.h") "SDL2/SDL_image.h") - (("SDL_mixer.h") "SDL2/SDL_mixer.h")) - (substitute* "src_c/imageext.c" - (("SDL_image.h") "SDL2/SDL_image.h")) - (substitute* "src_c/font.h" - (("SDL_ttf.h") "SDL2/SDL_ttf.h")) - (substitute* "src_c/mixer.h" - (("SDL_mixer.h") "SDL2/SDL_mixer.h")) - (substitute* "src_c/_sdl2/mixer.c" - (("SDL_mixer.h") "SDL2/SDL_mixer.h"))))))) + (list + #:tests? #f ; tests require pygame to be installed first + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-build-config + (lambda _ + (substitute* "buildconfig/config_unix.py" + (("origincdirs = \\[.*\\]") + "origincdirs = os.environ['C_INCLUDE_PATH'].split(\":\")") + (("ORIGLIBDIRS") "LIBRARY_PATH") + (("incdirs = \\[\\]") "incdirs = origincdirs") + (("libdirs = \\[\\]") "libdirs = origlibdirs")))) + (add-after 'unpack 'fix-sdl2-headers + (lambda _ + (substitute* "buildconfig/config_unix.py" + (("SDL_ttf.h") "SDL2/SDL_ttf.h") + (("SDL_image.h") "SDL2/SDL_image.h") + (("SDL_mixer.h") "SDL2/SDL_mixer.h")) + (substitute* "src_c/imageext.c" + (("SDL_image.h") "SDL2/SDL_image.h")) + (substitute* "src_c/font.h" + (("SDL_ttf.h") "SDL2/SDL_ttf.h")) + (substitute* "src_c/mixer.h" + (("SDL_mixer.h") "SDL2/SDL_mixer.h")) + (substitute* "src_c/_sdl2/mixer.c" + (("SDL_mixer.h") "SDL2/SDL_mixer.h"))))))) (native-inputs (list pkg-config)) (inputs - `(("freetype" ,freetype) - ("sdl2" ,sdl2) - ("sdl2-image" ,sdl2-image) - ("sdl2-mixer" ,sdl2-mixer) - ("sdl2-ttf" ,sdl2-ttf) - ("sdl2-gfx" ,sdl2-gfx) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("libX11" ,libx11) - ("libsmpeg" ,libsmpeg) - ("portmidi" ,portmidi) - ("v4l-utils" ,v4l-utils))) + (list freetype + sdl2 + sdl2-image + sdl2-mixer + sdl2-ttf + sdl2-gfx + libjpeg-turbo + libpng + libx11 + libsmpeg + portmidi + v4l-utils)) (home-page "https://www.pygame.org") (synopsis "SDL wrapper for Python") (description "Pygame is a set of Python modules designed for writing games. From 7a562e7f01924b6f2e9c2a452ba4ef2f05eed3f0 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Thu, 22 Dec 2022 21:45:24 +0100 Subject: [PATCH 061/141] gnu: python-pygame: Reword description. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/game-development.scm (python-pygame)[description]: Join sentences describing functionality. Capitalize “Python”. Cut down the marketing talk. --- 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 31bc76d4fd..0f96784dd3 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1247,8 +1247,8 @@ interface (API).") (home-page "https://www.pygame.org") (synopsis "SDL wrapper for Python") (description "Pygame is a set of Python modules designed for writing games. -Pygame adds functionality on top of the excellent SDL library. This allows you -to create fully featured games and multimedia programs in the python language.") +It adds functionality on top of the SDL library, allowing you to create games +and multimedia programs in the Python language.") (license (list license:bsd-2 ;; python numeric license as listed by Debian looks like ;; an Expat-style license with a warranty disclaimer for From 502f981c1388d8dad6aa8faac62ece0458ec7c60 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sun, 18 Dec 2022 08:28:52 +0100 Subject: [PATCH 062/141] gnu: samba: Update to 4.16.8. * gnu/packages/samba.scm (samba): Update to 4.16.8. --- gnu/packages/samba.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 2a01279161..2fe75d0c1a 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -187,7 +187,7 @@ external dependencies.") (define-public samba (package (name "samba") - (version "4.16.4") + (version "4.16.8") (source ;; For updaters: the current PGP fingerprint is ;; 81F5E2832BD2545A1897B713AA99442FB680B620. @@ -196,7 +196,7 @@ external dependencies.") (uri (string-append "https://download.samba.org/pub/samba/stable/" "samba-" version ".tar.gz")) (sha256 - (base32 "0bvhqinxwpbwp4ayhd9q8ga0w89gnkl1m3nrwpj1fnhjzd4ghclm")))) + (base32 "11a1vikbijaq7csg49h5ivn25gx84v6wx8z8kgsj1wmkhsf9bcmv")))) (build-system gnu-build-system) (arguments (list From c39db91e51e55e46f177378c7b5a797441dc7d1b Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sun, 18 Dec 2022 08:29:07 +0100 Subject: [PATCH 063/141] gnu: samba/fixed: Update to 4.15.13. * gnu/packages/samba.scm (samba/fixed-patched): New variable. (samba/fixed): Add replacement for samba/fixed-patched. --- gnu/packages/samba.scm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 2fe75d0c1a..b6cb0a5941 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -295,7 +295,9 @@ Desktops into Active Directory environments using the winbind daemon.") (define-public samba/fixed ;; Version that rarely changes, depended on by libsoup. (hidden-package - (package/inherit samba + (package + (inherit samba) + (replacement samba/fixed-patched) (version "4.15.3") (source (origin @@ -319,6 +321,18 @@ Desktops into Active Directory environments using the winbind daemon.") libxslt libxml2))))) +(define-public samba/fixed-patched + (package + (inherit samba/fixed) + (version "4.15.13") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.samba.org/pub/samba/stable/" + "samba-" version ".tar.gz")) + (sha256 + (base32 "0s29vzn5f42vjhx6h25c7v67n14ymqxn8glqa97d0rajd99y64n4")))))) + (define-public talloc (package (name "talloc") From 1d7552697a1a4ed80d4328653a7449f7195791b8 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Sat, 31 Dec 2022 11:20:41 +0100 Subject: [PATCH 064/141] gnu: Add ghc-9.2. * gnu/packages/haskell.scm (ghc-9.2): New variable. --- gnu/packages/haskell.scm | 49 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 692b27a097..28d6fa0d39 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -1241,6 +1241,8 @@ interactive environment for the functional language Haskell.") (define-public ghc-8 ghc-8.10) +(define-public ghc ghc-8) + (define-public ghc-9.0 (package (inherit ghc-8.10) @@ -1277,6 +1279,51 @@ interactive environment for the functional language Haskell.") (file-pattern ".*\\.conf\\.d$") (file-type 'directory)))))) -(define-public ghc ghc-8) +(define-public ghc-9.2 + ;; Use 8.10 to shorten the build chain. + (let ((base ghc-8.10)) + (package + (inherit base) + (name "ghc-next") + (version "9.2.5") + (source (origin + (method url-fetch) + (uri (string-append "https://www.haskell.org/ghc/dist/" version + "/ghc-" version "-src.tar.xz")) + (sha256 + (base32 + "07028i0hm74svvq9b3jpkczaj6lsdgn3hgr4wa7diqiq3dypj1h6")))) + (arguments + (substitute-keyword-arguments (package-arguments base) + ((#:phases phases '%standard-phases) + #~(modify-phases #$phases + ;; File Common.hs has been moved to src/ in this release. + (replace 'fix-cc-reference + (lambda _ + (substitute* "utils/hsc2hs/src/Common.hs" + (("\"cc\"") "\"gcc\"")))))))) + (native-inputs + `(;; GHC 9.2 must be built with GHC >= 8.6. + ("ghc-bootstrap" ,base) + ("ghc-testsuite" + ,(origin + (method url-fetch) + (uri (string-append + "https://www.haskell.org/ghc/dist/" + version "/ghc-" version "-testsuite.tar.xz")) + (sha256 + (base32 + "19ha0hidrijawy53vm2r0sgml5zkl8126mqy7p0pyacmw3k7913l")))) + ,@(filter (match-lambda + (("ghc-bootstrap" . _) #f) + (("ghc-testsuite" . _) #f) + (_ #t)) + (package-native-inputs base)))) + (native-search-paths + (list (search-path-specification + (variable "GHC_PACKAGE_PATH") + (files (list (string-append "lib/ghc-" version))) + (file-pattern ".*\\.conf\\.d$") + (file-type 'directory))))))) ;;; haskell.scm ends here From db675db2232893233e90df3b818c55043071dccd Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Sat, 31 Dec 2022 11:23:20 +0100 Subject: [PATCH 065/141] gnu: Add ghc-9.4. * gnu/packages/haskell.scm (ghc-9.4): New variable. (ghc-bootstrap-for-9.4): New variable. (ghc-alex-bootstrap-for-9.4): New variable. (ghc-happy-bootstrap-for-9.4): New variable. --- gnu/packages/haskell.scm | 105 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 28d6fa0d39..91610a1f2e 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -63,6 +63,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages version-control) #:use-module (guix build-system gnu) + #:use-module (guix build-system haskell) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix gexp) @@ -1326,4 +1327,108 @@ interactive environment for the functional language Haskell.") (file-pattern ".*\\.conf\\.d$") (file-type 'directory))))))) +;; 9.4 is the last version to support the make-based build system, +;; but it boot with 9.2, only 9.0 is supported. +(define ghc-bootstrap-for-9.4 ghc-9.0) + +;; We need two extra dependencies built with ghc-bootstrap-for-9.4, +;; which are duplicated here from haskell-xyz to make sure the +;; bootstraping process always works. +(define ghc-alex-bootstrap-for-9.4 + (hidden-package + (package + (name "ghc-alex") + (version "3.2.6") + (source + (origin + (method url-fetch) + (uri (hackage-uri "alex" version)) + (sha256 + (base32 + "042lrkn0dbpjn5ivj6j26jzb1fwrj8c1aj18ykxja89isg0hiali")))) + (build-system haskell-build-system) + (arguments + (list #:tests? #f + #:haskell ghc-bootstrap-for-9.4)) + (native-inputs + (list which)) + (home-page "https://www.haskell.org/alex/") + (synopsis + "Tool for generating lexical analysers in Haskell") + (description + "Alex is a tool for generating lexical analysers in Haskell. It takes a + description of tokens based on regular expressions and generates a Haskell + module containing code for scanning text efficiently. It is similar to the + tool lex or flex for C/C++.") + (license license:bsd-3)))) + +(define ghc-happy-bootstrap-for-9.4 + (hidden-package + (package + (name "ghc-happy") + (version "1.20.0") + (source + (origin + (method url-fetch) + (uri (hackage-uri "happy" version)) + (sha256 + (base32 + "1346r2x5ravs5fqma65bzjragqbb2g6v41wz9maknwm2jf7kl79v")))) + (build-system haskell-build-system) + (arguments + (list #:haskell ghc-bootstrap-for-9.4 + #:tests? #f)) + (home-page "https://hackage.haskell.org/package/happy") + (synopsis "Parser generator for Haskell") + (description "Happy is a parser generator for Haskell. Given a grammar + specification in BNF, Happy generates Haskell code to parse the grammar. + Happy works in a similar way to the yacc tool for C.") + (license license:bsd-3)))) + +(define-public ghc-9.4 + ;; Inherit from 9.2, which added a few fixes, but boot from 9.0 (see above). + (let ((base ghc-9.2)) + (package + (inherit base) + (name "ghc-next") + (version "9.4.4") + (source (origin + (method url-fetch) + (uri (string-append "https://www.haskell.org/ghc/dist/" version + "/ghc-" version "-src.tar.xz")) + (sha256 + (base32 + "1qk7rlqf02s3b6m6sqqngmjq1mxnrz88h159lz6k25gddmdg5kp8")))) + (arguments + (substitute-keyword-arguments (package-arguments base) + ((#:phases phases '%standard-phases) + #~(modify-phases #$phases + ;; Files don’t exist any more. + (delete 'skip-tests))))) + (native-inputs + `(;; GHC 9.4 must be built with GHC >= 9.0. + ("ghc-bootstrap" ,ghc-bootstrap-for-9.4) + ("ghc-testsuite" + ,(origin + (method url-fetch) + (uri (string-append + "https://www.haskell.org/ghc/dist/" + version "/ghc-" version "-testsuite.tar.xz")) + (sha256 + (base32 + "04p2lawxxg3nyv6frzhyjyh3arhqqyh5ka3alxa2pxhcd2hdcja3")))) + ("ghc-alex" ,ghc-alex-bootstrap-for-9.4) + ("ghc-happy" ,ghc-happy-bootstrap-for-9.4) + ,@(filter (match-lambda + (("ghc-bootstrap" . _) #f) + (("ghc-testsuite" . _) #f) + (_ #t)) + (package-native-inputs base)))) + (native-search-paths + (list (search-path-specification + (variable "GHC_PACKAGE_PATH") + (files (list (string-append "lib/ghc-" version))) + (file-pattern ".*\\.conf\\.d$") + (file-type 'directory))))))) + ;;; haskell.scm ends here From 3c24da4260f28b4ed57efda0296688a50ac94628 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Sun, 27 Nov 2022 11:12:32 +0100 Subject: [PATCH 066/141] import/utils: Pass all arguments through to package builder. Individual importer may have additional arguments. * guix/import/utils.scm (recursive-import): Patch all keyword arguments through to repo->guix-package. * guix/import/cran.scm (cran->guix-package): Add #:allow-other-keys. * guix/import/crate.scm (crate->guix-package): Ditto. * guix/import/egg.scm (egg->guix-package): Ditto. * guix/import/elm.scm (elm->guix-package): Ditto. * guix/import/gem.scm (gem->guix-package): Ditto. * guix/import/gnu.scm (gnu->guix-package): Ditto. * guix/import/go.scm (go-module->guix-package): Ditto. (go-module-recursive-import): Ditto. * guix/import/hackage.scm (hackage->guix-package): Ditto. (hackage-recursive-import): Ditto. * guix/import/hexpm.scm (hexpm->guix-package): Ditto. * guix/import/minetest.scm (minetest->guix-package): Ditto. (minetest-recursive-import): Ditto. * guix/import/opam.scm (opam->guix-package): Ditto. * guix/import/pypi.scm (pypi->guix-package): Ditto. * guix/import/stackage.scm (stackage->guix-package): Ditto. (stackage-recursive-import): Ditto. * guix/import/texlive.scm (texlive->guix-package): Ditto. --- guix/import/cran.scm | 2 +- guix/import/crate.scm | 3 ++- guix/import/egg.scm | 3 ++- guix/import/elm.scm | 2 +- guix/import/gem.scm | 3 ++- guix/import/gnu.scm | 3 ++- guix/import/go.scm | 5 +++-- guix/import/hackage.scm | 5 +++-- guix/import/hexpm.scm | 2 +- guix/import/minetest.scm | 5 +++-- guix/import/opam.scm | 2 +- guix/import/pypi.scm | 2 +- guix/import/stackage.scm | 5 +++-- guix/import/texlive.scm | 4 ++-- guix/import/utils.scm | 10 ++++------ 15 files changed, 31 insertions(+), 25 deletions(-) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 1ed3580315..69423cf8ca 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -644,7 +644,7 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (define cran->guix-package (memoize - (lambda* (package-name #:key (repo 'cran) version) + (lambda* (package-name #:key (repo 'cran) version #:allow-other-keys) "Fetch the metadata for PACKAGE-NAME from REPO and return the `package' s-expression corresponding to that package, or #f on failure." (let ((description (fetch-description repo package-name version))) diff --git a/guix/import/crate.scm b/guix/import/crate.scm index 339dbcd74c..c17d96ef41 100644 --- a/guix/import/crate.scm +++ b/guix/import/crate.scm @@ -217,7 +217,8 @@ and LICENSE." 'unknown-license!))) (string-split string (string->char-set " /")))) -(define* (crate->guix-package crate-name #:key version include-dev-deps? repo) +(define* (crate->guix-package crate-name #:key version include-dev-deps? + #:allow-other-keys) "Fetch the metadata for CRATE-NAME from crates.io, and return the `package' s-expression corresponding to that package, or #f on failure. When VERSION is specified, convert it into a semver range and attempt to fetch diff --git a/guix/import/egg.scm b/guix/import/egg.scm index 10a40fe4f8..90d97909b5 100644 --- a/guix/import/egg.scm +++ b/guix/import/egg.scm @@ -171,7 +171,8 @@ FILE is specified, return the package metadata in FILE." ;;; Egg importer. ;;; -(define* (egg->guix-package name version #:key (file #f) (source #f)) +(define* (egg->guix-package name version #:key (file #f) (source #f) + #:allow-other-keys) "Import a CHICKEN egg called NAME from either the given .egg FILE, or from the latest NAME metadata downloaded from the official repository if FILE is #f. Return a record or #f on failure. If VERSION is specified, import diff --git a/guix/import/elm.scm b/guix/import/elm.scm index 74902b8617..c8fb15343f 100644 --- a/guix/import/elm.scm +++ b/guix/import/elm.scm @@ -190,7 +190,7 @@ given NAME and VERSION, and a list of Elm packages it depends on." (define elm->guix-package (memoize - (lambda* (package-name #:key repo version) + (lambda* (package-name #:key version #:allow-other-keys) "Fetch the metadata for PACKAGE-NAME, an Elm package registered at package.elm.org, and return two values: the `package' s-expression corresponding to that package (or #f on failure) and a list of Elm diff --git a/guix/import/gem.scm b/guix/import/gem.scm index 8ad0662628..c8d6cd4d2d 100644 --- a/guix/import/gem.scm +++ b/guix/import/gem.scm @@ -124,7 +124,8 @@ VERSION, HASH, HOME-PAGE, DESCRIPTION, DEPENDENCIES, and LICENSES." ((license) (license->symbol license)) (_ `(list ,@(map license->symbol licenses))))))) -(define* (gem->guix-package package-name #:key (repo 'rubygems) version) +(define* (gem->guix-package package-name #:key (repo 'rubygems) version + #:allow-other-keys) "Fetch the metadata for PACKAGE-NAME from rubygems.org, and return the `package' s-expression corresponding to that package, or #f on failure. Optionally include a VERSION string to fetch a specific version gem." diff --git a/guix/import/gnu.scm b/guix/import/gnu.scm index 139c32a545..cff088f423 100644 --- a/guix/import/gnu.scm +++ b/guix/import/gnu.scm @@ -109,7 +109,8 @@ download policy (see 'download-tarball' for details.)" #f)))) (define* (gnu->guix-package name - #:key (key-download 'interactive)) + #:key (key-download 'interactive) + #:allow-other-keys) "Return the package declaration for NAME as an s-expression. Use KEY-DOWNLOAD as the OpenPGP key download policy (see 'download-tarball' for details.)" diff --git a/guix/import/go.scm b/guix/import/go.scm index d00c13475a..90d4c8931d 100644 --- a/guix/import/go.scm +++ b/guix/import/go.scm @@ -602,7 +602,8 @@ available versions:~{ ~a~}.") (define* (go-module->guix-package module-path #:key (goproxy "https://proxy.golang.org") version - pin-versions?) + pin-versions? + #:allow-other-keys) "Return the package S-expression corresponding to MODULE-PATH at VERSION, a Go package. The meta-data is fetched from the GOPROXY server and https://pkg.go.dev/. When VERSION is unspecified, the latest version available is used." @@ -687,7 +688,7 @@ This package and its dependencies won't be imported.~%") package-name #:repo->guix-package (memoize - (lambda* (name #:key version repo) + (lambda* (name #:key version repo #:allow-other-keys) (receive (package-sexp dependencies) (go-module->guix-package* name #:goproxy goproxy #:version version diff --git a/guix/import/hackage.scm b/guix/import/hackage.scm index 3c2cd75db4..7bc2908405 100644 --- a/guix/import/hackage.scm +++ b/guix/import/hackage.scm @@ -326,7 +326,8 @@ the hash of the Cabal file." (define* (hackage->guix-package package-name #:key (include-test-dependencies? #t) (port #f) - (cabal-environment '())) + (cabal-environment '()) + #:allow-other-keys) "Fetch the Cabal file for PACKAGE-NAME from hackage.haskell.org, or, if the called with keyword parameter PORT, from PORT. Return the `package' S-expression corresponding to that package, or #f on failure. @@ -353,7 +354,7 @@ respectively." (define* (hackage-recursive-import package-name . args) (recursive-import package-name - #:repo->guix-package (lambda* (name #:key repo version) + #:repo->guix-package (lambda* (name #:key version #:allow-other-keys) (apply hackage->guix-package/m (cons name args))) #:guix-name hackage-name->package-name)) diff --git a/guix/import/hexpm.scm b/guix/import/hexpm.scm index 8a009fd245..dac5d1756f 100644 --- a/guix/import/hexpm.scm +++ b/guix/import/hexpm.scm @@ -234,7 +234,7 @@ build-system, and DEPENDENCIES the inputs for the package." (fold (lambda (a b) (if (version>? a b) a b)) (car versions) versions))))) -(define* (hexpm->guix-package package-name #:key repo version) +(define* (hexpm->guix-package package-name #:key version #:allow-other-keys) "Fetch the metadata for PACKAGE-NAME from hexpms.io, and return the `package' s-expression corresponding to that package, or #f on failure. When VERSION is specified, attempt to fetch that version; otherwise fetch the diff --git a/guix/import/minetest.scm b/guix/import/minetest.scm index 1f1cfc834d..e5775e2fa9 100644 --- a/guix/import/minetest.scm +++ b/guix/import/minetest.scm @@ -441,7 +441,8 @@ DEPENDENCIES as a list of AUTHOR/NAME strings." #f))))) dependency-list)) -(define* (%minetest->guix-package author/name #:key (sort %default-sort-key)) +(define* (%minetest->guix-package author/name #:key (sort %default-sort-key) + #:allow-other-keys) "Fetch the metadata for AUTHOR/NAME from https://content.minetest.net, and return the 'package' S-expression corresponding to that package, or raise an exception on failure. On success, also return the upstream dependencies as a @@ -477,7 +478,7 @@ list of AUTHOR/NAME strings." (memoize %minetest->guix-package)) (define* (minetest-recursive-import author/name #:key (sort %default-sort-key)) - (define* (minetest->guix-package* author/name #:key repo version) + (define* (minetest->guix-package* author/name #:key version #:allow-other-keys) (minetest->guix-package author/name #:sort sort)) (recursive-import author/name #:repo->guix-package minetest->guix-package* diff --git a/guix/import/opam.scm b/guix/import/opam.scm index 59dbb7cb8b..29b2b886bf 100644 --- a/guix/import/opam.scm +++ b/guix/import/opam.scm @@ -340,7 +340,7 @@ path to the repository." (sha256 (base32 ,(guix-hash-url temp))))))) 'no-source-information))) -(define* (opam->guix-package name #:key (repo 'opam) version) +(define* (opam->guix-package name #:key (repo 'opam) version #:allow-other-keys) "Import OPAM package NAME from REPOSITORY (a directory name) or, if REPOSITORY is #f, from the official OPAM repository. Return a 'package' sexp or #f on failure." diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index 0e5998b36e..c9aaacbc3f 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -492,7 +492,7 @@ VERSION, SOURCE-URL, HOME-PAGE, SYNOPSIS, DESCRIPTION, and LICENSE." (define pypi->guix-package (memoize - (lambda* (package-name #:key repo version) + (lambda* (package-name #:key version #:allow-other-keys) "Fetch the metadata for PACKAGE-NAME from pypi.org, and return the `package' s-expression corresponding to that package, or #f on failure." (let* ((project (pypi-fetch package-name)) diff --git a/guix/import/stackage.scm b/guix/import/stackage.scm index e54df95985..70d3e271f4 100644 --- a/guix/import/stackage.scm +++ b/guix/import/stackage.scm @@ -109,7 +109,8 @@ (lts-version %default-lts-version) (packages (stackage-lts-packages - (stackage-lts-info-fetch lts-version)))) + (stackage-lts-info-fetch lts-version))) + #:allow-other-keys) "Fetch Cabal file for PACKAGE-NAME from hackage.haskell.org. The retrieved version corresponds to the version of PACKAGE-NAME specified in the LTS-VERSION release at stackage.org. Return the `package' S-expression corresponding to @@ -126,7 +127,7 @@ included in the Stackage LTS release." (define (stackage-recursive-import package-name . args) (recursive-import package-name - #:repo->guix-package (lambda* (name #:key repo version) + #:repo->guix-package (lambda* (name #:key version #:allow-other-keys) (apply stackage->guix-package (cons name args))) #:guix-name hackage-name->package-name)) diff --git a/guix/import/texlive.scm b/guix/import/texlive.scm index 116bd1f66a..6bf7f92e60 100644 --- a/guix/import/texlive.scm +++ b/guix/import/texlive.scm @@ -303,9 +303,9 @@ of those files are returned that are unexpectedly installed." (define texlive->guix-package (memoize (lambda* (name #:key - repo (version (number->string %texlive-revision)) - (package-database tlpdb)) + (package-database tlpdb) + #:allow-other-keys) "Find the metadata for NAME in the tlpdb and return the `package' s-expression corresponding to that package, or #f on failure." (tlpdb->package name version (package-database))))) diff --git a/guix/import/utils.scm b/guix/import/utils.scm index d6b179b57c..45e55f1df6 100644 --- a/guix/import/utils.scm +++ b/guix/import/utils.scm @@ -580,11 +580,11 @@ obtain a node's uniquely identifying \"key\"." (set-insert (node-name head) visited)))))))) (define* (recursive-import package-name - #:key repo->guix-package guix-name version repo - #:allow-other-keys) + #:key repo->guix-package guix-name version + #:allow-other-keys #:rest rest) "Return a list of package expressions for PACKAGE-NAME and all its dependencies, sorted in topological order. For each package, -call (REPO->GUIX-PACKAGE NAME :KEYS version repo), which should return a +call (REPO->GUIX-PACKAGE NAME :KEYS version), which should return a package expression and a list of dependencies; call (GUIX-NAME PACKAGE-NAME) to obtain the Guix package name corresponding to the upstream name." (define-record-type @@ -599,9 +599,7 @@ to obtain the Guix package name corresponding to the upstream name." (not (null? (find-packages-by-name (guix-name name) version)))) (define (lookup-node name version) - (let* ((package dependencies (repo->guix-package name - #:version version - #:repo repo)) + (let* ((package dependencies (apply repo->guix-package (cons name rest))) (normalized-deps (map (match-lambda ((name version) (list name version)) (name (list name #f))) dependencies))) From d57dd25d3850d220bd82b44fa6f69812022199e4 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Tue, 18 Oct 2022 12:45:15 +0200 Subject: [PATCH 067/141] import/cran: Allow custom license prefix. * guix/import/cran.scm (string-licenses): Add license-prefix argument. (string->license): Ditto. (description->package): Ditto. (cran->guix-package): Ditto. (cran-recursive-import): Ditto. * guix/scripts/import/cran.scm (%options): Add new option -p/--license-prefix. (show-help): Document it. (parse-options): Pass it to importer. * doc/guix.texi (Invoking guix import): Document it. --- doc/guix.texi | 4 ++++ guix/import/cran.scm | 39 +++++++++++++++++++++--------------- guix/scripts/import/cran.scm | 21 ++++++++++++++++--- 3 files changed, 45 insertions(+), 19 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 3ed71424fa..5c85680831 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -13499,6 +13499,10 @@ definitions are to be appended to existing user modules, as the list of used package modules need not be changed. The default is @option{--style=variable}. +When @option{--prefix=license:} is added, the importer will prefix +license atoms with @code{license:}, allowing a prefixed import of +@code{(guix licenses)}. + When @option{--archive=bioconductor} is added, metadata is imported from @uref{https://www.bioconductor.org/, Bioconductor}, a repository of R packages for the analysis and comprehension of high-throughput diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 69423cf8ca..992cbac790 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -83,16 +83,16 @@ (define %input-style (make-parameter 'variable)) ; or 'specification -(define (string->licenses license-string) +(define (string->licenses license-string license-prefix) (let ((licenses (map string-trim-both (string-tokenize license-string (char-set-complement (char-set #\|)))))) - (string->license licenses))) + (string->license licenses license-prefix))) -(define string->license - (let ((prefix identity)) - (match-lambda +(define (string->license license-string license-prefix) + (let ((prefix license-prefix)) + (match license-string ("AGPL-3" (prefix 'agpl3)) ("AGPL (>= 3)" (prefix 'agpl3+)) ("Artistic-2.0" (prefix 'artistic2.0)) @@ -138,8 +138,8 @@ ("MIT + file LICENSE" (prefix 'expat)) ("file LICENSE" `(,(prefix 'fsdg-compatible) "file://LICENSE")) - ((x) (string->license x)) - ((lst ...) `(list ,@(map string->license lst))) + ((x) (string->license x license-prefix)) + ((lst ...) `(list ,@(map (cut string->license <> license-prefix) lst))) (unknown `(,(prefix 'fsdg-compatible) ,unknown))))) (define (description->alist description) @@ -508,7 +508,7 @@ reference the pkg-config tool." (define (needs-knitr? meta) (member "knitr" (listify meta "VignetteBuilder"))) -(define (description->package repository meta) +(define* (description->package repository meta #:key (license-prefix identity)) "Return the `package' s-expression for an R package published on REPOSITORY from the alist META, which was derived from the R package's DESCRIPTION file." (let* ((base-url (case repository @@ -528,7 +528,7 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (name (assoc-ref meta "Package")) (synopsis (assoc-ref meta "Title")) (version (assoc-ref meta "Version")) - (license (string->licenses (assoc-ref meta "License"))) + (license (string->licenses (assoc-ref meta "License") license-prefix)) ;; Some packages have multiple home pages. Some have none. (home-page (case repository ((git) (assoc-ref meta 'git)) @@ -644,31 +644,38 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (define cran->guix-package (memoize - (lambda* (package-name #:key (repo 'cran) version #:allow-other-keys) + (lambda* (package-name #:key (repo 'cran) version (license-prefix identity) + #:allow-other-keys) "Fetch the metadata for PACKAGE-NAME from REPO and return the `package' s-expression corresponding to that package, or #f on failure." (let ((description (fetch-description repo package-name version))) (if description - (description->package repo description) + (description->package repo description + #:license-prefix license-prefix) (case repo ((git) ;; Retry import from Bioconductor - (cran->guix-package package-name #:repo 'bioconductor)) + (cran->guix-package package-name #:repo 'bioconductor + #:license-prefix license-prefix)) ((hg) ;; Retry import from Bioconductor - (cran->guix-package package-name #:repo 'bioconductor)) + (cran->guix-package package-name #:repo 'bioconductor + #:license-prefix license-prefix)) ((bioconductor) ;; Retry import from CRAN - (cran->guix-package package-name #:repo 'cran)) + (cran->guix-package package-name #:repo 'cran + #:license-prefix license-prefix)) (else (values #f '())))))))) -(define* (cran-recursive-import package-name #:key (repo 'cran) version) +(define* (cran-recursive-import package-name #:key (repo 'cran) version + (license-prefix identity)) (recursive-import package-name #:version version #:repo repo #:repo->guix-package cran->guix-package - #:guix-name cran-guix-name)) + #:guix-name cran-guix-name + #:license-prefix license-prefix)) ;;; diff --git a/guix/scripts/import/cran.scm b/guix/scripts/import/cran.scm index 2934d4300a..5298f059f2 100644 --- a/guix/scripts/import/cran.scm +++ b/guix/scripts/import/cran.scm @@ -53,6 +53,9 @@ Import and convert the CRAN package for PACKAGE-NAME.\n")) (display (G_ " -s, --style=STYLE choose output style, either specification or variable")) (display (G_ " + -p, --license-prefix=PREFIX + add custom prefix to licenses")) + (display (G_ " -V, --version display version information and exit")) (newline) (show-bug-report-information)) @@ -74,6 +77,10 @@ Import and convert the CRAN package for PACKAGE-NAME.\n")) (lambda (opt name arg result) (alist-cons 'style (string->symbol arg) (alist-delete 'style result)))) + (option '(#\p "license-prefix") #t #f + (lambda (opt name arg result) + (alist-cons 'license-prefix arg + (alist-delete 'license-prefix result)))) (option '(#\r "recursive") #f #f (lambda (opt name arg result) (alist-cons 'recursive #t result))) @@ -95,7 +102,13 @@ Import and convert the CRAN package for PACKAGE-NAME.\n")) (('argument . value) value) (_ #f)) - (reverse opts)))) + (reverse opts))) + (prefix (assoc-ref opts 'license-prefix)) + (prefix-proc (if (string? prefix) + (lambda (symbol) + (string->symbol + (string-append prefix (symbol->string symbol)))) + identity))) (parameterize ((%input-style (assoc-ref opts 'style))) (match args ((spec) @@ -107,11 +120,13 @@ Import and convert the CRAN package for PACKAGE-NAME.\n")) (filter identity (cran-recursive-import name #:version version - #:repo (or (assoc-ref opts 'repo) 'cran))))) + #:repo (or (assoc-ref opts 'repo) 'cran) + #:license-prefix prefix-proc)))) ;; Single import (let ((sexp (cran->guix-package name #:version version - #:repo (or (assoc-ref opts 'repo) 'cran)))) + #:repo (or (assoc-ref opts 'repo) 'cran) + #:license-prefix prefix-proc))) (unless sexp (leave (G_ "failed to download description for package '~a'~%") name)) From 08028c443e7beb84e2a6c80dc8c87007c149b332 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Tue, 18 Oct 2022 12:45:45 +0200 Subject: [PATCH 068/141] import/cran: Allow overriding description fetch function. * guix/import/cran.scm (cran->guix-package): New keyword argument FETCH-DESCRIPTION. --- guix/import/cran.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 992cbac790..725c3a9b21 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -645,6 +645,7 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (define cran->guix-package (memoize (lambda* (package-name #:key (repo 'cran) version (license-prefix identity) + (fetch-description fetch-description) #:allow-other-keys) "Fetch the metadata for PACKAGE-NAME from REPO and return the `package' s-expression corresponding to that package, or #f on failure." From 1176fccb83d1e9d4232f2fae2b661a7f29f76060 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Tue, 18 Oct 2022 12:45:56 +0200 Subject: [PATCH 069/141] import/cran: Allow overriding tarball download. * guix/import/cran.scm (description->package): Accept new keyword argument DOWNLOAD-SOURCE. (cran->guix-package): Ditto. --- guix/import/cran.scm | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 725c3a9b21..b59b7b287f 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -508,7 +508,8 @@ reference the pkg-config tool." (define (needs-knitr? meta) (member "knitr" (listify meta "VignetteBuilder"))) -(define* (description->package repository meta #:key (license-prefix identity)) +(define* (description->package repository meta #:key (license-prefix identity) + (download-source download)) "Return the `package' s-expression for an R package published on REPOSITORY from the alist META, which was derived from the R package's DESCRIPTION file." (let* ((base-url (case repository @@ -550,10 +551,10 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (_ #f))))) (git? (if (assoc-ref meta 'git) #true #false)) (hg? (if (assoc-ref meta 'hg) #true #false)) - (source (download source-url #:method (cond - (git? 'git) - (hg? 'hg) - (else #f)))) + (source (download-source source-url #:method (cond + (git? 'git) + (hg? 'hg) + (else #f)))) (sysdepends (append (if (needs-zlib? source (not (or git? hg?))) '("zlib") '()) (filter (lambda (name) @@ -646,13 +647,15 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (memoize (lambda* (package-name #:key (repo 'cran) version (license-prefix identity) (fetch-description fetch-description) + (download-source download) #:allow-other-keys) "Fetch the metadata for PACKAGE-NAME from REPO and return the `package' s-expression corresponding to that package, or #f on failure." (let ((description (fetch-description repo package-name version))) (if description (description->package repo description - #:license-prefix license-prefix) + #:license-prefix license-prefix + #:download-source download-source) (case repo ((git) ;; Retry import from Bioconductor From 952953be39527ec315e95e039f27d9bdc020d37e Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Sat, 22 Oct 2022 10:37:50 +0200 Subject: [PATCH 070/141] import/cran: Translate more package dependencies. Assumes we use package variable names, not package specification names. * guix/import/cran.scm (invalid-packages): Add more invalid names. (transform-sysname): Transform more package names. --- guix/import/cran.scm | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index b59b7b287f..0c45a676cf 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -395,7 +395,9 @@ empty list when the FIELD cannot be found." "c++11" "c++14" "c++17" + "c99" "getopt::long" + "gnu" "posix.1-2001" "linux" "none" @@ -406,15 +408,33 @@ empty list when the FIELD cannot be found." (define (transform-sysname sysname) "Return a Guix package name for the common package name SYSNAME." (match sysname - ("java" "openjdk") - ("fftw3" "fftw") - ("tcl/tk" "tcl") ("booktabs" "texlive-booktabs") + ("bowtie2" "bowtie") + ("cat" "coreutils") + ("java" "openjdk") + ("exiftool" "perl-image-exiftool") + ("fftw3" "fftw") ("freetype2" "freetype") + ("gettext" "gnu-gettext") + ("gmake" "gnu-make") + ("libarchive-devel" "libarchive") + ("libarchive_dev" "libarchive") + ("libbz2" "bzip2") + ("libexpat" "expat") + ("liblz4" "lz4") + ("liblzma" "xz") + ("libzstd" "zstd") + ("libxml2-devel" "libxml2") + ("libz" "zlib") ("mariadb-devel" "mariadb") ("mysql56_dev" "mariadb") + ("pandoc-citeproc" "pandoc") + ("python3" "python-3") ("sqlite3" "sqlite") + ("svn" "subversion") + ("tcl/tk" "tcl") ("udunits-2" "udunits") + ("whoami" "coreutils") ("x11" "libx11") (_ sysname))) From 973496100db29a6b23cf47fdabb28dd1b99da102 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Sun, 27 Nov 2022 15:39:34 +0100 Subject: [PATCH 071/141] import/cran: Always operate on source directory. Extracting the source tarball multiple times is very slow and a speedup of >2x (without network I/O) can be achieved by coalescing all NEEDS-X? functions into a single one, which extracts a tarball only once. * guix/import/cran.scm (tarball-needs-fortran?): Remove unused function. (needs-fortran?): Ditto. (tarball-files-match-pattern?): Ditto. (tarball-needs-zlib?): Ditto. (needs-zlib?): Ditto. (tarball-needs-pkg-config?): Ditto. (needs-pkg-config?): Ditto. (source-dir->dependencies): New function. (source->dependencies): New function. (description->package): Use it. --- guix/import/cran.scm | 78 +++++++++++++------------------------------- 1 file changed, 23 insertions(+), 55 deletions(-) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 0c45a676cf..e10ada49c7 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -440,28 +440,12 @@ empty list when the FIELD cannot be found." (define cran-guix-name (cut guix-name "r-" <>)) -(define (tarball-needs-fortran? tarball) - "Check if the TARBALL contains Fortran source files." - (define (check pattern) - (parameterize ((current-error-port (%make-void-port "rw+")) - (current-output-port (%make-void-port "rw+"))) - (zero? (system* "tar" "--wildcards" "--list" pattern "-f" tarball)))) - (or (check "*.f90") - (check "*.f95") - (check "*.f"))) - (define (directory-needs-fortran? dir) "Check if the directory DIR contains Fortran source files." (match (find-files dir "\\.f(90|95)$") (() #f) (_ #t))) -(define (needs-fortran? thing tarball?) - "Check if the THING contains Fortran source files." - (if tarball? - (tarball-needs-fortran? thing) - (directory-needs-fortran? thing))) - (define (files-match-pattern? directory regexp . file-patterns) "Return #T if any of the files matching FILE-PATTERNS in the DIRECTORY match the given REGEXP." @@ -477,53 +461,36 @@ the given REGEXP." (else (loop)))))))) (apply find-files directory file-patterns)))) -(define (tarball-files-match-pattern? tarball regexp . file-patterns) - "Return #T if any of the files represented by FILE-PATTERNS in the TARBALL -match the given REGEXP." - (call-with-temporary-directory - (lambda (dir) - (parameterize ((current-error-port (%make-void-port "rw+"))) - (apply system* "tar" - "xf" tarball "-C" dir - `("--wildcards" ,@file-patterns))) - (files-match-pattern? dir regexp)))) - (define (directory-needs-zlib? dir) "Return #T if any of the Makevars files in the src directory DIR contain a zlib linker flag." (files-match-pattern? dir "-lz" "(Makevars.*|configure.*)")) -(define (tarball-needs-zlib? tarball) - "Return #T if any of the Makevars files in the src directory of the TARBALL -contain a zlib linker flag." - (tarball-files-match-pattern? - tarball "-lz" - "*/src/Makevars*" "*/src/configure*" "*/configure*")) - -(define (needs-zlib? thing tarball?) - "Check if the THING contains files indicating a dependency on zlib." - (if tarball? - (tarball-needs-zlib? thing) - (directory-needs-zlib? thing))) - (define (directory-needs-pkg-config? dir) "Return #T if any of the Makevars files in the src directory DIR reference the pkg-config tool." (files-match-pattern? dir "pkg-config" "(Makevars.*|configure.*)")) -(define (tarball-needs-pkg-config? tarball) - "Return #T if any of the Makevars files in the src directory of the TARBALL -reference the pkg-config tool." - (tarball-files-match-pattern? - tarball "pkg-config" - "*/src/Makevars*" "*/src/configure*" "*/configure*")) +(define (source-dir->dependencies dir) + "Guess dependencies of R package source in DIR and return (INPUTS +NATIVE-INPUTS)." + (list + (if (directory-needs-zlib? dir) '("zlib") '()) + (append + (if (directory-needs-pkg-config? dir) '("pkg-config") '()) + (if (directory-needs-fortran? dir) '("gfortran") '())))) -(define (needs-pkg-config? thing tarball?) - "Check if the THING contains files indicating a dependency on pkg-config." +(define (source->dependencies source tarball?) + "SOURCE-DIR->DEPENDENCIES, but for directories and tarballs as indicated +by TARBALL?" (if tarball? - (tarball-needs-pkg-config? thing) - (directory-needs-pkg-config? thing))) + (call-with-temporary-directory + (lambda (dir) + (parameterize ((current-error-port (%make-void-port "rw+"))) + (system* "tar" "xf" source "-C" dir)) + (source-dir->dependencies dir))) + (source-dir->dependencies source))) (define (needs-knitr? meta) (member "knitr" (listify meta "VignetteBuilder"))) @@ -575,8 +542,12 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (git? 'git) (hg? 'hg) (else #f)))) + (tarball? (not (or git? hg?))) + (source-inputs-all (source->dependencies source tarball?)) + (source-inputs (car source-inputs-all)) + (source-native-inputs (cadr source-inputs-all)) (sysdepends (append - (if (needs-zlib? source (not (or git? hg?))) '("zlib") '()) + source-inputs (filter (lambda (name) (not (member name invalid-packages))) (map string-downcase (listify meta "SystemRequirements"))))) @@ -636,10 +607,7 @@ from the alist META, which was derived from the R package's DESCRIPTION file." ,@(maybe-inputs (map transform-sysname sysdepends)) ,@(maybe-inputs (map cran-guix-name propagate) 'propagated-inputs) ,@(maybe-inputs - `(,@(if (needs-fortran? source (not (or git? hg?))) - '("gfortran") '()) - ,@(if (needs-pkg-config? source (not (or git? hg?))) - '("pkg-config") '()) + `(,@source-native-inputs ,@(if (needs-knitr? meta) '("r-knitr") '())) 'native-inputs) From 4d139260643106e0160cd5ecc224ce3942f7914c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 31 Dec 2022 14:26:17 +0100 Subject: [PATCH 072/141] import/utils: recursive-import: Pass on lookup-node's version argument. * guix/import/utils.scm (recursive-import): Replace the #:VERSION keyword from RECURSIVE-IMPORT's arguments with the value of VERSION passed to LOOKUP-NODE. --- guix/import/utils.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/guix/import/utils.scm b/guix/import/utils.scm index 45e55f1df6..41311cb86e 100644 --- a/guix/import/utils.scm +++ b/guix/import/utils.scm @@ -599,7 +599,12 @@ to obtain the Guix package name corresponding to the upstream name." (not (null? (find-packages-by-name (guix-name name) version)))) (define (lookup-node name version) - (let* ((package dependencies (apply repo->guix-package (cons name rest))) + (let* ((pre post (break (cut eq? #:version <>) rest)) + (post* (match post + ((#:version v . more) more) + (_ post))) + (args (append pre (list #:version version) post*)) + (package dependencies (apply repo->guix-package (cons* name args))) (normalized-deps (map (match-lambda ((name version) (list name version)) (name (list name #f))) dependencies))) From 4046405f73da2fb9b89ca4a3ad455b56b3e826aa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 31 Dec 2022 14:29:54 +0100 Subject: [PATCH 073/141] tests: import-utils: Ignore extra keyword arguments. * tests/import-utils.scm ("recursive-import", "recursive-import: skip false packages (toplevel)", "recursive-import: skip false packages (dependency)"): Do not try to match all arguments. --- tests/import-utils.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/import-utils.scm b/tests/import-utils.scm index f50f730873..44dff14597 100644 --- a/tests/import-utils.scm +++ b/tests/import-utils.scm @@ -67,12 +67,12 @@ Differences are hard to spot, e.g. in CLOS vs. GOOPS.")) #:repo 'repo #:repo->guix-package (match-lambda* - (("foo" #:version #f #:repo 'repo) + (("foo" #:repo 'repo . rest) (values '(package (name "foo") (inputs `(("bar" ,bar)))) '("bar"))) - (("bar" #:version #f #:repo 'repo) + (("bar" #:repo 'repo . rest) (values '(package (name "bar")) '()))) @@ -84,7 +84,7 @@ Differences are hard to spot, e.g. in CLOS vs. GOOPS.")) #:repo 'repo #:repo->guix-package (match-lambda* - (("foo" #:version #f #:repo 'repo) + (("foo" #:repo 'repo . rest) (values #f '()))) #:guix-name identity)) @@ -96,12 +96,12 @@ Differences are hard to spot, e.g. in CLOS vs. GOOPS.")) #:repo 'repo #:repo->guix-package (match-lambda* - (("foo" #:version #f #:repo 'repo) + (("foo" #:repo 'repo . rest) (values '(package (name "foo") (inputs `(("bar" ,bar)))) '("bar"))) - (("bar" #:version #f #:repo 'repo) + (("bar" #:repo 'repo . rest) (values #f '()))) #:guix-name identity)) From d4ed8dc3c5743aac6766da0e54e0c969386ed8ac Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 31 Dec 2022 14:40:13 +0100 Subject: [PATCH 074/141] import/cran: Use multiple values instead of a list of lists. * guix/import/cran.scm (source-dir->dependencies): Return multiple values. (description->package): Bind two values. --- guix/import/cran.scm | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index e10ada49c7..d33f909369 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -33,6 +33,7 @@ #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) + #:use-module (srfi srfi-71) #:use-module (ice-9 receive) #:use-module (web uri) #:use-module (guix memoization) @@ -473,13 +474,13 @@ the pkg-config tool." "(Makevars.*|configure.*)")) (define (source-dir->dependencies dir) - "Guess dependencies of R package source in DIR and return (INPUTS -NATIVE-INPUTS)." - (list - (if (directory-needs-zlib? dir) '("zlib") '()) - (append - (if (directory-needs-pkg-config? dir) '("pkg-config") '()) - (if (directory-needs-fortran? dir) '("gfortran") '())))) + "Guess dependencies of R package source in DIR and return two values: a list +of package names for INPUTS and another list of names of NATIVE-INPUTS." + (values + (if (directory-needs-zlib? dir) '("zlib") '()) + (append + (if (directory-needs-pkg-config? dir) '("pkg-config") '()) + (if (directory-needs-fortran? dir) '("gfortran") '())))) (define (source->dependencies source tarball?) "SOURCE-DIR->DEPENDENCIES, but for directories and tarballs as indicated @@ -543,9 +544,8 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (hg? 'hg) (else #f)))) (tarball? (not (or git? hg?))) - (source-inputs-all (source->dependencies source tarball?)) - (source-inputs (car source-inputs-all)) - (source-native-inputs (cadr source-inputs-all)) + (source-inputs source-native-inputs + (source->dependencies source tarball?)) (sysdepends (append source-inputs (filter (lambda (name) From c329eeb3a8a87edfa21675ce67353778a3b24773 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Thu, 1 Dec 2022 12:05:09 +0100 Subject: [PATCH 075/141] import/cran: Depend on gfortran if .f files are detected too. There was an inconsistency between tarball-needs-fortran? and directory-needs-fortran?. * guix/import/cran.scm (directory-needs-fortran?): Match .f files too. --- guix/import/cran.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index d33f909369..f6d24820a8 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -443,7 +443,7 @@ empty list when the FIELD cannot be found." (define (directory-needs-fortran? dir) "Check if the directory DIR contains Fortran source files." - (match (find-files dir "\\.f(90|95)$") + (match (find-files dir "\\.f(90|95)?$") (() #f) (_ #t))) From 642074bb1ed3f1d449ff6424b0dd68964119854f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 31 Dec 2022 19:42:13 +0100 Subject: [PATCH 076/141] gnu: guile-xapian: Update to 0.2.1. * gnu/packages/guile-xyz.scm (guile-xapian): Update to 0.2.1. --- gnu/packages/guile-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 50872b3f36..42439725fd 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -4308,7 +4308,7 @@ over, or update a value in arbitrary data structures.") (define-public guile-xapian (package (name "guile-xapian") - (version "0.2.0") + (version "0.2.1") (home-page "https://git.systemreboot.net/guile-xapian") (source (origin @@ -4318,7 +4318,7 @@ over, or update a value in arbitrary data structures.") (file-name (git-file-name name version)) (sha256 (base32 - "140cwzpzk4y16ajxrg5zd2d7q60f5ivx5jk8w1h0qfjq2mp14sh7")))) + "1i2bk06abl1984xgrr3hzzhknqkxjysfpd82drzlgp291hmq40w1")))) (build-system gnu-build-system) (arguments '(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ; to prevent guild warnings From 1115bd7f9635ef630de18061e0415b1eb36409b2 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 29 Dec 2022 22:20:30 +0100 Subject: [PATCH 077/141] gnu: python-dogtail: Use the test-only Xorg server variant. * gnu/packages/python-xyz.scm (python-dogtail)[native-inputs]: Change from XORG-SERVER to XORG-SERVER-FOR-TESTS. --- 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 2b28e8bd53..b0d0c09770 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -3160,7 +3160,7 @@ Prefix) - Encode and decode data structures.") (native-inputs `(("python-nose" ,python-nose) ("gtk+" ,gtk+) - ("xvfb" ,xorg-server) + ("xvfb" ,xorg-server-for-tests) ("dbus" ,dbus) ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("gobject-introspection" ,gobject-introspection))) From aa1f9cb4b56c8d455b24b2eb840debb99ead0289 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 29 Dec 2022 22:21:35 +0100 Subject: [PATCH 078/141] gnu: python-dogtail: Remove input labels. * gnu/packages/python-xyz.scm (python-dogtail)[native-inputs]: Remove labels. --- gnu/packages/python-xyz.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index b0d0c09770..3bdd1e00d6 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -3158,12 +3158,12 @@ Prefix) - Encode and decode data structures.") (propagated-inputs (list python-pygobject python-pycairo python-pyatspi)) (native-inputs - `(("python-nose" ,python-nose) - ("gtk+" ,gtk+) - ("xvfb" ,xorg-server-for-tests) - ("dbus" ,dbus) - ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) - ("gobject-introspection" ,gobject-introspection))) + (list python-nose + gtk+ + xorg-server-for-tests + dbus + gsettings-desktop-schemas + gobject-introspection)) (home-page "https://gitlab.com/dogtail/dogtail/") (synopsis "GUI test tool and automation framework written in Python") (description From 4dda2e36a0039a36aa138715930f5201528c5c08 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 30 Dec 2022 23:38:04 +0100 Subject: [PATCH 079/141] gnu: openshot: Build with QtWebEngine instead of QtWebKit. * gnu/packages/video.scm (openshot)[inputs]: Change from PYTHON-PYQT to PYTHON-PYQT-WITHOUT-QTWEBKIT. Add PYTHON-PYQTWEBENGINE and QTWEBENGINE-5. [arguments]: Wrap with QTWEBENGINEPROCESS_PATH. --- gnu/packages/video.scm | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 2a70c4496f..b9c8ab1ef3 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -4834,10 +4834,12 @@ API. It includes bindings for Python, Ruby, and other languages.") font-dejavu libopenshot python - python-pyqt + python-pyqt-without-qtwebkit + python-pyqtwebengine python-pyzmq python-requests - qtsvg-5)) + qtsvg-5 + qtwebengine-5)) (arguments `(#:modules ((guix build python-build-system) (guix build qt-utils) @@ -4867,10 +4869,16 @@ API. It includes bindings for Python, Ruby, and other languages.") #t)) (add-after 'install 'wrap-program (lambda* (#:key outputs inputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) + (let ((out (assoc-ref outputs "out")) + (qtwebengine-process-path + (search-input-file + inputs "/lib/qt5/libexec/QtWebEngineProcess"))) (wrap-qt-program "openshot-qt" - #:output out #:inputs inputs)) - #t))))) + #:output out #:inputs inputs) + ;; Help the program discover QtWebEngine at runtime. + (wrap-program (string-append out "/bin/openshot-qt") + `("QTWEBENGINEPROCESS_PATH" = + (,qtwebengine-process-path))))))))) (home-page "https://www.openshot.org/") (synopsis "Video editor") (description "OpenShot takes your videos, photos, and music files and From a7b2f36a0cfac3fbf9ad6669743d9f728ec9ea0c Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 30 Dec 2022 23:38:50 +0100 Subject: [PATCH 080/141] gnu: shotcut: Remove unused inputs. * gnu/packages/video.scm (shotcut)[inputs]: Remove LAME, LIBVPX, LIBX264, and QTWEBKIT. --- gnu/packages/video.scm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index b9c8ab1ef3..c3ba1eddd2 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -4943,9 +4943,6 @@ transitions, and effects and then export your film to many common formats.") frei0r-plugins jack-1 ladspa - lame - libvpx - libx264 mlt pulseaudio qtbase-5 @@ -4955,7 +4952,6 @@ transitions, and effects and then export your film to many common formats.") qtquickcontrols-5 qtquickcontrols2-5 qtsvg-5 - qtwebkit qtwebsockets-5 qtx11extras sdl2)) From 6654f7a7e91e04cceffe57cb9467785006d1fa51 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 30 Dec 2022 23:39:55 +0100 Subject: [PATCH 081/141] gnu: shotcut: Remove input labels. * gnu/packages/video.scm (shotcut)[native-inputs]: Remove labels. --- gnu/packages/video.scm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index c3ba1eddd2..fd11960f1c 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -4933,9 +4933,7 @@ transitions, and effects and then export your film to many common formats.") `("PATH" ":" prefix ,(list (string-append mlt "/bin")))))))))) (native-inputs - `(("pkg-config" ,pkg-config) - ("python-wrapper" ,python-wrapper) - ("qttools-5" ,qttools-5))) + (list pkg-config python-wrapper qttools-5)) (inputs (list bash-minimal ffmpeg From fb5514d3db19b5b405ea75cbe8fbf72d79baea1d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 31 Dec 2022 21:13:37 +0100 Subject: [PATCH 082/141] gnu: samba/fixed: Replacement package has the same store name length. This is a follow-up to c39db91e51e55e46f177378c7b5a797441dc7d1b. * gnu/packages/samba.scm (samba/fixed-patched)[version]: Set to 4.15.A. --- gnu/packages/samba.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index b6cb0a5941..6e2c4d4f78 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -324,12 +324,14 @@ Desktops into Active Directory environments using the winbind daemon.") (define-public samba/fixed-patched (package (inherit samba/fixed) - (version "4.15.13") + ;; This is 4.15.13, but we need to trim the store file name to have + ;; the same length as the one we are grafting above. + (version "4.15.A") (source (origin (method url-fetch) (uri (string-append "https://download.samba.org/pub/samba/stable/" - "samba-" version ".tar.gz")) + "samba-4.15.13.tar.gz")) (sha256 (base32 "0s29vzn5f42vjhx6h25c7v67n14ymqxn8glqa97d0rajd99y64n4")))))) From ad6903b15632f940ea59ddc3726c53e9555b73ca Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 31 Dec 2022 22:31:16 +0100 Subject: [PATCH 083/141] gnu: nyacc: Update to 1.08.1. * gnu/packages/mes.scm (nyacc): Update to 1.08.1. [arguments]: Remove. --- gnu/packages/mes.scm | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index 4487b1b6eb..9ec506a1ed 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -98,29 +98,20 @@ extensive examples, including parsers for the Javascript and C99 languages.") (define-public nyacc (package (inherit nyacc-0.99) - (version "1.07.4") + (version "1.08.1") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/nyacc/nyacc-" version ".tar.gz")) (sha256 (base32 - "1kr3b88sx0g9zy52algxqpvnkjm76qdyld7pasbbajkph2zhcj92")) + "1vrz3pnlr3njwk6ksz85slcwawi8ngiqbw94wd9x3mgv85vsfmys")) (modules '((guix build utils))) (snippet '(substitute* "configure" (("GUILE_GLOBAL_SITE=\\$prefix.*") "GUILE_GLOBAL_SITE=\ $prefix/share/guile/site/$GUILE_EFFECTIVE_VERSION\n"))))) - (arguments - '(#:phases - (modify-phases %standard-phases - ;; See https://savannah.nongnu.org/bugs/index.php?60474 - (add-after 'unpack 'fix-60474 - (lambda _ - (substitute* "module/nyacc/lang/c99/parser.scm" - (("\\(memq \\(car stmt\\) '\\(include include-next\\)\\)") - "(memq (car stmt) '(include include-next define))"))))))) (inputs (list guile-3.0)) (propagated-inputs (list guile-bytestructures)) (description From 343c220e1b73d8294b1b9a54d7a4ef2db9931e24 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Sat, 31 Dec 2022 22:51:50 +0000 Subject: [PATCH 084/141] gnu: guile-xapian: Update to 0.3.0. * gnu/packages/guile-xyz.scm (guile-xapian): Update to 0.3.0. [propagated-inputs]: Add guile-lib. --- gnu/packages/guile-xyz.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 42439725fd..9c94764ab3 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -4308,7 +4308,7 @@ over, or update a value in arbitrary data structures.") (define-public guile-xapian (package (name "guile-xapian") - (version "0.2.1") + (version "0.3.0") (home-page "https://git.systemreboot.net/guile-xapian") (source (origin @@ -4318,7 +4318,7 @@ over, or update a value in arbitrary data structures.") (file-name (git-file-name name version)) (sha256 (base32 - "1i2bk06abl1984xgrr3hzzhknqkxjysfpd82drzlgp291hmq40w1")))) + "0k18navsd0rqx2zbqgvhzscvbls2sxs9k06n195s4bvyd50acfm5")))) (build-system gnu-build-system) (arguments '(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ; to prevent guild warnings @@ -4331,6 +4331,8 @@ over, or update a value in arbitrary data structures.") libtool pkg-config swig)) + (propagated-inputs + (list guile-lib)) (synopsis "Guile bindings for Xapian") (description "@code{guile-xapian} provides Guile bindings for Xapian, a search engine library. Xapian is a highly adaptable toolkit which allows From c445807c2621d0ad9c4c5e08473f69791c4695b2 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 1 Jan 2023 11:13:27 +0100 Subject: [PATCH 085/141] gnu: emacs-org-modern: Update to 0.7. * gnu/packages/emacs-xyz.scm (emacs-org-modern): Update to 0.7. --- 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 be511a2371..5bfa24e539 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2016, 2017 Roel Janssen ;;; Copyright © 2016, 2017 Nikita ;;; Copyright © 2016, 2019 Alex Griffin -;;; Copyright © 2016-2022 Nicolas Goaziou +;;; Copyright © 2016-2023 Nicolas Goaziou ;;; Copyright © 2016, 2017, 2018 Alex Vong ;;; Copyright © 2016-2022 Arun Isaac ;;; Copyright © 2017 Christopher Baines @@ -34208,7 +34208,7 @@ Fennel code within Emacs.") (define-public emacs-org-modern (package (name "emacs-org-modern") - (version "0.6") + (version "0.7") (source (origin (method git-fetch) @@ -34216,7 +34216,7 @@ Fennel code within Emacs.") (url "https://github.com/minad/org-modern") (commit version))) (sha256 - (base32 "03zpwb475rpbhq1s6101clj0j9mcxdg033clvvybp0p7hm4inwaz")) + (base32 "0bqps8dpvqd2dfw3bamnnf1ikvd48vn8hgb08975f0wski54xh5n")) (file-name (git-file-name name version)))) (build-system emacs-build-system) (home-page "https://github.com/minad/org-modern") From 0f4871142698e2a86e819f5a260b4fa403ce84db Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 1 Jan 2023 11:14:36 +0100 Subject: [PATCH 086/141] gnu: emacs-tramp: Update to 2.6.0. * gnu/packages/emacs-xyz.scm (emacs-tramp): Update to 2.6.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 5bfa24e539..94b7302a70 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -29080,14 +29080,14 @@ well as an option for visually flashing evaluated s-expressions.") (define-public emacs-tramp (package (name "emacs-tramp") - (version "2.5.4") + (version "2.6.0") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "tramp-" version ".tar")) (sha256 - (base32 "1ap2niqskbj81xqhdi4lzh3646g9rwh3iw5qgyl3fw7cfq945fsl")))) + (base32 "1y58k0qdc9i3av61p9ks7hg5vynsi2zslv5mswcbd1wf23iggr7c")))) (build-system emacs-build-system) (arguments (list From 29ee238bb93dfc4da39dd9610a7b43c04e972547 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 1 Jan 2023 11:15:36 +0100 Subject: [PATCH 087/141] gnu: emacs-osm: Update to 0.9. * gnu/packages/emacs-xyz.scm (emacs-osm): Update to 0.9. --- 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 94b7302a70..47431cd870 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -34321,7 +34321,7 @@ hacker.") (define-public emacs-osm (package (name "emacs-osm") - (version "0.8") + (version "0.9") (home-page "https://github.com/minad/osm") (source (origin (method git-fetch) @@ -34331,7 +34331,7 @@ hacker.") (file-name (git-file-name name version)) (sha256 (base32 - "039ac364f00slx1dxxgsgfcr4x47v9ymn8arcs0fyhdhw7jnky5j")))) + "0iacf3mqjq8vfhd0nyzry0spishyvn92zgd55ivqxb9xfdr3lx9x")))) (build-system emacs-build-system) (arguments (list #:phases #~(modify-phases %standard-phases From 992f3edc343f51ab8497ba315034e10166d5db58 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 1 Jan 2023 11:16:48 +0100 Subject: [PATCH 088/141] gnu: emacs-plz: Update to 0.3. * gnu/packages/emacs-xyz.scm (emacs-plz): 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 47431cd870..946def62d1 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -18017,7 +18017,7 @@ multiplexer.") (define-public emacs-plz (package (name "emacs-plz") - (version "0.2.1") + (version "0.3") (source (origin (method git-fetch) @@ -18026,7 +18026,7 @@ multiplexer.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0p0xd532xa8icysyxwqk481lr9xanmp68gf97fd9n2936gp12chv")))) + (base32 "1ack4rajjdmb3fqz5v394rqpvn9mfvbkrxra27yrcqz97mma1ki7")))) (build-system emacs-build-system) (inputs (list curl)) (arguments From 98384b799d2d8c2eaaa3b1e70a78a3ec943f7819 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 1 Jan 2023 11:18:10 +0100 Subject: [PATCH 089/141] gnu: emacs-cape: Update to 0.12. * gnu/packages/emacs-xyz.scm (emacs-cape): Update to 0.12. --- 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 946def62d1..61fb0f450e 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3780,7 +3780,7 @@ be regarded as @code{emacs-company-quickhelp} for @code{emacs-corfu}.") (define-public emacs-cape (package (name "emacs-cape") - (version "0.11") + (version "0.12") (source (origin (method git-fetch) @@ -3789,7 +3789,7 @@ be regarded as @code{emacs-company-quickhelp} for @code{emacs-corfu}.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0z6ixw7gsx1g7x2xpj5ilslrjrlp6x2ynzh731hs3yf3n281715b")))) + (base32 "1855wi6ghi42ngjq3qyjr3p1nc57s257v9c98wqmb2n6vca5p2lp")))) (build-system emacs-build-system) (home-page "https://github.com/minad/cape") (synopsis "Completion at point extensions for Emacs") From 87cc524f52b65f7f12c9b87d25b467772e357cab Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 1 Jan 2023 11:19:28 +0100 Subject: [PATCH 090/141] gnu: emacs-subed: Update to 1.0.29. * gnu/packages/emacs-xyz.scm (emacs-subed): Update to 1.0.29. --- 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 61fb0f450e..743d5dc373 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -7459,14 +7459,14 @@ user.") (define-public emacs-subed (package (name "emacs-subed") - (version "1.0.28") + (version "1.0.29") (source (origin (method url-fetch) (uri (string-append "https://elpa.nongnu.org/nongnu/subed-" version ".tar")) (sha256 (base32 - "0z1bxg5sqvvm9zblbjyfp5llq0v1pkjq9c7ygais8ad68ck1b51f")))) + "0q2sfdypj929y4fllk97rsb2bxm9a1izjy1f0z2viz5hz0hpqp26")))) (arguments (list #:tests? #t From b0b7b880360b47388a42de9672893d4a4a42df8b Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Sun, 1 Jan 2023 18:02:33 +0100 Subject: [PATCH 091/141] gnu: Add cl-ffa. * gnu/packages/lisp-xyz.scm (cl-ffa, ecl-ffa, sbcl-ffa): New variables. --- gnu/packages/lisp-xyz.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index a41eb845df..df114e7c99 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -4036,6 +4036,38 @@ package.") (define-public ecl-cffi-c-ref (sbcl-package->ecl-package sbcl-cffi-c-ref)) +(define-public sbcl-ffa + (let ((commit "b7012f51c4c37d1e759ff9cf78cea178504d8e07") + (revision "1")) + (package + (name "sbcl-ffa") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tpapp/ffa") + (commit commit))) + (file-name (git-file-name "cl-ffa" version)) + (sha256 + (base32 "0l7kqcjp3sn1129hpwq6zhjqc0ydx9gc53z7k13i38x3z1asap7a")))) + (build-system asdf-build-system/sbcl) + (inputs + (list sbcl-cffi sbcl-cl-utilities sbcl-iterate sbcl-metabang-bind)) + (synopsis "Foreign friendly arrays for Common Lisp") + (description + "This package provides a macro that allows foreign functions to access +the contents of the array at a given pointer, using the best available method +given the Common Lisp implementation.") + (home-page "https://cliki.net/ffa") + (license license:llgpl)))) + +(define-public cl-ffa + (sbcl-package->cl-source-package sbcl-ffa)) + +(define-public ecl-ffa + (sbcl-package->ecl-package sbcl-ffa)) + (define-public sbcl-cl-sqlite (package (name "sbcl-cl-sqlite") From 0a08372b77f9afc282c855e4f749be0d1843874c Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Sun, 1 Jan 2023 17:43:39 +0100 Subject: [PATCH 092/141] gnu: Add cl-portaudio. * gnu/packages/lisp-xyz.scm (cl-portaudio, ecl-cl-portaudio, sbcl-cl-portaudio): New variables. --- gnu/packages/lisp-xyz.scm | 43 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index df114e7c99..f8dbf9e1c8 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2018, 2019 Pierre Langlois ;;; Copyright © 2019, 2020 Katherine Cox-Buday ;;; Copyright © 2019 Jesse Gildersleve -;;; Copyright © 2019, 2020, 2021, 2022 Guillaume Le Vaillant +;;; Copyright © 2019-2023 Guillaume Le Vaillant ;;; Copyright © 2019 Brett Gilio ;;; Copyright © 2020 Konrad Hinsen ;;; Copyright © 2020 Dimakis Dimakakos @@ -70,6 +70,7 @@ #:use-module (guix build-system asdf) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) + #:use-module (gnu packages audio) #:use-module (gnu packages base) #:use-module (gnu packages c) #:use-module (gnu packages compression) @@ -13105,6 +13106,46 @@ cross-platform audio playback.") (define-public cl-out123 (sbcl-package->cl-source-package sbcl-cl-out123)) +(define-public sbcl-cl-portaudio + (let ((commit "c50cd061c25216a736f684e45101f5c0188a384f") + (revision "1")) + (package + (name "sbcl-cl-portaudio") + (version (git-version "1.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/filonenko-mikhail/cl-portaudio") + (commit commit))) + (file-name (git-file-name "cl-portaudio" version)) + (sha256 + (base32 "177c6bgf30caj5qpzfnzhbamax7c5zm2p4911mw7fay94vjs7zyb")))) + (build-system asdf-build-system/sbcl) + (inputs + (list portaudio sbcl-cffi sbcl-ffa)) + (arguments + (list #:tests? #f ; Tests need access to sound cards + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/portaudio.lisp" + (("libportaudio\\.so") + (search-input-file inputs "/lib/libportaudio.so")))))))) + (synopsis "Common Lisp bindings to portaudio") + (description + "This package provides audio input and output functions to Common Lisp +using bindings to the portaudio library.") + (home-page "https://github.com/filonenko-mikhail/cl-portaudio") + (license license:expat)))) + +(define-public cl-portaudio + (sbcl-package->cl-source-package sbcl-cl-portaudio)) + +(define-public ecl-cl-portaudio + (sbcl-package->ecl-package sbcl-cl-portaudio)) + (define-public sbcl-cl-random-forest (let ((commit "fedb36ce99bb6f4d7e3a7dd6d8b058f331308f91") (revision "1")) From 6d4c53893308d7db340a2978307a214103660341 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Thu, 15 Dec 2022 14:40:27 +0100 Subject: [PATCH 093/141] gnu: komikku: Update to 1.6.1. * gnu/packages/gnome.scm (komikku): Update to 1.6.1. [inputs]: Add python-emoji. --- gnu/packages/gnome.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 2078e91c23..47a0f237fe 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -13160,7 +13160,7 @@ profiler via Sysprof, debugging support, and more.") (define-public komikku (package (name "komikku") - (version "1.4.0") + (version "1.6.1") (source (origin (method git-fetch) @@ -13170,7 +13170,7 @@ profiler via Sysprof, debugging support, and more.") (file-name (git-file-name name version)) (sha256 (base32 - "1sawvmni28qnca8lmw6li3ad36lb7sbf22zqbzp5f9wjwx7q609k")))) + "0ppd9cl16zwqsmpy0pry43qsfrm2xal77y4339qwbnas74gcl1wh")))) (build-system meson-build-system) (arguments (list @@ -13209,6 +13209,7 @@ profiler via Sysprof, debugging support, and more.") python-brotli python-cloudscraper python-dateparser + python-emoji python-keyring python-lxml python-magic From 6b1fc3a55f0e75ddfd60d8b4c5be74dc8e207178 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 1 Jan 2023 22:01:06 +0100 Subject: [PATCH 094/141] gnu: emacs-modus-themes: Update to 4.0.1. * gnu/packages/emacs-xyz.scm (emacs-modus-themes): Update to 4.0.1. [synopsis]: Expound it slightly. [description]: Update it to include new themes. --- gnu/packages/emacs-xyz.scm | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 743d5dc373..5decd51087 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -30464,7 +30464,7 @@ Emacs that integrate with major modes like Org-mode.") (define-public emacs-modus-themes (package (name "emacs-modus-themes") - (version "3.0.0") + (version "4.0.1") (source (origin (method git-fetch) @@ -30473,7 +30473,7 @@ Emacs that integrate with major modes like Org-mode.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1468y1ra4w4ihq68mfvddyijppj5sz143aawzg2nxdzphy9a84l2")))) + (base32 "16m8y56jyf44rj541fqb243pmbz9bk5py5zl1xhzal4fsk5bsfrg")))) (native-inputs (list texinfo)) (build-system emacs-build-system) (arguments @@ -30490,17 +30490,19 @@ Emacs that integrate with major modes like Org-mode.") (install-file "doc/modus-themes.info" (string-append #$output "/share/info"))))))) (home-page "https://protesilaos.com/modus-themes/") - (synopsis "Accessible themes (WCAG AAA)") + (synopsis "Accessible themes for Emacs (WCAG AAA standard)") (description "The Modus themes are designed for accessible readability. They conform with the highest standard for color contrast between any given combination of background and foreground values. This corresponds to the WCAG AAA standard, which specifies a minimum rate of distance in relative luminance of 7:1. -Modus Operandi (modus-operandi) is a light theme, while Modus -Vivendi (modus-vivendi) is dark. Each theme’s color palette is designed to -meet the needs of the numerous interfaces that are possible in the Emacs -computing environment.") +The Modus themes consist of six themes. Modus Operandi is a light theme, +while Modus Vivendi is dark. Modus Operandi Tinted and Modus Vivendi Tinted +are variants of the two main themes. They slightly tone down the intensity of +the background and provide a bit more color variety. Modus Operandi +Deuteranopia and its companion Modus Vivendi Deuteranopia are optimized for +users with red-green color deficiency.") (license (list license:gpl3+ license:fdl1.3+)))) ; GFDLv1.3+ for the manual From d7a9d72bb02a2a3b1a99183655bf878547116032 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Sun, 1 Jan 2023 21:22:04 +0100 Subject: [PATCH 095/141] tests: Fix gnu-maintenance tests. The regression was introduce with commit a274a6a1acb99738f02de7b226e6a0d3883ec353 ("upstream-updater: Rename record field.") * tests/tests/gnu-maintenance.scm: ("latest-html-release, scheme-less URIs", "latest-html-release, no signature", "latest-html-release, signature"): Replace upstream-updater-latest by upstream-updater-import. Reported-by: Ricardo Wurmus --- tests/gnu-maintenance.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/gnu-maintenance.scm b/tests/gnu-maintenance.scm index fcaa2a068e..516e02ec6a 100644 --- a/tests/gnu-maintenance.scm +++ b/tests/gnu-maintenance.scm @@ -79,7 +79,7 @@ (uri (string-append (%local-url) "/foo-1.tar.gz")))) (properties `((release-monitoring-url . ,(%local-url)))))) - (define update ((upstream-updater-latest %generic-html-updater) package)) + (define update ((upstream-updater-import %generic-html-updater) package)) (define expected-new-url "http://another-site/foo-2.tar.gz") (and (pk 'u update) (equal? (upstream-source-version update) "2") @@ -104,7 +104,7 @@ (uri (string-append (%local-url) "/foo-1.tar.gz")))) (properties `((release-monitoring-url . ,(%local-url)))))) - (define update ((upstream-updater-latest %generic-html-updater) package)) + (define update ((upstream-updater-import %generic-html-updater) package)) (define expected-new-url (string-append (%local-url) "/foo-2.tar.gz")) (and (pk 'u update) @@ -135,7 +135,7 @@ (uri (string-append (%local-url) "/foo-1.tar.gz")))) (properties `((release-monitoring-url . ,(%local-url)))))) - (define update ((upstream-updater-latest %generic-html-updater) package)) + (define update ((upstream-updater-import %generic-html-updater) package)) (define expected-new-url (string-append (%local-url) "/foo-2.tar.gz")) (define expected-signature-url From f1d71d31d307342b93fe0851741d64fa3f1ff308 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 12:14:55 +0100 Subject: [PATCH 096/141] gnu: mumi: Update to 0.0.5-1.b2a8280. * gnu/packages/mail.scm (mumi): Update to 0.0.5-1.b2a8280. --- gnu/packages/mail.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index c9916c2e93..de868e948b 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -4026,11 +4026,11 @@ It is a replacement for the @command{urlview} program.") (license license:gpl2+))) (define-public mumi - (let ((commit "0a90eeda9b5e12a2f83e3917c46fa539f308d0c8") - (revision "2")) + (let ((commit "b2a8280f158957e18d714dea78637f6504dd7613") + (revision "1")) (package (name "mumi") - (version (git-version "0.0.4" revision commit)) + (version (git-version "0.0.5" revision commit)) (source (origin (method git-fetch) (uri (git-reference @@ -4039,7 +4039,7 @@ It is a replacement for the @command{urlview} program.") (file-name (git-file-name name version)) (sha256 (base32 - "1yxi1vvygrk8qd0mqh65qh1g99r5d4rlymj8amcn80ggi3z32byk")))) + "1ygcbrnwvqa4zi93mbry5afw6dr4fbm7pgkn1gbsydp6qjfsm88q")))) (build-system gnu-build-system) (arguments (list From d46d958ae77fef5b76d47f662a1f4dd1a3bd92b3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 2 Jan 2023 12:07:04 +0200 Subject: [PATCH 097/141] gnu: Add lld-11. * gnu/packages/llvm.scm (lld-11): New variable. --- gnu/packages/llvm.scm | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 7de7177b77..33e9b5611e 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2017 Roel Janssen ;;; Copyright © 2018–2022 Marius Bakke ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice -;;; Copyright © 2018, 2021, 2022 Efraim Flashner +;;; Copyright © 2018, 2021-2023 Efraim Flashner ;;; Copyright © 2018 Tim Gesthuizen ;;; Copyright © 2018 Pierre Neidhardt ;;; Copyright © 2019 Rutger Helling @@ -1585,6 +1585,19 @@ components which highly leverage existing libraries in the larger LLVM Project." (inputs (modify-inputs (package-inputs lld) (replace "llvm" llvm-12))))) +(define-public lld-11 + (package + (inherit lld-12) + (version "11.0.0") + (source (origin + (method url-fetch) + (uri (llvm-uri "lld" version)) + (sha256 + (base32 + "077xyh7sij6mhp4dc4kdcmp9whrpz332fa12rwxnzp3wgd5bxrzg")))) + (inputs (modify-inputs (package-inputs lld) + (replace "llvm" llvm-11))))) + (define-public lld lld-14) (define* (make-lld-wrapper lld #:key lld-as-ld?) From 80ef8ff7ed1aaed47cabbf14e2b6daa663fc51cd Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 2 Jan 2023 12:07:30 +0200 Subject: [PATCH 098/141] gnu: ldc: Update to 1.30.0. * gnu/packages/dlang.scm (ldc-bootstrap): Update to 1.30.0. [native-inputs]: Remove ld-gold-wrapper, Add lld-wrapper with lld-11. (ldc)[arguments]: Adjust 'fix-compiler-rt-library-discovery phase to change the order of linked libraries. Adjust 'disable-problematic-tests phase to work around more GDB tests. Adjust custom 'check phase for race condition in one of the tests. --- gnu/packages/dlang.scm | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm index 9a972182cc..d605067864 100644 --- a/gnu/packages/dlang.scm +++ b/gnu/packages/dlang.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2017, 2019, 2022 Tobias Geerinckx-Rice ;;; Copyright © 2020 Guy Fleury Iteriteka -;;; Copyright © 2021, 2022 Efraim Flashner +;;; Copyright © 2021-2023 Efraim Flashner ;;; Copyright © 2021 Maxim Cournoyer ;;; Copyright © 2022 ( ;;; Copyright © 2022 Esther Flashner @@ -149,14 +149,14 @@ to a minimal test case.") (define ldc-bootstrap (package (name "ldc") - (version "1.27.1") + (version "1.30.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/ldc-developers/ldc/releases" "/download/v" version "/ldc-" version "-src.tar.gz")) (sha256 - (base32 "1775001ba6n8w46ln530kb5r66vs935ingnppgddq8wqnc0gbj4k")))) + (base32 "1kfs4fpr1525sv2ny10hlfppy8c075vjm8m649wr2b9411pkgfzx")))) (build-system cmake-build-system) (arguments `(#:tests? #f ;skip in the bootstrap @@ -190,10 +190,7 @@ to a minimal test case.") ("tzdata" ,tzdata) ("zlib" ,zlib))) (native-inputs - ;; Importing (gnu packages commencement) would introduce a cycle. - `(("ld-gold-wrapper" ,(module-ref (resolve-interface - '(gnu packages commencement)) - 'ld-gold-wrapper)) + `(("lld-wrapper" ,(make-lld-wrapper lld-11 #:lld-as-ld? #t)) ("llvm" ,llvm-11) ("ldc" ,gdmd) ("ninja" ,ninja) @@ -260,7 +257,7 @@ bootstrapping more recent compilers written in D.") ;; find the compiler-rt libraries they need to be linked with ;; for the tests. (substitute* (find-files "." "^ldc2.*\\.conf\\.in$") - ((".*lib-dirs = \\[\n" all) + ((".*LIB_SUFFIX.*" all) (string-append all " \"" clang-runtime "/lib/linux\",\n")))))) @@ -294,12 +291,15 @@ bootstrapping more recent compilers written in D.") "")) ;; The GDB tests suite fails; there are a few bug reports about ;; it upstream. - (for-each delete-file (find-files "tests" "gdb.*\\.(d|sh)$")) + (for-each delete-file (find-files "tests" "gdb.*\\.(c|d|sh)$")) (delete-file "tests/d2/dmd-testsuite/runnable/debug_info.d") (delete-file "tests/d2/dmd-testsuite/runnable/b18504.d") (substitute* "runtime/druntime/test/exceptions/Makefile" ((".*TESTS\\+=rt_trap_exceptions_drt_gdb.*") "")) + ;; Drop gdb_dflags from the test suite. + (substitute* "tests/d2/CMakeLists.txt" + (("\\$\\{gdb_dflags\\}") "")) ;; The following tests fail on some systems, not all of ;; which are tested upstream. (with-directory-excursion "tests" @@ -346,7 +346,8 @@ bootstrapping more recent compilers written in D.") (invoke "ctest" "--output-on-failure" "-j" job-count "-R" "lit-tests") (display "running the dmd test suite...\n") - (invoke "ctest" "--output-on-failure" "-j" job-count + ;; This test has a race condition so run it with 1 core. + (invoke "ctest" "--output-on-failure" "-j" "1" "-R" "dmd-testsuite") (display "running the defaultlib unit tests and druntime \ integration tests...\n") From 4eddc221b39c43085584d9bb1620360c4a1f3139 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 2 Jan 2023 12:15:45 +0200 Subject: [PATCH 099/141] gnu: gtkd: Update to 3.10.0. * gnu/packages/dlang.scm (gtkd): Update to 3.10.0. [arguments]: Rename 'prepare-x phase to 'pre-check, set CC for the tests. --- gnu/packages/dlang.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm index d605067864..77283adbed 100644 --- a/gnu/packages/dlang.scm +++ b/gnu/packages/dlang.scm @@ -413,14 +413,14 @@ needed.") (define-public gtkd (package (name "gtkd") - (version "3.9.0") + (version "3.10.0") (source (origin (method url-fetch/zipbomb) (uri (string-append "https://gtkd.org/Downloads/sources/GtkD-" version ".zip")) (sha256 - (base32 "0qv8qlpwwb1d078pnrf0a59vpbkziyf53cf9p6m8ms542wbcxllp")))) + (base32 "0vc5ssb3ar02mg2pngmdi1xg4qjaya8332a9mk0sv97x6b4ddy3g")))) (build-system gnu-build-system) (native-inputs `(("unzip" ,unzip) @@ -446,10 +446,11 @@ needed.") ;; Work around upstream bug. (("\\$\\(prefix\\)\\/\\$\\(libdir\\)") "$(libdir)")) #t)) - (add-before 'check 'prepare-x + (add-before 'check 'pre-check (lambda _ (system "Xvfb :1 &") (setenv "DISPLAY" ":1") + (setenv "CC" ,(cc-for-target)) #t))))) (home-page "https://gtkd.org/") (synopsis "D binding and OO wrapper of GTK+") From 08d5e9cf221c1d4ef22560ec901bbfafc6f56b0b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 2 Jan 2023 12:17:09 +0200 Subject: [PATCH 100/141] gnu: gtkd: Remove trailing #t from phases. * gnu/packages/dlang.scm (gtkd)[arguments]: Remove trailing #t from phases. --- gnu/packages/dlang.scm | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm index 77283adbed..7c8dbe0f7e 100644 --- a/gnu/packages/dlang.scm +++ b/gnu/packages/dlang.scm @@ -444,14 +444,12 @@ needed.") (("default-goal: libs test") "default-goal: libs") (("all: libs shared-libs test") "all: libs shared-libs") ;; Work around upstream bug. - (("\\$\\(prefix\\)\\/\\$\\(libdir\\)") "$(libdir)")) - #t)) + (("\\$\\(prefix\\)\\/\\$\\(libdir\\)") "$(libdir)")))) (add-before 'check 'pre-check (lambda _ (system "Xvfb :1 &") (setenv "DISPLAY" ":1") - (setenv "CC" ,(cc-for-target)) - #t))))) + (setenv "CC" ,(cc-for-target))))))) (home-page "https://gtkd.org/") (synopsis "D binding and OO wrapper of GTK+") (description "This package provides bindings to GTK+ for D.") From ebe7fbdc694062ec0be82573569b619b0d626909 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 2 Jan 2023 12:18:22 +0200 Subject: [PATCH 101/141] gnu: gtkd: Remove input labels. * gnu/packages/dlang.scm (gtkd)[native-inputs]: Remove input labels. --- gnu/packages/dlang.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm index 7c8dbe0f7e..462a61a29f 100644 --- a/gnu/packages/dlang.scm +++ b/gnu/packages/dlang.scm @@ -423,10 +423,10 @@ needed.") (base32 "0vc5ssb3ar02mg2pngmdi1xg4qjaya8332a9mk0sv97x6b4ddy3g")))) (build-system gnu-build-system) (native-inputs - `(("unzip" ,unzip) - ("ldc" ,ldc) - ("pkg-config" ,pkg-config) - ("xorg-server-for-tests" ,xorg-server-for-tests))) + (list unzip + ldc + pkg-config + xorg-server-for-tests)) (arguments `(#:test-target "test" #:make-flags From 9a19d85f1e2b94c311f9f0c913435205227b9d75 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 2 Jan 2023 12:28:30 +0200 Subject: [PATCH 102/141] gnu: onedrive: Update to 2.4.22. * gnu/packages/sync.scm (onedrive): Update to 2.4.22. [arguments]: Adjust 'link-to-external-libraries phase to not clear the linker. Adjust 'adjust-makefile phase to not force adding libraries to the rpath. --- gnu/packages/sync.scm | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm index 8330b96dd7..b15953984b 100644 --- a/gnu/packages/sync.scm +++ b/gnu/packages/sync.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015-2020, 2022 Efraim Flashner +;;; Copyright © 2015-2020, 2022-2023 Efraim Flashner ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2018, 2021 Ludovic Courtès @@ -366,7 +366,7 @@ silently and reliably flow across to every other.") (define-public onedrive (package (name "onedrive") - (version "2.4.21") + (version "2.4.22") (source (origin (method git-fetch) @@ -375,7 +375,7 @@ silently and reliably flow across to every other.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "04rnkc6ap9mkghvlj102f2gvnjqg3bs4vw9q3wm869fsflnm3599")))) + (base32 "1lh915rs3zjfgdjhn35bhnn6zfknj4xd86s5jj3wznifj4f5kn7w")))) (build-system gnu-build-system) (arguments (list @@ -391,16 +391,12 @@ silently and reliably flow across to every other.") #:phases #~(modify-phases %standard-phases (add-after 'unpack 'link-to-external-libraries - (lambda* (#:key inputs #:allow-other-keys) - (setenv "DCFLAGS" (string-append - ;; The default linker is ld.gold. - "--linker=\"\" " - ;; Only link necessary libraries. - "-L--as-needed ")))) + (lambda _ + ;; Only link necessary libraries. + (setenv "DCFLAGS" "-L--as-needed"))) (add-after 'configure 'adjust-makefile (lambda _ (substitute* "Makefile" - (("-L/gnu") "-Wl,-rpath=/gnu") (("-O ") "-O2 ")))) (replace 'check (lambda* (#:key tests? #:allow-other-keys) From b45d08641bf25ba4a9e258864a0f7d3acb489306 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 14:59:58 +0100 Subject: [PATCH 103/141] gnu: r-rcppde: Update to 0.1.7. * gnu/packages/cran.scm (r-rcppde): Update to 0.1.7. --- 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 e8119e4794..ec6e9d4f73 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -4720,13 +4720,13 @@ and Francois (2011, JSS), and the book by Eddelbuettel (2013, Springer); see (define-public r-rcppde (package (name "r-rcppde") - (version "0.1.6") + (version "0.1.7") (source (origin (method url-fetch) (uri (cran-uri "RcppDE" version)) (sha256 (base32 - "1i9jj595nqpb16y22z2b8fcf0gq1fg0pbiisbd837p1cyw4nff69")))) + "1846pl9gxikycdvwfgy1gw41z0fx4ycjp5p4295v8k2pgvlqw8sa")))) (properties `((upstream-name . "RcppDE"))) (build-system r-build-system) (propagated-inputs From 9ecc7216c42414f8c8973c93b8ccf7e764415b3b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:06 +0100 Subject: [PATCH 104/141] gnu: r-energy: Update to 1.7-11. * gnu/packages/cran.scm (r-energy): Update to 1.7-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 ec6e9d4f73..79fcf36d0f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -5851,14 +5851,14 @@ data). Weighted versions of MLE, MME and QME are available.") (define-public r-energy (package (name "r-energy") - (version "1.7-10") + (version "1.7-11") (source (origin (method url-fetch) (uri (cran-uri "energy" version)) (sha256 (base32 - "19xyw5bkyzfk22gly2ca2nsznqnrhaq4a77727kr1k26bj3y8gal")))) + "04b55ckmaqbnlpifg4w7smvly03kqycklvbg9x8d4yf902q8z7y2")))) (build-system r-build-system) (propagated-inputs (list r-boot r-gsl r-rcpp)) From 95ed402cab20e09e8f5bc13641742a2fdf9404fd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:07 +0100 Subject: [PATCH 105/141] gnu: r-gower: Update to 1.0.1. * gnu/packages/cran.scm (r-gower): Update to 1.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 79fcf36d0f..7eaea68688 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -6376,14 +6376,14 @@ multivariate and 5 functional classification problems are included.") (define-public r-gower (package (name "r-gower") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) (uri (cran-uri "gower" version)) (sha256 (base32 - "0p9qx9aafkdm7wibfwk59jzw6vspsff6zwp84bc40lg0myxbf737")))) + "1z0mhfp8xp7rk9i820pkvspm6mwih24g6b5rqs63m37sbs79ssi9")))) (build-system r-build-system) (home-page "https://github.com/markvanderloo/gower") (synopsis "Gower's distance") From 7d79ba90ba69d4372896bcf8f98194d1f625dc3e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:07 +0100 Subject: [PATCH 106/141] gnu: r-cli: Update to 3.5.0. * gnu/packages/cran.scm (r-cli): Update to 3.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 7eaea68688..c3dc95006d 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -7474,14 +7474,14 @@ multivariate function estimation using smoothing splines.") (define-public r-cli (package (name "r-cli") - (version "3.4.1") + (version "3.5.0") (source (origin (method url-fetch) (uri (cran-uri "cli" version)) (sha256 (base32 - "0kklv5zy9rhly8fr7fdl3dlm3hr81yvbqd5cdz38b1lbzpxmwn0w")))) + "1p3gzq30f7hpr3v2s555z18r0y57zq2h03kijv7rl48lqzbnrjwc")))) (build-system r-build-system) (home-page "https://github.com/r-lib/cli#readme") (synopsis "Helpers for developing command line interfaces") From 96fb8ece2e36fd5aeb6c8ebce2d3c1c63dc720ed Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:08 +0100 Subject: [PATCH 107/141] gnu: r-xfun: Update to 0.36. * gnu/packages/cran.scm (r-xfun): Update to 0.36. --- 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 c3dc95006d..fac734a7bd 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -7748,13 +7748,13 @@ iVAT).") (define-public r-xfun (package (name "r-xfun") - (version "0.35") + (version "0.36") (source (origin (method url-fetch) (uri (cran-uri "xfun" version)) (sha256 - (base32 "04x6y7f3f105fzxn2kzmvfz0zqf2v28g8aqnsln6q9n4lm74vz45")))) + (base32 "1vk930bn7rp2qp8yvmd9d3lgi10rgf20n62jr3lfwi6hf7jhs5x8")))) (build-system r-build-system) ;; knitr itself depends on xfun #; From 195848407aca1907d473d24be4e3e047ed77e7a0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:08 +0100 Subject: [PATCH 108/141] gnu: r-officer: Update to 0.5.0. * gnu/packages/cran.scm (r-officer): 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 fac734a7bd..d422325062 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11057,14 +11057,14 @@ references and Rd files.") (define-public r-officer (package (name "r-officer") - (version "0.4.4") + (version "0.5.0") (source (origin (method url-fetch) (uri (cran-uri "officer" version)) (sha256 (base32 - "1h6fcqw4bg644lwr5jggphyxp2d0ycya9q869z8099a50gc6h03f")))) + "19kms5pjgb5mjqyqzgnpykd5divbkrs5apz8z27ivgw78iizsqh6")))) (build-system r-build-system) (propagated-inputs (list r-r6 r-uuid r-xml2 r-zip)) From d1fe4b1d50a3b640282c274fa3b45e8fc04b6da9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:09 +0100 Subject: [PATCH 109/141] gnu: r-yulab-utils: Update to 0.0.6. * gnu/packages/cran.scm (r-yulab-utils): Update to 0.0.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 d422325062..a76ca6a97e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -20462,14 +20462,14 @@ package.") (define-public r-yulab-utils (package (name "r-yulab-utils") - (version "0.0.5") + (version "0.0.6") (source (origin (method url-fetch) (uri (cran-uri "yulab.utils" version)) (sha256 (base32 - "0sq5wc0mp84h6fs4wa2smvf7dcn0p0xarzb2ljvqc3p4vb2lvkbf")))) + "09bvj97xz9gishyhi1dzpjfl70v7xag8952fqfp60h18s6w52flp")))) (properties `((upstream-name . "yulab.utils"))) (build-system r-build-system) (home-page "https://cran.r-project.org/package=yulab.utils") From 2ab204729915b931b8a9f1ad3117ad1624c2b41e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:09 +0100 Subject: [PATCH 110/141] gnu: r-bdgraph: Update to 2.72. * gnu/packages/cran.scm (r-bdgraph): Update to 2.72. --- 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 a76ca6a97e..7c7b3850c0 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -27534,14 +27534,14 @@ output in R.") (define-public r-bdgraph (package (name "r-bdgraph") - (version "2.71") + (version "2.72") (source (origin (method url-fetch) (uri (cran-uri "BDgraph" version)) (sha256 (base32 - "1lihsbliq7f91ywdq5cabzd5fbyhb10h62ss3n2l7i2fdglb77d1")))) + "1kc3icd7glivbjlhl9fbmxqza5w2x000w0w8ii8np9gjrhdwrybw")))) (properties `((upstream-name . "BDgraph"))) (build-system r-build-system) (propagated-inputs From c8def63b5e8516896eb1beb4ea2bc112c1889b15 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:10 +0100 Subject: [PATCH 111/141] gnu: r-isoband: Update to 0.2.7. * gnu/packages/cran.scm (r-isoband): Update to 0.2.7. --- 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 7c7b3850c0..711dd85431 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -28378,14 +28378,14 @@ Encyclopedia of Integer Sequences} (OEIS) in the function help page.") (define-public r-isoband (package (name "r-isoband") - (version "0.2.6") + (version "0.2.7") (source (origin (method url-fetch) (uri (cran-uri "isoband" version)) (sha256 (base32 - "18s3mdzl9y8v5fpvdy6iyqp3j57kw8bwhgan94373xjkaya61r17")))) + "0qfzkkvh4a97qlifhdqjgdnzmnph93qqyqsv5gg8cnxl8crj54vn")))) (properties `((upstream-name . "isoband"))) (build-system r-build-system) (native-inputs From f5ba03be6d8140305146da3b6328f6e5816fe619 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:10 +0100 Subject: [PATCH 112/141] gnu: r-gaston: Update to 1.5.9. * gnu/packages/cran.scm (r-gaston): Update to 1.5.9. --- 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 711dd85431..7f15e52627 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -30139,14 +30139,14 @@ formal inference.") (define-public r-gaston (package (name "r-gaston") - (version "1.5.8") + (version "1.5.9") (source (origin (method url-fetch) (uri (cran-uri "gaston" version)) (sha256 (base32 - "1pv37csq3gvkld7hfxgbq72n35gx1wg3bvrcvzzzf0qsfb6g42cc")))) + "1f4pr5s4p4rw1smvsh2gwjxp7hh43j1fpadl286ma9i62kirpyq7")))) (properties `((upstream-name . "gaston"))) (build-system r-build-system) (inputs (list zlib)) From 9b37446fdd88a73876272a1f83e859e7fbc325a1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:11 +0100 Subject: [PATCH 113/141] gnu: r-flexsurv: Update to 2.2.1. * gnu/packages/cran.scm (r-flexsurv): Update to 2.2.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 7f15e52627..cc5c63a5ca 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -30482,14 +30482,14 @@ censored data.") (define-public r-flexsurv (package (name "r-flexsurv") - (version "2.2") + (version "2.2.1") (source (origin (method url-fetch) (uri (cran-uri "flexsurv" version)) (sha256 (base32 - "0244amsyf2izih6008n2535r3ddksgdnys8pyslrcb1c09spmjrw")))) + "1xqsihvrb8b5mzkr3mhg0ydm8kkcw1k0kgp6ndyavw8yahl059as")))) (properties `((upstream-name . "flexsurv"))) (build-system r-build-system) (propagated-inputs From dbe91e31803c4777fffb9a2659989a39aefe36de Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:11 +0100 Subject: [PATCH 114/141] gnu: r-tokenizers: Update to 0.3.0. * gnu/packages/cran.scm (r-tokenizers): 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 cc5c63a5ca..08ae82504e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -31437,14 +31437,14 @@ thinking for the fun stuff.") (define-public r-tokenizers (package (name "r-tokenizers") - (version "0.2.3") + (version "0.3.0") (source (origin (method url-fetch) (uri (cran-uri "tokenizers" version)) (sha256 (base32 - "01s2bx35r8kc7c68jnhcbrk963v2mhd21gmf630w7i4xnx46nvb2")))) + "0a8wm4cff3hrll991h2rimw79kpf2jsn78y7yksdk8m18931wmr4")))) (properties `((upstream-name . "tokenizers"))) (build-system r-build-system) (propagated-inputs From 63d953e745bb795c9363a244efd5512d65561114 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:12 +0100 Subject: [PATCH 115/141] gnu: r-tidytext: Update to 0.4.0. * gnu/packages/cran.scm (r-tidytext): Update to 0.4.0. [propagated-inputs]: Remove r-hunspell; add r-cli. --- 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 08ae82504e..0f0751f75b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -31501,20 +31501,20 @@ vignettes in all common formats.") (define-public r-tidytext (package (name "r-tidytext") - (version "0.3.4") + (version "0.4.0") (source (origin (method url-fetch) (uri (cran-uri "tidytext" version)) (sha256 (base32 - "0mk75wdiy4mixj1xlksw9ns4ajlj8ak90sgchjcg1zb90qp7gg56")))) + "1ywx4zhx1a0r1lyd11w3cbz33silpx5m1sk9rd3kvj21wvfdramk")))) (properties `((upstream-name . "tidytext"))) (build-system r-build-system) (propagated-inputs - (list r-dplyr + (list r-cli + r-dplyr r-generics - r-hunspell r-janeaustenr r-lifecycle r-matrix From d715d7fc2d01b68d055182922780f928a6a3eaf0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:12 +0100 Subject: [PATCH 116/141] gnu: r-mlr3tuning: Update to 0.17.2. * gnu/packages/cran.scm (r-mlr3tuning): Update to 0.17.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 0f0751f75b..1f2007ae16 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -32703,13 +32703,13 @@ annealing.") (define-public r-mlr3tuning (package (name "r-mlr3tuning") - (version "0.17.1") + (version "0.17.2") (source (origin (method url-fetch) (uri (cran-uri "mlr3tuning" version)) (sha256 (base32 - "03habi7dm5xgwfb4zjn9nhvyym46qcljy31jz32fxalsap1mk9jb")))) + "1w08bwk843nfs3d810lnfh3wmd7gkq9141m7lcn9ail2x4ib91bb")))) (build-system r-build-system) (propagated-inputs (list r-bbotk From 6f1dcea25a10296da6fad3c7816731da92aa9357 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:13 +0100 Subject: [PATCH 117/141] gnu: r-tensorflow: Update to 2.11.0. * gnu/packages/cran.scm (r-tensorflow): Update to 2.11.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 1f2007ae16..f638dd6f73 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -34598,14 +34598,14 @@ Tensorflow graphs.") (define-public r-tensorflow (package (name "r-tensorflow") - (version "2.9.0") + (version "2.11.0") (source (origin (method url-fetch) (uri (cran-uri "tensorflow" version)) (sha256 (base32 - "12c6ndxx4g6fqjakpzp9pgl29ghswhqyr6q9jahpk0cawizh2znj")))) + "1nqb3vgsw1xrpi1skw6yqwgdri3i8d9np0jylzfj7plizx63z64b")))) (properties `((upstream-name . "tensorflow"))) (build-system r-build-system) (inputs (list tensorflow)) From c4922c931529b1b27e72f095b92332d8c550152c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:14 +0100 Subject: [PATCH 118/141] gnu: r-keras: Update to 2.11.0. * gnu/packages/cran.scm (r-keras): Update to 2.11.0. [propagated-inputs]: Remove r-ellipsis. --- gnu/packages/cran.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index f638dd6f73..7a17f995db 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -34629,19 +34629,18 @@ between them.") (define-public r-keras (package (name "r-keras") - (version "2.9.0") + (version "2.11.0") (source (origin (method url-fetch) (uri (cran-uri "keras" version)) (sha256 (base32 - "06513d1fp7cxk4v03xm9lhgj6xmp9dqqvw3lnzwbzjwdkfj948yc")))) + "19r11mlxpdl09f7sfwzflnjhx2a6jgm57hjzg81pk8kprk4w7lvp")))) (properties `((upstream-name . "keras"))) (build-system r-build-system) (propagated-inputs - (list r-ellipsis - r-generics + (list r-generics r-glue r-magrittr r-r6 From 9817e4adacae3397a1070de7fa63a0b0fe8cb958 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:14 +0100 Subject: [PATCH 119/141] gnu: r-formatr: Update to 1.13. * gnu/packages/statistics.scm (r-formatr): Update to 1.13. --- 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 52d081b47a..aeae44a0f4 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1450,13 +1450,13 @@ adapted for other output formats, such as HTML or LaTeX.") (define-public r-formatr (package (name "r-formatr") - (version "1.12") + (version "1.13") (source (origin (method url-fetch) (uri (cran-uri "formatR" version)) (sha256 (base32 - "12wch1774113nlrc0lihfn5rbh4hln9sg6dv6zc2bvyb8fzyyllb")))) + "09z5wvbhrr2s2d196cxwzvjn0qr6pf4czrfqwdzqgqrdpwrxq1xj")))) (build-system r-build-system) (native-inputs (list r-knitr)) From 6abdb707d10534b4062c31f90c3fba441d83a50f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:14 +0100 Subject: [PATCH 120/141] gnu: r-highr: Update to 0.10. * gnu/packages/statistics.scm (r-highr): Update to 0.10. --- 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 aeae44a0f4..9852165954 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1472,13 +1472,13 @@ There is also a Shiny app as a user interface in this package.") (define-public r-highr (package (name "r-highr") - (version "0.9") + (version "0.10") (source (origin (method url-fetch) (uri (cran-uri "highr" version)) (sha256 (base32 - "0kgdv2vf1lz3b5kbal9s83gg6812nw7fvrq0rkyr0v4k1lwi3zxy")))) + "0yrlpjs8qzq1d7iy4gypnf4x1gvxq6vaghkdh1kfv433yqgvqmgc")))) (build-system r-build-system) (propagated-inputs (list r-xfun)) From b09ff0fbc65d055b348c99f7530db6ece241c828 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:15 +0100 Subject: [PATCH 121/141] gnu: r-locfit: Update to 1.5-9.7. * gnu/packages/statistics.scm (r-locfit): Update to 1.5-9.7. --- 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 9852165954..ad6dede0c1 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1930,14 +1930,14 @@ side.") (define-public r-locfit (package (name "r-locfit") - (version "1.5-9.6") + (version "1.5-9.7") (source (origin (method url-fetch) (uri (cran-uri "locfit" version)) (sha256 (base32 - "0xilf6gp3m8xla2fvxr491j31pvim707mnhswvm9yxnb0d09xs0y")))) + "1zvsa7hvnp0pvjyy0nnrg8bdv8gv4l23jb66wkc0kipvi78grra8")))) (build-system r-build-system) (propagated-inputs (list r-lattice)) From 0034f4f25cc4e489663f9a7225f94f5db8765997 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:15 +0100 Subject: [PATCH 122/141] gnu: r-rsqlite: Update to 2.2.20. * gnu/packages/statistics.scm (r-rsqlite): Update to 2.2.20. --- 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 ad6dede0c1..ff8bd30009 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2968,13 +2968,13 @@ a column in data frame.") (define-public r-rsqlite (package (name "r-rsqlite") - (version "2.2.19") + (version "2.2.20") (source (origin (method url-fetch) (uri (cran-uri "RSQLite" version)) (sha256 (base32 - "11jzg3ywzaql3zwp7cwql1nilz8pvbz903whyh0d447rs0xnn3vj")))) + "1km7rg2yg3lmjz7lplypw61sx78mykyksgbdq3j5kjpcvirdbdaj")))) (properties `((upstream-name . "RSQLite"))) (build-system r-build-system) (propagated-inputs From 8156216b4a5adef3539824782c0598ecaac25fba Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 15:00:15 +0100 Subject: [PATCH 123/141] gnu: r-purrr: Update to 1.0.0. * gnu/packages/statistics.scm (r-purrr): Update to 1.0.0. [propagated-inputs]: Add r-cli, r-lifecycle, and r-vctrs. --- gnu/packages/statistics.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index ff8bd30009..6332789fc7 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4318,17 +4318,17 @@ It uses and relies on grid graphics and formal (S4) classes and methods.") (define-public r-purrr (package (name "r-purrr") - (version "0.3.5") + (version "1.0.0") (source (origin (method url-fetch) (uri (cran-uri "purrr" version)) (sha256 (base32 - "1vzwajjw9h6jg5l82j7nkf3iraqmzwzh40s7q6wkq14awzbnqf52")))) + "1hm6lylx05s43rdk9q7xqdcydz495aim16c7xlw94lyw7v5l81kz")))) (build-system r-build-system) (propagated-inputs - (list r-magrittr r-rlang)) + (list r-cli r-lifecycle r-magrittr r-rlang r-vctrs)) (native-inputs (list r-knitr)) (home-page "https://github.com/hadley/purrr") From 8aa104752cb6a61f2ac689c31ac627ccab32f7fe Mon Sep 17 00:00:00 2001 From: Trevor Richards Date: Fri, 23 Dec 2022 20:54:36 -0800 Subject: [PATCH 124/141] gnu: Add sbcl-stumpwm-battery-portable. * gnu/packages/wm.scm (sbcl-stumpwm-battery-portable): New variable. Signed-off-by: Guillaume Le Vaillant --- gnu/packages/wm.scm | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 18fe606c7b..a13467663e 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -56,7 +56,7 @@ ;;; Copyright © 2022 Maxim Cournoyer ;;; Copyright © 2022 muradm ;;; Copyright © 2022 Elais Player -;;; Copyright © 2022 Trevor Richards +;;; Copyright © 2022, 2023 Trevor Richards ;;; Copyright © 2022 Fredrik Salomonsson ;;; Copyright © 2022 ( ;;; Copyright © 2022 zamfofex @@ -2358,6 +2358,25 @@ interface[fn:dbus-spec]. It shows notifications using stumpwm:message by default.") (license license:gpl3+))) +(define-public sbcl-stumpwm-battery-portable + (package + (inherit stumpwm-contrib) + (name "sbcl-stumpwm-battery-portable") + (build-system asdf-build-system/sbcl) + (inputs + (list sbcl-cl-ppcre + (list stumpwm "lib"))) + (arguments + '(#:asd-systems '("battery-portable") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ (chdir "modeline/battery-portable")))))) + (synopsis "Battery level indicator for StumpWM") + (description "This module provides a battery level indicator for the +modeline. It can be displayed in the modeline with %B.") + (license (list license:expat license:gpl3+)))) + (define-public lemonbar (package (name "lemonbar") From f87bc05de1d1481b1e7dc3482281a801fa3a0c64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20A=2E=20Gomes?= Date: Mon, 2 Jan 2023 14:06:47 +0200 Subject: [PATCH 125/141] Add cl-history-tree. * gnu/packages/lisp-xyz.scm (sbcl-history-tree, cl-history-tree, ecl-history-tree): New variable. Signed-off-by: Guillaume Le Vaillant --- gnu/packages/lisp-xyz.scm | 42 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index f8dbf9e1c8..db20ad00c0 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -23,7 +23,7 @@ ;;; Copyright © 2020, 2021, 2022 Sharlatan Hellseher ;;; Copyright © 2021, 2022 Aurora ;;; Copyright © 2021 Matthew James Kraai -;;; Copyright © 2021, 2022 André A. Gomes +;;; Copyright © 2021, 2022, 2023 André A. Gomes ;;; Copyright © 2021, 2022 Cage ;;; Copyright © 2021 Cameron Chaparro ;;; Copyright © 2021 Charles Jackson @@ -11083,6 +11083,46 @@ them as PNG files.") (define-public ecl-hdf5-cffi (sbcl-package->ecl-package sbcl-hdf5-cffi)) +(define-public sbcl-history-tree + (package + (name "sbcl-history-tree") + (version "0.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/atlas-engineer/history-tree") + (commit version))) + (file-name (git-file-name "cl-history-tree" version)) + (sha256 + (base32 "0z4mfgswfbpkh496qqk130yk6d0q0q5imqybw9n58aq4ygfhibhz")))) + (build-system asdf-build-system/sbcl) + (inputs + (list + sbcl-alexandria + sbcl-custom-hash-table + sbcl-local-time + sbcl-hu.dwim.defclass-star + sbcl-trivial-package-local-nicknames)) + (native-inputs (list sbcl-lisp-unit2)) + (home-page "https://github.com/atlas-engineer/history-tree") + (synopsis "Store the history of a browser's visited paths") + (description + "This data structure can be used to store the history of visited paths or +URLs with a file or web browser, in a way that no “forward” element is ever +forgotten. + +The history tree is “global” in the sense that multiple owners (e.g. tabs) can +have overlapping histories. On top of that, an owner can spawn another one, +starting from one of its nodes (typically when you open a URL in a new tab).") + (license license:bsd-3))) + +(define-public cl-history-tree + (sbcl-package->cl-source-package sbcl-history-tree)) + +(define-public ecl-history-tree + (sbcl-package->ecl-package sbcl-history-tree)) + (define-public sbcl-cl-randist (package (name "sbcl-cl-randist") From 7efcf36e3b753a1dba6f8208f3c22d151007eaf0 Mon Sep 17 00:00:00 2001 From: Brian Kubisiak Date: Sun, 1 Jan 2023 10:50:19 -0800 Subject: [PATCH 126/141] gnu: prusa-slicer: Fix segfault on startup. * gnu/packages/engineering.scm (prusa-slicer)[inputs]: Change from wxwidgets to wxwidgets-3.0. Signed-off-by: Guillaume Le Vaillant --- gnu/packages/engineering.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index b995366978..ac6f18d879 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -3363,7 +3363,9 @@ visualization, matrix manipulation.") pango tbb eudev - wxwidgets + ;; prusa-slicer 2.5 segfaults on startup with wxwidgets 3.2 + ;; See https://github.com/prusa3d/PrusaSlicer/issues/8299 + wxwidgets-3.0 zlib)) (home-page "https://www.prusa3d.com/prusaslicer/") (synopsis "G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)") From f84f676404d90b3e8df1e1c79d186eaf1ca9b88a Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 2 Jan 2023 10:22:20 -0500 Subject: [PATCH 127/141] gnu: Add python-docx. * gnu/packages/python-xyz.scm (python-docx): New variable. --- gnu/packages/python-xyz.scm | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3bdd1e00d6..9526447a2a 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -52,7 +52,7 @@ ;;; Copyright © 2018-2022 Nicolas Goaziou ;;; Copyright © 2018 Oleg Pykhalov ;;; Copyright © 2018, 2019, 2021 Clément Lassieur -;;; Copyright © 2018, 2019, 2020, 2021, 2022 Maxim Cournoyer +;;; Copyright © 2018, 2019, 2020, 2021, 2022, 2023 Maxim Cournoyer ;;; Copyright © 2018 Luther Thompson ;;; Copyright © 2018 Vagrant Cascadian ;;; Copyright © 2015, 2018 Pjotr Prins @@ -4885,6 +4885,31 @@ via commands such as @command{rst2man}, as well as supporting Python code.") ;; tests contain Python 2 syntax. (arguments '(#:tests? #false)))) +(define-public python-docx + (package + (name "python-docx") + (version "0.8.11") + (source (origin + (method url-fetch) + (uri (pypi-uri "python-docx" version)) + (sha256 + (base32 + "1i7bxghb7knlyjain101qg1jmmz2b6qj03bi3vfxhvcml0rx418i")))) + (build-system pyproject-build-system) + (native-inputs + (list behave + python-flake8 + python-mock + python-pyparsing + python-pytest)) + (propagated-inputs + (list python-lxml)) + (home-page "https://github.com/python-openxml/python-docx/") + (synopsis "Python library to create and modify Microsoft Word documents") + (description "This Python library can be used to create and update +Microsoft Word (.docx) documents.") + (license license:expat))) + (define-public python-restructuredtext-lint (package (name "python-restructuredtext-lint") From e06c150662ebd96fbaee8a7d7494152e3e93ed0b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 2 Jan 2023 22:04:35 +0100 Subject: [PATCH 128/141] gnu: python-numcodecs: Do not use python-typing-extensions-next. * gnu/packages/python-xyz.scm (python-numcodecs)[propagated-inputs]: Replace python-typing-extensions-next with python-typing-extensions. --- 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 9526447a2a..d0b54443af 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -23569,7 +23569,7 @@ tool).") (list python-entrypoints python-numpy python-msgpack - python-typing-extensions-next)) + python-typing-extensions)) (native-inputs (list python-cython python-pytest python-setuptools-scm)) (home-page "https://github.com/zarr-developers/numcodecs") From 927db0ee69b47e75faec4b4ca74cee5829fc8b2a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 1 Jan 2023 16:02:08 -0500 Subject: [PATCH 129/141] gnu: linux-libre: Update to 6.0.16. * gnu/packages/linux.scm (linux-libre-6.0-version): Update to 6.0.16. (linux-libre-6.0-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 568c2b6b92..69573bace4 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -480,7 +480,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The current "stable" kernels. That is, the most recently released major ;; versions that are still supported upstream. -(define-public linux-libre-6.0-version "6.0.15") +(define-public linux-libre-6.0-version "6.0.16") (define-public linux-libre-6.0-gnu-revision "gnu") (define deblob-scripts-6.0 (linux-libre-deblob-scripts @@ -490,7 +490,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "16g2bin3xay30zfss1vlb7pwcss5giaxaksp4v1gk05wn51wjrqr"))) (define-public linux-libre-6.0-pristine-source (let ((version linux-libre-6.0-version) - (hash (base32 "08389890gq4b9vkvrb22lzkr4blkn3a5ma074ns19gl89wyyp16l"))) + (hash (base32 "1r2wf3hf7yxl7lxma7plyi8pk3dmlsrpm763rf0g1h8ilsy72844"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-6.0))) From 423e226ae6a18e002eb223f378f2a260c677e095 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 1 Jan 2023 16:02:26 -0500 Subject: [PATCH 130/141] gnu: linux-libre 5.15: Update to 5.15.86. * gnu/packages/linux.scm (linux-libre-5.15-version): Update to 5.15.86. (linux-libre-5.15-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 69573bace4..f24e92b908 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -498,7 +498,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.15-version "5.15.85") +(define-public linux-libre-5.15-version "5.15.86") (define-public linux-libre-5.15-gnu-revision "gnu") (define deblob-scripts-5.15 (linux-libre-deblob-scripts @@ -508,7 +508,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1m73pgx8v047xb2gck2g7j7khniis8c9akn9vhzgsdfglrf8p6fj"))) (define-public linux-libre-5.15-pristine-source (let ((version linux-libre-5.15-version) - (hash (base32 "024qhjh9mgfnanr1qd8002n6a4wpn98lajli12a0m3n9z8lsw2rc"))) + (hash (base32 "1vpjnmwqsx6akph2nvbsv2jl7pp8b7xns3vmwbljsl23lkpxkz40"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.15))) From 8cebb78bbab7f6ae207c763392d20af2ffce5946 Mon Sep 17 00:00:00 2001 From: Akib Azmain Turja Date: Tue, 3 Jan 2023 09:29:13 +0800 Subject: [PATCH 131/141] gnu: Add aspell-dict-bn. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/aspell.scm (aspell-dict-bn): New variable. Signed-off-by: 宋文武 --- gnu/packages/aspell.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/aspell.scm b/gnu/packages/aspell.scm index 9a5a9c6bcc..76deb7cdce 100644 --- a/gnu/packages/aspell.scm +++ b/gnu/packages/aspell.scm @@ -171,6 +171,13 @@ dictionaries, including personal ones.") (base32 "1svls9p7rsfi3hs0afh0cssj006qb4v1ik2yzqgj8hm10c6as2sm"))) +(define-public aspell-dict-bn + (aspell-dictionary "bn" "Bengali" + #:version "0.01.1-1" + #:sha256 + (base32 + "1nc02jd67iggirwxnhdvlvaqm0xfyks35c4psszzj3dhzv29qgxh"))) + (define-public aspell-dict-ca (let ((version "2.5.0") (sha256 From 3354ca5970f150d99871f3a391a58d5f2cca8018 Mon Sep 17 00:00:00 2001 From: Hilton Chain Date: Mon, 2 Jan 2023 14:53:47 +0800 Subject: [PATCH 132/141] gnu: emacs-vterm: Update to 0.0.2. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-vterm): Update to 0.0.2. Signed-off-by: 宋文武 --- gnu/packages/emacs-xyz.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 5decd51087..12ee83104b 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -26686,12 +26686,10 @@ integration.") (license license:gpl3+))) (define-public emacs-vterm - (let ((version "0.0.1") - (revision "1") - (commit "b44723552f86407d528c4a6c8057382c061b008e")) + (let ((commit "e19dc2bb9859a75616bf068c341a540d0d329e4d")) (package (name "emacs-vterm") - (version (git-version version revision commit)) + (version "0.0.2") (source (origin (method git-fetch) (uri (git-reference @@ -26700,7 +26698,7 @@ integration.") (file-name (git-file-name name version)) (sha256 (base32 - "0rq2skwylvc7s4vfpbbsdykws4akyp9sc6xgrh2ql5yydhhnv2h3")))) + "0iqlzpy83ra6xz406fmddfj72bmkdb5b1j59m1dbxf3wxn55320d")))) (build-system emacs-build-system) (arguments `(#:modules ((guix build emacs-build-system) From c6ac47afdf89f01c45850d358cff778378c312f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 3 Jan 2023 12:19:48 +0100 Subject: [PATCH 133/141] ui: It's 2023 now! * guix/ui.scm (show-version-and-exit): Change year to 2023. --- guix/ui.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/guix/ui.scm b/guix/ui.scm index 3bca3b1e40..f26c4534aa 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012-2022 Ludovic Courtès +;;; Copyright © 2012-2023 Ludovic Courtès ;;; Copyright © 2013, 2018 Mark H Weaver ;;; Copyright © 2013 Nikita Karetnikov ;;; Copyright © 2014 Cyril Roelandt @@ -518,7 +518,7 @@ See the \"Application Setup\" section in the manual, for more info.\n")) "Display version information for COMMAND and `(exit 0)'." (simple-format #t "~a (~a) ~a~%" command %guix-package-name %guix-version) - (format #t "Copyright ~a 2022 ~a" + (format #t "Copyright ~a 2023 ~a" ;; TRANSLATORS: Translate "(C)" to the copyright symbol ;; (C-in-a-circle), if this symbol is available in the user's ;; locale. Otherwise, do not translate "(C)"; leave it as-is. */ From a330bfdf5b2f27c34b5ece82bb355553af110cfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 27 Dec 2022 22:53:10 +0100 Subject: [PATCH 134/141] upstream: Allow downgrades. Previously, 'guix refresh -u guile=3.0.0' would do nothing. With this change, it actually downgrades 'guile'. This is a followup to 8aeccc6240ec45f0bc7bed655e0c8149ae4253eb. * guix/upstream.scm (package-update): Ignore 'version>?' check when #:version is passed. Warn about downgrades. --- guix/upstream.scm | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/guix/upstream.scm b/guix/upstream.scm index f3ab9ab78b..4c72388bf3 100644 --- a/guix/upstream.scm +++ b/guix/upstream.scm @@ -501,11 +501,22 @@ SOURCE, an ." changes for PACKAGE; return #f (three values) when PACKAGE is up-to-date; raise an error when the updater could not determine available releases. KEY-DOWNLOAD specifies a download policy for missing OpenPGP keys; allowed -values: 'always', 'never', and 'interactive' (default)." +values: 'always', 'never', and 'interactive' (default). + +When VERSION is specified, update PACKAGE to that version, even if that is a +downgrade." (match (package-latest-release package updaters #:version version) ((? upstream-source? source) - (if (version>? (upstream-source-version source) - (package-version package)) + (if (or (version>? (upstream-source-version source) + (package-version package)) + (and version + (begin + (warning (package-location package) + (G_ "downgrading '~a' from ~a to ~a~%") + (package-name package) + (package-version package) + (upstream-source-version source)) + #t))) (let ((method (match (package-source package) ((? origin? origin) (origin-method origin)) From 11235dd85a791ca7c88d964fb1f47ec876b43b4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 27 Dec 2022 22:50:07 +0100 Subject: [PATCH 135/141] refresh: Honor user-provided target version and report downgrades. Previously, 'guix refresh guile=3.0.0' would print: 3.0.8 is already the latest version of guile With this change, it prints: guile would be downgraded from 3.0.8 to 3.0.0 This is a followup to 8aeccc6240ec45f0bc7bed655e0c8149ae4253eb. * guix/scripts/refresh.scm (check-for-package-update): Take an instead of a . Report downgrades as such when UPDATE-SPEC specifies a target version. (guix-refresh): Adjust caller. --- guix/scripts/refresh.scm | 46 +++++++++++++++++++++++++++------------- 1 file changed, 31 insertions(+), 15 deletions(-) diff --git a/guix/scripts/refresh.scm b/guix/scripts/refresh.scm index e0b94ce48d..65c3ce9c16 100644 --- a/guix/scripts/refresh.scm +++ b/guix/scripts/refresh.scm @@ -382,10 +382,15 @@ downloaded and authenticated; not updating~%") (when warn? (warn-no-updater package)))) -(define* (check-for-package-update package updaters #:key warn?) - "Check whether an update is available for PACKAGE and print a message. When -WARN? is true and no updater exists for PACKAGE, print a warning." - (match (package-latest-release package updaters) +(define* (check-for-package-update update-spec updaters #:key warn?) + "Check whether UPDATE-SPEC is feasible, and print a message. +When WARN? is true and no updater exists for PACKAGE, print a warning." + (define package + (update-spec-package update-spec)) + + (match (package-latest-release package updaters + #:version + (update-spec-version update-spec)) ((? upstream-source? source) (let ((loc (or (package-field-location package 'version) (package-location package)))) @@ -403,23 +408,34 @@ WARN? is true and no updater exists for PACKAGE, print a warning." (package-version package) (package-name package)))) (else - (when warn? - (warning loc - (G_ "~a is greater than \ + (if (update-spec-version update-spec) + (info loc + (G_ "~a would be downgraded from ~a to ~a~%") + (package-name package) + (package-version package) + (upstream-source-version source)) + (when warn? + (warning loc + (G_ "~a is greater than \ the latest known version of ~a (~a)~%") - (package-version package) - (package-name package) - (upstream-source-version source))))))) + (package-version package) + (package-name package) + (upstream-source-version source)))))))) (#f (when warn? ;; Distinguish between "no updater" and "failing updater." (match (lookup-updater package updaters) ((? upstream-updater? updater) - (warning (package-location package) - (G_ "'~a' updater failed to determine available \ + (if (update-spec-version update-spec) + (warning (G_ "'~a' updater failed to find version ~a of '~a'~%") + (upstream-updater-name updater) + (update-spec-version update-spec) + (package-name package)) + (warning (package-location package) + (G_ "'~a' updater failed to determine available \ releases for ~a~%") - (upstream-updater-name updater) - (package-name package))) + (upstream-updater-name updater) + (package-name package)))) (#f (warn-no-updater package))))))) @@ -591,5 +607,5 @@ all are dependent packages: ~{~a~^ ~}~%") (else (for-each (cut check-for-package-update <> updaters #:warn? warn?) - (map update-spec-package update-specs)) + update-specs) (return #t))))))))) From 473692b812b4ab4267d9bddad0fb27787d2112ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 3 Jan 2023 12:00:16 +0100 Subject: [PATCH 136/141] refresh: Always return an for each command-line option. This fixes a regression introduced in 8aeccc6240ec45f0bc7bed655e0c8149ae4253eb whereby packages specified via -e, -r, or -m, as well as packages *not* specified on the command line, would all lead to a wrong-type error. Reported by Ricardo Wurmus at . * guix/scripts/refresh.scm (): Move above. Rename constructor to '%update-spec' and add separate 'update-spec' procedure with optional #:version parameter. (options->update-specs): Always return a list of and update docstring accordingly. Rename 'args-packages' to 'update-specs' and ensure it's a list of ; handle 'manifest' arguments here. --- guix/scripts/refresh.scm | 87 +++++++++++++++++++++------------------- 1 file changed, 46 insertions(+), 41 deletions(-) diff --git a/guix/scripts/refresh.scm b/guix/scripts/refresh.scm index 65c3ce9c16..6498d73c2b 100644 --- a/guix/scripts/refresh.scm +++ b/guix/scripts/refresh.scm @@ -183,9 +183,31 @@ specified with `--select'.\n")) (newline) (show-bug-report-information)) + +;;; +;;; Utilities. +;;; + +(define-record-type + (%update-spec package version) + update? + (package update-spec-package) + (version update-spec-version)) + +(define* (update-spec package #:optional version) + (%update-spec package version)) + +(define (update-specification->update-spec spec) + "Given SPEC, a package name like \"guile@2.0=2.0.8\", return a +record with two fields: the package to upgrade, and the target version." + (match (string-rindex spec #\=) + (#f (update-spec (specification->package spec) #f)) + (idx (update-spec (specification->package (substring spec 0 idx)) + (substring spec (1+ idx)))))) + (define (options->update-specs opts) - "Return the list of packages requested by OPTS, honoring options like -'--recursive'." + "Return the list of records requested by OPTS, honoring +options like '--recursive'." (define core-package? (let* ((input->package (match-lambda ((name (? package? package) _ ...) package) @@ -220,60 +242,43 @@ update would trigger a complete rebuild." (_ (cons package lst))))) - (define args-packages - ;; Packages explicitly passed as command-line arguments. - (match (filter-map (match-lambda + (define update-specs + ;; Update specs explicitly passed as command-line arguments. + (match (append-map (match-lambda (('argument . spec) ;; Take either the specified version or the ;; latest one. - (update-specification->update-spec spec)) + (list (update-specification->update-spec spec))) (('expression . exp) - (read/eval-package-expression exp)) - (_ #f)) + (list (update-spec (read/eval-package-expression exp)))) + (('manifest . manifest) + (map update-spec (packages-from-manifest manifest))) + (_ + '())) opts) (() ;default to all packages (let ((select? (match (assoc-ref opts 'select) ('core core-package?) ('non-core (negate core-package?)) (_ (const #t))))) - (fold-packages (lambda (package result) - (if (select? package) - (keep-newest package result) - result)) - '()))) + (map update-spec + (fold-packages (lambda (package result) + (if (select? package) + (keep-newest package result) + result)) + '())))) (some ;user-specified packages some))) - (define packages - (match (assoc-ref opts 'manifest) - (#f args-packages) - ((? string? file) (packages-from-manifest file)))) - (if (assoc-ref opts 'recursive?) - (mlet %store-monad ((edges (node-edges %bag-node-type - (all-packages)))) - (return (node-transitive-edges packages edges))) + (mlet* %store-monad ((edges (node-edges %bag-node-type (all-packages))) + (packages -> (node-transitive-edges + (map update-spec-package update-specs) + edges))) + ;; FIXME: The 'version' field of each update spec is lost. + (return (map update-spec packages))) (with-monad %store-monad - (return packages)))) - - -;;; -;;; Utilities. -;;; - -(define-record-type - (update-spec package version) - update? - (package update-spec-package) - (version update-spec-version)) - -(define (update-specification->update-spec spec) - "Given SPEC, a package name like \"guile@2.0=2.0.8\", return a -record with two fields: the package to upgrade, and the target version." - (match (string-rindex spec #\=) - (#f (update-spec (specification->package spec) #f)) - (idx (update-spec (specification->package (substring spec 0 idx)) - (substring spec (1+ idx)))))) + (return update-specs)))) ;;; From bff36b5f02fee4265144b4f573c387d27935fcd6 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 31 Dec 2022 22:31:47 +0100 Subject: [PATCH 137/141] gnu: toutenclic: Remove defunct source URI. * gnu/packages/education.scm (toutenclic)[source](uri): Remove URI that serves an error page. --- 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 c6829738c4..78e70bf27c 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -384,8 +384,8 @@ to open the application in a web browser, for offline usage.") (method url-fetch) (uri (list ;; XXX: Upstream does not exist anymore. - (string-append "http://www.bipede.fr/downloads/logiciels/" - "ToutEnClic-" version "-src.zip") + ;; (string-append "http://www.bipede.fr/downloads/logiciels/" + ;; "ToutEnClic-" version "-src.zip") (string-append "https://archive.org/download/tout-en-clic-" version "-src/ToutEnClic-" version "-src.zip"))) (sha256 From a3aff55ed4677cc0c11ca7e7116f6fd279db6ee3 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 31 Dec 2022 22:49:02 +0100 Subject: [PATCH 138/141] gnu: kajongg: Add missing input. * gnu/packages/kde-games.scm (kajongg)[inputs]: Add PYTHON-QTPY. While here, use PYTHON-PYQT-WITHOUT-QTWEBKIT instead of PYTHON-PYQT. --- gnu/packages/kde-games.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/kde-games.scm b/gnu/packages/kde-games.scm index 60c4d839d6..b0df2cf3d2 100644 --- a/gnu/packages/kde-games.scm +++ b/gnu/packages/kde-games.scm @@ -322,8 +322,9 @@ This package is part of the KDE games module.") ki18n libkmahjongg python + python-pyqt-without-qtwebkit python-twisted - python-pyqt + python-qtpy python-zope-interface qtbase-5 qtsvg-5)) From cdf98d19da9b70a43ae298d31f79d0eba003844b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 31 Dec 2022 22:53:22 +0100 Subject: [PATCH 139/141] gnu: veusz: Don't depend on QtWebKit. * gnu/packages/maths.scm (veusz)[inputs]: Change from PYTHON-PYQT to PYTHON-PYQT-WITHOUT-QTWEBKIT. [arguments]: Use SEARCH-INPUT-DIRECTORY instead of label. --- gnu/packages/maths.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 5ff7389a02..d9bc2922c5 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3221,8 +3221,7 @@ ASCII text files using Gmsh's own scripting language.") ((@@ (guix build python-build-system) call-setuppy) "build_ext" (list (string-append "--sip-dir=" - (assoc-ref inputs "python-pyqt") - "/share/sip")) + (search-input-directory inputs "share/sip"))) #t))) ;; Ensure that icons are found at runtime. (add-after 'install 'wrap-executable @@ -3240,7 +3239,7 @@ ASCII text files using Gmsh's own scripting language.") (list ghostscript ;optional, for EPS/PS output python-dbus python-h5py ;optional, for HDF5 data - python-pyqt + python-pyqt-without-qtwebkit qtbase-5 qtsvg-5)) (propagated-inputs From 3eec6dd2155cc15002d393c04c12786829de095a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 31 Dec 2022 22:58:00 +0100 Subject: [PATCH 140/141] gnu: frescobaldi: Don't depend on QtWebKit. * gnu/packages/music.scm (frescobaldi)[inputs]: Change from PYTHON-PYQT to PYTHON-PYQT-WITHOUT-QTWEBKIT. --- gnu/packages/music.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 5be767a138..99b4fd4ec0 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2947,7 +2947,7 @@ using a system-independent interface.") python-ly python-poppler-qt5 python-pyportmidi - python-pyqt + python-pyqt-without-qtwebkit python-sip)) (home-page "https://www.frescobaldi.org/") (synopsis "LilyPond sheet music text editor") From 71ee1fbbed8ea9788dd48a634653d66606d372ce Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 31 Dec 2022 23:00:44 +0100 Subject: [PATCH 141/141] gnu: flyer-composer: Don't depend on QtWebKit. * gnu/packages/pdf.scm (flyer-composer)[inputs]: Change from PYTHON-PYQT to PYTHON-PYQT-WITHOUT-QTWEBKIT. --- gnu/packages/pdf.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index c4b1b3fb46..4b9d0623fe 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -184,7 +184,10 @@ information.") (,(string-append qtbase "/lib/qt5/plugins/platforms")))) #t)))))) (inputs - (list python-pypdf2 python-pyqt python-poppler-qt5 qtbase-5)) + (list python-poppler-qt5 + python-pypdf2 + python-pyqt-without-qtwebkit + qtbase-5)) (home-page "http://crazy-compilers.com/flyer-composer") (synopsis "Rearrange PDF pages to print as flyers on one sheet") (description "@command{flyer-composer} can be used to prepare one- or