diff options
author | Marius Bakke <marius@gnu.org> | 2023-01-03 15:38:13 +0100 |
---|---|---|
committer | Marius Bakke <marius@gnu.org> | 2023-01-03 15:38:13 +0100 |
commit | 9123bb0fba3fce976dc41cd3b8919ee73b4cee4d (patch) | |
tree | 50ba63a4a3a6ffeb2f37fd0929813b51e00d01dc /gnu/packages | |
parent | ec0fbb471dfc6f72796da9ebafbb0630daa91267 (diff) | |
parent | 71ee1fbbed8ea9788dd48a634653d66606d372ce (diff) | |
download | guix-9123bb0fba3fce976dc41cd3b8919ee73b4cee4d.tar guix-9123bb0fba3fce976dc41cd3b8919ee73b4cee4d.tar.gz |
Merge branch 'master' into staging
Diffstat (limited to 'gnu/packages')
47 files changed, 2060 insertions, 510 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 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 diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 78bd0e1446..4702d5d124 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -39,6 +39,7 @@ ;;; Copyright © 2022 Arjan Adriaanse <arjan@adriaan.se> ;;; Copyright © 2022 Juliana Sims <jtsims@protonmail.com> ;;; Copyright © 2022 Simon Streit <simon@netpanic.org> +;;; Copyright © 2022 Andy Tai <atai@atai.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -731,7 +732,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 +749,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 @@ -2463,6 +2464,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") @@ -4936,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 @@ -4945,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 diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 8cdce01e73..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")) @@ -12785,20 +12810,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 diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 89f051f337..e3a63882e9 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> ;;; Copyright © 2021 Stefan <stefan-guix@vodafonemail.de> +;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -62,12 +63,16 @@ #: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) #: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) @@ -638,7 +643,11 @@ 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") + (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/" @@ -669,6 +678,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) @@ -777,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 @@ -890,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")) 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 diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index fccf0002a7..7a17f995db 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -17,7 +17,7 @@ ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018, 2019 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2019 Nicolò Balzarotti <anothersms@gmail.com> -;;; Copyright © 2019, 2020, 2021 Wiktor Żelazny <wzelazny@vurv.cz> +;;; Copyright © 2019, 2020, 2021, 2022 Wiktor Żelazny <wzelazny@vurv.cz> ;;; Copyright © 2019 Arne Babenhauserheide <arne_bab@web.de> ;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2020 Todor Kondić <tk.code@protonmail.com> @@ -1124,6 +1124,61 @@ 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") + (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") @@ -4015,6 +4070,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.1") + (source (origin + (method url-fetch) + (uri (cran-uri "mapdata" version)) + (sha256 + (base32 + "1m2r4c8f7fp900g3sdjbfxxnxjla86hn75jd8hi96ms188p0j8b0")))) + (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") @@ -4645,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 @@ -5776,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)) @@ -6181,6 +6256,38 @@ to access PostgreSQL database systems.") ;; under the PostgreSQL license. (license license:gpl2))) +(define-public r-rpostgres + (package + (name "r-rpostgres") + (version "1.4.4") + (source + (origin + (method url-fetch) + (uri (cran-uri "RPostgres" version)) + (sha256 + (base32 + "1z6diaq4kwinl97d1v9cb96j8mrkj2s2v4ml1vykgy1jqi40dk69")))) + (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") @@ -6269,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") @@ -7367,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") @@ -7641,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 #; @@ -7813,6 +7920,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") @@ -10928,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)) @@ -17380,6 +17509,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") @@ -18961,6 +19117,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") @@ -20286,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") @@ -24732,6 +24908,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") @@ -27330,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 @@ -28174,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 @@ -29935,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)) @@ -30278,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 @@ -31233,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 @@ -31297,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 @@ -32499,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 @@ -34394,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)) @@ -34425,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 diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm index 9a972182cc..462a61a29f 100644 --- a/gnu/packages/dlang.scm +++ b/gnu/packages/dlang.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2019, 2022 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org> -;;; Copyright © 2021, 2022 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2021-2023 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2022 ( <paren@disroot.org> ;;; Copyright © 2022 Esther Flashner <esther@flashner.co.il> @@ -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") @@ -412,20 +413,20 @@ 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) - ("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 @@ -443,13 +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)) - (add-before 'check 'prepare-x + (("\\$\\(prefix\\)\\/\\$\\(libdir\\)") "$(libdir)")))) + (add-before 'check 'pre-check (lambda _ (system "Xvfb :1 &") (setenv "DISPLAY" ":1") - #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.") 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 diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index fb4c9b70f9..12ee83104b 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016, 2017 Nikita <nikita@n0.is> ;;; Copyright © 2016, 2019 Alex Griffin <a@ajgrf.com> -;;; Copyright © 2016-2022 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2016-2023 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2016-2022 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net> @@ -81,7 +81,7 @@ ;;; Copyright © 2020, 2021, 2022 Niklas Eklund <niklas.eklund@posteo.net> ;;; Copyright © 2020 Marco Grassi <marco.au.grassi98@protonmail.com> ;;; Copyright © 2020 Tomás Ortín Fernández <tomasortin@mailbox.org> -;;; Copyright © 2020, 2021 Zhu Zihao <all_but_last@163.com> +;;; Copyright © 2020-2022 Zhu Zihao <all_but_last@163.com> ;;; Copyright © 2020 Adam Kandur <rndd@tuta.io> ;;; Copyright © 2020 Tim Howes <timhowes@lavabit.com> ;;; Copyright © 2020 Noah Landis <noahlandis@posteo.net> @@ -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 @@ -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. @@ -673,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") @@ -3733,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) @@ -3742,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") @@ -7412,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 @@ -8053,7 +8100,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 +8109,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 @@ -10167,7 +10214,7 @@ interface.") (let ((commit "004cee6b8e01f8eb0cb1c683d0a637b14890600f")) (package (name "emacs-orderless") - (version "0.8") + (version "1.0") (source (origin (method git-fetch) @@ -10368,6 +10415,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")) @@ -15471,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 @@ -15480,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") @@ -15489,6 +15567,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") @@ -16502,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)) @@ -17916,7 +18017,7 @@ multiplexer.") (define-public emacs-plz (package (name "emacs-plz") - (version "0.2.1") + (version "0.3") (source (origin (method git-fetch) @@ -17925,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 @@ -22179,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) @@ -22188,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)) @@ -26458,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 @@ -26467,7 +26568,7 @@ comments.") (file-name (git-file-name name version)) (sha256 (base32 - "0fsg2si7afrnsz91i0ziza6nbc4ds9kpnr2z71wf6896zb1afhfx")))) + "03bavca89cf7dsjmg7hb48qnvca41ndiij33iw5yjjhbq1zyj8r4")))) (build-system emacs-build-system) (arguments (list @@ -26538,13 +26639,57 @@ 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") - (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 @@ -26553,7 +26698,7 @@ tabulated-lists).") (file-name (git-file-name name version)) (sha256 (base32 - "0rq2skwylvc7s4vfpbbsdykws4akyp9sc6xgrh2ql5yydhhnv2h3")))) + "0iqlzpy83ra6xz406fmddfj72bmkdb5b1j59m1dbxf3wxn55320d")))) (build-system emacs-build-system) (arguments `(#:modules ((guix build emacs-build-system) @@ -28911,7 +29056,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) @@ -28920,7 +29065,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)) @@ -28933,14 +29078,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 @@ -30075,6 +30220,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") @@ -30295,7 +30462,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) @@ -30304,7 +30471,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 @@ -30321,17 +30488,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 @@ -30832,7 +31001,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) @@ -30841,7 +31010,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") @@ -34039,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) @@ -34047,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") @@ -34152,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) @@ -34162,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 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.)") 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))) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 8fec474d0b..0f96784dd3 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1194,93 +1194,61 @@ 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"))))))) + (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) - ("sdl" ,sdl) - ("sdl-image" ,sdl-image) - ("sdl-mixer" ,sdl-mixer) - ("sdl-ttf" ,sdl-ttf) - ("sdl-gfx" ,sdl-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. -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 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. 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 diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 50872b3f36..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.0") + (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 - "140cwzpzk4y16ajxrg5zd2d7q60f5ivx5jk8w1h0qfjq2mp14sh7")))) + "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 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 diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 692b27a097..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) @@ -1241,6 +1242,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 +1280,155 @@ 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))))))) + +;; 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 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 <i.gankevich@spbu.ru> ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl> +;;; Copyright © 2022 Paul A. Patience <paul@apatience.com> ;;; ;;; 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") 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)) diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm index 18791359f2..1411f147cd 100644 --- a/gnu/packages/kodi.scm +++ b/gnu/packages/kodi.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2021 Greg Hogan <code@greghogan.com> +;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; 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-inputs kodi) + (prepend (list libinput + libxkbcommon + waylandpp + wayland-protocols)))) (synopsis "Kodi with Wayland rendering backend"))) (define-public kodi-cli diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 0830cc5ed7..ed5cb524ac 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))) @@ -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: ;; <https://www.kernel.org/category/releases.html> -(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))) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index a41eb845df..db20ad00c0 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2019, 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com> ;;; Copyright © 2019 Jesse Gildersleve <jessejohngildersleve@protonmail.com> -;;; Copyright © 2019, 2020, 2021, 2022 Guillaume Le Vaillant <glv@posteo.net> +;;; Copyright © 2019-2023 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net> ;;; Copyright © 2020 Dimakis Dimakakos <me@bendersteed.tech> @@ -23,7 +23,7 @@ ;;; Copyright © 2020, 2021, 2022 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; Copyright © 2021, 2022 Aurora <rind38@disroot.org> ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org> -;;; Copyright © 2021, 2022 André A. Gomes <andremegafone@gmail.com> +;;; Copyright © 2021, 2022, 2023 André A. Gomes <andremegafone@gmail.com> ;;; Copyright © 2021, 2022 Cage <cage-dev@twistfold.it> ;;; Copyright © 2021 Cameron Chaparro <cameron@cameronchaparro.com> ;;; Copyright © 2021 Charles Jackson <charles.b.jackson@protonmail.com> @@ -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) @@ -4036,6 +4037,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") @@ -11050,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") @@ -13073,6 +13146,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")) 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 <roel@gnu.org> ;;; Copyright © 2018–2022 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2018, 2021, 2022 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2018, 2021-2023 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com> @@ -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?) 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 <rekado@elephly.net> +;;; Copyright © 2016, 2022 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> @@ -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") 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 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 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 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 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") 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) 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)) 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 - 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 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 <wd@denx.de> + others: Mike Frysinger <vapier@gentoo.org>, Fred Bloggs <f.bloggs@napier.net> + ++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 <maxim.cournoyer@savoirfairelinux.com> + # + + 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 <maxim.cournoyer@savoirfairelinux.com> ++# ++ ++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' diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 19e10649f3..4b9d0623fe 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -23,6 +23,7 @@ ;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2022 Paul A. Patience <paul@apatience.com> +;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -183,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 @@ -1203,6 +1207,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") diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 2fc4db0d10..6e8ec0a25b 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -52,7 +52,7 @@ ;;; Copyright © 2018-2022 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018, 2019, 2021 Clément Lassieur <clement@lassieur.org> -;;; Copyright © 2018, 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2018, 2019, 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2018 Luther Thompson <lutheroto@gmail.com> ;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org> ;;; Copyright © 2015, 2018 Pjotr Prins <pjotr.guix@thebird.nl> @@ -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) - ("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 @@ -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") @@ -18887,13 +18912,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 @@ -18907,7 +18932,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 @@ -23542,7 +23567,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") diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 2a01279161..6e2c4d4f78 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 @@ -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,20 @@ Desktops into Active Directory environments using the winbind daemon.") libxslt libxml2))))) +(define-public samba/fixed-patched + (package + (inherit samba/fixed) + ;; 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-4.15.13.tar.gz")) + (sha256 + (base32 "0s29vzn5f42vjhx6h25c7v67n14ymqxn8glqa97d0rajd99y64n4")))))) + (define-public talloc (package (name "talloc") diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 52d081b47a..6332789fc7 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)) @@ -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)) @@ -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)) @@ -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 @@ -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") 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 <efraim@flashner.co.il> +;;; Copyright © 2015-2020, 2022-2023 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2021 Ludovic Courtès <ludo@gnu.org> @@ -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) 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 diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 4e7c183eee..182c1e5add 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -62,6 +62,7 @@ ;;; Copyright © 2022 Bird <birdsite@airmail.cc> ;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com> ;;; Copyright © 2022 Chadwain Holness <chadwainholness@gmail.com> +;;; Copyright © 2022 Andy Tai <atai@atai.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -4711,7 +4712,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 @@ -4720,7 +4721,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 @@ -4746,6 +4747,7 @@ create smoother and stable videos.") libopenshot-audio qtbase-5 qtmultimedia-5 + qtsvg-5 zeromq)) (arguments `(#:configure-flags @@ -4774,7 +4776,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 @@ -4783,7 +4785,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 @@ -4795,10 +4797,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) @@ -4820,12 +4824,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 @@ -4834,10 +4832,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 @@ -4892,9 +4896,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 @@ -4902,9 +4904,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 @@ -4914,7 +4913,6 @@ transitions, and effects and then export your film to many common formats.") qtquickcontrols-5 qtquickcontrols2-5 qtsvg-5 - qtwebkit qtwebsockets-5 qtx11extras sdl2)) @@ -5600,7 +5598,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 @@ -5609,7 +5607,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)) 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 <maxim.cournoyer@gmail.com> ;;; Copyright © 2022 muradm <mail@muradm.net> ;;; Copyright © 2022 Elais Player <elais@fastmail.com> -;;; Copyright © 2022 Trevor Richards <trev@trevdev.ca> +;;; Copyright © 2022, 2023 Trevor Richards <trev@trevdev.ca> ;;; Copyright © 2022 Fredrik Salomonsson <plattfot@posteo.net> ;;; Copyright © 2022 ( <paren@disroot.org> ;;; Copyright © 2022 zamfofex <zamfofex@twdb.moe> @@ -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") |