diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2019-09-18 11:54:54 +0200 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2019-09-18 11:54:54 +0200 |
commit | 993a4fbb7c3d1f9977e0789c21905fddd72241fd (patch) | |
tree | 899b928672607b9ad74dafd42eb2bfa048a041c4 /gnu/packages | |
parent | 248965c91caf7d10433f090b4712a9b201968416 (diff) | |
parent | 7bc46ecc34ceb042ff890e5d306d0a2a736e891d (diff) | |
download | patches-993a4fbb7c3d1f9977e0789c21905fddd72241fd.tar patches-993a4fbb7c3d1f9977e0789c21905fddd72241fd.tar.gz |
Merge remote-tracking branch 'origin/master' into wip-texlive
Diffstat (limited to 'gnu/packages')
81 files changed, 5742 insertions, 756 deletions
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 3e75b73dcb..2e072deed7 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2725,7 +2725,7 @@ tool for remote execution and deployment.") (define-public neofetch (package (name "neofetch") - (version "6.0.0") + (version "6.1.0") (source (origin (method git-fetch) (uri (git-reference @@ -2733,7 +2733,7 @@ tool for remote execution and deployment.") (commit version))) (sha256 (base32 - "0j0r40llyry1sgc6p9wd7jrpydps2lnj4rwajjp37697g2bik89i")))) + "022xzn9jk18k2f4b6011d8jk5nbl84i3mw3inlz4q52p2hvk8fch")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; there are no tests diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index fb9e78bf92..02b4d4ca21 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -1435,7 +1435,7 @@ of M4RI from F_2 to F_{2^e}.") (define-public eclib (package (name "eclib") - (version "20190226") + (version "20190909") (source (origin (method git-fetch) (uri (git-reference @@ -1444,7 +1444,7 @@ of M4RI from F_2 to F_{2^e}.") (file-name (git-file-name name version)) (sha256 (base32 - "1910np1xzyjzszay24xn4b81qhpsvhp5aix9vdpknplni2mq8kwb")))) + "1gw27lqc3f525n8qdcmr2nyn16y9g10z9f6dnmckyyxcdzvhq35n")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index d3fd8c8245..4dbbace3e3 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -3203,24 +3203,28 @@ with support for HD extensions.") (define-public bs1770gain (package (name "bs1770gain") - (version "0.5.2") + (version "0.6.0") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/bs1770gain/bs1770gain/" version "/bs1770gain-" version ".tar.gz")) (sha256 - (base32 - "1p6yz5q7czyf9ard65sp4kawdlkg40cfscr3b24znymmhs3p7rbk")) + (base32 "0nnqixvw3x7i22nsr54n4bgm35z9nh3d9qj5s75cfd3ajjsjndyh")) (modules '((guix build utils))) (snippet '(begin ;; XXX - (substitute* "bs1770gain/bs1770gain.c" - (("\"N.*\"") "\"\"")) - (substitute* "configure" - (("URL=.*$") - "https://manpages.debian.org/sid/bs1770gain/bs1770gain.1.en.html\n")))))) + (substitute* "libbg/bgx.c" + (("#define BS.* ") "#define BS ") + (("BS.*NO?.*N.*S.*E.*N.*SE?") "NO") + (("\"( #|N).*\"") "\"\"")) + (substitute* (list "config.h" + "configure.ac" + "configure") + (("https?://bs1770gain[^/]*/") + "https://manpages.debian.org/sid/bs1770gain/bs1770gain.1.en.html")) + #t)))) (build-system gnu-build-system) (inputs `(("ffmpeg" ,ffmpeg) ("sox" ,sox))) diff --git a/gnu/packages/authentication.scm b/gnu/packages/authentication.scm index 68a6459828..fba157344d 100644 --- a/gnu/packages/authentication.scm +++ b/gnu/packages/authentication.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,10 +19,14 @@ (define-module (gnu packages authentication) #:use-module (gnu packages) + #:use-module (gnu packages autotools) + #:use-module (gnu packages documentation) #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages security-token) #:use-module (guix build-system gnu) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages)) @@ -77,3 +82,39 @@ Supported technologies include the event-based @dfn{HOTP} algorithm (RFC4226) and the time-based @dfn{TOTP} algorithm (RFC6238).") (license (list license:lgpl2.1+ ; the libraries (liboath/ & libpskc/) license:gpl3+)))) ; the tools (everything else) + +(define-public yubico-pam + (let ((commit "b5bd00db81e0e0e0ecced65c684080bb56ddc35b") + (revision "0")) + (package + (name "yubico-pam") + (version (git-version "2.26" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Yubico/yubico-pam.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "10dq8dqi3jldllj6p8r9hldx9sank9n82c44w8akxrs1vli6nj3m")))) + (build-system gnu-build-system) + (arguments + ;; The pam_test fails because ykclient fails to build a Curl handle. + '(#:make-flags '("TESTS=util_test"))) + (inputs + `(("linux-pam" ,linux-pam) + ("libyubikey" ,libyubikey) + ("ykclient" ,ykclient) + ("yubikey-personalization" ,yubikey-personalization))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("asciidoc" ,asciidoc) + ("pkg-config" ,pkg-config))) + (home-page "https://developers.yubico.com/yubico-pam") + (synopsis "Yubico pluggable authentication module") + (description "The Yubico PAM module provides an easy way to integrate the +YubiKey into your existing user authentication infrastructure.") + (license license:bsd-2)))) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 3ba5415597..7ca6788dd8 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -50,21 +50,14 @@ (version "1.4.0") (source (origin (method url-fetch) - ;; We cannot use bioconductor-uri here because this tarball is - ;; located under "data/annotation/" instead of "bioc/". - (uri (string-append "https://www.bioconductor.org/packages/" - "release/data/annotation/src/contrib/" - "BSgenome.Celegans.UCSC.ce6_" - version ".tar.gz")) + (uri (bioconductor-uri "BSgenome.Celegans.UCSC.ce6" + version 'annotation)) (sha256 (base32 "0mqzb353xv2c3m3vkb315dkmnxkgczp7ndnknyhpgjlybyf715v9")))) (properties `((upstream-name . "BSgenome.Celegans.UCSC.ce6"))) (build-system r-build-system) - ;; As this package provides little more than a very large data file it - ;; doesn't make sense to build substitutes. - (arguments `(#:substitutable? #f)) (propagated-inputs `(("r-bsgenome" ,r-bsgenome))) (home-page @@ -708,6 +701,31 @@ the TxDb object of Mouse data as provided by UCSC (mm10, December 2011) based on the knownGene track.") (license license:artistic2.0))) +(define-public r-txdb-celegans-ucsc-ce6-ensgene + (package + (name "r-txdb-celegans-ucsc-ce6-ensgene") + (version "3.2.2") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "TxDb.Celegans.UCSC.ce6.ensGene" + version 'annotation)) + (sha256 + (base32 + "1sgppva33cdy4isj2is8mfalj5gmmkpbkq9w1d83a4agcq31mi90")))) + (properties + `((upstream-name . "TxDb.Celegans.UCSC.ce6.ensGene"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-genomicfeatures" ,r-genomicfeatures))) + (home-page "https://bioconductor.org/packages/TxDb.Celegans.UCSC.ce6.ensGene/") + (synopsis "Annotation package for C elegans TxDb objects") + (description + "This package exposes a C elegans annotation database generated from UCSC +by exposing these as TxDb objects.") + (license license:artistic2.0))) + (define-public r-fdb-infiniummethylation-hg19 (package (name "r-fdb-infiniummethylation-hg19") @@ -792,6 +810,28 @@ annotations.") Disease Ontology.") (license license:artistic2.0))) +(define-public r-pfam-db + (package + (name "r-pfam-db") + (version "3.8.2") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "PFAM.db" version 'annotation)) + (sha256 + (base32 + "0rn1arzzcniy3yyc4yc44vn40g0cqss37dhwnvsgxpfayqq1k59s")))) + (properties `((upstream-name . "PFAM.db"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi))) + (home-page "https://bioconductor.org/packages/PFAM.db") + (synopsis "Set of protein ID mappings for PFAM") + (description + "This package provides a set of protein ID mappings for PFAM, assembled +using data from public repositories.") + (license license:artistic2.0))) + ;;; Experiment data @@ -917,6 +957,29 @@ jointly normalized data that are available here. The data are presented in the form of an @code{exprSet} object.") (license license:artistic2.0))) +(define-public r-affydata + (package + (name "r-affydata") + (version "1.32.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "affydata" version 'experiment)) + (sha256 + (base32 + "1l9qhmjqgbrdl9cmd74rlnvmvr6mslbmckb83n0211whp2i0b7h5")))) + (properties `((upstream-name . "affydata"))) + (build-system r-build-system) + (propagated-inputs + `(("r-affy" ,r-affy))) + (home-page "https://bioconductor.org/packages/affydata/") + (synopsis "Affymetrix data for demonstration purposes") + (description + "This package provides example datasets that represent 'real world +examples' of Affymetrix data, unlike the artificial examples included in the +package @code{affy}.") + (license license:gpl2+))) + ;;; Packages @@ -940,6 +1003,147 @@ the form of an @code{exprSet} object.") packages.") (license license:artistic2.0))) +(define-public r-affycomp + (package + (name "r-affycomp") + (version "1.60.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "affycomp" version)) + (sha256 + (base32 + "1nijqljg5r3qj1y6an0i58sby76hqacj3a3nvainxic4n5wlzh0n")))) + (properties `((upstream-name . "affycomp"))) + (build-system r-build-system) + (propagated-inputs `(("r-biobase" ,r-biobase))) + (home-page "https://bioconductor.org/packages/affycomp/") + (synopsis "Graphics toolbox for assessment of Affymetrix expression measures") + (description + "The package contains functions that can be used to compare expression +measures for Affymetrix Oligonucleotide Arrays.") + (license license:gpl2+))) + +(define-public r-affycompatible + (package + (name "r-affycompatible") + (version "1.44.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "AffyCompatible" version)) + (sha256 + (base32 + "1zi96qa6vkgwvvy5cn6c3p1kbfsaz74zsw2kjxarz5qs744f0xvs")))) + (properties + `((upstream-name . "AffyCompatible"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biostrings" ,r-biostrings) + ("r-rcurl" ,r-rcurl) + ("r-xml" ,r-xml))) + (home-page "https://bioconductor.org/packages/AffyCompatible/") + (synopsis "Work with Affymetrix GeneChip files") + (description + "This package provides an interface to Affymetrix chip annotation and +sample attribute files. The package allows an easy way for users to download +and manage local data bases of Affynmetrix NetAffx annotation files. It also +provides access to @dfn{GeneChip Operating System} (GCOS) and @dfn{GeneChip +Command Console} (AGCC)-compatible sample annotation files.") + (license license:artistic2.0))) + +(define-public r-affycontam + (package + (name "r-affycontam") + (version "1.42.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "affyContam" version)) + (sha256 + (base32 + "0nzk1cm26rhmym753wyhn35hqnz5lvavi3i5qfgdvhxgjy3m1jgp")))) + (properties `((upstream-name . "affyContam"))) + (build-system r-build-system) + (propagated-inputs + `(("r-affy" ,r-affy) + ("r-affydata" ,r-affydata) + ("r-biobase" ,r-biobase))) + (home-page "https://bioconductor.org/packages/affyContam/") + (synopsis "Structured corruption of Affymetrix CEL file data") + (description + "Microarray quality assessment is a major concern of microarray analysts. +This package provides some simple approaches to in silico creation of quality +problems in CEL-level data to help evaluate performance of quality metrics.") + (license license:artistic2.0))) + +(define-public r-affycoretools + (package + (name "r-affycoretools") + (version "1.56.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "affycoretools" version)) + (sha256 + (base32 + "17dxpzhwwdwnxkdpmyjwdnacg41hw60mlc71w4nzlvs28sfsy09s")))) + (properties `((upstream-name . "affycoretools"))) + (build-system r-build-system) + (propagated-inputs + `(("r-affy" ,r-affy) + ("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-dbi" ,r-dbi) + ("r-edger" ,r-edger) + ("r-gcrma" ,r-gcrma) + ("r-ggplot2" ,r-ggplot2) + ("r-gostats" ,r-gostats) + ("r-gplots" ,r-gplots) + ("r-hwriter" ,r-hwriter) + ("r-lattice" ,r-lattice) + ("r-limma" ,r-limma) + ("r-oligoclasses" ,r-oligoclasses) + ("r-reportingtools" ,r-reportingtools) + ("r-rsqlite" ,r-rsqlite) + ("r-s4vectors" ,r-s4vectors) + ("r-xtable" ,r-xtable))) + (home-page "https://bioconductor.org/packages/affycoretools/") + (synopsis "Functions for analyses with Affymetrix GeneChips") + (description + "This package provides various wrapper functions that have been written +to streamline the more common analyses that a Biostatistician might see.") + (license license:artistic2.0))) + +(define-public r-affxparser + (package + (name "r-affxparser") + (version "1.56.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "affxparser" version)) + (sha256 + (base32 + "1jv7k9pn4c7szi3ma2f2xsd58pkrkvjpk5wra73r6kc607qgrv33")))) + (properties `((upstream-name . "affxparser"))) + (build-system r-build-system) + (home-page "https://github.com/HenrikBengtsson/affxparser") + (synopsis "Affymetrix File Parsing SDK") + (description + "This is a package for parsing Affymetrix files (CDF, CEL, CHP, BPMAP, +BAR). It provides methods for fast and memory efficient parsing of Affymetrix +files using the Affymetrix' Fusion SDK. Both ASCII- and binary-based files +are supported. Currently, there are methods for reading @dfn{chip definition +file} (CDF) and a @dfn{cell intensity file} (CEL). These files can be read +either in full or in part. For example, probe signals from a few probesets +can be extracted very quickly from a set of CEL files into a convenient list +structure.") + ;; The Fusion SDK contains files under GPLv2 and LGPLv2.1. The R code is + ;; under LGPLv2+. + (license (list license:lgpl2.0+ license:lgpl2.1 license:gpl2)))) + (define-public r-annotate (package (name "r-annotate") @@ -988,14 +1192,14 @@ the Human Protein Atlas project.") (define-public r-regioner (package (name "r-regioner") - (version "1.16.2") + (version "1.16.4") (source (origin (method url-fetch) (uri (bioconductor-uri "regioneR" version)) (sha256 (base32 - "1b8ybx4wcxlqw9nvajawsf0lqaqn9v89rxcawg4g3dbzlfssfc5q")))) + "0xzk057h6nkr3rvd412prxgnkpq625b90laj1kwb0i5q8j5ch760")))) (properties `((upstream-name . "regioneR"))) (build-system r-build-system) (propagated-inputs @@ -1014,6 +1218,54 @@ customizable permutation tests to assess the association between genomic region sets and other genomic features.") (license license:artistic2.0))) +(define-public r-reportingtools + (package + (name "r-reportingtools") + (version "2.24.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "ReportingTools" version)) + (sha256 + (base32 + "16ska7mlacka0xi8x2icy8v42vaxccb3a1x73szmfvcrwr592qsc")))) + (properties + `((upstream-name . "ReportingTools"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotate" ,r-annotate) + ("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-category" ,r-category) + ("r-deseq2" ,r-deseq2) + ("r-edger" ,r-edger) + ("r-ggbio" ,r-ggbio) + ("r-ggplot2" ,r-ggplot2) + ("r-gostats" ,r-gostats) + ("r-gseabase" ,r-gseabase) + ("r-hwriter" ,r-hwriter) + ("r-iranges" ,r-iranges) + ("r-knitr" ,r-knitr) + ("r-lattice" ,r-lattice) + ("r-limma" ,r-limma) + ("r-pfam-db" ,r-pfam-db) + ("r-r-utils" ,r-r-utils) + ("r-xml" ,r-xml))) + (home-page "https://bioconductor.org/packages/ReportingTools/") + (synopsis "Tools for making reports in various formats") + (description + "The ReportingTools package enables users to easily display reports of +analysis results generated from sources such as microarray and sequencing +data. The package allows users to create HTML pages that may be viewed on a +web browser, or in other formats. Users can generate tables with sortable and +filterable columns, make and display plots, and link table entries to other +data sources such as NCBI or larger plots within the HTML page. Using the +package, users can also produce a table of contents page to link various +reports together for a particular project that can be viewed in a web +browser.") + (license license:artistic2.0))) + (define-public r-geneplotter (package (name "r-geneplotter") @@ -1039,6 +1291,75 @@ region sets and other genomic features.") "This package provides functions for plotting genomic data.") (license license:artistic2.0))) +(define-public r-oligoclasses + (package + (name "r-oligoclasses") + (version "1.46.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "oligoClasses" version)) + (sha256 + (base32 + "0z86zrmn80kcy6fgb9i9zs82vhim73n8hlkqy7y8sbb2jwksdr72")))) + (properties `((upstream-name . "oligoClasses"))) + (build-system r-build-system) + (propagated-inputs + `(("r-affyio" ,r-affyio) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocmanager" ,r-biocmanager) + ("r-biostrings" ,r-biostrings) + ("r-dbi" ,r-dbi) + ("r-ff" ,r-ff) + ("r-foreach" ,r-foreach) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-rsqlite" ,r-rsqlite) + ("r-s4vectors" ,r-s4vectors) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (home-page "https://bioconductor.org/packages/oligoClasses/") + (synopsis "Classes for high-throughput arrays") + (description + "This package contains class definitions, validity checks, and +initialization methods for classes used by the @code{oligo} and @code{crlmm} +packages.") + (license license:gpl2+))) + +(define-public r-oligo + (package + (name "r-oligo") + (version "1.48.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "oligo" version)) + (sha256 + (base32 + "0qkyz65zvry0syibjkvkshwijccna18jy0hlib0n5x4c8x9zs5df")))) + (properties `((upstream-name . "oligo"))) + (build-system r-build-system) + (inputs `(("zlib" ,zlib))) + (propagated-inputs + `(("r-affxparser" ,r-affxparser) + ("r-affyio" ,r-affyio) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-dbi" ,r-dbi) + ("r-ff" ,r-ff) + ("r-oligoclasses" ,r-oligoclasses) + ("r-preprocesscore" ,r-preprocesscore) + ("r-rsqlite" ,r-rsqlite) + ("r-zlibbioc" ,r-zlibbioc))) + (home-page "https://bioconductor.org/packages/oligo/") + (synopsis "Preprocessing tools for oligonucleotide arrays") + (description + "This package provides a package to analyze oligonucleotide +arrays (expression/SNP/tiling/exon) at probe-level. It currently supports +Affymetrix (CEL files) and NimbleGen arrays (XYS files).") + (license license:lgpl2.0+))) + (define-public r-qvalue (package (name "r-qvalue") @@ -3870,14 +4191,14 @@ analysis.") (define-public r-gtrellis (package (name "r-gtrellis") - (version "1.16.0") + (version "1.16.1") (source (origin (method url-fetch) (uri (bioconductor-uri "gtrellis" version)) (sha256 (base32 - "00d5swg3brnx8ryzpg7hp3mg9hx3vz4yd1lv2chlp2pj2rhsir1y")))) + "069hln9vflyxic24bxrlmdmz9h3jdd2qaqy898rgk5bn0gqwcjix")))) (build-system r-build-system) (propagated-inputs `(("r-circlize" ,r-circlize) @@ -4863,14 +5184,14 @@ annotations.") (define-public r-rsubread (package (name "r-rsubread") - (version "1.34.6") + (version "1.34.7") (source (origin (method url-fetch) (uri (bioconductor-uri "Rsubread" version)) (sha256 (base32 - "0nnfh4hnrs5kd72m8c50cidbsxjz12szw2vynpmg8q0wpd99q550")))) + "0z4ydk9296bp76ah5y6a7za5jyn4h238xngb789zragly902x83y")))) (properties `((upstream-name . "Rsubread"))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -5022,14 +5343,14 @@ self-organizing map clustering and minimal spanning trees.") (define-public r-mixomics (package (name "r-mixomics") - (version "6.8.2") + (version "6.8.4") (source (origin (method url-fetch) (uri (bioconductor-uri "mixOmics" version)) (sha256 (base32 - "0issfrhsgc102sr33q9v6w6jrrd32plig7szd1nm0n4r3yn4y2fc")))) + "0lw4c9lxcm83xrvl4y120i1z710qjbdqginhrw738azpr1f82hcg")))) (properties `((upstream-name . "mixOmics"))) (build-system r-build-system) (propagated-inputs @@ -5441,3 +5762,288 @@ with multiple R processes supported by the package @code{parallel}.") "This package provides methods for working with Illumina arrays using the @code{gdsfmt} package.") (license license:gpl3))) + +(define-public r-seqbias + (package + (name "r-seqbias") + (version "1.32.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "seqbias" version)) + (sha256 + (base32 + "1pk97jsq0rxijsdm5wnmlw79mhy19skdq1h3mmfbdjh560md47lw")))) + (properties `((upstream-name . "seqbias"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biostrings" ,r-biostrings) + ("r-genomicranges" ,r-genomicranges) + ("r-rhtslib" ,r-rhtslib))) + (inputs + `(("zlib" ,zlib))) ; This comes from rhtslib. + (home-page "https://bioconductor.org/packages/seqbias/") + (synopsis "Estimation of per-position bias in high-throughput sequencing data") + (description + "This package implements a model of per-position sequencing bias in +high-throughput sequencing data using a simple Bayesian network, the structure +and parameters of which are trained on a set of aligned reads and a reference +genome sequence.") + (license license:lgpl3))) + +(define-public r-reqon + (package + (name "r-reqon") + (version "1.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "ReQON" version)) + (sha256 + (base32 + "04bljr8vgb9z9800d9v8w7a4rvjkwq48zd8n5divq30zj9k2na7a")))) + (properties `((upstream-name . "ReQON"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rjava" ,r-rjava) + ("r-rsamtools" ,r-rsamtools) + ("r-seqbias" ,r-seqbias))) + (home-page "https://bioconductor.org/packages/ReQON/") + (synopsis "Recalibrating quality of nucleotides") + (description + "This package provides an implementation of an algorithm for +recalibrating the base quality scores for aligned sequencing data in BAM +format.") + (license license:gpl2))) + +(define-public r-wavcluster + (package + (name "r-wavcluster") + (version "2.18.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "wavClusteR" version)) + (sha256 + (base32 + "02i53dskirzr9nls3dsmv7dqhvy3vikkpx7247zpy2qd9r5yvhy2")))) + (properties `((upstream-name . "wavClusteR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-foreach" ,r-foreach) + ("r-genomicfeatures" ,r-genomicfeatures) + ("r-genomicranges" ,r-genomicranges) + ("r-ggplot2" ,r-ggplot2) + ("r-hmisc" ,r-hmisc) + ("r-iranges" ,r-iranges) + ("r-mclust" ,r-mclust) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors) + ("r-seqinr" ,r-seqinr) + ("r-stringr" ,r-stringr) + ("r-wmtsa" ,r-wmtsa))) + (home-page "https://bioconductor.org/packages/wavClusteR/") + (synopsis "Identification of RNA-protein interaction sites in PAR-CLIP data") + (description + "This package provides an integrated pipeline for the analysis of +PAR-CLIP data. PAR-CLIP-induced transitions are first discriminated from +sequencing errors, SNPs and additional non-experimental sources by a non- +parametric mixture model. The protein binding sites (clusters) are then +resolved at high resolution and cluster statistics are estimated using a +rigorous Bayesian framework. Post-processing of the results, data export for +UCSC genome browser visualization and motif search analysis are provided. In +addition, the package allows to integrate RNA-Seq data to estimate the False +Discovery Rate of cluster detection. Key functions support parallel multicore +computing. While wavClusteR was designed for PAR-CLIP data analysis, it can +be applied to the analysis of other NGS data obtained from experimental +procedures that induce nucleotide substitutions (e.g. BisSeq).") + (license license:gpl2))) + +(define-public r-timeseriesexperiment + (package + (name "r-timeseriesexperiment") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "TimeSeriesExperiment" version)) + (sha256 + (base32 + "1j11g7a2p0yk38fx6wd6152l1xynghj01pfxihalw601jwf1bl0y")))) + (properties + `((upstream-name . "TimeSeriesExperiment"))) + (build-system r-build-system) + (propagated-inputs + `(("r-deseq2" ,r-deseq2) + ("r-dplyr" ,r-dplyr) + ("r-dynamictreecut" ,r-dynamictreecut) + ("r-edger" ,r-edger) + ("r-ggplot2" ,r-ggplot2) + ("r-hmisc" ,r-hmisc) + ("r-limma" ,r-limma) + ("r-magrittr" ,r-magrittr) + ("r-proxy" ,r-proxy) + ("r-s4vectors" ,r-s4vectors) + ("r-summarizedexperiment" ,r-summarizedexperiment) + ("r-tibble" ,r-tibble) + ("r-tidyr" ,r-tidyr) + ("r-vegan" ,r-vegan) + ("r-viridis" ,r-viridis))) + (home-page "https://github.com/nlhuong/TimeSeriesExperiment/") + (synopsis "Analysis for short time-series data") + (description + "This package is a visualization and analysis toolbox for short time +course data which includes dimensionality reduction, clustering, two-sample +differential expression testing and gene ranking techniques. The package also +provides methods for retrieving enriched pathways.") + (license license:lgpl3+))) + +(define-public r-variantfiltering + (package + (name "r-variantfiltering") + (version "1.20.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "VariantFiltering" version)) + (sha256 + (base32 + "0vpghxacqcbaxx2scb5gfhcmfpw1lkls7h6qnbwbnmjwy01q2p17")))) + (properties + `((upstream-name . "VariantFiltering"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocparallel" ,r-biocparallel) + ("r-biostrings" ,r-biostrings) + ("r-bsgenome" ,r-bsgenome) + ("r-dt" ,r-dt) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicfeatures" ,r-genomicfeatures) + ("r-genomicranges" ,r-genomicranges) + ("r-genomicscores" ,r-genomicscores) + ("r-graph" ,r-graph) + ("r-gviz" ,r-gviz) + ("r-iranges" ,r-iranges) + ("r-rbgl" ,r-rbgl) + ("r-rsamtools" ,r-rsamtools) + ("r-s4vectors" ,r-s4vectors) + ("r-shiny" ,r-shiny) + ("r-shinyjs" ,r-shinyjs) + ("r-shinythemes" ,r-shinythemes) + ("r-shinytree" ,r-shinytree) + ("r-summarizedexperiment" ,r-summarizedexperiment) + ("r-variantannotation" ,r-variantannotation) + ("r-xvector" ,r-xvector))) + (home-page "https://github.com/rcastelo/VariantFiltering") + (synopsis "Filtering of coding and non-coding genetic variants") + (description + "Filter genetic variants using different criteria such as inheritance +model, amino acid change consequence, minor allele frequencies across human +populations, splice site strength, conservation, etc.") + (license license:artistic2.0))) + +(define-public r-genomegraphs + (package + (name "r-genomegraphs") + (version "1.44.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "GenomeGraphs" version)) + (sha256 + (base32 + "026skcn2cqchlzaqsnk11gb8d8aq1rz7lrnx4mmsba234mh4j7kd")))) + (properties `((upstream-name . "GenomeGraphs"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biomart" ,r-biomart))) + (home-page "https://bioconductor.org/packages/GenomeGraphs/") + (synopsis "Plotting genomic information from Ensembl") + (description + "Genomic data analyses requires integrated visualization of known genomic +information and new experimental data. GenomeGraphs uses the biomaRt package +to perform live annotation queries to Ensembl and translates this to e.g. +gene/transcript structures in viewports of the grid graphics package. This +results in genomic information plotted together with your data. Another +strength of GenomeGraphs is to plot different data types such as array CGH, +gene expression, sequencing and other data, together in one plot using the +same genome coordinate system.") + (license license:artistic2.0))) + +(define-public r-wavetiling + (package + (name "r-wavetiling") + (version "1.26.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "waveTiling" version)) + (sha256 + (base32 + "0l0saa0myabpq2rl9dq70zff8jpxr3mkanxlj65hc41f0m5xllir")))) + (properties `((upstream-name . "waveTiling"))) + (build-system r-build-system) + (propagated-inputs + `(("r-affy" ,r-affy) + ("r-biobase" ,r-biobase) + ("r-biostrings" ,r-biostrings) + ("r-genomegraphs" ,r-genomegraphs) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-oligo" ,r-oligo) + ("r-oligoclasses" ,r-oligoclasses) + ("r-preprocesscore" ,r-preprocesscore) + ("r-waveslim" ,r-waveslim))) + (home-page "https://r-forge.r-project.org/projects/wavetiling/") + (synopsis "Wavelet-based models for tiling array transcriptome analysis") + (description + "This package is designed to conduct transcriptome analysis for tiling +arrays based on fast wavelet-based functional models.") + (license license:gpl2+))) + +(define-public r-variancepartition + (package + (name "r-variancepartition") + (version "1.14.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "variancePartition" version)) + (sha256 + (base32 + "1ycapwb2mq57xibrzzjz9zwxqz4nwz9f3n5gskhlr5vcs7irkjd6")))) + (properties + `((upstream-name . "variancePartition"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-colorramps" ,r-colorramps) + ("r-doparallel" ,r-doparallel) + ("r-foreach" ,r-foreach) + ("r-ggplot2" ,r-ggplot2) + ("r-gplots" ,r-gplots) + ("r-iterators" ,r-iterators) + ("r-limma" ,r-limma) + ("r-lme4" ,r-lme4) + ("r-lmertest" ,r-lmertest) + ("r-mass" ,r-mass) + ("r-pbkrtest" ,r-pbkrtest) + ("r-progress" ,r-progress) + ("r-reshape2" ,r-reshape2) + ("r-scales" ,r-scales))) + (home-page "https://bioconductor.org/packages/variancePartition/") + (synopsis "Analyze variation in gene expression experiments") + (description + "This is a package providing tools to quantify and interpret multiple +sources of biological and technical variation in gene expression experiments. +It uses a linear mixed model to quantify variation in gene expression +attributable to individual, tissue, time point, or technical variables. The +package includes dream differential expression analysis for repeated +measures.") + (license license:gpl2+))) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index f98f10a2c3..3fffb9f2ed 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7351,13 +7351,13 @@ checks on R packages that are to be submitted to the Bioconductor repository.") (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.22.0") + (version "0.22.1") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "1wkqmpy0d0fab9bjfc7i5wh2zng75pg9rn9c1z1lkki7fpwaw2jb")))) + "0cpxqb18wd3pjd7bi8lry13sm5ffqahcvvxpk5pwm5xcj30cdlm9")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) @@ -7458,13 +7458,13 @@ names in their natural, rather than lexicographic, order.") (define-public r-edger (package (name "r-edger") - (version "3.26.7") + (version "3.26.8") (source (origin (method url-fetch) (uri (bioconductor-uri "edgeR" version)) (sha256 (base32 - "1xbhb8aa1ygm5crkp1bmqs2x1601ppa2kgc2xlf2zh8jj8zqapg8")))) + "1wwimzviy2vklp80faz7sbbp74qcw2csbmlfgvzj7b785vwarpwg")))) (properties `((upstream-name . "edgeR"))) (build-system r-build-system) (propagated-inputs @@ -7580,13 +7580,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-genomicranges (package (name "r-genomicranges") - (version "1.36.0") + (version "1.36.1") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicRanges" version)) (sha256 (base32 - "1285fr8qjd7d0ixpv7d5imi0n6wzc4k6yia1rkmig71qd2gg556k")))) + "1yid84gn0052v52h84685lvk854grl1wl65psmlmxx9yyykgc0jn")))) (properties `((upstream-name . "GenomicRanges"))) (build-system r-build-system) @@ -7883,13 +7883,13 @@ alignments.") (define-public r-rtracklayer (package (name "r-rtracklayer") - (version "1.44.3") + (version "1.44.4") (source (origin (method url-fetch) (uri (bioconductor-uri "rtracklayer" version)) (sha256 (base32 - "091zydz1zpz519ha0jkbvzrhxjvw5r2963qz9grmvl2jd8girvcg")))) + "0dnifr58j2si2qbnvap2wslz3xgjv3h4l7a6v7nmmc57hq6kdbym")))) (build-system r-build-system) (arguments `(#:phases @@ -9639,14 +9639,14 @@ Shiny-based display methods for Bioconductor objects.") (define-public r-annotationhub (package (name "r-annotationhub") - (version "2.16.0") + (version "2.16.1") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationHub" version)) (sha256 (base32 - "1rpzl4x5mrwxrrf1jzm4zni6li6x34fjfyybsdvplb0ixa48zhn4")))) + "0c773cmhng907839f0bq161jky7362lxxny36ac55qxiz1giqi8j")))) (properties `((upstream-name . "AnnotationHub"))) (build-system r-build-system) (propagated-inputs @@ -10034,14 +10034,14 @@ interval to data view, mismatch pileup, and several splicing summaries.") (define-public r-gprofiler (package (name "r-gprofiler") - (version "0.6.7") + (version "0.6.8") (source (origin (method url-fetch) (uri (cran-uri "gProfileR" version)) (sha256 (base32 - "12nwidbnqmnfy5dnqga26byslvdnkrpz2fi19qfcby6xx0wbndk7")))) + "05d6y6b7vkkzp2qhs1cwlvp02djij1b28dbwxnrms08f8qi35iaj")))) (properties `((upstream-name . "gProfileR"))) (build-system r-build-system) (propagated-inputs @@ -10459,14 +10459,14 @@ block processing.") (define-public r-rhdf5lib (package (name "r-rhdf5lib") - (version "1.6.0") + (version "1.6.1") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhdf5lib" version)) (sha256 (base32 - "1lpmyxlwwcy92hyxqag321ssc5z6yw3a0ws9r058jwgzyjg7i2gm")) + "0niz9dh66fcwbvqpkpsdlz9d06kwi3kfh45dhk3qz9g9qqyiakr1")) (modules '((guix build utils))) (snippet '(begin @@ -10655,14 +10655,14 @@ variable and significantly correlated genes.") (define-public r-delayedmatrixstats (package (name "r-delayedmatrixstats") - (version "1.6.0") + (version "1.6.1") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedMatrixStats" version)) (sha256 (base32 - "0632ypndblrgzfk8k98rr8c6m2r0zwzf02pzvlrhcp9bj1pvqbrz")))) + "1riyzfsq4bd513hidkw3cfkx3jywk3x87j89q70v459xsdfdc95b")))) (properties `((upstream-name . "DelayedMatrixStats"))) (build-system r-build-system) @@ -15232,3 +15232,37 @@ indels (insertions and deletions), MNPs (multi-nucleotide polymorphisms), and complex events (composite insertion and substitution events) smaller than the length of a short-read sequencing alignment.") (license license:expat)))) + +(define-public samblaster + (package + (name "samblaster") + (version "0.1.24") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/GregoryFaust/samblaster.git") + (commit (string-append "v." version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0iv2ddfw8363vb2x8gr3p8g88whb6mb9m0pf71i2cqsbv6jghap7")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there are none + #:phases + (modify-phases %standard-phases + (delete 'configure) ; There is no configure phase. + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (install-file "samblaster" + (string-append (assoc-ref outputs "out") "/bin")) + #t))))) + (home-page "https://github.com/GregoryFaust/samblaster") + (synopsis "Mark duplicates in paired-end SAM files") + (description "Samblaster is a fast and flexible program for marking +duplicates in read-id grouped paired-end SAM files. It can also optionally +output discordant read pairs and/or split read mappings to separate SAM files, +and/or unmapped/clipped reads to a separate FASTQ file. When marking +duplicates, samblaster will require approximately 20MB of memory per 1M read +pairs.") + (license license:expat))) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 085538b2de..374a4d35fa 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -2243,7 +2243,7 @@ provides a simple way to achieve this.") (define-public umockdev (package (name "umockdev") - (version "0.12.1") + (version "0.13.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/martinpitt/umockdev/" @@ -2251,7 +2251,7 @@ provides a simple way to achieve this.") "umockdev-" version ".tar.xz")) (sha256 (base32 - "1hx5jm9afng6hw9wyp524z8nwdp6w053pca0w2c0gqpgrmvjxvd2")))) + "095v3abc321s584sga04y16lcmdzsdi88h24wcrm78v7vq484g74")))) (build-system gnu-build-system) (arguments `(#:phases @@ -2264,10 +2264,12 @@ provides a simple way to achieve this.") #t))))) (native-inputs `(("vala" ,vala) - ("python" ,python) ; for tests - ("which" ,which) ; for tests ("gtk-doc" ,gtk-doc) - ("pkg-config" ,pkg-config))) + ("pkg-config" ,pkg-config) + + ;; For tests. + ("python" ,python) + ("which" ,which))) (inputs `(("glib" ,glib) ("eudev" ,eudev) diff --git a/gnu/packages/cluster.scm b/gnu/packages/cluster.scm index 3608d67bed..8b99a21356 100644 --- a/gnu/packages/cluster.scm +++ b/gnu/packages/cluster.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019 Andrew Miloradovsky <andrew@interpretmath.pw> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,7 +22,10 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system gnu) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix packages) + #:use-module (gnu packages autotools) + #:use-module (gnu packages gettext) #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config) #:use-module (gnu packages sphinx) @@ -79,3 +83,34 @@ Server (@dfn{IPVS}) kernel module. High availability is achieved by the Virtual Redundancy Routing Protocol (@dfn{VRRP}). Each Keepalived framework can be used independently or together to provide resilient infrastructures.") (license license:gpl2+))) + +(define-public libraft + (package + (name "libraft") + (version "0.9.5") + (home-page "https://github.com/canonical/raft") + (source (origin + (method git-fetch) + (uri (git-reference (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1q49f5mmv6nr6dxhnp044xwc6jlczgh0nj0bl6718wiqh28411x0")))) + (arguments '(#:configure-flags '("--disable-uv"))) + ;; The uv plugin tests fail, if libuv (or the example) is enabled, + ;; because setting up the environment requires too much privileges. + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gettext" ,gettext-minimal) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) + (build-system gnu-build-system) + (synopsis "C implementation of the Raft consensus protocol") + (description "The library has modular design: its core part implements only +the core Raft algorithm logic, in a fully platform independent way. On top of +that, a pluggable interface defines the I/O implementation for networking +(send/receive RPC messages) and disk persistence (store log entries and +snapshots).") + (license license:asl2.0))) diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm index 7186cf98df..95f884b36d 100644 --- a/gnu/packages/cmake.scm +++ b/gnu/packages/cmake.scm @@ -164,6 +164,18 @@ and workspaces that can be used in the compiler environment of your choice.") license:expat ; cmjsoncpp is dual MIT/public domain license:public-domain)))) ; cmlibarchive/archive_getdate.c +(define-public cmake/fixed + ;; This is a variant of CMake that fixes X.509 certificate lookup: + ;; <https://issues.guix.gnu.org/issue/37371>. + (package + (inherit cmake) + (version (string-append (package-version cmake) "-1")) + (source (origin + (inherit (package-source cmake)) + (patches + (append (search-patches "cmake-curl-certificates.patch") + (origin-patches (package-source cmake)))))))) + (define-public emacs-cmake-mode (package (inherit cmake) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 5bf37e3900..cb0be4aedd 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018, 2019 Brett Gilio <brettg@posteo.net> ;;; Copyright © 2019 Nicolò Balzarotti <anothersms@gmail.com> +;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -447,13 +448,13 @@ into a pipeline of data manipulation and visualisation.") (define-public r-httpuv (package (name "r-httpuv") - (version "1.5.1") + (version "1.5.2") (source (origin (method url-fetch) (uri (cran-uri "httpuv" version)) (sha256 (base32 - "042piypg4c8sqrlcdl3dwajkafkbglsky3x7d0jpjv8s5wxnpfxm")))) + "13ax0hs2lc39ilznh1zarwqdzahcbhb8adilrfik3xg0fkljpcwk")))) (build-system r-build-system) (propagated-inputs `(("r-bh" ,r-bh) @@ -796,6 +797,84 @@ extensive prebuilt widgets make it possible to build beautiful, responsive, and powerful applications with minimal effort.") (license license:artistic2.0))) +;; This package includes minified JavaScript files. When upgrading please +;; check that there are no new minified JavaScript files. +(define-public r-shinytree + (package + (name "r-shinytree") + (version "0.2.7") + (source + (origin + (method url-fetch) + (uri (cran-uri "shinyTree" version)) + (sha256 + (base32 + "0jfx2capckv7hf2yx3fn8i4rcmhi222ah91jnmhg497x8wgz31s3")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete minified JavaScript + (for-each delete-file + '("inst/www/jsTree-3.3.7/libs/require.js" + "inst/www/jsTree-3.3.7/libs/jquery.js" + "inst/www/jsTree-3.3.7/jstree.min.js")) + #t)))) + (properties `((upstream-name . "shinyTree"))) + (build-system r-build-system) + (arguments + `(#:modules ((guix build utils) + (guix build r-build-system) + (srfi srfi-1) + (ice-9 popen)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'replace-minified-javascript + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "inst/www/jsTree-3.3.7/" + (symlink (string-append (assoc-ref inputs "js-requirejs") + "/share/javascript/require.min.js") + "libs/require.js") + (call-with-values + (lambda () + (unzip2 + `((,(assoc-ref inputs "js-jquery") + "libs/jquery.js") + ("jstree.js" + "jstree.min.js")))) + (lambda (sources targets) + (for-each (lambda (source target) + (format #t "Processing ~a --> ~a~%" + source target) + (let ((minified (open-pipe* OPEN_READ "uglify-js" source))) + (call-with-output-file target + (lambda (port) + (dump-port minified port))))) + sources targets)))) + #t))))) + (propagated-inputs + `(("r-htmlwidgets" ,r-htmlwidgets) + ("r-jsonlite" ,r-jsonlite) + ("r-promises" ,r-promises) + ("r-shiny" ,r-shiny) + ("r-stringr" ,r-stringr))) + (inputs + `(("js-requirejs" ,js-requirejs))) + (native-inputs + `(("uglify-js" ,uglify-js) + ("js-jquery" + ,(origin + (method url-fetch) + (uri "https://code.jquery.com/jquery-3.3.1.js") + (sha256 + (base32 + "1b8zxrp6xwzpw25apn8j4qws0f6sr7qr7h2va5h1mjyfqvn29anq")))))) + (home-page "https://cran.r-project.org/web/packages/shinyTree/") + (synopsis "jsTree bindings for Shiny") + (description + "This package exposes R bindings to jsTree, a JavaScript library that +supports interactive trees, to enable rich, editable trees in Shiny.") + (license license:expat))) + (define-public r-shinydashboard (package (name "r-shinydashboard") @@ -867,6 +946,31 @@ this gives the user direct access to the file system without the need to well as file saving is available.") (license license:gpl2+))) +(define-public r-shinythemes + (package + (name "r-shinythemes") + (version "1.1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "shinythemes" version)) + (sha256 + (base32 + "12miz44n2zxfswnia7p8dirxj3miw0aqn4pkx2111ikz67ax84rf")))) + (properties `((upstream-name . "shinythemes"))) + (build-system r-build-system) + (propagated-inputs `(("r-shiny" ,r-shiny))) + (home-page "http://rstudio.github.io/shinythemes/") + (synopsis "Themes for Shiny") + (description + "This package provides themes for use with Shiny. It includes several +Bootstrap themes, which are packaged for use with Shiny applications.") + ;; The package is released under version 3 of the GPL, but it includes + ;; source files that are covered by the Expat license. It also includes + ;; fonts under SIL or the ASL. + (license (list license:gpl3 license:expat + license:silofl1.1 license:asl2.0)))) + ;; The package sources include minified variants of d3.js and non-minified ;; source code of d3-jetpack. (define-public r-d3r @@ -1059,14 +1163,14 @@ work well on small screens.") (define-public r-feather (package (name "r-feather") - (version "0.3.3") + (version "0.3.5") (source (origin (method url-fetch) (uri (cran-uri "feather" version)) (sha256 (base32 - "0ls8lmygyjq60467s88h66d7fczjp1d3a2106rfq4dx9lyfvdfsa")))) + "1gxd0h2m56sjjlzn4dry6s13nddxc4l5i11gsvavaf2dwbahdzsh")))) (build-system r-build-system) (propagated-inputs `(("r-hms" ,r-hms) @@ -1649,14 +1753,14 @@ validation and filtering on the values, making options invisible or private.") (define-public r-circlize (package (name "r-circlize") - (version "0.4.7") + (version "0.4.8") (source (origin (method url-fetch) (uri (cran-uri "circlize" version)) (sha256 (base32 - "07y1bchkslpz2wl43yg5j5h1nl9z0i425a07jdmfd5avrynd8p3m")))) + "0jvr9hmxyhg0zx101iiqkrg8wfaj86kp62xpv42n2j9fkn5r1mi2")))) (build-system r-build-system) (propagated-inputs `(("r-colorspace" ,r-colorspace) @@ -2663,14 +2767,14 @@ Optimization problems by using the simplex algorithm.") (define-public r-geometry (package (name "r-geometry") - (version "0.4.3") + (version "0.4.4") (source (origin (method url-fetch) (uri (cran-uri "geometry" version)) (sha256 (base32 - "0z4491mhfmrlbb8lazjvq55alrprx7k0abg2d39fj0lsj84cls1r")))) + "1mx5n5mw63nij4n6crs9165mlls4fnh1ipw5ch467rjsidgl0mg8")))) (build-system r-build-system) (propagated-inputs `(("r-magic" ,r-magic) @@ -5569,14 +5673,14 @@ and adds the annotation to the plot.") (define-public r-ggpubr (package (name "r-ggpubr") - (version "0.2.2") + (version "0.2.3") (source (origin (method url-fetch) (uri (cran-uri "ggpubr" version)) (sha256 (base32 - "0r5knv3707pmpngmj60zn761y3bh8lj89dhh1b80ss083xnxr4qw")))) + "0i81mmz4qn9yzcgfa6dhkcrx4ddlflkm2c3b40isc8all43rm8rn")))) (build-system r-build-system) (propagated-inputs `(("r-cowplot" ,r-cowplot) @@ -6091,14 +6195,14 @@ other add-on packages.") (define-public r-insight (package (name "r-insight") - (version "0.4.1") + (version "0.5.0") (source (origin (method url-fetch) (uri (cran-uri "insight" version)) (sha256 (base32 - "1lw1r3mb97z5p9z25jfzlhs0sbnwp6v8kzysf0am01x4m7l3iz82")))) + "0lrh2l9n2zd9n3zzknsxz6nlasnrayx3bplxlz7m616g56gr5nfp")))) (build-system r-build-system) (home-page "https://easystats.github.io/insight/") (synopsis "Easy access to model information for various model objects") @@ -6117,14 +6221,14 @@ information are missing.") (define-public r-sjlabelled (package (name "r-sjlabelled") - (version "1.1.0") + (version "1.1.1") (source (origin (method url-fetch) (uri (cran-uri "sjlabelled" version)) (sha256 (base32 - "0rnmlwpp41h04dzfjd5ncvzjzs43slaimb4v2in1axznv3haafyc")))) + "0c9wy0gsr2sbkrv2638xbi7qm0gl6jyr6sfricavhkm7l4hljjkz")))) (build-system r-build-system) (propagated-inputs `(("r-haven" ,r-haven) @@ -6873,13 +6977,13 @@ and coverage methods to tune the choice of threshold.") (define-public r-ggformula (package (name "r-ggformula") - (version "0.9.1") + (version "0.9.2") (source (origin (method url-fetch) (uri (cran-uri "ggformula" version)) (sha256 - (base32 "01ngx8qh9lhmagng6abx2ky54zi3iyj5bpxlnw59slagwv7l6icx")))) + (base32 "16ycabhnp78fsiv1dc63ccgh9gmpsy2683vbmq0fdzl6w3pd87sr")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -7878,14 +7982,14 @@ Hothorn, Westfall, 2010, CRC Press).") (define-public r-emmeans (package (name "r-emmeans") - (version "1.4") + (version "1.4.1") (source (origin (method url-fetch) (uri (cran-uri "emmeans" version)) (sha256 (base32 - "1ynf9hhbch83k63lwps69ijfch30fk5v0sc418ck264c5vih26dh")))) + "1fpawaxnmj67md169a9mzrnnh2d0c973xydfg6hw865933jil9lq")))) (build-system r-build-system) (propagated-inputs `(("r-estimability" ,r-estimability) @@ -8036,14 +8140,14 @@ detection, parallelism through BLAS and parallel user templates.") (define-public r-sjstats (package (name "r-sjstats") - (version "0.17.5") + (version "0.17.6") (source (origin (method url-fetch) (uri (cran-uri "sjstats" version)) (sha256 (base32 - "1x9ybvz84vgaabmqp4z6crbv5q6kqjg6msk1spbr11zx9dbj06ca")))) + "11z1wfi0d74d1rld0320l3vmv6rl41wa0v9bjc44rk06yc90wld2")))) (build-system r-build-system) (propagated-inputs `(("r-bayestestr" ,r-bayestestr) @@ -8055,6 +8159,7 @@ detection, parallelism through BLAS and parallel user templates.") ("r-magrittr" ,r-magrittr) ("r-mass" ,r-mass) ("r-modelr" ,r-modelr) + ("r-parameters" ,r-parameters) ("r-performance" ,r-performance) ("r-purrr" ,r-purrr) ("r-rlang" ,r-rlang) @@ -8162,14 +8267,14 @@ effects models and Bayesian models.") (define-public r-ggeffects (package (name "r-ggeffects") - (version "0.11.0") + (version "0.12.0") (source (origin (method url-fetch) (uri (cran-uri "ggeffects" version)) (sha256 (base32 - "1b0lxa8bljdh6h4lk7pql1lrhjlvh7p5c8qlgb8ac6ay8hb79vmi")))) + "0idfycjk05gyykfp9ibmhxfcjvd01ikh1dl0fb4nqw6znw3ar0xp")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) @@ -8196,14 +8301,14 @@ results using @code{ggplot2}.") (define-public r-sjplot (package (name "r-sjplot") - (version "2.7.0") + (version "2.7.1") (source (origin (method url-fetch) (uri (cran-uri "sjPlot" version)) (sha256 (base32 - "1m0gy991fmxvqry91kkzdkdapyalhrwql25d0hg2a2naxgfw4zpk")))) + "14shypabpahf68hd66rb1dpqhiyl3i0yx1yc85wamdvljh9fdymb")))) (properties `((upstream-name . "sjPlot"))) (build-system r-build-system) (propagated-inputs @@ -9122,17 +9227,18 @@ Scientific.") (define-public r-activity (package (name "r-activity") - (version "1.2") + (version "1.3") (source (origin (method url-fetch) (uri (cran-uri "activity" version)) (sha256 (base32 - "11w2bz6p9xbzdh6773dmbbh6rws0h5dj18p8m0ivzizgq932vdzs")))) + "12imqj366dp6pam5gap6ji56p5wf1073xz5g4iikfxf5l8snxw92")))) (build-system r-build-system) (propagated-inputs `(("r-circular" ,r-circular) + ("r-insol" ,r-insol) ("r-pbapply" ,r-pbapply))) (home-page "https://cran.r-project.org/web/packages/activity/") (synopsis "Animal activity statistics") @@ -9444,14 +9550,14 @@ maps.") (define-public r-tidytree (package (name "r-tidytree") - (version "0.2.6") + (version "0.2.7") (source (origin (method url-fetch) (uri (cran-uri "tidytree" version)) (sha256 (base32 - "13mhizbsawmfqjpnzb73yw6kn1f1wlz0vhyzj3g0rj6ry880rw89")))) + "15ky7hj7w08jx94wm0yikckca0apwv3jy5svd77dpzgb2lr9ff9a")))) (build-system r-build-system) (propagated-inputs `(("r-ape" ,r-ape) @@ -10767,14 +10873,14 @@ This makes it a convenient and fast interface to C/C++ and Fortran code.") (define-public r-spam (package (name "r-spam") - (version "2.2-2") + (version "2.3-0") (source (origin (method url-fetch) (uri (cran-uri "spam" version)) (sha256 (base32 - "024dgfnjfxvsiymbzrhadinamj6qy509f4sbd1zxql8ymkyxn7vi")))) + "194n5mgvyms9ckjqixl3h33apii8h9kqspqg2si9k741k578qb3w")))) (build-system r-build-system) (propagated-inputs `(("r-dotcall64" ,r-dotcall64))) @@ -11152,14 +11258,14 @@ regression coefficients can be conducted via jackknifing.") (define-public r-huge (package (name "r-huge") - (version "1.3.2") + (version "1.3.3") (source (origin (method url-fetch) (uri (cran-uri "huge" version)) (sha256 (base32 - "1j93gvi1jyq3ld9jhdqhrpm2is54rk3ilmf3yw7fx6gva0y6hjqd")))) + "18f8w4hdp9fdi2k5ip6fnrn5z47w4ybgxs2m6a7jdvd2v4wfdr69")))) (build-system r-build-system) (propagated-inputs `(("r-igraph" ,r-igraph) @@ -12590,14 +12696,14 @@ barplots or heatmaps.") (define-public r-seqinr (package (name "r-seqinr") - (version "3.4-5") + (version "3.6-1") (source (origin (method url-fetch) (uri (cran-uri "seqinr" version)) (sha256 (base32 - "17zv0n5cji17izwmwg0jcbxbjl3w5rls91w15svcnlpxjms38ahn")))) + "0j30za6kji6y3v09cvcydiacnp65pv6ig8aw7cydl47l5s9chky4")))) (build-system r-build-system) (propagated-inputs `(("r-ade4" ,r-ade4) @@ -13607,14 +13713,14 @@ the XKCD web comic.") (define-public r-msigdbr (package (name "r-msigdbr") - (version "6.2.1") + (version "7.0.1") (source (origin (method url-fetch) (uri (cran-uri "msigdbr" version)) (sha256 (base32 - "1264j1hs74kq7hyh68vfynadfi6mdpq46qm1hnwzkzzhmbzpb9cg")))) + "19p8z617m3my8la7n1qgb1s2msf940r372im3q30qkbcx3qxg3sd")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) @@ -13881,14 +13987,14 @@ databases, including ENA, PDB or ChEMBL are also accessible.") (define-public r-ggraph (package (name "r-ggraph") - (version "1.0.2") + (version "2.0.0") (source (origin (method url-fetch) (uri (cran-uri "ggraph" version)) (sha256 (base32 - "0fpmp326mryd1k1qvacjadksrnhbla8h960i18lmrimzrag7692c")))) + "0qj7w3af0pgmd9mil6y571jikfkln7b8csvzg6b08spwbglfy1s3")))) (build-system r-build-system) (propagated-inputs `(("r-digest" ,r-digest) @@ -13896,12 +14002,14 @@ databases, including ENA, PDB or ChEMBL are also accessible.") ("r-ggforce" ,r-ggforce) ("r-ggplot2" ,r-ggplot2) ("r-ggrepel" ,r-ggrepel) + ("r-graphlayouts" ,r-graphlayouts) ("r-gtable" ,r-gtable) ("r-igraph" ,r-igraph) ("r-mass" ,r-mass) - ("r-plyr" ,r-plyr) ("r-rcpp" ,r-rcpp) + ("r-rlang" ,r-rlang) ("r-scales" ,r-scales) + ("r-tidygraph" ,r-tidygraph) ("r-viridis" ,r-viridis))) (home-page "https://cran.r-project.org/web/packages/ggraph/") (synopsis "Implementation of grammar of graphics for graphs and networks") @@ -15212,3 +15320,293 @@ single cell integration, described in Korsunsky et al @url{doi.org/10.1101/461954}. The package includes a standalone Harmony function and interfaces to external frameworks.") (license license:gpl3)))) + +(define-public r-covr + (package + (name "r-covr") + (version "3.3.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "covr" version)) + (sha256 + (base32 + "0fvd7v53w11x6kaw61hbml8n1j2ck9l2fv2wvqdsg689xic9rqcs")))) + (properties `((upstream-name . "covr"))) + (build-system r-build-system) + (propagated-inputs + `(("r-crayon" ,r-crayon) + ("r-digest" ,r-digest) + ("r-httr" ,r-httr) + ("r-jsonlite" ,r-jsonlite) + ("r-rex" ,r-rex) + ("r-withr" ,r-withr) + ("r-yaml" ,r-yaml))) + (home-page "https://github.com/r-lib/covr") + (synopsis "Test coverage for R packages") + (description + "Thisp package enables you to track and report code coverage for your +package and (optionally) upload the results to a coverage service. Code +coverage is a measure of the amount of code being exercised by a set of tests. +It is an indirect measure of test quality and completeness. This package is +compatible with any testing methodology or framework and tracks coverage of +both R code and compiled C/C++/FORTRAN code.") + (license license:gpl3))) + +(define-public r-systemfonts + (package + (name "r-systemfonts") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "systemfonts" version)) + (sha256 + (base32 + "0m0ljid683xcam2f14x7k2zv1yx4npac38a3gfv11vhxfbnpgp0z")))) + (properties `((upstream-name . "systemfonts"))) + (build-system r-build-system) + (inputs + `(("fontconfig" ,fontconfig) + ("freetype" ,freetype) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://github.com/r-lib/systemfonts") + (synopsis "System native font finding") + (description + "This package provides system native access to the font catalogue. As +font handling varies between systems it is difficult to correctly locate +installed fonts across different operating systems. The 'systemfonts' package +provides bindings to the native libraries for finding font files that can then +be used further by e.g. graphic devices.") + (license license:expat))) + +(define-public r-graphlayouts + (package + (name "r-graphlayouts") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "graphlayouts" version)) + (sha256 + (base32 + "03dizbhhdhnzbj2i5zvqgs617kwcv4h2pha4f16adic0fph1rxl3")))) + (properties `((upstream-name . "graphlayouts"))) + (build-system r-build-system) + (propagated-inputs + `(("r-igraph" ,r-igraph) + ("r-rcpp" ,r-rcpp) + ("r-rcpparmadillo" ,r-rcpparmadillo))) + (home-page "https://github.com/schochastics/graphlayouts") + (synopsis "Additional layout algorithms for network visualizations") + (description + "This package provides several layout algorithms to visualize networks +which are not part of the igraph library. Most are based on the concept of +stress majorization by Gansner et al. (2004) +<doi:10.1007/978-3-540-31843-9_25>. Some more specific algorithms allow to +emphasize hidden group structures in networks or focus on specific nodes.") + (license license:expat))) + +(define-public r-tidygraph + (package + (name "r-tidygraph") + (version "1.1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "tidygraph" version)) + (sha256 + (base32 + "1zpsarm74afbc7p5dlyb0whc09670qdcddw1ckb25cfc9hfh0hjn")))) + (properties `((upstream-name . "tidygraph"))) + (build-system r-build-system) + (propagated-inputs + `(("r-dplyr" ,r-dplyr) + ("r-igraph" ,r-igraph) + ("r-magrittr" ,r-magrittr) + ("r-pillar" ,r-pillar) + ("r-r6" ,r-r6) + ("r-rcpp" ,r-rcpp) + ("r-rlang" ,r-rlang) + ("r-tibble" ,r-tibble) + ("r-tidyr" ,r-tidyr))) + (home-page "https://github.com/thomasp85/tidygraph") + (synopsis "Tidy API for graph manipulation") + (description + "This package provides a graph implementation that can be thought of as +two tidy data frames describing node and edge data respectively. It provides +an approach to manipulate these two virtual data frames using the API defined +in the @code{dplyr} package, and it also provides tidy interfaces to a lot of +common graph algorithms.") + (license license:expat))) + +(define-public r-soupx + (let ((commit "a3354be76fb52fd795be6ddf163cf056c05c6cb8") + (revision "1")) + (package + (name "r-soupx") + (version (git-version "0.3.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/constantAmateur/SoupX") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1zmlyzrl0fz6l79gn2wswid670p88mm3y292is89sa5p3h7frr99")))) + (properties `((upstream-name . "SoupX"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-matrix" ,r-matrix) + ("r-seurat" ,r-seurat))) + (home-page "https://github.com/constantAmateur/SoupX") + (synopsis "Single cell mRNA Soup eXterminator") + (description + "This package provides a package for quantifying, profiling and +removing cell free mRNA contamination (the \"soup\") from droplet based single +cell RNA-seq experiments.") + (license license:gpl2)))) + +(define-public r-assertr + (package + (name "r-assertr") + (version "2.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "assertr" version)) + (sha256 + (base32 + "0g4ii6vhp0155a29ljhs64a09x0nzy5ybvwwchhk4mkcgsvnvfkj")))) + (build-system r-build-system) + (propagated-inputs + `(("r-dplyr" ,r-dplyr) + ("r-mass" ,r-mass) + ("r-rlang" ,r-rlang))) + (native-inputs + `(("r-knitr" ,r-knitr))) ; needed for vignette + (home-page "https://github.com/ropensci/assertr") + (synopsis "Assertive programming for R analysis pipelines") + (description + "This package provides functionality to assert conditions that have to be +met so that errors in data used in analysis pipelines can fail quickly. It is +similar to @code{stopifnot()} but more powerful, friendly, and easier for use +in pipelines.") + (license license:expat))) + +(define-public r-parameters + (package + (name "r-parameters") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "parameters" version)) + (sha256 + (base32 + "12v301va1l3xydicbf0k04anxlmyjclbbjfg0riprryhkxwwk8g5")))) + (properties `((upstream-name . "parameters"))) + (build-system r-build-system) + (propagated-inputs + `(("r-bayestestr" ,r-bayestestr) + ("r-insight" ,r-insight))) + (home-page "https://cran.r-project.org/web/packages/parameters") + (synopsis "Processing of model parameters") + (description + "This package provides utilities for processing the parameters of various +statistical models. Beyond computing p values, CIs, and other indices for a +wide variety of models, this package implements features like standardization +or bootstrapping of parameters and models, feature reduction (feature +extraction and variable selection) as well as conversion between indices of +effect size.") + (license license:gpl3))) + +(define-public r-rgdal + (package + (name "r-rgdal") + (version "1.4-4") + (source + (origin + (method url-fetch) + (uri (cran-uri "rgdal" version)) + (sha256 + (base32 + "1my56hdc9x40ynxx1qwqwqxjvjxybmm00w4xg5gi8zgj19pffci5")))) + (properties `((upstream-name . "rgdal"))) + (build-system r-build-system) + (inputs + `(("gdal" ,gdal) + ("proj.4" ,proj.4) + ("zlib" ,zlib))) + (propagated-inputs + `(("r-sp" ,r-sp))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://rgdal.r-forge.r-project.org") + (synopsis "Bindings for the Geospatial Data Abstraction Library") + (description + "This package provides bindings to the Geospatial Data Abstraction +Library (GDAL) and access to projection/transformation operations from the +PROJ.4 library.") + (license license:gpl2+))) + +(define-public r-insol + (package + (name "r-insol") + (version "1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "insol" version)) + (sha256 + (base32 + "14ikz05375pjn9hby7kwkhcnykjilbnkdy5i8lsl7c5qdbhmqcm5")))) + (properties `((upstream-name . "insol"))) + (build-system r-build-system) + (propagated-inputs + `(("r-raster" ,r-raster) + ("r-rgdal" ,r-rgdal))) + (native-inputs + `(("gfortran" ,gfortran))) + (home-page "https://meteoexploration.com/R/insol/index.html") + (synopsis "Tools for calculating solar radiation") + (description + "This package provides functions to compute insolation on tilted +surfaces, computes atmospheric transmittance and related parameters such as: +Earth radius vector, declination, sunset and sunrise, daylength, equation of +time, vector in the direction of the sun, vector normal to surface, and some +atmospheric physics.") + (license license:gpl2+))) + +(define-public r-lifecycle + (package + (name "r-lifecycle") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "lifecycle" version)) + (sha256 + (base32 + "11rk7hkw63rfrf4aqmb4xrb88kg95xh8hajpjvjfwjym2v02h74n")))) + (properties `((upstream-name . "lifecycle"))) + (build-system r-build-system) + (propagated-inputs + `(("r-glue" ,r-glue) + ("r-rlang" ,r-rlang))) + (home-page "https://github.com/r-lib/lifecycle") + (synopsis "Manage the life cycle of your package functions") + (description + "Manage the life cycle of your exported functions with shared +conventions, documentation badges, and non-invasive deprecation warnings. The +lifecycle package defines four development stages (experimental, maturing, +stable, and questioning) and three deprecation stages (soft-deprecated, +deprecated, and defunct). It makes it easy to insert badges corresponding to +these stages in your documentation. Usage of deprecated functions are +signalled with increasing levels of non-invasive verbosity.") + (license license:gpl3))) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index ebd3d4ded1..e2a404b54d 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -24,12 +24,78 @@ #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) - #:use-module (gnu packages pkg-config)) + #:use-module (gnu packages compression) + #:use-module (gnu packages curl) + #:use-module (gnu packages gcc) + #:use-module (gnu packages jemalloc) + #:use-module (gnu packages llvm) + #:use-module (gnu packages maths) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages ssh) + #:use-module (gnu packages tls) + #:use-module (gnu packages version-control) + #:use-module (gnu packages web)) ;;; ;;; Please: Try to add new module packages in alphabetic order. ;;; +(define-public rust-adler32 + (package + (name "rust-adler32") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "adler32" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0p7fxlnks9l7p7rwfqi7aqgnk2bps5zc0rjiw00mdw19nnbjjlky")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs (("rust-rand" ,rust-rand)))) + (home-page "https://github.com/remram44/adler32-rs") + (synopsis "Implementation of the Adler32 rolling hash algorithm") + (description + "This library is an implementation of the Adler32 rolling hash algorithm in +the Rust programming language.") + (license (list license:bsd-3 + license:zlib)))) + +(define-public rust-ansi-term + (package + (name "rust-ansi-term") + (version "0.11.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "ansi_term" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "16wpvrghvd0353584i1idnsgm0r3vchg8fyrm0x8ayv1rgvbljgf")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-winapi" ,rust-winapi)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + ;; https://github.com/ogham/rust-ansi-term/commit/5ff6af6f38790abcb3aafee1239286c10ef69576.patch + (lambda _ + (substitute* "src/debug.rs" + (("^ *Blue") " Blue,") + (("underline: false") "underline: false,")) + #t))))) + (home-page "https://github.com/ogham/rust-ansi-term") + (synopsis "Library for ANSI terminal colours and styles") + (description + "This is a library for controlling colours and formatting, such as red bold +text or blue underlined text, on ANSI terminals.") + (license license:expat))) + (define-public rust-antidote (package (name "rust-antidote") @@ -97,6 +163,58 @@ support.") (license (list license:asl2.0 license:expat)))) +(define-public rust-backtrace-sys + (package + (name "rust-backtrace-sys") + (version "0.1.31") + (source + (origin + (method url-fetch) + (uri (crate-uri "backtrace-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0as2pk77br4br04daywhivpi1ixxb8y2c7f726kj849dxys31a42")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-compiler-builtins" + ,rust-compiler-builtins) + ("rust-libc" ,rust-libc) + ("rust-rustc-std-workspace-core" + ,rust-rustc-std-workspace-core)) + #:cargo-development-inputs + (("rust-cc" ,rust-cc)))) + (home-page "https://github.com/rust-lang/backtrace-rs") + (synopsis "Bindings to the libbacktrace gcc library") + (description + "This package provides bindings to the libbacktrace gcc library.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-base-x + (package + (name "rust-base-x") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "base-x" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0hv4y5cdhv6bk0ghk2434clw8v4mmk5cc9lsh6qrpri92zlfmx3n")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-bencher" ,rust-bencher) + ("rust-json" ,rust-json) + ("rust-rand" ,rust-rand-0.3)))) + (home-page "https://github.com/OrKoN/base-x-rs") + (synopsis "Encode/decode any base") + (description "This library provides for encoding and decoding any base.") + (license license:expat))) + (define-public rust-bencher (package (name "rust-bencher") @@ -161,6 +279,29 @@ behave like a set of bitflags.") (license (list license:asl2.0 license:expat)))) +(define-public rust-cargon + (package + (name "rust-cargon") + (version "0.0.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "cargon" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1cszlab7jk736p0lb50ag4l9nv72m7j41bwrmygl0lr4iz0350w2")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-gcc" ,rust-gcc)))) + (home-page "https://github.com/bryant/argon2rs") + (synopsis "Thin wrapper around the Argon2 C library") + (description + "This package provides a thin wrapper around the Argon2 C library. It is +used in argon2rs' bench suite.") + (license license:wtfpl2))) + (define-public rust-cblas-sys (package (name "rust-cblas-sys") @@ -183,6 +324,45 @@ behave like a set of bitflags.") (license (list license:asl2.0 license:expat)))) +(define-public rust-cc + (package + (name "rust-cc") + (version "1.0.41") + (source + (origin + (method url-fetch) + (uri (crate-uri "cc" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1zxzd559dbbf1iwdzmkj7czapzccs17kqqmsj9ayijpdix5rrbld")))) + (build-system cargo-build-system) + (arguments + `(;#:cargo-inputs + ;(("rust-rayon" ,rust-rayon)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-optional-deps + (lambda _ + (substitute* "Cargo.toml.orig" + ((".*optional.*") "\n") + ((".*features.*") "") + ((".*parallel.*") "")) + (delete-file "Cargo.toml") + (copy-file "Cargo.toml.orig" "Cargo.toml") + #t))) + #:tests? #f)) ; Tests require cc-test from git repo. + (home-page "https://github.com/alexcrichton/cc-rs") + (synopsis "Invoke the native C compiler") + (description + "This package provides a build-time dependency for Cargo build scripts to +assist in invoking the native C compiler to compile native C code into a static +archive to be linked into Rustcode.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-cfg-if (package (name "rust-cfg-if") @@ -204,6 +384,71 @@ depending on a large number of #[cfg] parameters. Structured like an (license (list license:asl2.0 license:expat)))) +(define-public rust-clang-sys + (package + (name "rust-clang-sys") + (version "0.28.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "clang-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ls8zcqi5bmmrvrk3b6r1ym4wlivinbv590d2dvg2xn9f44mbpl1")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-glob" ,rust-glob) + ("rust-libc" ,rust-libc) + ("rust-libloading" ,rust-libloading)) + #:cargo-development-inputs + (("rust-glob" ,rust-glob)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-environmental-variable + (lambda* (#:key inputs #:allow-other-keys) + (let ((clang (assoc-ref inputs "libclang"))) + (setenv "LIBCLANG_PATH" + (string-append clang "/lib"))) + #t))))) + (inputs + `(("libclang" ,clang))) + (home-page "https://github.com/KyleMayes/clang-sys") + (synopsis "Rust bindings for libclang") + (description + "This package provides Rust bindings for @code{libclang}.") + (license license:asl2.0))) + +(define-public rust-clang-sys-0.26 + (package + (inherit rust-clang-sys) + (name "rust-clang-sys") + (version "0.26.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "clang-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1r50dwy5hj5gq07dn0qf8222d07qv0970ymx0j8n9779yayc3w3f")))) + (arguments + `(#:cargo-inputs + (("rust-glob" ,rust-glob-0.2) + ("rust-libc" ,rust-libc) + ("rust-libloading" ,rust-libloading)) + #:cargo-development-inputs + (("rust-glob" ,rust-glob-0.2)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-environmental-variable + (lambda* (#:key inputs #:allow-other-keys) + (let ((clang (assoc-ref inputs "libclang"))) + (setenv "LIBCLANG_PATH" + (string-append clang "/lib"))) + #t))))))) + (define-public rust-clicolors-control (package (name "rust-clicolors-control") @@ -230,6 +475,31 @@ depending on a large number of #[cfg] parameters. Structured like an colorization.") (license license:expat))) +(define-public rust-clippy + (package + (name "rust-clippy") + (version "0.0.302") + (source + (origin + (method url-fetch) + (uri (crate-uri "clippy" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1562x3sq9mgmc8j39gd34wqm7ybrdvpmj7cc1n450gwsawayw4fr")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-term" ,rust-term)))) + (home-page "https://github.com/rust-lang/rust-clippy") + (synopsis + "A bunch of helpful lints to avoid common pitfalls in Rust.") + (description + "This package provides a bunch of helpful lints to avoid common pitfalls in Rust.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-cloudabi (package (name "rust-cloudabi") @@ -252,6 +522,60 @@ colorization.") "Low level interface to CloudABI. Contains all syscalls and related types.") (license license:bsd-2))) +(define-public rust-cmake + (package + (name "rust-cmake") + (version "0.1.42") + (source + (origin + (method url-fetch) + (uri (crate-uri "cmake" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0qkwibkvx5xjazvv9v8gvdlpky2jhjxvcz014nrixgzqfyv2byw1")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs (("rust-cc" ,rust-cc)))) + (home-page "https://github.com/alexcrichton/cmake-rs") + (synopsis "Rust build dependency for running cmake") + (description + "This package provides a build dependency for running @code{cmake} to build +a native library. The CMake executable is assumed to be @code{cmake} unless the +CMAKE environmental variable is set.") + (license (list license:asl2.0 + license:expat)))) + +;; This package requires features which are unavailable +;; on the stable releases of Rust. +(define-public rust-compiler-builtins + (package + (name "rust-compiler-builtins") + (version "0.1.19") + (source + (origin + (method url-fetch) + (uri (crate-uri "compiler_builtins" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1fpabpmg8paj4r5a37vmidh1jx1b7a6ilxm4s3xsxczx27ybjcjf")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cc" ,rust-cc) + ("rust-rustc-std-workspace-core" + ,rust-rustc-std-workspace-core)))) + (home-page "https://github.com/rust-lang-nursery/compiler-builtins") + (synopsis "Compiler intrinsics used by the Rust compiler") + (description + "This package provides compiler intrinsics used by the Rust compiler. This +package is primarily useful when building the @code{core} crate yourself and you +need compiler-rt intrinsics.") + (properties `((hidden? . #t))) + (license (list license:asl2.0 + license:expat)))) + (define-public rust-constant-time-eq (package (name "rust-constant-time-eq") @@ -265,7 +589,7 @@ colorization.") (base32 "083icpr9xb72rrdxw3p4068dcspn6ai22jy7rhl2a8grfz448nlr")))) (build-system cargo-build-system) - (home-page "https://crates.io/crates/constant_time_eq") + (home-page "https://github.com/cesarb/constant_time_eq") (synopsis "Compares two equal-sized byte strings in constant time") (description @@ -293,6 +617,51 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.") (license (list license:asl2.0 license:expat)))) +(define-public rust-curl-sys + (package + (name "rust-curl-sys") + (version "0.4.20") + (source + (origin + (method url-fetch) + (uri (crate-uri "curl-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "02542zmvl3fpdqf7ai4cqnamm4albx9j645dkjx5qr1myq8ax42y")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-libnghttp2-sys" ,rust-libnghttp2-sys) + ("rust-libz-sys" ,rust-libz-sys) + ("rust-openssl-sys" ,rust-openssl-sys) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-cc" ,rust-cc) + ("rust-pkg-config" ,rust-pkg-config) + ("rust-openssl-src" ,rust-openssl-src) + ("rust-vcpkg" ,rust-vcpkg)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'find-openssl + (lambda* (#:key inputs #:allow-other-keys) + (let ((openssl (assoc-ref inputs "openssl"))) + (setenv "OPENSSL_DIR" openssl)) + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("curl" ,curl) + ("nghttp2" ,nghttp2) + ("openssl" ,openssl) + ("zlib" ,zlib))) + (home-page "https://github.com/alexcrichton/curl-rust") + (synopsis "Native bindings to the libcurl library") + (description + "This package provides native bindings to the @code{libcurl} library.") + (license license:expat))) + (define-public rust-data-encoding (package (name "rust-data-encoding") @@ -346,6 +715,33 @@ hexadecimal, bas32, and base64.") (base32 "17giv0n0n1r64z0dahfvkjy3ys517jxyhs8sd9lmgvcljpjyryxa")))))) +(define-public rust-dirs + (package + (name "rust-dirs") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "dirs" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "02vigc566z5i6n9wr2x8sch39qp4arn89xhhrh18fhpm3jfc0ygn")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-winapi" ,rust-winapi)))) + (home-page "https://github.com/soc/dirs-rs") + (synopsis "Abstractions for standard locations for various platforms") + (description + "This package provides a tiny low-level library that provides +platform-specific standard locations of directories for config, cache and other +data on Linux, Windows, macOS and Redox by leveraging the mechanisms defined by +the XDG base/user directory specifications on Linux, the Known Folder API on +Windows, and the Standard Directory guidelines on macOS.") + (license (list license:expat license:asl2.0)))) + (define-public rust-discard (package (name "rust-discard") @@ -405,6 +801,20 @@ floating-point primitives to an @code{io::Write}.") (license (list license:asl2.0 license:expat)))) +(define-public rust-dtoa-0.2 + (package + (inherit rust-dtoa) + (name "rust-dtoa") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "dtoa" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0g96cap6si1g6wi62hsdk2fnj3sf5vd4i97zj6163j8hhnsl3n0d")))))) + (define-public rust-fallible-iterator (package (name "rust-fallible-iterator") @@ -427,6 +837,38 @@ provides implementations for @code{HashMap} and @code{HashSet}.") (license (list license:asl2.0 license:expat)))) +(define-public rust-filetime + (package + (name "rust-filetime") + (version "0.2.7") + (source + (origin + (method url-fetch) + (uri (crate-uri "filetime" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0sflihq2l77xjrza7yjalnxsc7dxzg25rhzcfbd9vmyfah5kimvb")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if) + ("rust-libc" ,rust-libc) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)))) + (home-page "https://github.com/alexcrichton/filetime") + (synopsis "Platform-agnostic accessors of timestamps in File metadata") + (description + "This library contains a helper library for inspecting and setting the +various timestamps of files in Rust. This library takes into account +cross-platform differences in terms of where the timestamps are located, what +they are called, and how to convert them into a platform-independent +representation.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-findshlibs (package (name "rust-findshlibs") @@ -465,7 +907,7 @@ cross platform API.") (base32 "0czam11mi80dbyhf4rd4lz0ihcf7vkfchrdcrn45wbs0h40dxm46")))) (build-system cargo-build-system) - (home-page "https://github.com/bluss/fixedbitset") + (home-page "https://github.com/petgraph/fixedbitset") (synopsis "FixedBitSet is a simple bitset collection") (description "FixedBitSet is a simple bitset collection.") (license (list license:asl2.0 @@ -615,6 +1057,28 @@ featuring zero allocations, composability, and iterator-like interfaces.") (license (list license:asl2.0 license:expat)))) +(define-public rust-futures-core-preview + (package + (name "rust-futures-core-preview") + (version "0.3.0-alpha.17") + (source + (origin + (method url-fetch) + (uri (crate-uri "futures-core-preview" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1xaq8m609k6cz8xydwhwp8xxyxigabcw1w9ngycfy0bnkg7iq52b")))) + (build-system cargo-build-system) + (arguments + '(#:tests? #f)) ; The only tests are doc tests, which fail. + (home-page "https://rust-lang-nursery.github.io/futures-rs/") + (synopsis "Core traits and types in for the @code{futures} library.") + (description "This crate provides the core traits and types in for the +@code{futures} library.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-futures-cpupool (package (name "rust-futures-cpupool") @@ -632,7 +1096,7 @@ featuring zero allocations, composability, and iterator-like interfaces.") `(#:cargo-inputs (("rust-futures" ,rust-futures) ("rust-num-cpus" ,rust-num-cpus)))) - (home-page "https://github.com/alexcrichton/futures-rs") + (home-page "https://github.com/rust-lang-nursery/futures-rs") (synopsis "Implementation of thread pools which hand out futures") (description "An implementation of thread pools which hand out futures to the results of @@ -660,6 +1124,149 @@ the computation on the threads themselves.") (license (list license:asl2.0 license:expat)))) +(define-public rust-futures-sink-preview + (package + (name "rust-futures-sink-preview") + (version "0.3.0-alpha.17") + (source + (origin + (method url-fetch) + (uri (crate-uri "futures-sink-preview" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1r4d0gy73hdxkh5g1lrhl1kjnwp6mywjgcj70v0z78b921da42a3")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-futures-core-preview" ,rust-futures-core-preview)))) + (home-page "https://rust-lang-nursery.github.io/futures-rs/") + (synopsis "Asynchronous `Sink` trait for the futures-rs library") + (description + "This package provides the asynchronous @code{Sink} trait for the +futures-rs library.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-gcc + (package + (inherit rust-cc) + (name "rust-gcc") + (version "0.3.55") + (source + (origin + (method url-fetch) + (uri (crate-uri "gcc" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1hng1sajn4r67hndvhjysswz8niayjwvcj42zphpxzhbz89kjpwg")))) + (build-system cargo-build-system) + (arguments + `(;#:cargo-inputs + ;(("rust-rayon" ,rust-rayon)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-optional-deps + (lambda _ + (substitute* "Cargo.toml.orig" + ((".*optional.*") "\n") + ((".*features.*") "") + ((".*parallel.*") "")) + (delete-file "Cargo.toml") + (copy-file "Cargo.toml.orig" "Cargo.toml") + #t))) + #:tests? #f)) + (home-page "https://github.com/alexcrichton/cc-rs") + (synopsis "Library to compile C/C++ code into a Rust library/application") + (description + "This package provides a build-time dependency for Cargo build scripts to +assist in invoking the native C compiler to compile native C code into a static +archive to be linked into Rustcode.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-getopts + (package + (name "rust-getopts") + (version "0.2.17") + (source + (origin + (method url-fetch) + (uri (crate-uri "getopts" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "018yhq97zgcrcxwhj3pxh31h83704sgaiijdnpl0r1ir366c005r")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-log" ,rust-log)))) + (home-page "https://github.com/rust-lang-nursery/getopts") + (synopsis "Rust library for option parsing for CLI utilities") + (description "This library provides getopts-like option parsing.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-glob + (package + (name "rust-glob") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "glob" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0x25wfr7vg3mzxc9x05dcphvd3nwlcmbnxrvwcvrrdwplcrrk4cv")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + ;; This test assumes /root exists but is unreadable by the user. + (lambda _ + (substitute* "src/lib.rs" + (("cfg\\(all\\(unix,.*") "cfg(windows)]\n")) + #t))))) + (home-page "https://github.com/rust-lang-nursery/glob") + (synopsis "Match file paths against Unix shell style patterns") + (description + "This package provides support for matching file paths against Unix +shell style patterns.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-glob-0.2 + (package + (inherit rust-glob) + (name "rust-glob") + (version "0.2.11") + (source + (origin + (method url-fetch) + (uri (crate-uri "glob" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ysvi72slkw784fcsymgj4308c3y03gwjjzqxp80xdjnkbh8vqcb")))) + (arguments + `(#:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + ;; This test assumes /root exists but is unreadable by the user. + (lambda _ + (substitute* "src/lib.rs" + (("cfg\\(unix") "cfg(windows")) + #t))))))) + (define-public rust-heapsize (package (name "rust-heapsize") @@ -821,6 +1428,55 @@ primitives to an @code{io::Write}.") (license (list license:asl2.0 license:expat)))) +(define-public rust-itoa-0.1 + (package + (inherit rust-itoa) + (name "rust-itoa") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "itoa" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "18g7p2hrb3dk84z3frfgmszfc9hjb4ps9vp99qlb1kmf9gm8hc5f")))))) + +(define-public rust-jemalloc-sys + (package + (name "rust-jemalloc-sys") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "jemalloc-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ify9vlql01qhfxlj7d4p9jvcp90mj2h69nkbq7slccvbhzryfqd")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-cc" ,rust-cc) + ("rust-fs-extra" ,rust-fs-extra)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'override-jemalloc + (lambda* (#:key inputs #:allow-other-keys) + (let ((jemalloc (assoc-ref inputs "jemalloc"))) + (delete-file-recursively "jemalloc") + (setenv "JEMALLOC_OVERRIDE" + (string-append jemalloc "/lib/libjemalloc_pic.a"))) + #t))))) + (inputs + `(("jemalloc" ,jemalloc))) + (home-page "https://github.com/gnzlbg/jemallocator") + (synopsis "Rust FFI bindings to jemalloc") + (description "This package provides Rust FFI bindings to jemalloc.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-json (package (name "rust-json") @@ -957,6 +1613,233 @@ the platform that libc is compiled for.") (license (list license:expat license:asl2.0)))) +(define-public rust-libgit2-sys + (package + (name "rust-libgit2-sys") + (version "0.8.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "libgit2-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0y2mibmx7wy91s2kmb2gfb29mrqlqaxpy5wcwr8s1lwws7b9w5sc")) )) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-libssh2-sys" ,rust-libssh2-sys) + ("rust-libz-sys" ,rust-libz-sys) + ("rust-openssl-sys" ,rust-openssl-sys)) + #:cargo-development-inputs + (("rust-cc" ,rust-cc) + ("rust-pkg-config" ,rust-pkg-config)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'find-openssl + (lambda* (#:key inputs #:allow-other-keys) + (let ((openssl (assoc-ref inputs "openssl"))) + (setenv "OPENSSL_DIR" openssl)) + (delete-file-recursively "libgit2") + (setenv "LIBGIT2_SYS_USE_PKG_CONFIG" "1") + (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libgit2" ,libgit2) + ("openssl" ,openssl) + ("zlib" ,zlib))) + (home-page "https://github.com/rust-lang/git2-rs") + (synopsis "Native bindings to the libgit2 library") + (description + "This package provides native rust bindings to the @code{libgit2} library.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-libgit2-sys-0.7 + (package + (inherit rust-libgit2-sys) + (name "rust-libgit2-sys") + (version "0.7.11") + (source + (origin + (method url-fetch) + (uri (crate-uri "libgit2-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1wcvg2qqra2aviasvqcscl8gb2rnjnd6h998wy5dlmf2bnriqi28")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-curl-sys" ,rust-curl-sys) + ("rust-libc" ,rust-libc) + ("rust-libssh2-sys" ,rust-libssh2-sys) + ("rust-libz-sys" ,rust-libz-sys) + ("rust-openssl-sys" ,rust-openssl-sys)) + #:cargo-development-inputs + (("rust-cc" ,rust-cc) + ("rust-pkg-config" ,rust-pkg-config)))) + (inputs + `(("curl" ,curl) + ,@(package-inputs rust-libgit2-sys))))) + +(define-public rust-libloading + (package + (name "rust-libloading") + (version "0.5.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "libloading" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0lyply8rcqc8agajzxs7bq6ivba9dnn1i68kgb9z2flnfjh13cgj")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cc" ,rust-cc) + ("rust-winapi" ,rust-winapi)))) + (home-page "https://github.com/nagisa/rust_libloading/") + (synopsis "Rust library for loading dynamic libraries") + (description + "A memory-safer wrapper around system dynamic library loading primitives. +The most important safety guarantee by this library is prevention of +dangling-Symbols that may occur after a Library is unloaded. Using this library +allows loading dynamic libraries (also known as shared libraries) as well as use +functions and static variables these libraries contain.") + (license license:isc))) + +(define-public rust-libssh2-sys + (package + (name "rust-libssh2-sys") + (version "0.2.12") + (source + (origin + (method url-fetch) + (uri (crate-uri "libssh2-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1zb6gsw795nq848nk5x2smzpfnn1s15wjlzjnvr8ihlz2l5x2549")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-libz-sys" ,rust-libz-sys) + ("rust-openssl-sys" ,rust-openssl-sys)) + #:cargo-development-inputs + (("rust-cc" ,rust-cc) + ("rust-openssl-src" ,rust-openssl-src) + ("rust-pkg-config" ,rust-pkg-config) + ("rust-vcpkg" ,rust-vcpkg)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'find-openssl + (lambda* (#:key inputs #:allow-other-keys) + (let ((openssl (assoc-ref inputs "openssl"))) + (setenv "OPENSSL_DIR" openssl)) + (delete-file-recursively "libssh2") + (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libssh2" ,libssh2) + ("openssl" ,openssl) + ("zlib" ,zlib))) + (home-page "https://github.com/alexcrichton/ssh2-rs") + (synopsis "Native bindings to the libssh2 library") + (description + "This package provides native rust bindings to the @code{libssh2} library.") + (license (list license:asl2.0 + license:expat)))) + + +(define-public rust-lock-api + (package + (name "rust-lock-api") + (version "0.1.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "lock_api" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0b24q9mh258xa52ap636q1sxz0j5vrnp0hwbbh7ddjka3wwz3sv2")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-owning-ref" ,rust-owning-ref) + ("rust-scopeguard" ,rust-scopeguard-0.3)))) + (home-page "https://github.com/Amanieu/parking_lot") + (synopsis "Wrappers to create fully-featured Mutex and RwLock types") + (description + "This package provides wrappers to create fully-featured @code{Mutex} and +@code{RwLock} types. It is compatible with @code{no_std}.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-log + (package + (name "rust-log") + (version "0.3.8") + (source + (origin + (method url-fetch) + (uri (crate-uri "log" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0nsn28syc49vvjhxcfc8261rd1frhjc0r4bn9v3mqvps3ra7f3w8")))) + (build-system cargo-build-system) + (home-page "https://github.com/rust-lang-nursery/log") + (synopsis "Lightweight logging") + (description + "This package provides a lightweight logging facade for Rust") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-lzma-sys + (package + (name "rust-lzma-sys") + (version "0.1.15") + (source + (origin + (method url-fetch) + (uri (crate-uri "lzma-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "14gyj256yh0wm77jbvmlc39v7lfn0navpfrja4alczarzlc8ir2k")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cc" ,rust-cc) + ("rust-libc" ,rust-libc) + ("rust-pkg-config" ,rust-pkg-config)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'unbundle-xz + (lambda* (#:key inputs #:allow-other-keys) + (let ((xz (assoc-ref inputs "xz"))) + (delete-file-recursively "xz-5.2")) + #t))))) + (inputs + `(("pkg-config" ,pkg-config) + ("xz" ,xz))) + (home-page "https://github.com/alexcrichton/xz2-rs") + (synopsis "Bindings to liblzma for lzma and xz stream encoding/decoding") + (description + "This package contains the raw bindings to liblzma which contains an +implementation of LZMA and xz stream encoding/decoding.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-maplit (package (name "rust-maplit") @@ -1015,6 +1898,53 @@ whether an expression matches a pattern.") (license (list license:asl2.0 license:expat)))) +(define-public rust-memmap + (package + (name "rust-memmap") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "memmap" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ns7kkd1h4pijdkwfvw4qlbbmqmlmzwlq3g2676dcl5vwyazv1b5")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)))) + (home-page "https://github.com/danburkert/memmap-rs") + (synopsis "Rust library for cross-platform memory mapped IO") + (description + "This package provides a cross-platform Rust API for memory-mapped +file IO.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-memmap-0.6 + (package + (inherit rust-memmap) + (name "rust-memmap") + (version "0.6.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "memmap" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1zy6s0ni0lx9rjzq3gq2zz9r8zgjmbp02332g3gsj4fyhv4s5zz2")))) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)))))) + (define-public rust-mime (package (name "rust-mime") @@ -1038,6 +1968,110 @@ whether an expression matches a pattern.") (license (list license:asl2.0 license:expat)))) +(define-public rust-miniz-oxide + (package + (name "rust-miniz-oxide") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "miniz_oxide" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "041s41l5w7z8pkp93pdzn8rngxr93q4wxp034pr0cvc7bgway23i")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-adler32" ,rust-adler32)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + (lambda _ + (substitute* "tests/test.rs" + (("../miniz/miniz.c") "Cargo.toml")) + #t))))) + (home-page "https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide") + (synopsis "Pure rust replacement for the miniz DEFLATE/zlib encoder/decoder") + (description + "A pure rust replacement for the miniz DEFLATE/zlib encoder/decoder. Using +@code{flate2} with the @code{rust_backend} feature provides an easy to use +streaming API for miniz_oxide.") + (license license:expat))) + +(define-public rust-miniz-sys + (package + (name "rust-miniz-sys") + (version "0.1.12") + (source + (origin + (method url-fetch) + (uri (crate-uri "miniz-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "00l2r4anm8g35x0js2zfdnwfbrih9m43vphdpb77c5ga3kjkm7hy")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cc" ,rust-cc) + ("rust-libc" ,rust-libc)))) + (home-page "https://github.com/alexcrichton/flate2-rs") + (synopsis "Bindings to the miniz.c library") + (description + "This package provides bindings to the @code{miniz.c} library.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-miow + (package + (name "rust-miow") + (version "0.3.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "miow" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "09ljvx6wg30f2xlv7b7hhpkw7k312n3hjgmrbhwzhz9x03ra0sir")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-socket2" ,rust-socket2) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand)))) + (home-page "https://github.com/alexcrichton/miow") + (synopsis "Rust I/O library for Windows") + (description + "This package provides a zero overhead I/O library for Windows, focusing on +IOCP and Async I/O abstractions.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-miow-0.2 + (package + (inherit rust-miow) + (name "rust-miow") + (version "0.2.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "miow" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "06g9b8sqlh5gxakwqq4rrib07afwanfnxgxajrldwcgk3hxjy7wc")))) + (arguments + `(#:cargo-inputs + (("rust-kernel32-sys" ,rust-kernel32-sys) + ("rust-net2" ,rust-net2) + ("rust-winapi" ,rust-winapi-0.2) + ("rust-ws2-32-sys" ,rust-ws2-32-sys)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.3)))))) + (define-public rust-modifier (package (name "rust-modifier") @@ -1084,6 +2118,105 @@ types as proposed in RFC 1158.") (license (list license:asl2.0 license:expat)))) +(define-public rust-netlib-src + (package + (name "rust-netlib-src") + (version "0.7.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "netlib-src" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "112hwfw1zzdj10h3j213xxqjrq38iygb3nb3ijay65ycmrg819s4")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-cmake" ,rust-cmake) + ("rust-libc" ,rust-libc)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'use-system-lapack + (lambda _ + (delete-file-recursively "source") + (substitute* "Cargo.toml" + (("default .*") + "default = [\"system\"]\n")) + #t))))) + (inputs + `(("gfortran:lib" ,gfortran "lib") + ("lapack" ,lapack))) + (home-page "https://github.com/blas-lapack-rs/netlib-src") + (synopsis "Source of BLAS and LAPACK via Netlib") + (description + "The package provides a source of BLAS and LAPACK via Netlib.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-libnghttp2-sys + (package + (name "rust-libnghttp2-sys") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "libnghttp2-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0qr4lyh7righx9n22c7amlcpk906rn1jnb2zd6gdfpa3yi24s982")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc)) + #:cargo-development-inputs + (("rust-cc" ,rust-cc)))) + (inputs + `(("nghttp2" ,nghttp2))) + (home-page "https://github.com/alexcrichton/nghttp2-rs") + (synopsis "FFI bindings for libnghttp2 (nghttp2)") + (description + "This package provides FFI bindings for libnghttp2 (nghttp2).") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-libz-sys + (package + (name "rust-libz-sys") + (version "1.0.25") + (source + (origin + (method url-fetch) + (uri (crate-uri "libz-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1gjycyl2283525abks98bhxa4r259m617xfm5z52p3p3c8ry9d9f")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-cc" ,rust-cc) + ("rust-pkg-config" ,rust-pkg-config) + ("rust-vcpkg" ,rust-vcpkg)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'delete-vendored-zlib + (lambda _ + (delete-file-recursively "src/zlib") + #t))))) + (inputs + `(("pkg-config" ,pkg-config) + ("zlib" ,zlib))) + (home-page "https://github.com/rust-lang/libz-sys") + (synopsis "Bindings to the system libz library") + (description + "This package provides bindings to the system @code{libz} library (also +known as zlib).") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-nodrop (package (name "rust-nodrop") @@ -1231,6 +2364,106 @@ implementation (which is unstable / requires nightly).") (license (list license:asl2.0 license:expat)))) +(define-public rust-num-traits-0.1 + (package + (inherit rust-num-traits) + (name "rust-num-traits") + (version "0.1.43") + (source + (origin + (method url-fetch) + (uri (crate-uri "num-traits" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0c9whknf2dm74a3cqirafy6gj83a76gl56g4v3g19k6lkwz13rcj")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-num-traits" ,rust-num-traits)))))) + +(define-public rust-openssl-probe + (package + (name "rust-openssl-probe") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "openssl-probe" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1pijrdifgsdwd45b08c2g0dsmnhz7c3kmagb70839ngrd7d29bvp")))) + (build-system cargo-build-system) + (home-page "https://github.com/alexcrichton/openssl-probe") + (synopsis "Find SSL certificate locations") + (description + "This package provides a tool to find SSL certificate locations on the +system for OpenSSL.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-openssl-src + (package + (name "rust-openssl-src") + (version "111.6.0+1.1.1d") + (source + (origin + (method url-fetch) + (uri (crate-uri "openssl-src" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "172xh95hp7aygahah1940kg1dnx60c5m80cwj5hgi8x7x0fxmhmr")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs (("rust-cc" ,rust-cc)))) + (home-page "https://github.com/alexcrichton/openssl-src-rs") + (synopsis "Source of OpenSSL for rust crates") + (description + "This package contains the source of OpenSSL and logic to build it.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-openssl-sys + (package + (name "rust-openssl-sys") + (version "0.9.49") + (source + (origin + (method url-fetch) + (uri (crate-uri "openssl-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1168vivyqbzaxl48bvv9r1x714c03f5c1za8pv5x8fyj9gjxkypl")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-autocfg" ,rust-autocfg) + ("rust-libc" ,rust-libc)) + #:cargo-development-inputs + (("rust-autocfg" ,rust-autocfg) + ("rust-cc" ,rust-cc) + ("rust-openssl-src" ,rust-openssl-src) + ("rust-pkg-config" ,rust-pkg-config) + ("rust-vcpkg" ,rust-vcpkg)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'find-openssl + (lambda* (#:key inputs #:allow-other-keys) + (let ((openssl (assoc-ref inputs "openssl"))) + (setenv "OPENSSL_DIR" openssl)) + #t))))) + (inputs + `(("openssl" ,openssl) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/sfackler/rust-openssl") + (synopsis "FFI bindings to OpenSSL") + (description + "This package provides FFI bindings to OpenSSL for use in rust crates.") + (license license:expat))) + (define-public rust-owning-ref (package (name "rust-owning-ref") @@ -1255,6 +2488,31 @@ owner with them. This can sometimes be useful because Rust borrowing rules normally prevent moving a type that has been borrowed from.") (license license:expat))) +(define-public rust-parity-wasm + (package + (name "rust-parity-wasm") + (version "0.40.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "parity-wasm" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1p84f0k36q05j18jy66n122lyali794cj78hbxgy9wj6si84plqd")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-time" ,rust-time)) + #:tests? #f)) ; Test files are not included in release. + (home-page "https://github.com/paritytech/parity-wasm") + (synopsis "Low-level WebAssembly format library") + (description + "This package provides a WebAssembly binary format serialization, +deserialization, and interpreter in Rust.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-peeking-take-while (package (name "rust-peeking-take-while") @@ -1281,7 +2539,7 @@ the @code{take_while} predicate returned false after dropping the @code{by_ref}. (define-public rust-percent-encoding (package (name "rust-percent-encoding") - (version "2.0.0") + (version "2.1.0") (source (origin (method url-fetch) @@ -1289,7 +2547,7 @@ the @code{take_while} predicate returned false after dropping the @code{by_ref}. (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0m6rkp3iy11la04p6z3492rns6n693pvmx585dvfmzzlzak2hkxs")))) + "0bp3zrsk3kr47fbpipyczidbbx4g54lzxdm77ni1i3qws10mdzfl")))) (build-system cargo-build-system) (home-page "https://github.com/servo/rust-url/") (synopsis "Percent encoding and decoding") @@ -1297,6 +2555,20 @@ the @code{take_while} predicate returned false after dropping the @code{by_ref}. (license (list license:asl2.0 license:expat)))) +(define-public rust-percent-encoding-1 + (package + (inherit rust-percent-encoding) + (name "rust-percent-encoding") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "percent-encoding" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0cgq08v1fvr6bs5fvy390cz830lq4fak8havdasdacxcw790s09i")))))) + (define-public rust-permutohedron (package (name "rust-permutohedron") @@ -1319,6 +2591,29 @@ algorithm.") (license (list license:asl2.0 license:expat)))) +(define-public rust-pico-sys + (package + (name "rust-pico-sys") + (version "0.0.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "pico-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1q5pg0ms6szz6b5h26h4k40zb76zbwwjgyigac4wly9qngdj4yl5")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-gcc" ,rust-gcc) + ("rust-libc" ,rust-libc)))) + (home-page "https://github.com/reem/rust-pico-sys") + (synopsis "Bindings to the PicoHTTPParser") + (description + "This package provides bindings to the PicoHTTPParser.") + (license license:expat))) + (define-public rust-pin-utils (package (name "rust-pin-utils") @@ -1356,7 +2651,7 @@ algorithm.") (("rust-lazy-static" ,rust-lazy-static)))) (inputs `(("pkg-config" ,pkg-config))) - (home-page "https://github.com/alexcrichton/pkg-config-rs") + (home-page "https://github.com/rust-lang/pkg-config-rs") (synopsis "Library to run the pkg-config system tool") (description "A library to run the pkg-config system tool at build time in order to be @@ -1485,7 +2780,7 @@ in terms of the upstream unstable API.") (base32 "1w6kgwwv7p7zr0yyg5rb315lkk24bimywklwx7fsvsbwi10bjx4j")))) (build-system cargo-build-system) - (home-page "http://github.com/tailhook/quick-error") + (home-page "https://github.com/tailhook/quick-error") (synopsis "Macro which makes error types pleasant to write") (description "This crate provides a macro which makes error types pleasant to write.") @@ -1514,6 +2809,50 @@ to write.") ;; Dual licensed. (license (list license:asl2.0 license:expat)))) +(define-public rust-rand + (package + (name "rust-rand") + (version "0.4.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1gfgnqfj2pyh27dcb720jpawskllwnbvxh816ddyykv269xz8ml3")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-fuchsia-zircon" ,rust-fuchsia-zircon) + ("rust-libc" ,rust-libc) + ("rust-winapi" ,rust-winapi)))) + (home-page "https://crates.io/crates/rand") + (synopsis "Random number generators and other randomness functionality") + (description + "Rand provides utilities to generate random numbers, to convert them to +useful types and distributions, and some randomness-related algorithms.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-rand-0.3 + (package + (inherit rust-rand) + (name "rust-rand") + (version "0.3.23") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0v679h38pjjqj5h4md7v2slsvj6686qgcn7p9fbw3h43iwnk1b34")))) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-rand" ,rust-rand)))))) + (define-public rust-rawpointer (package (name "rust-rawpointer") @@ -1604,7 +2943,7 @@ system calls.") ;; The test phase expects there to be a README.md in the root directory. (lambda _ (invoke "touch" "README.md")))))) - (home-page "https://github.com/XAMPPRocky/remove_dir_all.git") + (home-page "https://github.com/XAMPPRocky/remove_dir_all") (synopsis "Implementation of remove_dir_all for Windows") (description "This package provides a safe, reliable implementation of @@ -1637,6 +2976,78 @@ system calls.") (license (list license:asl2.0 license:expat)))) +(define-public rust-rustc-demangle + (package + (name "rust-rustc-demangle") + (version "0.1.16") + (source + (origin + (method url-fetch) + (uri (crate-uri "rustc-demangle" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "10qp42sl1wrdbgbbh8rnay2grm976z7hqgz32c4y09l1c071qsac")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-compiler-builtins" + ,rust-compiler-builtins) + ("rust-rustc-std-workspace-core" + ,rust-rustc-std-workspace-core)))) + (home-page "https://github.com/alexcrichton/rustc-demangle") + (synopsis "Rust compiler symbol demangling") + (description + "This package demanges the symbols from the Rust compiler.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-rustc-hash + (package + (name "rust-rustc-hash") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "rustc-hash" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "114bf72466bl63i5hh8fgqfnhihs0w1m9c9jz505095agfixnvg0")))) + (build-system cargo-build-system) + (home-page "https://github.com/rust-lang-nursery/rustc-hash") + (synopsis "Speedy, non-cryptographic hash used in rustc") + (description + "This package provides a speedy, non-cryptographic hash used in rustc.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-rustc-serialize + (package + (name "rust-rustc-serialize") + (version "0.3.24") + (source + (origin + (method url-fetch) + (uri (crate-uri "rustc-serialize" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1nkg3vasg7nk80ffkazizgiyv3hb1l9g3d8h17cajbkx538jiwfw")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-rand" ,rust-rand-0.3)))) + (home-page "https://github.com/rust-lang-deprecated/rustc-serialize") + (synopsis "Generic serialization/deserialization support") + (description + "This package provides generic serialization/deserialization support +corresponding to the @code{derive(RustcEncodable, RustcDecodable)} mode in the +compiler. Also includes support for hex, base64, and json encoding and +decoding.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-rustc-std-workspace-core (package (name "rust-rustc-std-workspace-core") @@ -1869,6 +3280,20 @@ with one of the implemented strategies.") (license (list license:asl2.0 license:expat)))) +(define-public rust-semver-parser-0.7 + (package + (inherit rust-semver-parser) + (name "rust-semver-parser") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "semver-parser" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq")))))) + (define-public rust-shlex (package (name "rust-shlex") @@ -1908,6 +3333,60 @@ words, like Python's shlex.") data type.") (license license:expat))) +(define-public rust-socket2 + (package + (name "rust-socket2") + (version "0.3.11") + (source + (origin + (method url-fetch) + (uri (crate-uri "socket2" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "11bdcz04i106g4q7swkll0qxrb4287srqd2k3aq2q6i22zjlvdz8")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if) + ("rust-libc" ,rust-libc) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:tests? #f)) ; Tests expect network connectivity. + (home-page "https://github.com/alexcrichton/socket2-rs") + (synopsis "Networking sockets in Rust") + (description + "This package provides utilities for handling networking sockets with a +maximal amount of configuration possible intended.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-sourcefile + (package + (name "rust-sourcefile") + (version "0.1.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "sourcefile" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1lwa6973zs4bgj29my7agfjgk4nw9hp6j7dfnr13nid85fw7rxsb")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-tempfile" ,rust-tempfile)))) + (home-page "https://github.com/derekdreery/sourcefile-rs") + (synopsis "Concatenate source from multiple files") + (description + "A library for concatenating source from multiple files, whilst keeping +track of where each new file and line starts.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-spin (package (name "rust-spin") @@ -1921,7 +3400,7 @@ data type.") (base32 "0m9clchsj0rf13bggsgvbv9haiy0f6rhvnvkpvkk8720a5pkydj4")))) (build-system cargo-build-system) - (home-page "https://github.com/mvdnes/spin-rs.git") + (home-page "https://github.com/mvdnes/spin-rs") (synopsis "Synchronization primitives based on spinning") (description "This crate provides synchronization primitives based on spinning. They may contain data, are usable without @code{std},and static @@ -1952,6 +3431,53 @@ to the same address.") (license (list license:asl2.0 license:expat)))) +(define-public rust-stacker + (package + (name "rust-stacker") + (version "0.1.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "stacker" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0js0axz5nla1mkr2dm2vrv9rj964ng1lrv4l43sqlnfgawplhygv")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if) + ("rust-libc" ,rust-libc) + ("rust-winapi" ,rust-winapi) + ("rust-cc" ,rust-cc)))) + (home-page "https://github.com/rust-lang/stacker") + (synopsis "Manual segmented stacks for Rust") + (description + "This package provides a stack growth library useful when implementing +deeply recursive algorithms that may accidentally blow the stack.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-static-assertions + (package + (name "rust-static-assertions") + (version "0.3.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "static-assertions" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1lw33i89888yb3x29c6dv4mrkg3534n0rlg3r7qzh4p58xmv6gkz")))) + (build-system cargo-build-system) + (home-page "https://github.com/nvzqz/static-assertions-rs") + (synopsis "Compile-time assertions for rust") + (description + "This package provides compile-time assertions to ensure that invariants +are met.") + (license (list license:expat license:asl2.0)))) + (define-public rust-stdweb-internal-runtime (package (name "rust-stdweb-internal-runtime") @@ -2039,6 +3565,20 @@ metrics. It includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro, and Jaro-Winkler.") (license license:expat))) +(define-public rust-strsim-0.8 + (package + (inherit rust-strsim) + (name "rust-strsim") + (version "0.8.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "strsim" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0sjsm7hrvjdifz661pjxq5w4hf190hx53fra8dfvamacvff139cf")))))) + (define-public rust-synstructure-test-traits (package (name "rust-synstructure-test-traits") @@ -2058,6 +3598,116 @@ and Jaro-Winkler.") "This package provides helper test traits for synstructure doctests.") (license license:expat))) +(define-public rust-tar + (package + (name "rust-tar") + (version "0.4.26") + (source + (origin + (method url-fetch) + (uri (crate-uri "tar" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1lr6v3cpkfxd2lk5ll2jd8wr1xdskwj35smnh5sfb8xvzzxnn6dk")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-filetime" ,rust-filetime) + ("rust-libc" ,rust-libc) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-xattr" ,rust-xattr)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:tests? #f)) ; Test archives are not distributed in the crate tarball. + (home-page "https://github.com/alexcrichton/tar-rs") + (synopsis "Tar file reading/writing for Rust") + (description + "This package provides a Rust implementation of a TAR file reader and +writer. This library does not currently handle compression, but it is abstract +over all I/O readers and writers. Additionally, great lengths are taken to +ensure that the entire contents are never required to be entirely resident in +memory all at once.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-tempdir + (package + (name "rust-tempdir") + (version "0.3.7") + (source + (origin + (method url-fetch) + (uri (crate-uri "tempdir" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1n5n86zxpgd85y0mswrp5cfdisizq2rv3la906g6ipyc03xvbwhm")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-rand" ,rust-rand) + ("rust-remove-dir-all" ,rust-remove-dir-all)))) + (home-page "https://github.com/rust-lang-deprecated/tempdir") + (synopsis "Temporary directory management for Rust") + (description + "This package provides a library for managing a temporary directory and +deleting all contents when it's dropped.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-tempfile + (package + (name "rust-tempfile") + (version "3.0.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "tempfile" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ny1cdbcsrmwjpy4k9366xm6p0jqkrmrvr0cln2djxspp1inyxs7")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-rand" ,rust-rand) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-remove-dir-all" ,rust-remove-dir-all) + ("rust-winapi" ,rust-winapi)))) + (home-page "http://stebalien.com/projects/tempfile-rs") + (synopsis "Library for managing temporary files and directories") + (description + "This package provides a library for managing temporary files and +directories.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-term + (package + (name "rust-term") + (version "0.4.6") + (source + (origin + (method url-fetch) + (uri (crate-uri "term" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1wbh8ngqkqr3f6wz902yplf60bd5yapnckvrkgmzp5nffi7n8qzs")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-kernel32-sys" ,rust-kernel32-sys) + ("rust-winapi" ,rust-winapi)))) + (home-page "https://github.com/Stebalien/term") + (synopsis "Terminal formatting library") + (description + "This package provides a terminal formatting library in rust.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-termcolor (package (name "rust-termcolor") @@ -2177,6 +3827,37 @@ fixed set of worker threads.") (license (list license:asl2.0 license:expat)))) +(define-public rust-time + (package + (name "rust-time") + (version "0.1.39") + (source + (origin + (method url-fetch) + (uri (crate-uri "time" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "161hqx0gw722ikydanpahky447vaxqncwmkj66rny282vzqpalx1")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-rustc-serialize" ,rust-rustc-serialize) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-log" ,rust-log) + ("rust-winapi" ,rust-winapi)) + #:tests? #f)) ; Tests have difficulty with the timezones. + (home-page "https://github.com/rust-lang-deprecated/time") + (synopsis "Simple time handling in Rust") + (description + "This package provides utilities for working with time-related functions +in Rust.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-tokio-mock-task (package (name "rust-tokio-mock-task") @@ -2233,7 +3914,7 @@ fixed set of worker threads.") (base32 "0yb0n8822mr59j200fyr2fxgzzgqljyxflx9y8bdy3rlaqngilgg")))) (build-system cargo-build-system) - (home-page "https://github.com/reem/rust-traitobject.git") + (home-page "https://github.com/reem/rust-traitobject") (synopsis "Unsafe helpers for dealing with raw trait objects") (description "Unsafe helpers for dealing with raw trait objects.") (license (list license:asl2.0 @@ -2483,6 +4164,28 @@ whitespace from a string.") (license (list license:asl2.0 license:expat)))) +(define-public rust-unreachable + (package + (name "rust-unreachable") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "unreachable" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0mps2il4xy2mjqc3appas27hhn2xmvixc3bzzhfrjj74gy3i0a1q")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs (("rust-void" ,rust-void)))) + (home-page "https://github.com/reem/rust-unreachable") + (synopsis "Unreachable code optimization hint in rust") + (description + "This package provides an unreachable code optimization hint in rust.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-unsafe-any (package (name "rust-unsafe-any") @@ -2525,6 +4228,32 @@ whitespace from a string.") untrusted inputs in Rust.") (license license:isc))) +(define-public rust-vcpkg + (package + (name "rust-vcpkg") + (version "0.2.7") + (source + (origin + (method url-fetch) + (uri (crate-uri "vcpkg" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "15dzk1b96q946v9aisbd1bbhi33n93wvgziwh1shmscn1xflbp9k")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-lazy-static" ,rust-lazy-static) + ("rust-tempdir" ,rust-tempdir)) + #:tests? #f)) ; tests try to link libmysql, graphite2, harfbuzz + (home-page "https://github.com/mcgoo/vcpkg-rs") + (synopsis "Find native dependencies in a vcpkg tree at build time") + (description + "This package provides a library to find native dependencies in a +@code{vcpkg} tree at build time in order to be used in Cargo build scripts.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-version-check (package (name "rust-version-check") @@ -2576,7 +4305,7 @@ If that fails, no determination is made, and calls return None.") (base32 "0zc8f0ksxvmhvgx4fdg0zyn6vdnbxd2xv9hfx4nhzg6kbs4f80ka")))) (build-system cargo-build-system) - (home-page "https://github.com/reem/rust-void.git") + (home-page "https://github.com/reem/rust-void") (synopsis "Void type for use in statically impossible cases") (description "The uninhabited void type for use in statically impossible cases.") @@ -2910,6 +4639,33 @@ color in a Windows console.") "Contains function definitions for the Windows API library ws2_32.") (license license:expat))) +(define-public rust-xattr + (package + (name "rust-xattr") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "xattr" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0k556fb6f5jc907975j9c8iynl2fqz3rf0w6fiig83i4yi0kfk14")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc)) + #:cargo-development-inputs + (("rust-tempfile" ,rust-tempfile)) + #:tests? #f)) ; Tests assume read access to /var. + (home-page "https://github.com/Stebalien/xattr") + (synopsis "Unix extended filesystem attributes") + (description + "This package provide a small library for setting, getting, and listing +extended attributes.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-xdg (package (name "rust-xdg") diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 4be1eee156..152258a522 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -636,14 +636,14 @@ printer/driver specific, but spooler-independent PPD file.") (define-public foo2zjs (package (name "foo2zjs") - (version "20190517") + (version "20190909") (source (origin (method url-fetch) ;; XXX: This is an unversioned URL! (uri "http://foo2zjs.rkkda.com/foo2zjs.tar.gz") (sha256 (base32 - "13gzsd26nq4brx1xzpwmg1qnr4nk7ykgi94qr1hbjqfi561prki4")))) + "1nn84c045mbv6yzpjfggc6152bvgrmcxiyvgz9v2w3sws7ihshrm")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm index ba22fecf20..37bd4aaf6b 100644 --- a/gnu/packages/dictionaries.scm +++ b/gnu/packages/dictionaries.scm @@ -218,7 +218,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.") (define-public grammalecte (package (name "grammalecte") - (version "1.3.0") + (version "1.4.0") (source (origin (method url-fetch/zipbomb) @@ -226,10 +226,10 @@ It comes with a German-English dictionary with approximately 270,000 entries.") "Grammalecte-fr-v" version ".zip")) (sha256 (base32 - "1knysfdd1rx4vc5cmmnry4jsza0cdjy26fv505m854yfmq6zrckd")))) + "0k30b9kcczsadjjgwja03rkm11cpcc1xi6w8l6k0qfbjfpkhsh66")))) (build-system python-build-system) (home-page "https://grammalecte.net") - (synopsis "French spelling and grammar checker") + (synopsis "French spelling and grammar checker") (description "Grammalecte is a grammar checker dedicated to the French language, derived from Lightproof. diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index ae2e5cf8fa..8b8622813b 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -373,14 +373,14 @@ to result in system-wide compromise.") (define-public unbound (package (name "unbound") - (version "1.9.2") + (version "1.9.3") (source (origin (method url-fetch) (uri (string-append "https://www.unbound.net/downloads/unbound-" version ".tar.gz")) (sha256 - (base32 "15bbrczibap30db8a1pmqhvjbmkxms39hwiivby7f4j5rz2wwykg")))) + (base32 "1ykdy62sgzv33ggkmzwx2h0ifm7hyyxyfkb4zckv7gz4f28xsm8v")))) (build-system gnu-build-system) (outputs '("out" "python")) (native-inputs diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm index 240fc4acd8..b03b2cba2e 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org> ;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> -;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; @@ -27,6 +27,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages compression) + #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages fonts) #:use-module (gnu packages freedesktop) @@ -36,6 +37,7 @@ #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) #:use-module (gnu packages javascript) + #:use-module (gnu packages kde) #:use-module (gnu packages kde-frameworks) ; extra-cmake-modules #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -520,3 +522,101 @@ minutes. For simpler timetables, it may take a shorter time, under difficult timetables, it may take a longer time, a matter of hours.") (license license:agpl3+))) +(define-public klavaro + (package + (name "klavaro") + (version "3.09") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/klavaro/klavaro-" + version ".tar.bz2")) + (sha256 + (base32 + "12gml7h45b1w9s318h0d5wxw92h7pgajn2kh57j0ak9saq0yb0wr")))) + (build-system gnu-build-system) + (native-inputs + `(("intltool" ,intltool) + ("pkg-config" ,pkg-config))) + (inputs + `(("cairo" ,cairo) + ("curl" ,curl) + ("gtk+" ,gtk+) + ("pango" ,pango))) + (home-page "https://klavaro.sourceforge.io/en/index.html") + (synopsis "Touch typing tutor") + (description + "Klavaro is a simple tutor to teach correct typing, almost independently of +language and very flexible regarding to new or unknown keyboard layouts.") + (license license:gpl3+))) + +(define-public ktouch + (package + (name "ktouch") + (version "19.08.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" + version "/src/ktouch-" version ".tar.xz")) + (sha256 + (base32 + "19rdk94pls75hdvx11hnfk3qpm6l28p9q45q5f04sknxagrfaznr")))) + (build-system cmake-build-system) + (arguments + `(#:modules ((guix build cmake-build-system) + (guix build qt-utils) + (guix build utils)) + #:imported-modules (,@%cmake-build-system-modules + (guix build qt-utils)) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'patch-makefiles + (lambda* (#:key inputs #:allow-other-keys) + (let ((qtdec (assoc-ref inputs "qtdeclarative"))) + (substitute* '("src/CMakeFiles/ktouch_autogen.dir/build.make" + "src/CMakeFiles/ktouch.dir/build.make") + (("/gnu/store/.*qmlcachegen") + (string-append qtdec "/bin/qmlcachegen")))) + #t)) + (add-after 'install 'wrap-executable + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-qt-program out "ktouch")) + #t))))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("kdoctools" ,kdoctools) + ("pkg-config" ,pkg-config))) + (inputs + `(("kcmutils" ,kcmutils) + ("kcompletion" ,kcompletion) + ("kconfig" ,kconfig) + ("kconfigwidgets" ,kconfigwidgets) + ("kcoreaddons" ,kcoreaddons) + ("kdeclarative" ,kdeclarative) + ("ki18n" ,ki18n) + ("kiconthemes" ,kiconthemes) + ("kitemviews" ,kitemviews) + ("kqtquickcharts" ,kqtquickcharts) + ("ktextwidgets" ,ktextwidgets) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kwindowsystem" ,kwindowsystem) + ("kxmlgui" ,kxmlgui) + ("libxcb" ,libxcb) + ("libxkbfile" ,libxkbfile) + ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("qtgraphicaleffects" ,qtgraphicaleffects) + ("qtquickcontrols2" ,qtquickcontrols2) + ("qtx11extras" ,qtx11extras) + ("qtxmlpatterns" ,qtxmlpatterns))) + (home-page "https://edu.kde.org/ktouch/") + (synopsis "Touch typing tutor") + (description + "KTouch is an aid for learning how to type with speed and accuracy. It +provides a sample text to type and indicates which fingers should be used for +each key. A collection of lessons are included for a wide range of different +languages and keyboard layouts, and typing statistics are used to dynamically +adjust the level of difficulty.") + (license license:gpl2))) diff --git a/gnu/packages/elixir.scm b/gnu/packages/elixir.scm index 2a1d99452f..88ada71aea 100644 --- a/gnu/packages/elixir.scm +++ b/gnu/packages/elixir.scm @@ -24,7 +24,7 @@ (define-module (gnu packages elixir) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system gnu) - #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix packages) #:use-module (gnu packages) #:use-module (gnu packages erlang) @@ -34,15 +34,16 @@ (package (name "elixir") (version "1.8.2") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/elixir-lang/elixir" - "/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "0ddqxw24zdqlg7glzk22m7qjal8f18divzp364a6gi1bv6rg16yg")) - (patches (search-patches "elixir-path-length.patch")))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/elixir-lang/elixir.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1n77cpcl2b773gmj3m9s24akvj9gph9byqbmj2pvlsmby4aqwckq")) + (patches (search-patches "elixir-path-length.patch")))) (build-system gnu-build-system) (arguments `(#:test-target "test" @@ -51,7 +52,11 @@ (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases - (add-after 'unpack 'replace-paths + (add-after 'unpack 'make-git-checkout-writable + (lambda _ + (for-each make-file-writable (find-files ".")) + #t)) + (add-after 'make-git-checkout-writable 'replace-paths (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (substitute* '("lib/elixir/lib/system.ex" diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 8f866fbc28..87edd4619e 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -49,10 +49,11 @@ ;;; Copyright © 2019 LaFreniere, Joseph <joseph@lafreniere.xyz> ;;; Copyright © 2019 Amar Singh <nly@disroot.org> ;;; Copyright © 2019 Baptiste Strazzulla <bstrazzull@hotmail.fr> -;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autitici.org> +;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk> ;;; Copyright © 2019 Amin Bandali <bandali@gnu.org> ;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org> +;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -2125,15 +2126,16 @@ a command.") (define-public emacs-olivetti (package (name "emacs-olivetti") - (version "1.5.7") + (version "1.8.0") (source (origin - (method url-fetch) - (uri (string-append - "https://stable.melpa.org/packages/olivetti-" - version ".el")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/rnkn/olivetti.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1yj2ylg46q0pw1xzlv2b0fv9x8p56x25284s9v2smwjr4vf0nwcj")))) + "0ba30swqxxbpa8866chymywnahby1hk670zzkz44q49328i2wksj")))) (build-system emacs-build-system) (home-page "https://github.com/rnkn/olivetti") (synopsis "Emacs minor mode for a nice writing environment") @@ -2855,7 +2857,7 @@ mode-line.") (define-public emacs-robe (package (name "emacs-robe") - (version "0.8.1") + (version "0.8.2") (source (origin (method git-fetch) @@ -2864,7 +2866,7 @@ mode-line.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0ll7ivxqnglfb0i70ly6qq2yfw9cyi3vq3lmj4s6h6c1c7rm3gcq")))) + (base32 "0qw18wi54yg971n4wnjqkd8lqj5lbs9ra8bvmngif2bzhqlfdsbn")))) (build-system emacs-build-system) (arguments '(#:include (cons "^lib\\/" %default-include))) @@ -2932,7 +2934,7 @@ snippets for yasnippet.") (define-public emacs-smart-mode-line (package (name "emacs-smart-mode-line") - (version "2.12.0") + (version "2.13") (source (origin (method git-fetch) @@ -2941,7 +2943,7 @@ snippets for yasnippet.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1gs4ay9hdg8gmia4ir74qawk80pqwv99hp4yhy108kpfry5mrq6z")))) + (base32 "164b697xm1rwcggv37dymhf3npbyh2bs59z8b6m5x35lb4c3lf8b")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-rich-minority" ,emacs-rich-minority))) @@ -3091,7 +3093,10 @@ for Flow files.") (base32 "0lybadq66bl4snkwph9i1y0qxln29wyfjn222ii3nfwany28cj66")))) (build-system emacs-build-system) - (arguments '(#:include '("\\.el$" "\\.org$"))) + (arguments + `(#:include '("\\.el$" "\\.org$") + #:tests? #t + #:test-command '("make" "test"))) (home-page "https://github.com/xuchunyang/elisp-demos/") (synopsis "Enhance @code{*Help*} buffers with additional examples") (description @@ -3126,11 +3131,10 @@ completion of relevant keywords.") (define-public emacs-sudo-edit (let ((commit "cc3d478937b1accd38742bfceba92af02ee9357d") - (version "0.1.0") (revision "6")) (package (name "emacs-sudo-edit") - (version (git-version version revision commit)) + (version (git-version "0.1.0" revision commit)) (source (origin (method git-fetch) @@ -3142,6 +3146,18 @@ completion of relevant keywords.") (base32 "1qv58x5j5a3v1s2ylhck1ykbfclq0mbi0gsvaql3nyv8cxazqlwl")))) (build-system emacs-build-system) + (native-inputs + `(("emacs-undercover" ,emacs-undercover))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'fix-makefile + (lambda _ + (substitute* "Makefile" + (("\\$\\(CASK\\) exec ") "")) + #t))) + #:tests? #t + #:test-command '("make" "test"))) (home-page "https://github.com/nflath/sudo-edit/") (synopsis "Open files as another user") (description @@ -3197,14 +3213,14 @@ source code using IPython.") (define-public emacs-debbugs (package (name "emacs-debbugs") - (version "0.18") + (version "0.19") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/debbugs-" version ".tar")) (sha256 (base32 - "00kich80zdg7v3v613f9prqddkpwpm1nf9sj10f0n6wh15rzwv07")))) + "0cpby8f088cqb5mpd756a2mb706x763k15cg2xdmmsxl415k3yw4")))) (build-system emacs-build-system) (arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$"))) (propagated-inputs @@ -4479,6 +4495,32 @@ variants.") package provides a light and a dark variant.") (license license:gpl3+))) +(define-public emacs-poet-theme + (let ((commit "d84f7b259cc9b6ff8d442cf4c38bd6c7065ff8f4") + (revision "0")) + (package + (name "emacs-poet-theme") + (version (git-version "0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/kunalb/poet.git") + (commit commit))) + (sha256 + (base32 + "0a84jdaj619mb59a46dmkk2sfs42rylqk9ryl1drgs8d3lia79mz")))) + (build-system emacs-build-system) + (home-page "https://github.com/kunalb/poet/") + (synopsis "Emacs theme for prose") + (description + "Emacs has very good support for multiple fonts in a single file. Poet +uses this support to make it much more convenient to write prose within Emacs, +with particular attention paid to @code{org-mode} and @code{markdown-mode}. +Code blocks, tables, etc are formatted in monospace text with the appropriate +backgrounds.") + (license license:expat)))) + (define-public emacs-ahungry-theme (package (name "emacs-ahungry-theme") @@ -4550,15 +4592,16 @@ board and goal value can be customized.") (define-public emacs-base16-theme (package (name "emacs-base16-theme") - (version "2.1") + (version "2.2") (source (origin - (method url-fetch) - (uri (string-append "https://stable.melpa.org/packages/base16-theme-" - version ".tar")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/belak/base16-emacs.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 - "0z6hrwz2jlz6jbr381rcqcqvx6hss5cad352klx07rark7zccacj")))) + (base32 "01w89g413s1da6rf94y1xnhw79cjy2bqb01yfjs58cy492cm0vr6")))) (build-system emacs-build-system) (home-page "https://github.com/belak/base16-emacs") (synopsis "Base16 color themes for Emacs") @@ -5968,7 +6011,7 @@ indentation guides in Emacs: (define-public emacs-elpy (package (name "emacs-elpy") - (version "1.28.0") + (version "1.31.0") (source (origin (method git-fetch) (uri (git-reference @@ -5977,7 +6020,7 @@ indentation guides in Emacs: (file-name (git-file-name name version)) (sha256 (base32 - "073bwxwjzcbmvpcz9q2xjwzx9x7hkvjni6fwvikh6yawzjp56jis")))) + "0bvmgqs3c80bhs9v5ymgadv7vk4iamha10y7rl09pixmjm4mzagk")))) (build-system emacs-build-system) (arguments `(#:include (cons* "^elpy/[^/]+\\.py$" "^snippets\\/" %default-include) @@ -6736,8 +6779,8 @@ end of a line and increment or decrement it.") (license license:gpl3+)))) (define-public emacs-evil-owl - (let ((commit "e8fe5b2f745e36db04cb71eb689bf91c5409614f") - (revision "2")) + (let ((commit "24c5f43df375194386344e69bc720ea3986c9510") + (revision "3")) (package (name "emacs-evil-owl") (version (git-version "0.0.1" revision commit)) @@ -6750,10 +6793,13 @@ end of a line and increment or decrement it.") (file-name (git-file-name name version)) (sha256 (base32 - "1g7kplna62f271135mnjdbvxk2ayx7m4gvd6l86d2394alx16nhq")))) + "0bqzch14whlmrcasakah3psrzswvkzd7mmi8hx5s64kfp29wbdhi")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-evil" ,emacs-evil))) + (arguments + `(#:tests? #t + #:test-command '("make" "test"))) (home-page "https://github.com/mamapanda/evil-owl") (synopsis "Preview candidates when using Evil registers and marks") (description @@ -6780,6 +6826,17 @@ a popup window for previewing candidates.") "0bjpn4yqig17ddym6wqq5fm1b294q74hzcbj9a6gs97fqiwf88xa")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-evil" ,emacs-evil))) + (native-inputs `(("emacs-ert-runner" ,emacs-ert-runner))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'fix-makefile + (lambda _ + (substitute* "Makefile" + (("cask exec ") "")) + #t))) + #:tests? #t + #:test-command '("make" "test"))) (home-page "https://github.com/Dewdrops/evil-exchange") (synopsis "Exchange text easily within Evil") (description @@ -6909,6 +6966,9 @@ aligning text objects based on separators.") "0872ix682hkdz0k8pn6sb54rqkx00rz5fxpd5j2snx406yagpaxz")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-evil" ,emacs-evil))) + (arguments + `(#:tests? #t + #:test-command '("make" "test"))) (home-page "https://github.com/edkolev/evil-expat") (synopsis "Extra @code{ex} commands for @code{evil-mode}") (description @@ -11314,6 +11374,11 @@ timestamps by providing a @code{ts} struct.") ("emacs-ts" ,emacs-ts) ("emacs-org" ,emacs-org) ("emacs-dash" ,emacs-dash))) + (native-inputs + `(("emacs-buttercup" ,emacs-buttercup))) + (arguments + `(#:tests? #t + #:test-command '("buttercup" "-L" "."))) (home-page "https://github.com/alphapapa/org-ql/") (synopsis "Query language for Org buffers") (description "This package provides a Lispy query language for Org @@ -13127,16 +13192,17 @@ compilation/grep buffers. Works with @code{wgrep}, @code{ack}, @code{ag}, (define-public emacs-interactive-align (package (name "emacs-interactive-align") - (version "0.1.0") + (version "0.4.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/mkcms/interactive-align/" - "archive/" "v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/mkcms/interactive-align.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0sibpgb4lp6yy3pziak8f3hz4b28yj0dqy2nzh51z3d0b63h528m")))) + "0bh03w91i622hbar5dcq631ndxx1y8kd3h655pgw1g0lqkv1mlnc")))) (build-system emacs-build-system) (home-page "https://github.com/mkcms/interactive-align/") (synopsis "Interactive align-regexp command in Emacs") @@ -13606,7 +13672,7 @@ through the symbol: @command{this-fn}.") (define-public emacs-dumb-jump (package (name "emacs-dumb-jump") - (version "0.5.2") + (version "0.5.3") (source (origin (method git-fetch) @@ -13615,7 +13681,7 @@ through the symbol: @command{this-fn}.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "00ph85vp8sa3k99qrdxfz4l8zx121q9xf47vvspzg26bk9l4nwin")))) + (base32 "1njf60264snhxrd36m4z687lqfkis0p9mmrr7cf1c8l0lfdvawxi")))) (build-system emacs-build-system) (arguments `(#:tests? #f ; FIXME: Tests freeze when run. @@ -13923,6 +13989,18 @@ describing the key binding changes.") (propagated-inputs `(("emacs-evil" ,emacs-evil) ("emacs-iedit" ,emacs-iedit))) + (native-inputs + `(("emacs-ert-runner" ,emacs-ert-runner))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'fix-makefile + (lambda _ + (substitute* "Makefile" + (("@cask exec ") "")) + #t))) + #:tests? #t + #:test-command '("make" "test"))) (home-page "https://github.com/hlissner/evil-multiedit") (synopsis "Multiple cursors for Evil mode") @@ -14186,30 +14264,29 @@ on-line service.") (license license:gpl3+))) (define-public emacs-helm-company - (let ((commit "d3fc093a0e833b4dee6561c00d6df3d62aa50f3f")) - (package - (name "emacs-helm-company") - (version (git-version "0.2.3" "1" commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/Sodel-the-Vociferous/helm-company") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1ciirsanhajdqm5iwl8k9ywf4jha1wdv4sc4d9kslyrfr9zn4q6k")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-helm" ,emacs-helm) - ("emacs-company" ,emacs-company))) - (home-page "https://github.com/Sodel-the-Vociferous/helm-company") - (synopsis "Helm interface for company-mode") - (description - "This is a Helm interface to company-mode, a text completion + (package + (name "emacs-helm-company") + (version "0.2.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Sodel-the-Vociferous/helm-company") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ci37w6ahnqrfpb284gjvxmimlf61sdxb9k192yy9q983cksv2hx")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm) + ("emacs-company" ,emacs-company))) + (home-page "https://github.com/Sodel-the-Vociferous/helm-company") + (synopsis "Helm interface for company-mode") + (description + "This is a Helm interface to company-mode, a text completion framework.") - (license license:gpl3+)))) + (license license:gpl3+))) (define-public emacs-helm-descbinds (let ((commit "033be73f21778633813264ce1634a6e1ad873d8e")) @@ -15805,6 +15882,31 @@ buffers, etc. It also has plug-ins to help your Emacs life.") programs can use this table component for the application UI.") (license license:gpl3+)))) +(define-public emacs-leetcode + (let ((commit "8624496af9e105c3e07d88844b37ede87540d604") + (revision "1")) + (package + (name "emacs-leetcode") + (version (git-version "0" "1" commit)) + (home-page "https://github.com/ginqi7/leetcode-emacs.git") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ginqi7/leetcode-emacs") + (commit commit))) + (sha256 + (base32 + "11pp7ydlmwrv7djf9mwk4xzn295xbmdnj5x13bfj5yjpjr89p531")) + (file-name (git-file-name name version)))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-names" ,emacs-names) + ("emacs-ctable" ,emacs-ctable))) + (synopsis "Solve and submit LeetCode problems from within Emacs") + (description "This package provides an Emacs interface to LeetCode +allowing users to log in and solve problems of their choice using Emacs.") + (license license:unlicense)))) + (define-public emacs-epc (let ((commit "e1bfa5ca163273859336e3cc89b4b6460f7f8cda")) (package @@ -16546,11 +16648,10 @@ unescaping of quotes.") (define-public emacs-flycheck-haskell (let ((commit "32ddff87165a7d3a35e7318bee997b5b4bd41278") - (version "0.8") - (revision "79")) + (revision "2")) (package (name "emacs-flycheck-haskell") - (version (git-version version revision commit)) + (version (git-version "0.8" revision commit)) (source (origin (method git-fetch) @@ -16568,6 +16669,8 @@ unescaping of quotes.") ("emacs-flycheck" ,emacs-flycheck) ("emacs-haskell-mode" ,emacs-haskell-mode) ("emacs-let-alist" ,emacs-let-alist))) + (arguments + `(#:include '("\\.el$" "\\.hs$"))) (home-page "https://github.com/flycheck/flycheck-haskell") (synopsis "Flycheck for Haskell") (description "This package configures syntax-checking for Haskell @@ -17549,6 +17652,17 @@ corresponding Evil keys.") (build-system emacs-build-system) (propagated-inputs `(("emacs-evil" ,emacs-evil))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-shell + ;; Setting the SHELL environment variable is required for the tests + ;; to find sh. + (lambda _ + (setenv "SHELL" (which "sh")) + #t))) + #:tests? #t + #:test-command '("make" "test"))) (home-page "https://github.com/mamapanda/evil-traces") (synopsis "Visual hints for @code{evil-ex}") (description "This package adds visual hints to certain @code{ex} @@ -17693,17 +17807,17 @@ connections using TLS encryption.") (define-public emacs-zerodark-theme (package (name "emacs-zerodark-theme") - (version "4.5") + (version "4.6") (source (origin (method git-fetch) (uri (git-reference - (url "https://gitlab.petton.fr/nico/zerodark-theme.git") + (url "https://github.com/NicolasPetton/zerodark-theme") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 - "0nnlxzsmhsbszqigcyxak9i1a0digrd13gv6v18ck4h760mihh1m")))) + "0pfyd1iqs7l2ngwgvj9n0r9k1px7yl16h8n502xdyf0pprxcs4p6")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-flycheck" ,emacs-flycheck) @@ -18060,3 +18174,90 @@ JIRA issue servers.") "This packages fontifies the ssh config keywords and creates keybindings for skipping from host section to host section.") (license license:gpl3+)))) + +(define-public emacs-tao-theme + (let ((commit "c5107fbe7e752f4e58c2d2147ff18a1ebb12937c") + (revision "0")) + (package + (name "emacs-tao-theme") + (version (git-version "0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/11111000000/tao-theme-emacs.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07vvlglmkj87hpxz79s3bl2cjn71vain57fdxs7j9vlr5jkchxwn")))) + (build-system emacs-build-system) + (home-page "https://github.com/11111000000/tao-theme-emacs") + (synopsis "Parameterized uncolored color themes for Emacs") + (description + "This package provides two parameterized uncolored color themes for +Emacs: @code{tao-yin} and @code{tao-yang}. The default +@code{tao-theme-scale-fn} is @code{tao-theme-golden-scale}. + +You can customize: @code{tao-theme-scale-fn}, that returns 16 2-digit numbers; +@code{tao-theme-scale-filter-fn}, for edge filter; and +@code{tao-theme-use-height}.") + (license license:gpl3+)))) + +(define-public emacs-doom-themes + (package + (name "emacs-doom-themes") + (version "2.1.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hlissner/emacs-doom-themes.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "042pzcdhxi2z07jcscgjbaki9nrrm0cbgbbrnymd1r4q8ckkn8l9")))) + (build-system emacs-build-system) + (native-inputs + `(("emacs-ert-runner" ,emacs-ert-runner))) + (arguments + `(#:tests? #t + #:test-command '("ert-runner") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'move-themes + (lambda _ + ;; Move the source files to the top level, which is in the + ;; EMACSLOADPATH. + (for-each (lambda (f) + (rename-file f (basename f))) + (find-files "./themes" ".*\\.el$")) + #t))))) + (synopsis "Wide collection of color themes for Emacs") + (description "Emacs-doom-themes contains numerous popular color themes for +Emacs that integrate with major modes like Org-mode.") + (home-page "https://github.com/hlissner/emacs-doom-themes") + (license license:expat))) + +(define-public emacs-elixir-mode + (package + (name "emacs-elixir-mode") + (version "2.3.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/elixir-editors/emacs-elixir.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "06bi68x49v6f7flpz279mm4jpg31ll3s274givm3pvr8slcxs6xg")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-pkg-info" ,emacs-pkg-info))) + (home-page + "https://github.com/elixir-editors/emacs-elixir") + (synopsis "Major mode for editing Elixir files") + (description + "Elixir-Mode Provides font-locking, indentation and navigation support + for the Elixir programming language.") + (license license:gpl3+))) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 9ff1cd4897..c6eda97473 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -405,7 +405,7 @@ Super Game Boy, BS-X Satellaview, and Sufami Turbo.") (define-public mgba (package (name "mgba") - (version "0.7.2") + (version "0.7.3") (source (origin (method git-fetch) (uri (git-reference @@ -414,7 +414,7 @@ Super Game Boy, BS-X Satellaview, and Sufami Turbo.") (file-name (git-file-name name version)) (sha256 (base32 - "0g0xa1mzvan0sl1p5c784j2g5mcw9kd2b7wiahy06gy0c1nmbcnp")) + "1wrmwh50rv8bd328r8cisrihq6h90kx2bfb0vmjfbsd3l1jvgrgm")) (modules '((guix build utils))) (snippet ;; Make sure we don't use the bundled software. @@ -1054,7 +1054,7 @@ emulation community. It provides highly accurate emulation.") (define-public retroarch (package (name "retroarch") - (version "1.7.8") + (version "1.7.8.4") (source (origin (method git-fetch) @@ -1063,7 +1063,7 @@ emulation community. It provides highly accurate emulation.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0jwy5winrm87s6xa645fwa47x242r25m6i3rwf10x59448bd19r6")))) + (base32 "1i3i23xwvmck8k2fpalr49np7xjzfg507243mybqrljawlnbxvph")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no tests diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 7f5409c835..c1c1b18ed3 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -65,6 +65,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gperf) + #:use-module (gnu packages graphics) #:use-module (gnu packages groff) #:use-module (gnu packages gtk) #:use-module (gnu packages guile) @@ -89,6 +90,7 @@ #:use-module (gnu packages tex) #:use-module (gnu packages version-control) #:use-module (gnu packages wxwidgets) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) (define-public librecad @@ -2145,3 +2147,70 @@ well as conversion and validation tools for input and output data. The specification can be downloaded at @url{http://3mf.io/specification/}.") (home-page "https://3mf.io/") (license license:bsd-2))) + +(define-public openscad + (package + (name "openscad") + (version "2019.05") + (source + (origin + (method url-fetch) + (uri (string-append "https://files.openscad.org/openscad-" version + ".src.tar.gz")) + (sha256 + (base32 + "0nbgk5q5pgnw53la0kccdcpz2f4xf6d6076rkn0q08z57hkc85ha")))) + (build-system cmake-build-system) + (inputs + `(("boost" ,boost) + ("cgal" ,cgal) + ("double-conversion" ,double-conversion) + ("eigen" ,eigen) + ("fontconfig" ,fontconfig) + ("glew" ,glew) + ("gmp" ,gmp) + ("harfbuzz" ,harfbuzz) + ("lib3mf" ,lib3mf) + ("libxml2" ,libxml2) + ("libzip" ,libzip) + ("mpfr" ,mpfr) + ("opencsg" ,opencsg) + ("qscintilla" ,qscintilla) + ("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia))) + (native-inputs + `(("bison" ,bison) + ("flex" ,flex) + ("gettext" ,gettext-minimal) + ("pkg-config" ,pkg-config) + ("which" ,which) + ;; the following are only needed for tests + ("imagemagick" ,imagemagick) + ("ps" ,procps) + ("python" ,python) + ("xvfb" ,xorg-server))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (invoke "qmake" + (string-append "PREFIX=" (assoc-ref outputs "out"))) + #t)) + (replace 'check + (lambda _ + (with-directory-excursion "tests" + (invoke "cmake" ".") + (invoke "make") + (invoke "ctest")) + ;; strip python test files since lib dir ends up in out/share + (for-each delete-file + (find-files "libraries/MCAD" ".*\\.py")) + #t))))) + (synopsis "Script-based 3D modeling application") + (description + "OpenSCAD is a 3D Computer-aided Design (CAD) application. Unlike an +interactive modeler, OpenSCAD generates 3D models from a script, giving you +full programmatic control over your models.") + (home-page "https://www.openscad.org/") + (license license:gpl2+))) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 377cb3a405..3fa0a4d331 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -473,16 +473,20 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch ("git" ,git) ("graphviz" ,graphviz) ("pkg-config" ,pkg-config) + ("protobuf" ,protobuf) + ("python" ,python) ("qttools" ,qttools))) (inputs `(("boost" ,boost) ("cppzmq" ,cppzmq) ("expat" ,expat) ("hidapi" ,hidapi) - ("libunwind" ,libunwind) ("libsodium" ,libsodium) + ("libunwind" ,libunwind) + ("libusb" ,libusb) ("miniupnpc" ,miniupnpc) ("openssl" ,openssl) + ("protobuf" ,protobuf) ("rapidjson" ,rapidjson) ("readline" ,readline) ("unbound" ,unbound) @@ -490,9 +494,12 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch ("zeromq" ,zeromq))) (arguments `(#:out-of-source? #t - #:configure-flags '("-DARCH=default" - "-DBUILD_TESTS=ON" - "-DBUILD_GUI_DEPS=ON") + #:configure-flags + (list "-DARCH=default" + "-DBUILD_TESTS=ON" + "-DBUILD_GUI_DEPS=ON" + (string-append "-DReadline_ROOT_DIR=" + (assoc-ref %build-inputs "readline"))) #:phases (modify-phases %standard-phases ;; tests/core_tests need a valid HOME @@ -531,7 +538,13 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch ":"))) (invoke "tests/unit_tests/unit_tests" (string-append "--gtest_filter=-" - excluded-unit-tests)))))))) + excluded-unit-tests))))) + (add-after 'install 'delete-dead-links + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (delete-file (string-append out "/lib/libprotobuf.so")) + (delete-file (string-append out "/lib/libusb-1.0.so")) + #t)))))) (home-page "https://getmonero.org/") (synopsis "Command-line interface to the Monero currency") (description @@ -542,7 +555,7 @@ the Monero command line client and daemon.") (define-public monero-gui (package (name "monero-gui") - (version "0.14.1.0") + (version "0.14.1.2") (source (origin (method git-fetch) @@ -552,7 +565,7 @@ the Monero command line client and daemon.") (file-name (git-file-name name version)) (sha256 (base32 - "0ilx47771faygf97wilm64xnqxgxa3b43q0g9v014npk0qj8pc31")))) + "1rm043r6y2mzy8pclnzbjjfxgps8pkfa2b92p66k8y8rdmgq6m1k")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -560,9 +573,11 @@ the Monero command line client and daemon.") (inputs `(("boost" ,boost) ("hidapi" ,hidapi) - ("libunwind" ,libunwind) ("libsodium" ,libsodium) + ("libunwind" ,libunwind) + ("libusb" ,libusb) ("openssl" ,openssl) + ("protobuf" ,protobuf) ("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative) ("qtgraphicaleffects" ,qtgraphicaleffects) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 9cfdbca3fb..401f54bb14 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -920,15 +920,15 @@ interfaces, based on the useradd, usermod and userdel commands.") (define-public libmbim (package (name "libmbim") - (version "1.18.2") + (version "1.20.0") (source (origin (method url-fetch) (uri (string-append - "https://www.freedesktop.org/software/" name "/" - name "-" version ".tar.xz")) + "https://www.freedesktop.org/software/libmbim/" + "libmbim-" version ".tar.xz")) (sha256 (base32 - "0s4jsfsydp2vykv7lnimalp9i680aas1qcx7zdpjiic64b5g48vp")))) + "0rm8j4zh9gnb3yi324cnxy91gdimc1vg5gv1kxc2m5lymb3wdxrc")))) (build-system gnu-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-mkenums diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 7eac935a69..bb4c1d26bb 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -314,6 +314,16 @@ provide connectivity for client applications written in any language.") (base32 "1pmvvm3sgnpngfa7884mqhq3fwdjh9sr0ca07ypnidcg0y341w53")))) (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'fix-pillow + (lambda _ + ;; pillow's version is not in PIL.Image.VERSION anymore + (substitute* "nml/version_info.py" + (("from PIL import Image") "import PIL") + (("Image.VERSION") "PIL.__version__")) + #t))))) (propagated-inputs `(("python-pillow" ,python-pillow) ("python-ply" ,python-ply))) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index f9d7331f5b..c5ab05ed60 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2210,7 +2210,24 @@ also available.") (modify-phases %standard-phases (add-before 'configure 'link-libm - (lambda _ (setenv "LIBS" "-lm")))))) + (lambda _ (setenv "LIBS" "-lm"))) + (add-after 'install 'create-desktop-entry + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (apps (string-append out "/share/applications"))) + (mkdir-p apps) + (with-output-to-file + (string-append apps "/gnujump.desktop") + (lambda _ + (format #t + "[Desktop Entry]~@ + Name=GNUjump~@ + Comment=Jump up the tower to survive~@ + Exec=~a/bin/gnujump~@ + Terminal=false~@ + Type=Application~@ + Categories=Game;ArcadeGame~%" + out))))))))) (inputs `(("glu" ,glu) ("mesa" ,mesa) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index efe5206e53..31ff2ab972 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -39,6 +39,8 @@ ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org> ;;; Copyright © 2019 Jonathan Frederickson <jonathan@terracrypt.net> +;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2019 Martin Becze <mjbecze@riseup.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -65,6 +67,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages bison) + #:use-module (gnu packages boost) #:use-module (gnu packages build-tools) #:use-module (gnu packages calendar) #:use-module (gnu packages cdrom) @@ -2629,7 +2632,7 @@ library.") (method url-fetch) (uri (string-append "mirror://gnome/sources/glib-networking/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "glib-networking-" version ".tar.xz")) (sha256 (base32 "0s006gs9nsq6mg31spqha1jffzmp6qjh10y27h0fxf1iw1ah5ymx")) @@ -2701,7 +2704,7 @@ libxml to ease remote use of the RESTful API.") (method url-fetch) (uri (string-append "mirror://gnome/sources/libsoup/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "libsoup-" version ".tar.xz")) (sha256 (base32 "0amfw1yvy1kjrg41rfh2vvrw5gkwnyckqbw1fab50hm6xc1acbmx")))) @@ -2807,16 +2810,16 @@ and the GLib main loop, to integrate well with GNOME applications.") (define-public libsecret (package (name "libsecret") - (version "0.18.8") + (version "0.19.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/libsecret/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "libsecret-" version ".tar.xz")) (sha256 (base32 - "058x64689k55wxfkdp4svhnwvv8jmqm7z5mrynybl38f4sfqiyiv")))) + "0fhflcsr70b1pps2pcvqcbdhip2ny5am9nbm634f4sj5g40y30w5")))) (build-system gnu-build-system) (outputs '("out" "doc")) (arguments @@ -3360,7 +3363,7 @@ playlists in a variety of formats.") (define-public aisleriot (package (name "aisleriot") - (version "3.22.8") + (version "3.22.9") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/aisleriot/" @@ -3368,7 +3371,7 @@ playlists in a variety of formats.") "aisleriot-" version ".tar.xz")) (sha256 (base32 - "15pm39679ymxki07sb5nvhycz4z53zwbvascyp5wm4864bn98815")))) + "0yzdh9cw5cjjgvfh75bihl968czlgfmpmn1z0fdk88sgvpjgzwji")))) (build-system glib-or-gtk-build-system) (arguments '(#:configure-flags @@ -4182,9 +4185,9 @@ part of udev-extras, then udev, then systemd. It's now a project on its own.") (version "1.36.2") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" + (uri (string-append "mirror://gnome/sources/gvfs/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "gvfs-" version ".tar.xz")) (sha256 (base32 "1xq105596sk9yram5a143b369wpaiiwc9gz86n0j1kfr7nipkqn4")))) @@ -5909,15 +5912,15 @@ providing graphical log-ins and managing local and remote displays.") (define-public libgtop (package (name "libgtop") - (version "2.38.0") + (version "2.40.0") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" + (uri (string-append "mirror://gnome/sources/libgtop/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "libgtop-" version ".tar.xz")) (sha256 (base32 - "04mnxgzyb26wqk6qij4iw8cxwl82r8pcsna5dg8vz2j3pdi0wv2g")))) + "1m6jbqk8maa52gxrf223442fr5bvvxgb7ham6v039i3r1i62gwvq")))) (build-system gnu-build-system) (native-inputs `(("gobject-introspection" ,gobject-introspection) @@ -6299,9 +6302,9 @@ easy, safe, and automatic.") (version "2.0.4") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" + (uri (string-append "mirror://gnome/sources/tracker/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "tracker-" version ".tar.xz")) (sha256 (base32 "1mfc5lv820kr7ssi7hldn25gmshh65k19kh478qjsnb64sshsbyf")))) @@ -7229,9 +7232,9 @@ compiled.") (source (origin (method url-fetch) (uri (string-append - "mirror://gnome/sources/" name "/" + "mirror://gnome/sources/gfbgraph/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "gfbgraph-" version ".tar.xz")) (sha256 (base32 "1dp0v8ia35fxs9yhnqpxj3ir5lh018jlbiwifjfn8ayy7h47j4fs")))) @@ -7992,7 +7995,7 @@ configurable file renaming. ") (define-public workrave (package (name "workrave") - (version "1.10.23") + (version "1.10.34") (source (origin (method git-fetch) @@ -8003,20 +8006,20 @@ configurable file renaming. ") version))))) (file-name (git-file-name name version)) (sha256 - (base32 "1qhlwfhwk5agv4904d6bsf83k9k89q7bms6agg967vsca4905vcw")))) + (base32 "0czwhr7nw523753ajcjjfwrf91mq8pmzr19gp0srqsvb1dsn1zcf")))) (build-system glib-or-gtk-build-system) - (propagated-inputs `(("glib" ,glib) - ("gtk+" ,gtk+) - ("gdk-pixbuf" ,gdk-pixbuf) - ("gtkmm" ,gtkmm) - ("glibmm" ,glibmm) - ("libx11" ,libx11) - ("libxtst" ,libxtst) - ("dconf" ,dconf) - ("libice" ,libice))) - (inputs `(("libsm" ,libsm) - ("python-cheetah" ,python2-cheetah))) - (native-inputs `(("glib" ,glib "bin") + (inputs `(("glib" ,glib) + ("gtk+" ,gtk+) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gtkmm" ,gtkmm) + ("glibmm" ,glibmm) + ("libx11" ,libx11) + ("libxtst" ,libxtst) + ("dconf" ,dconf) + ("libice" ,libice) + ("libsm" ,libsm) + ("libxscrnsaver" ,libxscrnsaver))) + (native-inputs `(("boost" ,boost) ("pkg-config" ,pkg-config) ("gettext" ,gnu-gettext) ("autoconf" ,autoconf) @@ -8024,9 +8027,9 @@ configurable file renaming. ") ("automake" ,automake) ("libtool" ,libtool) ("intltool" ,intltool) - ("libxscrnsaver" ,libxscrnsaver) ("gobject-introspection" ,gobject-introspection) - ("python2" ,python-2))) + ("python3" ,python-3) + ("python-jinja2" ,python-jinja2))) (synopsis "Tool to help prevent repetitive strain injury (RSI)") (description "Workrave is a program that assists in the recovery and prevention of @@ -8120,11 +8123,21 @@ generic enough to work for everyone.") (build-system cmake-build-system) (arguments `(#:configure-flags - (list "-DENABLE_PST_IMPORT=OFF" ; libpst is not packaged - "-DENABLE_LIBCRYPTUI=OFF"))) ; libcryptui hasn't seen a release - ; in four years and cannot be built. + (list "-DENABLE_PST_IMPORT=OFF" ; libpst is not packaged + "-DENABLE_LIBCRYPTUI=OFF") ; libcryptui hasn't seen a release + ; in four years and cannot be built + #:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/evolution") + `("XDG_DATA_DIRS" ":" prefix (,(getenv "XDG_DATA_DIRS"))) + `("GSETTINGS_SCHEMA_DIR" = + (,(string-append out "/share/glib-2.0/schemas"))))) + #t))))) (native-inputs - `(("glib" ,glib "bin") ; glib-mkenums + `(("glib" ,glib "bin") ; glib-mkenums ("pkg-config" ,pkg-config) ("intltool" ,intltool) ("itstool" ,itstool))) @@ -8132,6 +8145,7 @@ generic enough to work for everyone.") `(("enchant" ,enchant) ("evolution-data-server" ,evolution-data-server) ; must be the same version ("gcr" ,gcr) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("gnome-autoar" ,gnome-autoar) ("gnome-desktop" ,gnome-desktop) ("gtkspell3" ,gtkspell3) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 0d619c6a1d..69d7f34a49 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -434,7 +434,7 @@ gpgpme starting with version 1.7.") (define-public guile-gcrypt (package (name "guile-gcrypt") - (version "0.1.0") + (version "0.2.0") (home-page "https://notabug.org/cwebber/guile-gcrypt") (source (origin (method git-fetch) @@ -443,7 +443,7 @@ gpgpme starting with version 1.7.") (commit (string-append "v" version)))) (sha256 (base32 - "1lhgh3105yi0ggrjsjibv4wp1ipz8s17pa820hk2wln3rc04wpvf")) + "1mhc5m4xygkfj7x18f8apiqpfdn9mrql0am5sk13cf5xn8x1r63z")) (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) (native-inputs @@ -907,6 +907,34 @@ bytes (whether by hand, OCR, QR code, or the like) and paperkey can use them to transform your existing public key into a secret key.") (license license:gpl2+))) +(define-public pgpdump + (package + (name "pgpdump") + (version "0.33") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.mew.org/~kazu/proj/pgpdump/pgpdump-" + version ".tar.gz")) + (sha256 + (base32 "1j001jra2m89n6cys3n0hs574bipjdzfxhzpnd4jfyv95mqwl7n4")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no make check + #:configure-flags (list "--prefix=/") + #:make-flags (list "CC=gcc" + (string-append "DESTDIR=" (assoc-ref %outputs "out"))))) + (inputs + `(("zlib" ,zlib))) + (home-page "https://www.mew.org/~kazu/proj/pgpdump/en/") + (synopsis "PGP packet visualizer") + (description "pgpdump displays the sequence of OpenPGP or PGP version 2 +packets from a file. + +The output of this command is similar to GnuPG's list packets command, +however, pgpdump produces more detailed and easier to understand output.") + (license license:bsd-3))) + (define-public gpa (package (name "gpa") diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index 8b06aaa0e9..bde8b44a30 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -139,14 +139,14 @@ more.") (define-public r-diffusionmap (package (name "r-diffusionmap") - (version "1.1-0.1") + (version "1.2.0") (source (origin (method url-fetch) (uri (cran-uri "diffusionMap" version)) (sha256 (base32 - "11l4kbciawvli5nlsi4qaf8afmgk5xgqiqpdyhvaqri5mx0zhk5j")))) + "1rvk7069brlm1s9kqj4c31mwwr3mw4hmhay95cjjjfmw5xclff2j")))) (properties `((upstream-name . "diffusionMap"))) (build-system r-build-system) (propagated-inputs diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index b06a369325..988b519ffa 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2019 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2019 Carlo Zancanaro <carlo@zancanaro.id.au> +;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1018,3 +1019,43 @@ requirements.") performance subdivision surface (subdiv) evaluation on massively parallel CPU and GPU architectures.") (license license:asl2.0))) + +(define-public opencsg + (let ((dot-to-dash (lambda (c) (if (char=? c #\.) #\- c)))) + (package + (name "opencsg") + (version "1.4.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/floriankirsch/OpenCSG.git") + (commit (string-append "opencsg-" + (string-map dot-to-dash version) + "-release")))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "00m4vs6jn3scqczscc4591l1d6zg6anqp9v1ldf9ymf70rdyvm7m")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "src/Makefile" + (("/usr/local") (assoc-ref outputs "out"))) + #t)) + (add-before 'build 'skip-example + (lambda _ (chdir "src") #t))))) + (inputs + `(("glew" ,glew) + ("freeglut" ,freeglut))) + (synopsis "Library for rendering Constructive Solid Geometry (CSG)") + (description + "OpenCSG is a library for rendering Constructive Solid Geometry (CSG) using +OpenGL. CSG is an approach for modeling complex 3D-shapes using simpler ones. +For example, two shapes can be combined by uniting them, by intersecting them, +or by subtracting one shape from the other.") + (home-page "http://www.opencsg.org/") + (license license:gpl2)))) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 29e83288f1..a5dfa55039 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co> ;;; Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Erik Edrosa <erik.edrosa@gmail.com> -;;; Copyright © 2016 Eraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2019 Eraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com> ;;; Copyright © 2016, 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org> ;;; Copyright © 2016 Amirouche <amirouche@hypermove.net> @@ -48,7 +48,6 @@ #:use-module (gnu packages compression) #:use-module (gnu packages databases) #:use-module (gnu packages disk) - #:use-module (gnu packages ed) #:use-module (gnu packages emacs) #:use-module (gnu packages emacs-xyz) #:use-module (gnu packages gawk) @@ -1926,30 +1925,17 @@ is no support for parsing block and inline level HTML.") (define-public mcron (package (name "mcron") - (version "1.1.1") + (version "1.1.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mcron/mcron-" version ".tar.gz")) (sha256 (base32 - "1i9mcp6r6my61zfiydsm3n6my41mwvl7dfala4q29qx0zn1ynlm4")))) + "069m3ri7nc8lgy3h9ka7gj3v3anqj69x9jw4l3cfq65nqkxsch4g")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases - (add-before 'check 'set-timezone - (lambda* (#:key inputs #:allow-other-keys) - ;; 'tests/job-specifier.scm' expects to be running in - ;; UTC-2 or something. - ;; FIXME: This issue is being investigated upstream, for - ;; now we'll just skip the tests (see below): - ;; <https://lists.gnu.org/archive/html/bug-mcron/2018-04/msg00005.html>. - (let ((tzdata (assoc-ref inputs "tzdata"))) - (setenv "TZDIR" - (string-append tzdata - "/share/zoneinfo")) - (setenv "TZ" "UTC-2") - #t))) (add-before 'check 'adjust-tests (lambda _ (substitute* "tests/job-specifier.scm" @@ -1966,9 +1952,13 @@ is no support for parsing block and inline level HTML.") (("\\(test-equal \"next-year\"" all) (string-append "(test-skip 4)\n" all))) #t))))) - (native-inputs `(("pkg-config" ,pkg-config) + (native-inputs `(("autoconf" ,autoconf) + ("automake" ,automake) + ("help2man" ,help2man) + ("pkg-config" ,pkg-config) + ("texinfo" ,texinfo) ("tzdata" ,tzdata-for-tests))) - (inputs `(("ed" ,ed) ("which" ,which) ("guile" ,guile-2.2))) + (inputs `(("guile" ,guile-2.2))) (home-page "https://www.gnu.org/software/mcron/") (synopsis "Run jobs at scheduled times") (description diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 71169966da..0731caedc2 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -444,8 +444,8 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its (home-page "https://github.com/aconchillo/guile-json") (source (origin (method url-fetch) - (uri (string-append "https://download.savannah.nongnu.org/releases/" - name "/" name "-" version ".tar.gz")) + (uri (string-append "mirror://savannah/guile-json/guile-json-" + version ".tar.gz")) (sha256 (base32 "15gnb84d7hpazqhskkf3g9z4r6knw54wfj4ch5270kakz1lp70c9")))) @@ -483,14 +483,14 @@ specification. These are the main features: (package (inherit guile-json) (name "guile-json") - (version "3.1.0") + (version "3.2.0") (source (origin (method url-fetch) - (uri (string-append "https://download.savannah.nongnu.org/releases/" - name "/" name "-" version ".tar.gz")) + (uri (string-append "mirror://savannah/guile-json/guile-json-" + version ".tar.gz")) (sha256 (base32 - "1yfqscz74i4vxylabd3s9l0wbdp8bg9qxnv1ixdm3b1l7zdx00z3")))))) + "14m6b6g2maw0mkvfm4x63rqb54vgbpn1gcqs715ijw4bikfzlqfz")))))) ;; There are two guile-gdbm packages, one using the FFI and one with ;; direct C bindings, hence the verbose name. diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm index 5cd6549c27..e09285d63a 100644 --- a/gnu/packages/haskell-apps.scm +++ b/gnu/packages/haskell-apps.scm @@ -245,7 +245,7 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}. (define-public git-annex (package (name "git-annex") - (version "7.20190708") + (version "7.20190912") (source (origin (method url-fetch) @@ -253,7 +253,7 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}. "git-annex/git-annex-" version ".tar.gz")) (sha256 (base32 - "18s563swrp8mx479995pdhhmn40y3xwlbm1z3w63qsnjqmj7zlij")))) + "1a3jvl5cx32v78s3015i10cx00jprm1391rpww4mzkk1vskzn9cv")))) (build-system haskell-build-system) (arguments `(#:configure-flags @@ -337,6 +337,7 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}. ("ghc-http-conduit" ,ghc-http-conduit) ("ghc-http-types" ,ghc-http-types) ("ghc-ifelse" ,ghc-ifelse) + ("ghc-magic" ,ghc-magic) ("ghc-memory" ,ghc-memory) ("ghc-monad-control" ,ghc-monad-control) ("ghc-monad-logger" ,ghc-monad-logger) @@ -374,9 +375,16 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}. checking the file contents into Git. It can store files in many places, such as local hard drives and cloud storage services. It can also be used to keep a folder in sync between computers.") - ;; The web app is released under the AGPLv3+. - (license (list license:gpl3+ - license:agpl3+)))) + ;; The main author has released all his changes under AGPLv3+ as of March + ;; 2019 (7.20190219-187-g40ecf58d4). These are also licensed under the + ;; original GPLv3+ license, but going forward new changes will be under + ;; only AGPLv3+. The other licenses below cover code written by others. + ;; See git-annex's COPYRIGHT file for details on each file. + (license (list license:agpl3+ + license:gpl3+ + license:bsd-2 + license:expat + license:gpl2)))) (define-public hlint (package diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index 940fbe8a6c..4313b6059e 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017 ng0 <ng0@n0.is> -;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017 David Craven <david@craven.ch> ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org> @@ -20,6 +20,7 @@ ;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net> ;;; Copyright © 2019 Jacob MacDonald <jaccarmac@gmail.com> ;;; Copyright © 2019 John Soo <jsoo1@asu.edu> +;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -463,7 +464,7 @@ complicated text/binary file formats.") (inputs `(("ghc-scientific" ,ghc-scientific-bootstrap))) (native-inputs '()) - (properties '(hidden? #t)))) + (properties '((hidden? #t))))) (define-public ghc-attoparsec-iso8601 (package @@ -5201,7 +5202,7 @@ in migrated modules.") (name "ghc-integer-logarithms-bootstrap") (arguments `(#:tests? #f)) (native-inputs '()) - (properties '(hidden? #t)))) + (properties '((hidden? #t))))) (define-public ghc-interpolate (package @@ -5954,6 +5955,28 @@ monadic incremental interface is provided as well.") compression algorithm used in the @code{.xz} file format.") (license license:bsd-3))) +(define-public ghc-magic + (package + (name "ghc-magic") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/magic/magic-" + version ".tar.gz")) + (sha256 + (base32 + "10p0gjjjwr1dda7hahwrwn5njbfhl67arq3v3nf1jr3vymlkn75j")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/magic") + (synopsis "Interface to C file/magic library") + (description + "This package provides a full-featured binding to the C libmagic library. +With it, you can determine the type of a file by examining its contents rather +than its name.") + (license license:bsd-3))) + (define-public ghc-markdown-unlit (package (name "ghc-markdown-unlit") @@ -8667,7 +8690,7 @@ notation}.") ("ghc-hashable" ,ghc-hashable) ("ghc-primitive" ,ghc-primitive))) (native-inputs '()) - (properties '(hidden? #t)))) + (properties '((hidden? #t))))) (define-public ghc-sdl (package @@ -8951,7 +8974,7 @@ semigroup.") ("ghc-tagged" ,ghc-tagged) ("ghc-unordered-containers" ,ghc-unordered-containers-bootstrap) ("ghc-hashable" ,ghc-hashable-bootstrap))) - (properties '(hidden? #t)))) + (properties '((hidden? #t))))) (define-public ghc-setenv (package @@ -10781,7 +10804,7 @@ and high speed.") (arguments `(#:tests? #f)) (inputs `(("ghc-hashable" ,ghc-hashable-bootstrap))) - (properties '(hidden? #t)))) + (properties '((hidden? #t))))) (define-public ghc-unsafe (package @@ -11322,7 +11345,7 @@ widths to the Char type.") `(("ghc-setlocale" ,ghc-setlocale) ("ghc-utf8-string" ,ghc-utf8-string) ("ghc-attoparsec" ,ghc-attoparsec-bootstrap))) - (properties '(hidden? #t)))) + (properties '((hidden? #t))))) (define-public ghc-weigh (package diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 4d16cd656f..d86daa52c5 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -596,7 +596,13 @@ interactive environment for the functional language Haskell.") (("^test\\('T8108'") "# guix skipped: test('T8108'")) (substitute* "libraries/unix/tests/libposix/all.T" (("^test\\('posix010'") "# guix skipped: test('posix010'")) - #t)))))))) + #t)))))) + (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)))))) (define-public ghc-8 ghc-8.4) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 4e3fee53e2..2a9ee990be 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -1462,6 +1462,40 @@ PNG, and performs PNG integrity checks and corrections.") (home-page "http://optipng.sourceforge.net/") (license license:zlib))) +(define-public pngsuite + (package + (name "pngsuite") + (version "2017jul19") + (source + (origin + (method url-fetch/tarbomb) + (uri (string-append "http://www.schaik.com/pngsuite2011/PngSuite-" + version ".tgz")) + (sha256 + (base32 + "1j7xgd9iffcnpphhzz9ld9ybrjmx9brhq0803g0450ssr52b5502")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f ; there is no test target + #:license-file-regexp "PngSuite.LICENSE" + #:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (copy-recursively "." (string-append out "/")) + #t))) + (delete 'build) + (delete 'configure)))) + (home-page "http://www.schaik.com/pngsuite2011/pngsuite.html") + (synopsis "Example PNGs for use in test suites") + (description "Collection of graphics images created to test PNG +applications like viewers, converters and editors. As far as that is +possible, all formats supported by the PNG standard are represented.") + (license (license:fsdg-compatible "file://PngSuite.LICENSE" "Permission to +use, copy, modify and distribute these images for any purpose and without fee +is hereby granted.")))) + (define-public libjpeg-turbo (package (name "libjpeg-turbo") @@ -1802,3 +1836,42 @@ identical visual appearance.") to the standard output. It works well together with grim.") ;; MIT license. (license license:expat))) + +(define-public sng + (package + (name "sng") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/sng/sng-" + version ".tar.gz")) + (sha256 + (base32 "06a6ydvx9xb3vxvrzdrg3hq0rjwwj9ibr7fyyxjxq6qx1j3mb70i")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'link-pngsuite + ;; tests expect pngsuite in source dir + (lambda* (#:key inputs #:allow-other-keys) + (symlink (assoc-ref inputs "pngsuite") "pngsuite") + #t))) + #:configure-flags + (list (string-append "--with-rgbtxt=" + (assoc-ref %build-inputs "xorg-rgb") + "/share/X11/rgb.txt")))) + (inputs `(("xorg-rgb" ,xorg-rgb) + ("libpng" ,libpng))) + (native-inputs `(("pngsuite" ,pngsuite))) + (home-page "http://sng.sourceforge.net") + (synopsis "Markup language for representing PNG contents") + (description "SNG (Scriptable Network Graphics) is a minilanguage designed +specifically to represent the entire contents of a PNG (Portable Network +Graphics) file in an editable form. Thus, SNGs representing elaborate +graphics images and ancillary chunk data can be readily generated or modified +using only text tools. + +SNG is implemented by a compiler/decompiler called sng that +losslessly translates between SNG and PNG.") + (license license:zlib))) diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 622f1253d8..e3418c1fec 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 ng0 <ng0@n0.is> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> -;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -166,15 +166,14 @@ SILC and ICB protocols via plugins.") (define-public weechat (package (name "weechat") - (version "2.5") + (version "2.6") (source (origin (method url-fetch) (uri (string-append "https://weechat.org/files/src/weechat-" version ".tar.xz")) (sha256 (base32 - "09sc5lf7z70x3iw87q4zh8rbyngsw89pwnzs5jk195zzqdspgj2j")) - (patches (search-patches "weechat-python.patch")))) + "0j2iflnfvv31q2l9r67r8aj3ipggqfm2r2dpy7pvdpxgwwq337ps")))) (build-system cmake-build-system) (native-inputs `(("gettext" ,gettext-minimal) @@ -187,9 +186,11 @@ SILC and ICB protocols via plugins.") ("aspell" ,aspell) ("curl" ,curl) ("gnutls" ,gnutls) + + ;; Scripting language plug-ins. ("guile" ,guile-2.0) ("lua" ,lua-5.1) - ("python" ,python-2) + ("python" ,python) ("perl" ,perl) ("tcl" ,tcl))) (arguments @@ -214,14 +215,7 @@ SILC and ICB protocols via plugins.") (substitute* "tests/scripts/test-scripts.cpp" ((".*\\{ \"(javascript|php|ruby)\", " all) (string-append "// SKIP" all))) - #t)) - (add-after 'install 'wrap - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (py2 (assoc-ref inputs "python"))) - (wrap-program (string-append out "/bin/weechat") - `("PATH" ":" prefix (,(string-append py2 "/bin")))) - #t)))))) + #t))))) (synopsis "Extensible chat client") (description "WeeChat (Wee Enhanced Environment for Chat) is an @dfn{Internet Relay Chat} (IRC) client, which is designed to be light and fast. diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index 9e1818dfaf..2993eb66f6 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> -;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> @@ -144,45 +144,20 @@ be able to view it naturally and easily."))) (name "js-respond") (version "1.4.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/scottjehl/Respond/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/scottjehl/Respond") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0ds1ya2a185jp93mdn07159c2x8zczwi960ykrawpp62bwk2n93d")))) - (build-system trivial-build-system) + "00xid731rirc7sdy1gc8qal3v9g0agr2qx15hm4x97l1lcbylyn2")))) + (build-system minify-build-system) (arguments - `(#:modules ((guix build utils)) - #:builder - (begin - (use-modules (guix build utils) - (ice-9 match) - (ice-9 popen) - (srfi srfi-26)) - (set-path-environment-variable - "PATH" '("bin") (map (match-lambda - ((_ . input) - input)) - %build-inputs)) - (let ((install-directory (string-append %output - "/share/javascript/respond/"))) - (invoke "tar" "xvf" - (assoc-ref %build-inputs "source") - "--strip" "1") - (mkdir-p install-directory) - (let* ((file "src/respond.js") - (installed (string-append install-directory "respond.min.js"))) - (let ((minified (open-pipe* OPEN_READ "uglify-js" file))) - (call-with-output-file installed - (cut dump-port minified <>))))) - #t))) + `(#:javascript-files '("src/matchmedia.addListener.js" + "src/matchmedia.polyfill.js" + "src/respond.js"))) (home-page "https://github.com/scottjehl/Respond") - (native-inputs - `(("uglify-js" ,uglify-js) - ("source" ,source) - ("gzip" ,gzip) - ("tar" ,tar))) (synopsis "Polyfill for min/max-width CSS3 Media Queries") (description "The goal of this script is to provide a fast and lightweight script to enable responsive web designs in browsers that don't support CSS3 @@ -194,13 +169,14 @@ Media Queries.") (name "js-html5shiv") (version "3.7.3") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/aFarkas/html5shiv/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/aFarkas/html5shiv") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0inlbpxpqzdyi24lqagzf7l24zxg0y02xcpqs2h4npjscazzw7hg")))) + "0y1c5nyq0brl9fjdihhax33vks4s1ij9iv113879sg3zflmgqpd0")))) (build-system minify-build-system) (home-page "https://github.com/aFarkas/html5shiv") (synopsis "Enable HTML5 sectioning elements in legacy browsers") @@ -264,13 +240,14 @@ provided by ES5. @code{JSONPath} is used to represent the links.") (name "js-strftime") (version "0.10.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/samsonjs/strftime/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url"https://github.com/samsonjs/strftime") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1iya43w7y26y2dp9l4d40bhjc4scb5a9mng5ng5c8hsqr82f1375")))) + "131nmlivazwxyba25kh9lda99749fq4xsyin6lzfalaaydviby4p")))) (build-system minify-build-system) (arguments `(#:javascript-files '("strftime.js"))) @@ -287,13 +264,14 @@ well as some other extensions from Ruby.") (name "js-highlight") (version "9.12.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/isagalaev/highlight.js/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/isagalaev/highlight.js") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1jjn9mj7fwq4zpr6is438bscf03b3q8jkj0k5c3fc6pkmjnhw939")))) + "12qz22qjpd6svj58pwgcwg2x2rzhihfdrxg6lgj39nfpaln6dris")))) (build-system minify-build-system) (arguments `(#:javascript-files '("src/highlight.js"))) @@ -329,18 +307,41 @@ Javascript library, adding sorting, paging and filtering abilities to plain HTML tables with minimal effort.") (license license:expat))) +(define-public js-requirejs + (package + (name "js-requirejs") + (version "2.3.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/requirejs/requirejs.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0cvd5y2mb3h6yil3niqn3gjqrzixdsxcz4rvc2f0hg4kzp5y0w86")))) + (build-system minify-build-system) + (arguments `(#:javascript-files '("require.js"))) + (home-page "https://github.com/requirejs/requirejs/") + (synopsis "File and module loader for JavaScript") + (description "RequireJS loads plain JavaScript files as well as more +defined modules. It is optimized for in-browser use, including in a Web +Worker, but it can be used in other JavaScript environments.") + (license license:expat))) + (define-public js-selectize (package (name "js-selectize") - (version "0.12.4") + (version "0.12.6") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/selectize/selectize.js/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/selectize/selectize.js") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0756p49aaz34mw2dx8k1gxf210mngfrri25vkba0j7wihd2af8gn")))) + "15gichl8wi6yxag2ps723nxrgyan15976dzsnvw9h9py8sbyyzjn")))) (build-system minify-build-system) (arguments `(#:javascript-files '("src/selectize.js"))) (home-page "http://selectize.github.io/selectize.js/") @@ -353,15 +354,16 @@ navigation; it is useful for tagging, contact lists, etc.") (define-public js-es5-shim (package (name "js-es5-shim") - (version "4.5.9") + (version "4.5.13") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/es-shims/es5-shim/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/es-shims/es5-shim") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0yfndyijz0ykddzprpvfjb2453gzpn528klmwycwbqc1bqd3m1hl")))) + "142w384fbyllq4yggv173g82lw3wix4jqcg6hkhx1ymq89vvnpmh")))) (build-system minify-build-system) (arguments `(#:javascript-files '("es5-sham.js" @@ -381,13 +383,14 @@ means that these shams cause many ES5 methods to silently fail.") (name "js-filesaver") (version "1.3.8") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/eligrey/FileSaver.js/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/eligrey/FileSaver.js") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1rkhfqs5plaj628kzj7qgm5qahy4v7ihygifidqr6g6265mil97h")))) + "0gvqk0hnr8fig0n4da7vj7q6z31bcyv52916xz3rbmdj3pgpiv1d")))) (build-system minify-build-system) (arguments `(#:phases diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index 68d2804dcc..9010bd71ba 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -529,16 +529,16 @@ different notification systems.") (define-public kdeconnect (package (name "kdeconnect") - (version "1.3.3") + (version "1.3.5") (source (origin (method url-fetch) (uri (string-append "mirror://kde/stable/kdeconnect/" - version "/src/kdeconnect-kde-" + version "/kdeconnect-kde-" version ".tar.xz")) (sha256 (base32 - "1vac0mw1myrswr61adv7lgif0c4wzw5wnsj0sqxj6msp4l4pfgsg")))) + "02lr3xx5s2mgddac4n3lkgr7ppf1z5m6ajs90rjix0vs8a271kp5")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DBUILD_TESTING=ON") @@ -600,4 +600,30 @@ communicate with each other. Here's a few things KDE Connect can do: @item Browse your phone from the desktop @item Control the desktop's volume from the phone @end enumerate") + (properties `((upstream-name . "kdeconnect-kde"))) (license (list license:gpl2 license:gpl3)))) ; dual licensed + +(define-public kqtquickcharts + (package + (name "kqtquickcharts") + (version "19.08.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" + version "/src/kqtquickcharts-" version ".tar.xz")) + (sha256 + (base32 + "1j3rivvh4sa94lsd0hi4xfvcikl05zrqd7634wxyaxs718ais6dg")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative))) + (home-page "https://phabricator.kde.org/source/kqtquickcharts/") + (synopsis "Interactive charts for Qt Quick") + (description + "Kqtquickcharts is a QtQuick plugin to render beautiful and interactive +charts.") + (license license:lgpl2.1+))) diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm index 73376feecb..1ed2483615 100644 --- a/gnu/packages/language.scm +++ b/gnu/packages/language.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 ng0 <ng0@n0.is> +;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,13 +21,26 @@ (define-module (gnu packages language) #:use-module (gnu packages) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) + #:use-module (gnu packages ocr) #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages perl-check) + #:use-module (gnu packages swig) #:use-module (gnu packages web) + #:use-module (gnu packages xorg) #:use-module (guix packages) + #:use-module (guix build-system gnu) #:use-module (guix build-system perl) - #:use-module ((guix licenses) #:select (gpl2 gpl3 perl-license)) - #:use-module (guix download)) + #:use-module (guix build-system python) + #:use-module ((guix licenses) + #:select + (bsd-3 gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 perl-license zpl2.1)) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix utils)) (define-public perl-lingua-en-findnumber (package @@ -406,3 +420,466 @@ string can be easily inferred by a human just by reading the identifier.") (description "This module is a rather incomplete implementation of work done by Gudrun Putze-Meier.") (license perl-license))) + +(define* (tegaki-release-uri proj version + #:optional (ext "tar.gz")) + (string-append "https://github.com/tegaki/tegaki/releases/download" + "/v" version "/" proj "-" version "." ext)) + +(define remove-pre-compiled-files + (lambda exts + "Return snippet for removing pre-compiled files matching one of the +extensions in EXTS." + `(begin (for-each delete-file + (find-files "." + (lambda (name _) + (any (cut string-suffix? <> name) + (map (cut string-append "." <>) + ',exts))))) + #t))) + +;;; modules required for the above snippet +(define remove-pre-compiled-files-modules + '((guix build utils) + (srfi srfi-1) + (srfi srfi-26))) + +(define-public python2-tegaki-wagomu + (package + (name "python2-tegaki-wagomu") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri "tegaki-wagomu" version)) + (sha256 + (base32 + "1pzdiq4zy1nyylaj9i6v2h4h0r05klahskzpafpp367p4rysi1x9")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "pyc")))) + (build-system python-build-system) + (arguments + `(#:python ,python-2 ; only Python 2 is supported + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-recognizer + (lambda* (#:key inputs #:allow-other-keys) + ;; fix missing module and function + (substitute* "tegakiwagomu.py" + (("import Results,") + "import ") + (("def _recognize") + "def recognize") + (("Results\\(candidates\\)") + "candidates")) + #t))))) + (inputs + `(("glib" ,glib))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("swig" ,swig))) + (home-page "https://tegaki.github.io/") + (synopsis + "Chinese and Japanese Handwriting Recognition (Recognition engine)") + (description + "Tegaki is an ongoing project which aims to develop a free and open-source +modern implementation of handwriting recognition software, specifically +designed for Chinese (simplified and traditional) and Japanese, and that is +suitable for both the desktop and mobile devices.") + (license gpl2+))) ; all files + +(define-public python2-tegaki-python + (package + (inherit python2-tegaki-wagomu) + (name "python2-tegaki-python") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri "tegaki-python" version)) + (sha256 + (base32 + "0x93k7pw9nh0ywd97pr8pm7jv3f94nw044i5k0zvzhdpsjqvak7p")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "pyc")))) + (arguments + (substitute-keyword-arguments (package-arguments python2-tegaki-wagomu) + ((#:phases _) + `(modify-phases %standard-phases + (add-after 'unpack 'pre-configure + (lambda* (#:key inputs #:allow-other-keys) + ;; Always convert string to unicode to avoid the following error + ;; when running "tegaki-build" in python2-tegaki-tools: + ;; + ;; sqlite3.ProgrammingError: You must not use 8-bit bytestrings + ;; unless you use a text_factory that can interpret 8-bit + ;; bytestrings (like text_factory = str). + ;; It is highly recommended that you instead just switch your + ;; application to Unicode strings. + (substitute* "tegaki/charcol.py" + (("sqlite3.OptimizedUnicode") + "lambda s: unicode(s, 'utf-8')")) + (substitute* "tegaki/engine.py" + (("/usr(/local)?") + (assoc-ref inputs "python2-tegaki-wagomu"))) + #t)))))) + ;; override inherited inputs + (inputs '()) + (native-inputs '()) + (propagated-inputs + `(("python2-tegaki-wagomu" ,python2-tegaki-wagomu) + ("python2-zinnia" ,python2-zinnia))) + (synopsis + "Chinese and Japanese Handwriting Recognition (Base python library)") + (license (list gpl2+ ; all files except... + bsd-3 ; dictutils.py + zpl2.1)))) ; minjson.py + +(define-public python2-tegaki-pygtk + (package + (inherit python2-tegaki-wagomu) + (name "python2-tegaki-pygtk") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri "tegaki-pygtk" version)) + (sha256 + (base32 + "1cip0azxhjdj2dg2z85cp1z3lz4qwx3w1j7z4xmcm7npapmsaqs2")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "pyc")))) + (arguments + (substitute-keyword-arguments (package-arguments python2-tegaki-wagomu) + ((#:phases _) + `(modify-phases %standard-phases + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "tegakigtk/fakekey.py" + (("libX11.so.6" so) + (string-append (assoc-ref inputs "libx11") "/lib/" so)) + (("libXtst.so.6" so) + (string-append (assoc-ref inputs "libxtst") "/lib/" so))) + #t)))))) + (inputs ; required for sending key strokes + `(("libx11" ,libx11) + ("libxtst" ,libxtst))) + (native-inputs '()) ; override inherited inputs + (propagated-inputs + `(("python2-pygtk" ,python2-pygtk) + ("python2-tegaki-python" ,python2-tegaki-python))) + (synopsis "Chinese and Japanese Handwriting Recognition (Base UI library)") + (license gpl2+))) ; all files + +(define-public python2-tegaki-tools + (package + (inherit python2-tegaki-wagomu) + (name "python2-tegaki-tools") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri "tegaki-tools" version)) + (sha256 + (base32 + "0xxv97ggh2jgldw3r7y59lv3fhz733r6l7mdn6nh4m0gvb0ja971")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "pyc")))) + (arguments + (substitute-keyword-arguments (package-arguments python2-tegaki-wagomu) + ((#:phases _) '%standard-phases))) + (inputs + `(("python2-tegaki-pygtk" ,python2-tegaki-pygtk))) + ;; override inherited inputs + (native-inputs '()) + (propagated-inputs '()) + (synopsis "Chinese and Japanese Handwriting Recognition (Advanced tools)") + ;; Files in gifenc/ are licensed under gpl3+ while other files are licensed + ;; under gpl2+. Therefore, the combined work is licensed under gpl3+. + (license gpl3+))) + +(define-public python2-tegaki-recognize + (let ((commit "eceec69fe651d0733c8c8752dae569d2283d0f3c") + (revision "1")) + (package + (inherit python2-tegaki-tools) + (name "python2-tegaki-recognize") + ;; version copied from <https://github.com/tegaki/tegaki/releases> + (version (git-version "0.3.1" revision commit)) + (source + (origin + ;; We use GIT-FETCH because 'tegaki-recognize.desktop.in' and + ;; 'tegaki-recognize.in' are missing in the tarball. + (method git-fetch) + (uri (git-reference + (url "https://github.com/tegaki/tegaki.git") + (commit commit))) + (sha256 + (base32 + "09mw2if9p885phbgah5f95q3fwy7s5b46qlmpxqyzfcnj6g7afr5")) + (file-name (git-file-name name version)) + (modules `((guix build utils) + (ice-9 ftw) + (srfi srfi-26) + ,@remove-pre-compiled-files-modules)) + (snippet + `(begin + ;; remove unnecessary files with potentially different license + (for-each delete-file-recursively + (scandir "." + (negate (cut member <> '("tegaki-recognize" + "." ".."))))) + ,(remove-pre-compiled-files "pyc") + #t)))) + (arguments + (substitute-keyword-arguments (package-arguments python2-tegaki-tools) + ((#:phases _) + `(modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ + (chdir "tegaki-recognize") + #t)) + ;; 'setup.py' script does not support one of the Python build + ;; system's default flags, "--single-version-externally-managed" + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "python" "setup.py" "install" + (string-append "--prefix=" (assoc-ref outputs "out")) + "--root=/") + #t)))))) + (synopsis "Chinese and Japanese Handwriting Recognition (Main program)") + (license gpl2+)))) ; all files + +(define-public tegaki-zinnia-japanese + (package + (inherit python2-tegaki-wagomu) + (name "tegaki-zinnia-japanese") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "1nmg9acxhcqly9gwkyb9m0hpy76fll91ywk4b1q4xms0ajxip1h7")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "Makefile" + (("/usr/local") + (assoc-ref outputs "out"))) + #t))))) + ;; override inherited inputs + (inputs '()) + (native-inputs + `(("python2-tegaki-tools" ,python2-tegaki-tools))) + (propagated-inputs '()) + (native-search-paths + (list (search-path-specification + (variable "TEGAKI_MODEL_PATH") + (files '("share/tegaki/models"))))) + (synopsis "Chinese and Japanese Handwriting Recognition (Model)") + (license lgpl2.1))) ; all files + +(define-public tegaki-zinnia-japanese-light + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-zinnia-japanese-light") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "0x0fs29ylqzxd6xvg51h7rigpbisd7q8v11df425ib2j792yfyf8")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-zinnia-japanese-kyoiku + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-zinnia-japanese-kyoiku") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "0am94bcpmbzplxdnwn9gk15sgaizvcfhmv13mk14jjvx3419cvvx")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-zinnia-japanese-joyo + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-zinnia-japanese-joyo") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "1v0j40lzdyiz01ayws0b8r7fsdy2mr32658382kz4wyk883wzx2z")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-zinnia-simplified-chinese + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-zinnia-simplified-chinese") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "18wq0jccv7lpnrfnzspyc110d6pj2v1i21xcx4fmgzz1lnln3fs5")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-zinnia-simplified-chinese-light + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-zinnia-simplified-chinese-light") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "0v24yf0w0p03lb7fyx128a75mwzad166bigvlbrzqnad789qg1sr")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-zinnia-traditional-chinese + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-zinnia-traditional-chinese") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "140nlp6hynrai2svs5670jjfw1za6ayflhyj2dl0bzsfgbk3447l")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-zinnia-traditional-chinese-light + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-zinnia-traditional-chinese-light") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "1m6yk6a57vs9wg5y50qciwi1ahhmklp2mgsjysbj4mnyzv6yhcr2")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-wagomu-japanese + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-wagomu-japanese") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "0flj5id8xwsn7csrrzqz9prdikswnwm2wms0as2vzdpxzph1az4k")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-wagomu-japanese-kyoiku + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-wagomu-japanese-kyoiku") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "0v8crfh8rdf6ndp16g52s5jlrrlwh73xp38zjn5i9dlacx8kfqg1")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-wagomu-japanese-joyo + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-wagomu-japanese-joyo") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "0wk8shpr963zp328g991qs6abpnacq4242003m687z2d6yp7nph2")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +(define-public tegaki-wagomu-simplified-chinese + (package + (inherit tegaki-zinnia-japanese) + (name "tegaki-wagomu-simplified-chinese") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (tegaki-release-uri name version "zip")) + (sha256 + (base32 + "0wqprynigqxqxv128i1smh81gxvmjj056d9qpznxa3n9f5ymlbj6")) + (modules remove-pre-compiled-files-modules) + (snippet (remove-pre-compiled-files "model")))) + (license lgpl2.1))) ; all files + +;;; Upstream does not provide the source for tegaki-wagomu-traditional-chinese. +;;; Therefore, we use the source for tegaki-zinnia-traditional-chinese and +;;; patch the Makefile accordingly. +(define-public tegaki-wagomu-traditional-chinese + (package + (inherit tegaki-zinnia-traditional-chinese) + (name "tegaki-wagomu-traditional-chinese") + (arguments + (substitute-keyword-arguments + (package-arguments tegaki-zinnia-traditional-chinese) + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + (replace 'configure + (lambda args + (let ((configure (assq-ref ,phases 'configure))) + (apply configure args)) + (substitute* "Makefile" + (("zinnia") "wagomu")) + #t)))))) + (license lgpl2.1))) ; all files diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 6c4ab22135..8bdc6bdaf6 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -350,42 +350,42 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." "linux-" version ".tar.xz")) (sha256 hash))) -(define-public linux-libre-5.2-version "5.2.11") +(define-public linux-libre-5.2-version "5.2.15") (define-public linux-libre-5.2-pristine-source (let ((version linux-libre-5.2-version) - (hash (base32 "1y9kn1zny3xpmbi5an3g7hbzywnycys8chfaw6laij1xk4gq6ahc"))) + (hash (base32 "0jhc70r2rygm91qifjagg1jgbpjwyyq6m8g1n5iv81l1v84i0mpb"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.2))) -(define-public linux-libre-4.19-version "4.19.69") +(define-public linux-libre-4.19-version "4.19.71") (define-public linux-libre-4.19-pristine-source (let ((version linux-libre-4.19-version) - (hash (base32 "11yrw8ixd5ni9rlpndqsz2ihx6k8qaf35a1lf164lkhaa85pd4f0"))) + (hash (base32 "1bjwkb7k82l646ryyy0jbwsnygm2qsxgcwli8bdrj844skzynlqz"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.19))) -(define-public linux-libre-4.14-version "4.14.141") +(define-public linux-libre-4.14-version "4.14.142") (define-public linux-libre-4.14-pristine-source (let ((version linux-libre-4.14-version) - (hash (base32 "05rs411rw10hhnfzvaxmcik3pq20i1i05shvvra4bv164f0z1f8b"))) + (hash (base32 "1wwhnm1n1b6yzsd2zzzf9i3n4hlvgnph70p67cwahw0ik4ssayz6"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.14))) -(define-public linux-libre-4.9-version "4.9.190") +(define-public linux-libre-4.9-version "4.9.191") (define-public linux-libre-4.9-pristine-source (let ((version linux-libre-4.9-version) - (hash (base32 "05ha3snfk0vdqk9i27icwpq2if0h2jvshavn69ldwqm4h2h1r2py"))) + (hash (base32 "1g5p736p8zx5rmxaj56yw93jp768npl868jsn8973dny0rsbim6y"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.9))) -(define-public linux-libre-4.4-version "4.4.190") +(define-public linux-libre-4.4-version "4.4.191") (define-public linux-libre-4.4-pristine-source (let ((version linux-libre-4.4-version) - (hash (base32 "1rf28cjrrmj7mm8xqlfld6k20ddk15j4mmyarqibjx9pk9acij7y"))) + (hash (base32 "0x3lnq4xyj5v6r1cz4jizm4vdspws1nb806f5qczwi3yil5nm6bh"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.4))) @@ -2119,7 +2119,7 @@ processes currently causing I/O.") (define-public fuse (package (name "fuse") - (version "2.9.8") + (version "2.9.9") (source (origin (method url-fetch) (uri (string-append "https://github.com/libfuse/libfuse/releases/" @@ -2127,7 +2127,7 @@ processes currently causing I/O.") "/fuse-" version ".tar.gz")) (sha256 (base32 - "1qxg1r1mgysfq6qakmvid2njph3lr00w0swvydsfl9ymilfzi12y")) + "1ddlq6kzxilccgbvxjfx80jx6kamgw4sv49phks2zhlcc1frvrnh")) (patches (search-patches "fuse-overlapping-headers.patch")))) (build-system gnu-build-system) (inputs `(("util-linux" ,util-linux))) @@ -3838,7 +3838,7 @@ and copy/paste text in the console and in xterm.") (define-public btrfs-progs (package (name "btrfs-progs") - (version "5.2.1") + (version "5.2.2") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/kernel/" @@ -3846,7 +3846,7 @@ and copy/paste text in the console and in xterm.") "btrfs-progs-v" version ".tar.xz")) (sha256 (base32 - "0crjv3i20nyj2dagfw6q7byshscpn6j7wlqch3apkzzzk00lmb1n")))) + "1imivxjppi8zl27gn472pwpk8bg5dijkbyi340by31vhy7dj24w2")))) (build-system gnu-build-system) (outputs '("out" "static")) ; static versions of the binaries in "out" @@ -4455,18 +4455,18 @@ cpufreq sub-system is enabled or not.") (define-public haveged (package (name "haveged") - (version "1.9.4") + (version "1.9.6") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/jirka-h/haveged.git") - (commit version))) + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1hrwzjd4byq4fdrg8svww3d8x449k80jxxrjy9v6jvzhfv19rvxr")))) + (base32 "11kr19n2f87izsj341lv5amhd1wc2ckfmqr9pq5fxix8pkbs94rh")))) (build-system gnu-build-system) - (home-page "http://www.issihosts.com/haveged") + (home-page "https://www.issihosts.com/haveged") (synopsis "Entropy source for the Linux random number generator") (description "haveged generates an unpredictable stream of random numbers for use by @@ -4475,10 +4475,10 @@ standard mechanisms for filling the entropy pool may not be sufficient for systems with high needs or limited user interaction, such as headless servers. @command{haveged} runs as a privileged daemon, harvesting randomness from the -indirect effects of hardware events on hidden processor state using the HArdware -Volatile Entropy Gathering and Expansion (@dfn{HAVEGE}) algorithm. It tunes -itself to its environment and provides the same built-in test suite for the -output stream as used on certified hardware security devices. +indirect effects of hardware events on hidden processor state using the +@acronym{HAVEGE, HArdware Volatile Entropy Gathering and Expansion} algorithm. +It tunes itself to its environment and provides the same built-in test suite +for the output stream as used on certified hardware security devices. The quality of the randomness produced by this algorithm has not been proven. It is recommended to run it together with another entropy source like rngd, and @@ -5128,14 +5128,14 @@ re-use code and to avoid re-inventing the wheel.") (define-public libnftnl (package (name "libnftnl") - (version "1.1.3") + (version "1.1.4") (source (origin (method url-fetch) (uri (string-append "mirror://netfilter.org/libnftnl/" "libnftnl-" version ".tar.bz2")) (sha256 - (base32 "03xszkcpqk3s1rqc6vh7g5j13kh3d3yjnvjhk5scds3an39rgp92")))) + (base32 "087dfc2n4saf2k68hyi4byvgz5grwpw5kfjvmkpn3wmd8y1riiy8")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -5152,7 +5152,7 @@ used by nftables.") (define-public nftables (package (name "nftables") - (version "0.9.0") + (version "0.9.2") (source (origin (method url-fetch) @@ -5160,7 +5160,7 @@ used by nftables.") "/files/nftables-" version ".tar.bz2")) (sha256 (base32 - "14bygs6vg2v448cw5r4pxqi8an29hw0m9vab8hpmgjmrzjsq30dd")))) + "1x8kalbggjq44j4916i6vyv1rb20dlh1dcsf9xvzqsry2j063djw")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-man-doc"))) ; FIXME: Needs docbook2x. @@ -5862,15 +5862,15 @@ the superuser to make device nodes.") (define-public fakeroot (package (name "fakeroot") - (version "1.23") + (version "1.24") (source (origin (method url-fetch) - (uri (string-append "http://ftp.debian.org/debian/pool/main/f/" - "fakeroot/fakeroot_" version ".orig.tar.xz")) + (uri (string-append "https://deb.debian.org/debian/pool/main/f/" + "fakeroot/fakeroot_" version ".orig.tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1xpl0s2yjyjwlf832b6kbkaa5921liybaar13k7n45ckd9lxd700")))) + "1vb6f93hjyqnwx8dc8mm3dgma7axgqk8s7sdsjs8l2rpc0qmn11f")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index caf52018d1..0c8ad1e2fa 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -760,7 +760,7 @@ In order to make one or several variables file-local, use the macros (define-public cl-net.didierverna.asdf-flv (sbcl-package->cl-source-package sbcl-net.didierverna.asdf-flv)) -(define-public ecl-alexandria +(define-public ecl-net.didierverna.asdf-flv (sbcl-package->ecl-package sbcl-net.didierverna.asdf-flv)) (define-public sbcl-fiveam @@ -6861,3 +6861,76 @@ extension-points via the concept of hooks.") (define-public ecl-cl-hooks (sbcl-package->ecl-package sbcl-cl-hooks)) + +(define-public sbcl-s-sysdeps + (let ((commit "d28246b5dffef9e73a0e0e6cfbc4e878006fe34d") + (revision "1")) + (package + (name "sbcl-s-sysdeps") + (build-system asdf-build-system/sbcl) + (version (git-version "1" revision commit)) + (home-page "https://github.com/svenvc/s-sysdeps") + (source + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "14b69b81yrxmjlvmm3lfxk04x5v7hqz4fql121334wh72czznfh9")))) + (synopsis "Common Lisp abstraction layer over platform dependent functionality") + (description "@code{s-sysdeps} is an abstraction layer over platform +dependent functionality. This simple package is used as a building block in a +number of other open source projects. + +@code{s-sysdeps} abstracts: + +@itemize +@item managing processes, +@item implementing a standard TCP/IP server, +@item opening a client TCP/IP socket stream, +@item working with process locks. +@end itemize\n") + (license license:llgpl)))) + +(define-public cl-s-sysdeps + (sbcl-package->cl-source-package sbcl-s-sysdeps)) + +(define-public ecl-s-sysdeps + (sbcl-package->ecl-package sbcl-s-sysdeps)) + +(define-public sbcl-cl-prevalence + (let ((commit "c163c227ed85d430b82cb1e3502f72d4f88e3cfa") + (revision "1")) + (package + (name "sbcl-cl-prevalence") + (build-system asdf-build-system/sbcl) + (version (git-version "5" revision commit)) + (home-page "https://github.com/40ants/cl-prevalence") + (source + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1i9zj1q2ahgwch56an21yzbgkynz0kab9fyxkq9mg8p3xrv38jjn")))) + (inputs + `(("s-sysdeps" ,sbcl-s-sysdeps) + ("s-xml" ,sbcl-s-xml))) + (synopsis "Implementation of object prevalence for Common Lisp") + (description "This Common Lisp library implements object prevalence (see +@url{https://en.wikipedia.org/wiki/System_prevalence}). It allows +for (de)serializing to and from s-exps as well as XML. Serialization of arbitrary +classes and cyclic data structures are supported.") + (license license:llgpl)))) + +(define-public cl-prevalence + (sbcl-package->cl-source-package sbcl-cl-prevalence)) + +(define-public ecl-cl-prevalence + (sbcl-package->ecl-package sbcl-cl-prevalence)) diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm index ff62d3b362..075decc61a 100644 --- a/gnu/packages/lua.scm +++ b/gnu/packages/lua.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 doncatnip <gnopap@gmail.com> ;;; Copyright © 2016, 2017, 2019 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org> @@ -39,6 +39,7 @@ #:use-module (gnu packages tls) #:use-module (gnu packages xml) #:use-module (gnu packages glib) + #:use-module (gnu packages libevent) #:use-module (gnu packages libffi) #:use-module (gnu packages pkg-config) #:use-module (gnu packages xorg) @@ -450,6 +451,69 @@ Grammars (PEGs).") (define-public lua5.2-lpeg (make-lua-lpeg "lua5.2-lpeg" lua-5.2)) +(define (make-lua-luv name lua) + (package + (name name) + (version "1.30.1-0") + (source (origin + ;; The release tarball includes the sources of libuv but does + ;; not include the pkg-config files. + (method git-fetch) + (uri (git-reference + (url "https://github.com/luvit/luv.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1lfzzyphpim28kw33k7zylcyxnf40ckhdg6hbqyzb5hszdf2hbka")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; there are none + #:configure-flags + '("-DWITH_LUA_ENGINE=Lua" + "-DWITH_SHARED_LIBUV=On" + "-DBUILD_MODULE=Off" + "-DBUILD_SHARED_LIBS=On" + "-DLUA_BUILD_TYPE=System") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'copy-lua-compat + (lambda* (#:key inputs #:allow-other-keys) + (copy-recursively (assoc-ref inputs "lua-compat") + "lua-compat") + (setenv "CPATH" + (string-append (getcwd) "/lua-compat:" + (or (getenv "CPATH") ""))) + #t))))) + (inputs + `(("lua" ,lua) + ("libuv" ,libuv))) + (native-inputs + `(("lua-compat" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/keplerproject/lua-compat-5.3.git") + (commit "daebe77a2f498817713df37f0bb316db1d82222f"))) + (file-name "lua-compat-5.3-checkout") + (sha256 + (base32 + "02a14nvn7aggg1yikj9h3dcf8aqjbxlws1bfvqbpfxv9d5phnrpz")))))) + (home-page "https://github.com/luvit/luv/") + (synopsis "Libuv bindings for Lua") + (description + "This library makes libuv available to Lua scripts.") + (license license:asl2.0))) + +(define-public lua-luv + (make-lua-luv "lua-luv" lua)) + +(define-public lua5.1-luv + (make-lua-luv "lua5.1-luv" lua-5.1)) + +(define-public lua5.2-luv + (make-lua-luv "lua5.2-luv" lua-5.2)) + ;; Lua 5.3 is not supported. (define (make-lua-bitop name lua) (package diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm index e72f5b82d9..e5487d3ae4 100644 --- a/gnu/packages/lxqt.scm +++ b/gnu/packages/lxqt.scm @@ -1177,7 +1177,8 @@ processes currently in existence, much like code{top} or code{ps}.") (base32 "0v1vvi8vf9y8nv8y0gzffaqji53s75ab5jypksih0ndcws8ryww4")))) (build-system cmake-build-system) (inputs - `(("qtbase" ,qtbase))) + `(("qtbase" ,qtbase) + ("utf8proc" ,utf8proc))) (native-inputs `(("lxqt-build-tools" ,lxqt-build-tools) ("qttools" ,qttools))) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 30ce5cd70c..fdbb082fdc 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1197,7 +1197,7 @@ delivery.") (define-public exim (package (name "exim") - (version "4.92.1") + (version "4.92.2") (source (origin (method url-fetch) @@ -1206,7 +1206,7 @@ delivery.") (string-append "https://ftp.exim.org/pub/exim/exim4/old/exim-" version ".tar.bz2"))) (sha256 - (base32 "132zmxgzz35xwi89g3crw6hd3y74rxj5zcpamakvrnlcn256amdp")))) + (base32 "1xnc5rdcg5mcrvjqp506a9frmcr89jwsh4c5vbks46awyz1rfzsm")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb-5.3) ; ‘#error Version 6 and later BDB API is not supported’ diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index c81e999daa..5380b4a99e 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1717,11 +1717,16 @@ This is the certified version of the Open Cascade Technology (OCCT) library.") (version "2.16.0") (source (origin - (method url-fetch) - (uri (string-append "http://gmsh.info/src/gmsh-" - version "-source.tgz")) + (method git-fetch) + (uri (git-reference + (url "https://gitlab.onelab.info/gmsh/gmsh.git") + (commit + (string-append "gmsh_" + (string-map (lambda (x) (if (eq? x #\.) #\_ x)) + version))))) + (file-name (git-file-name name version)) (sha256 - (base32 "1slf0bfkwrcgn6296wb4qhbk4ahz6i4wfb10hnim08x05vrylag8")) + (base32 "08rq4jajwmlpivnm9yifz2jhaivnz065lnk0h2zv773nwl9wf162")) (modules '((guix build utils))) (snippet ;; Remove non-free METIS code @@ -1747,7 +1752,7 @@ This is the certified version of the Open Cascade Technology (OCCT) library.") `(#:configure-flags `("-DENABLE_METIS:BOOL=OFF" "-DENABLE_BUILD_SHARED:BOOL=ON" "-DENABLE_BUILD_DYNAMIC:BOOL=ON"))) - (home-page "http://www.geuz.org/gmsh/") + (home-page "http://gmsh.info/") (synopsis "3D finite element grid generator") (description "Gmsh is a 3D finite element grid generator with a built-in CAD engine and post-processor. Its design goal is to provide a fast, light @@ -3091,6 +3096,10 @@ parts of it.") (define-public openblas (package + ;; TODO: Incorporate 'openblas/fixed-num-threads' changes on the next + ;; rebuild cycle. + (replacement openblas/fixed-num-threads) + (name "openblas") (version "0.3.5") (source @@ -3161,7 +3170,7 @@ parts of it.") (license license:bsd-3))) (define-public openblas-ilp64 - (package (inherit openblas) + (package/inherit openblas (name "openblas-ilp64") (supported-systems '("x86_64-linux" "aarch64-linux" "mips64el-linux")) (arguments @@ -3172,6 +3181,24 @@ parts of it.") (synopsis "Optimized BLAS library based on GotoBLAS (ILP64 version)") (license license:bsd-3))) +(define openblas/fixed-num-threads + ;; TODO: Move that to 'openblas' proper on the next rebuild cycle. + (package + (inherit openblas) + (version (match (string-split (package-version openblas) #\.) + ((numbers ... (= string-length len)) + (string-join (append numbers + (list (make-string len #\a))) + ".")))) + (arguments + (substitute-keyword-arguments (package-arguments openblas) + ((#:make-flags flags ''()) + ;; This is the maximum number of threads OpenBLAS will ever use (that + ;; is, if $OPENBLAS_NUM_THREADS is greater than that, then NUM_THREADS + ;; is used.) If we don't set it, the makefile sets it to the number + ;; of cores of the build machine, which is obviously wrong. + `(cons "NUM_THREADS=128" ,flags)))))) + (define* (make-blis implementation #:optional substitutable?) "Return a BLIS package with the given IMPLEMENTATION (see config/ in the source tree for a list of implementations.) @@ -3828,8 +3855,8 @@ set.") `(("doc++" ,doc++) ("netpbm" ,netpbm) ("perl" ,perl) ; needed to run 'ppmquant' during tests - ("texlive" ,(texlive-union (list texlive-generic-xypic - texlive-fonts-xypic + ("texlive" ,(texlive-union (list texlive-xypic + texlive-cm texlive-latex-hyperref texlive-bibtex))) ("ghostscript" ,ghostscript))) diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index ae887fa24d..49224a7ba5 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017,2018 Jan Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2017, 2018, 2019 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; @@ -63,14 +63,14 @@ extensive examples, including parsers for the Javascript and C99 languages.") (define-public nyacc (package (inherit nyacc-0.86) - (version "0.94.0") + (version "0.99.0") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/nyacc/nyacc-" version ".tar.gz")) (sha256 (base32 - "12qnzwm1n3j8z7hbr9hy2wka9a1aasm2rvnpnvdxkjcsbdzj8fn4")) + "0hl5qxx19i4x1r0839sxm19ziqq65g4hy97yik81cc2yb9yvgyv3")) (modules '((guix build utils))) (snippet '(begin @@ -94,22 +94,19 @@ extensive examples, including parsers for the Javascript and C99 languages.") (define-public mes (package (name "mes") - (version "0.19") + (version "0.20") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mes/" "mes-" version ".tar.gz")) (sha256 (base32 - "15h4yhaywdc0djpjlin2jz1kzahpqxfki0r0aav1qm9nxxmnp1l0")))) + "04pajp8v31na34ls4730ig5f6miiplhdvkmsb9ls1b8bbmw2vb4n")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (propagated-inputs `(("mescc-tools" ,mescc-tools) - - ;; XXX: MesCC appears to enter an infinite loop (?) while building - ;; crt1.o when we switch to nyacc 0.94. - ("nyacc" ,nyacc-0.86))) + ("nyacc" ,nyacc))) (native-inputs `(("guile" ,guile-2.2) ,@(let ((target-system (or (%current-target-system) @@ -141,7 +138,7 @@ Guile.") (define-public mescc-tools (package (name "mescc-tools") - (version "0.5.2") + (version "0.6.1") (source (origin (method url-fetch) (uri (string-append @@ -151,11 +148,12 @@ Guile.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "01x7bhmgwyf6mc2g1hcvibhps98nllacqm4f0j5l51b1mbi18pc2")))) + "06jpvq6xfjzn2al6b4rdwd3zv3h4cvilc4n9gqcnjr9cr6wjpw2n")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (arguments - `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) + `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) + "CC=gcc") #:test-target "test" #:phases (modify-phases %standard-phases (delete 'configure)))) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index e8b1e6e0b1..fafb61c681 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -195,7 +195,7 @@ player daemon.") (define-public ncmpc (package (name "ncmpc") - (version "0.34") + (version "0.35") (source (origin (method url-fetch) (uri @@ -204,7 +204,7 @@ player daemon.") "/ncmpc-" version ".tar.xz")) (sha256 (base32 - "0mz8r6vc4zn5sa3hlq4ii74qcrkh01nbg784zcwahgz8g3fb3i8l")))) + "0hfjvm1p0z7x6gfn5xhl5c0jsmidvz0qfl04pq45x4chh9iiwkxx")))) (build-system meson-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index a43bccf4f8..4d1e11f260 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -22,6 +22,7 @@ ;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com> ;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si> ;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org> +;;; Copyright © 2019 raingloom <raingloom@protonmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -2145,7 +2146,7 @@ capabilities, custom envelopes, effects, etc.") (define-public yoshimi (package (name "yoshimi") - (version "1.6.0") + (version "1.6.0.1") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/yoshimi/" @@ -2153,10 +2154,10 @@ capabilities, custom envelopes, effects, etc.") "/yoshimi-" version ".tar.bz2")) (sha256 (base32 - "0bcc5spnq73yp1fmm367d1mxcswqkmzs3cnpb4cxr513ir98sa50")))) + "140f2k4akj39pny8c7i794q125415gyvmy4rday0il5ncp3glik4")))) (build-system cmake-build-system) (arguments - `(#:tests? #f ; there are no tests + `(#:tests? #f ; there are no tests #:configure-flags (list (string-append "-DCMAKE_INSTALL_DATAROOTDIR=" (assoc-ref %outputs "out") "/share")) @@ -4529,3 +4530,65 @@ discard bad quality ones. controller.") (home-page "https://github.com/charlesfleche/lpd8editor") (license license:expat))) + +(define-public fmit + (package + (name "fmit") + (version "1.2.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gillesdegottex/fmit/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03nzkig5mw2rqwhwmg0qvc5cnk9bwh2wp13jh0mdrr935w0587mz")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'qmake + (lambda _ + (let ((out (assoc-ref %outputs "out"))) + (invoke "qmake" + "fmit.pro" + (string-append "PREFIX=" out) + (string-append "PREFIXSHORTCUT=" out) + "CONFIG+=acs_qt acs_alsa acs_jack acs_portaudio")))) + (add-after 'install 'wrap-executable + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/fmit") + `("QT_PLUGIN_PATH" ":" prefix + ,(map (lambda (label) + (string-append (assoc-ref inputs label) + "/lib/qt5/plugins")) + '("qtbase" "qtmultimedia" "qtsvg"))) + `("QML2_IMPORT_PATH" ":" prefix + ,(map (lambda (label) + (string-append (assoc-ref inputs label) + "/lib/qt5/qml")) + '("qtmultimedia")))) + #t)))))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("fftw" ,fftw) + ("jack" ,jack-1) + ("portaudio" ,portaudio) + ("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia) + ("qtsvg" ,qtsvg))) + (native-inputs + `(("gettext" ,gnu-gettext) + ("hicolor-icon-theme" ,hicolor-icon-theme) + ("itstool" ,itstool) + ("qttools" ,qttools))) + (synopsis "Musical instrument tuner") + (description "FMIT is a graphical utility for tuning musical instruments, +with error and volume history, and advanced features.") + (home-page "https://gillesdegottex.github.io/fmit/") + ;; Most of the code is under GPL2+, but some abstract or helper classes + ;; are under LGPL2.1. + (license (list license:gpl2+ license:lgpl2.1)))) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 9383e1a1d8..6bdf7f9e2f 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -275,16 +275,16 @@ transparently check connection attempts against an access control list.") (define-public zeromq (package (name "zeromq") - (version "4.0.7") - (source (origin - (method url-fetch) - (uri (string-append "http://download.zeromq.org/zeromq-" - version ".tar.gz")) - (sha256 - (base32 - "00vvwhgcdr1lva2pavicvy92iad0hj8cf71n702hv6blw1kjj2z0")))) + (version "4.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/zeromq/libzmq/releases/" + "download/v" version "/zeromq-" version ".tar.gz")) + (sha256 + (base32 "0qzp80ky4y2k7k1ya09v9gkivvfbz2km813snrb8jhnn634bbmzb")))) (build-system gnu-build-system) - (home-page "http://zeromq.org") + (home-page "https://zeromq.org") (synopsis "Library for message-based applications") (description "The 0MQ lightweight messaging kernel is a library which extends the @@ -1970,14 +1970,14 @@ displays the results in real time.") (define-public strongswan (package (name "strongswan") - (version "5.8.0") + (version "5.8.1") (source (origin (method url-fetch) (uri (string-append "https://download.strongswan.org/strongswan-" version ".tar.bz2")) (sha256 - (base32 "0cq9m86ydd2i0awxkv4a256f4926p2f9pzlisyskl9fngl6f3c8m")))) + (base32 "034rd6kr1bmnvj8rg2kcxdjb0cgj3dn9310mmm94j1awxan71byr")))) (build-system gnu-build-system) (arguments `(#:phases @@ -2000,7 +2000,7 @@ displays the results in real time.") #t))) #:configure-flags (list - ;; Disable bsd-4 licensed plugins + ;; Disable bsd-4 licensed plugins. "--disable-des" "--disable-blowfish"))) (inputs diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm index 419b6d7321..6942ecec2f 100644 --- a/gnu/packages/ntp.scm +++ b/gnu/packages/ntp.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2015, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -108,8 +109,11 @@ computers over a network.") "0fn12i4kzsi0zkr4qp3dp9bycmirnfapajqvdfx02zhr4hanj0kv")))) (build-system gnu-build-system) (arguments - '(#:configure-flags '("--with-privsep-user=ntpd" - "--localstatedir=/var") + '(#:configure-flags `( "--with-privsep-user=ntpd" + "--localstatedir=/var" + ,(string-append "--with-cacert=" + (assoc-ref %build-inputs "libressl") + "/etc/ssl/cert.pem")) #:phases (modify-phases %standard-phases (add-after 'unpack 'modify-install-locations diff --git a/gnu/packages/ocr.scm b/gnu/packages/ocr.scm index 2808359ca2..1266e7e419 100644 --- a/gnu/packages/ocr.scm +++ b/gnu/packages/ocr.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,8 +23,11 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module (gnu packages compression) + #:use-module (gnu packages python) #:use-module (gnu packages image)) (define-public ocrad @@ -76,3 +80,74 @@ positional information and page layout analysis. Several image formats are supported through the Leptonica library. It can also detect whether text is monospaced or proportional.") (license license:asl2.0))) + +(define-public zinnia + (let* ((commit "581faa8f6f15e4a7b21964be3a5ec36265c80e5b") + (revision "1") + ;; version copied from 'configure.in' + (version (git-version "0.07" revision commit))) + (package + (name "zinnia") + (version version) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/taku910/zinnia.git") + (commit commit))) + (sha256 + (base32 + "1izjy5qw6swg0rs2ym2i72zndb90mwrfbd1iv8xbpwckbm4899lg")) + (file-name (git-file-name name version)) + (modules '((guix build utils) + (ice-9 ftw) + (srfi srfi-26))) + (snippet ; remove unnecessary files with potentially different license + '(begin + (for-each delete-file-recursively + (scandir "." + (negate (cut member <> '("zinnia" + "." ".."))))) + #t)))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'bootstrap + (lambda _ + (chdir "zinnia") + (for-each make-file-writable + '("config.log" "config.status")) + #t))))) + (home-page "https://taku910.github.io/zinnia/") + (synopsis "Online hand recognition system with machine learning") + (description + "Zinnia is a simple, customizable and portable online hand recognition +system based on Support Vector Machines. Zinnia simply receives user pen +strokes as a sequence of coordinate data and outputs n-best characters sorted +by SVM confidence. To keep portability, Zinnia doesn't have any rendering +functionality. In addition to recognition, Zinnia provides training module +that allows us to create any hand-written recognition systems with low-cost.") + (license (list license:bsd-3 ; all files except... + (license:non-copyleft ; some autotools related files + "file://zinnia/aclocal.m4") + license:x11 ; 'install-sh' + license:public-domain))))) ; 'install-sh' + +;;; python 2 bindings, license under the same terms as zinnia +(define-public python2-zinnia + (package + (inherit zinnia) + (name "python2-zinnia") + (build-system python-build-system) + (arguments + `(#:python ,python-2 ; CObject API is used, it was removed in Python 3.2 + #:tests? #f ; avoid circular dependency on tegaki-zinnia-japanese + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ + (chdir "zinnia/python") + #t))))) + (inputs + `(("zinnia" ,zinnia))))) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 100c148fda..a56c738e78 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -31,6 +31,7 @@ (define-module (gnu packages package-management) #:use-module (gnu packages) #:use-module (gnu packages acl) + #:use-module (gnu packages admin) #:use-module (gnu packages attr) #:use-module (gnu packages avahi) #:use-module (gnu packages autotools) @@ -39,6 +40,7 @@ #:use-module (gnu packages bdw-gc) #:use-module (gnu packages bison) #:use-module (gnu packages bootstrap) ;for 'bootstrap-guile-origin' + #:use-module (gnu packages cdrom) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cpio) @@ -48,6 +50,7 @@ #:use-module (gnu packages docbook) #:use-module (gnu packages file) #:use-module (gnu packages gettext) + #:use-module (gnu packages ghostscript) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) @@ -55,12 +58,19 @@ #:use-module (gnu packages gtk) #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) + #:use-module (gnu packages haskell) + #:use-module (gnu packages image) + #:use-module (gnu packages imagemagick) + #:use-module (gnu packages java) #:use-module (gnu packages linux) #:use-module (gnu packages lisp) + #:use-module (gnu packages llvm) #:use-module (gnu packages man) + #:use-module (gnu packages mono) #:use-module (gnu packages nettle) #:use-module (gnu packages nss) #:use-module (gnu packages patchutils) + #:use-module (gnu packages pdf) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) #:use-module (gnu packages pkg-config) @@ -72,8 +82,10 @@ #:use-module (gnu packages sqlite) #:use-module (gnu packages ssh) #:use-module (gnu packages texinfo) + #:use-module (gnu packages textutils) #:use-module (gnu packages time) #:use-module (gnu packages tls) + #:use-module (gnu packages video) #:use-module (gnu packages vim) #:use-module (gnu packages virtualization) #:use-module (gnu packages web) @@ -111,8 +123,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "1.0.1") - (commit "c902458863d1d341ffd74970b75e69c2bb848183") - (revision 4)) + (commit "0ed97e69805253656df929a6ad678016aa81f08a") + (revision 6)) (package (name "guix") @@ -128,7 +140,7 @@ (commit commit))) (sha256 (base32 - "0w93qjgy9n0qqyij12s7hm7fl4wb6h99bmfril4cqf4ynckpdvbb")) + "1h2qlbbdqi72jslx17gp2cak5494nbm8j44rz57lnplnfcn6iwaw")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -343,6 +355,19 @@ the Nix package manager.") #f) ((#:phases phases '%standard-phases) `(modify-phases ,phases + (add-after 'unpack 'change-default-guix + (lambda _ + ;; We need to tell 'guix-daemon' which 'guix' command to use. + ;; Here we use a questionable hack where we hard-code root's + ;; current guix, which could be wrong (XXX). Note that scripts + ;; like 'guix perform-download' do not run as root so we assume + ;; that they have access to /var/guix/profiles/per-user/root. + (substitute* "nix/libstore/globals.cc" + (("guixProgram = (.*)nixBinDir + \"/guix\"" _ before) + (string-append "guixProgram = " before + "/var/guix/profiles/per-user/root\ +/current-guix/bin/guix"))) + #t)) (replace 'build (lambda _ (invoke "make" "nix/libstore/schema.sql.hh") @@ -352,19 +377,7 @@ the Nix package manager.") (delete 'copy-bootstrap-guile) (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (invoke "make" "install-binPROGRAMS" - "install-nodist_pkglibexecSCRIPTS") - - ;; We need to tell 'guix-daemon' which 'guix' command to use. - ;; Here we use a questionable hack where we hard-code root's - ;; current guix, which could be wrong (XXX). Note that scripts - ;; like 'guix perform-download' do not run as root so we assume - ;; that they have access to /var/guix/profiles/per-user/root. - (let ((out (assoc-ref outputs "out"))) - (substitute* (find-files (string-append out "/libexec")) - (("exec \".*/bin/guix\"") - "exec \"${GUIX:-/var/guix/profiles/per-user/root/current-guix/bin/guix}\"")) - #t))) + (invoke "make" "install-binPROGRAMS"))) (delete 'wrap-program))))))) (define-public guile2.0-guix @@ -546,7 +559,7 @@ transactions from C or Python.") (license license:gpl2+))) (define-public diffoscope - (let ((version "122")) + (let ((version "123")) (package (name "diffoscope") (version version) @@ -558,7 +571,7 @@ transactions from C or Python.") (file-name (git-file-name name version)) (sha256 (base32 - "1pwddknk8qyv88ba63why8vbnlc14b47434lv4ijx49m7ya3zfvg")))) + "11bxms5rkhi0v4pxx29v4qgvhp3fmf0fkzci6gn5xcv4fl1zy4wj")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -575,6 +588,13 @@ transactions from C or Python.") (lambda _ (delete-file "tests/comparators/test_berkeley_db.py") #t)) + ;; Test is dynamically generated and may have false + ;; negatives with different ocaml versions. Further + ;; background in: https://bugs.debian.org/939386 + (add-after 'unpack 'remove-ocaml-test + (lambda _ + (delete-file "tests/comparators/test_ocaml.py") + #t)) (add-after 'unpack 'embed-tool-references (lambda* (#:key inputs #:allow-other-keys) (substitute* "diffoscope/comparators/utils/compare.py" @@ -594,10 +614,9 @@ transactions from C or Python.") #t)) (add-before 'check 'writable-test-data (lambda _ - ;; tests/comparators/test_elf.py needs write access to - ;; test data - (make-file-writable - "tests/data/ignore_readelf_errors_expected_diff") + ;; tests may need needs write access to tests + ;; directory + (for-each make-file-writable (find-files "tests")) #t)) (add-before 'check 'delete-failing-test (lambda _ @@ -614,7 +633,43 @@ transactions from C or Python.") ("xxd" ,xxd))) ;; Below are modules used for tests. (native-inputs `(("python-pytest" ,python-pytest) - ("python-chardet" ,python-chardet))) + ("python-chardet" ,python-chardet) + ;; test suite skips tests when tool is missing + ("bdb" ,bdb) + ("binutils" ,binutils) + ("bzip2" ,bzip2) + ("cdrtools" ,cdrtools) + ("colord" ,colord) + ("cpio" ,cpio) + ("docx2txt" ,docx2txt) + ("e2fsprogs" ,e2fsprogs) + ("ffmpeg" ,ffmpeg) + ("gettext" ,gettext-minimal) + ("ghc" ,ghc) + ("ghostscript" ,ghostscript) + ("giflib:bin" ,giflib "bin") + ("gnumeric" ,gnumeric) + ("gnupg" ,gnupg) + ("imagemagick" ,imagemagick) + ("libarchive" ,libarchive) + ("llvm" ,llvm) + ("lz4" ,lz4) + ("mono" ,mono) + ("odt2txt" ,odt2txt) + ;; no unversioned openjdk available + ("openjdk:jdk" ,openjdk12 "jdk") + ("openssh" ,openssh) + ("pgpdump" ,pgpdump) + ("poppler" ,poppler) + ("rpm" ,rpm) + ("sng" ,sng) + ("sqlite" ,sqlite) + ("squashfs-tools" ,squashfs-tools) + ("tcpdump" ,tcpdump) + ("unzip" ,unzip) + ("xxd" ,xxd) + ("xz" ,xz) + ("zip" ,(@ (gnu packages compression) zip)))) (home-page "https://diffoscope.org/") (synopsis "Compare files, archives, and directories in depth") (description diff --git a/gnu/packages/patches/cmake-curl-certificates.patch b/gnu/packages/patches/cmake-curl-certificates.patch new file mode 100644 index 0000000000..36252083f8 --- /dev/null +++ b/gnu/packages/patches/cmake-curl-certificates.patch @@ -0,0 +1,40 @@ +By default commands such as "ctest" would not look for certificates +at all: <https://issues.guix.gnu.org/issue/37371>. + +This changes CMake such that commands honor SSL_CERT_FILE and SSL_CERT_DIR +as well as /etc/ssl/certs. + +--- cmake-3.13.1/Source/cmCurl.cxx 2019-09-10 17:27:36.926907260 +0200 ++++ cmake-3.13.1/Source/cmCurl.cxx 2019-09-10 17:52:35.475903919 +0200 +@@ -4,11 +4,8 @@ + + #include "cmThirdParty.h" + +-#if !defined(CMAKE_USE_SYSTEM_CURL) && !defined(_WIN32) && \ +- !defined(__APPLE__) && !defined(CURL_CA_BUNDLE) && !defined(CURL_CA_PATH) + # define CMAKE_FIND_CAFILE + # include "cmSystemTools.h" +-#endif + + // curl versions before 7.21.5 did not provide this error code + #if defined(LIBCURL_VERSION_NUM) && LIBCURL_VERSION_NUM < 0x071505 +@@ -29,6 +26,19 @@ std::string cmCurlSetCAInfo(::CURL* curl + ::CURLcode res = ::curl_easy_setopt(curl, CURLOPT_CAINFO, cafile); + check_curl_result(res, "Unable to set TLS/SSL Verify CAINFO: "); + } ++ ++ /* Honor the usual environment variables. */ ++ else if (cmSystemTools::GetEnv("SSL_CERT_FILE", e)) { ++ ::CURLcode res = ++ ::curl_easy_setopt(curl, CURLOPT_CAINFO, e.c_str()); ++ check_curl_result(res, "Unable to set TLS/SSL Verify CAINFO: "); ++ } ++ else if (cmSystemTools::GetEnv("SSL_CERT_DIR", e)) { ++ ::CURLcode res = ++ ::curl_easy_setopt(curl, CURLOPT_CAPATH, e.c_str()); ++ check_curl_result(res, "Unable to set TLS/SSL Verify CAINFO: "); ++ } ++ + #ifdef CMAKE_FIND_CAFILE + # define CMAKE_CAFILE_FEDORA "/etc/pki/tls/certs/ca-bundle.crt" + else if (cmSystemTools::FileExists(CMAKE_CAFILE_FEDORA, true)) { diff --git a/gnu/packages/patches/tipp10-fix-compiling.patch b/gnu/packages/patches/tipp10-fix-compiling.patch index 4c206d4d83..3a34a98b22 100644 --- a/gnu/packages/patches/tipp10-fix-compiling.patch +++ b/gnu/packages/patches/tipp10-fix-compiling.patch @@ -204,8 +204,7 @@ https://sources.debian.net/data/main/t/tipp10/2.1.0-2/debian/patches/0001-FixCom Name=TIPP10 Comment=Touch Typing Tutor Comment[de]=10-Finger-Schreibtrainer --Exec=tipp10 -+Exec=/usr/bin/tipp10 + Exec=tipp10 Icon=tipp10.png Terminal=false Type=Application diff --git a/gnu/packages/patches/weechat-python.patch b/gnu/packages/patches/weechat-python.patch deleted file mode 100644 index 8182636ecb..0000000000 --- a/gnu/packages/patches/weechat-python.patch +++ /dev/null @@ -1,40 +0,0 @@ -Get Python LDFLAGS from 'pkg-config'. - -The other approach is more complex and gets it wrong: it returns -"-L/path/to/python/lib/python-2.7.10/lib/python2.7/config -lpython -lwhatever"; -since that config/ sub-directory contains libpython2.7.a, we end up -statically linking Python in Weechat's python.so, which we do not want. - ---- weechat-1.3/configure.ac 2015-08-16 08:27:07.000000000 +0200 -+++ weechat-1.3/configure.ac 2015-11-29 18:18:52.975197048 +0100 -@@ -535,29 +535,7 @@ if test "x$enable_python" = "xyes" ; the - if test -r "$PYTHON_INCLUDE/Python.h"; then - PYTHON_CFLAGS="-I$PYTHON_INCLUDE" - AC_MSG_RESULT(found) -- PYTHON_LIB=`$PYTHON -c "import sys, distutils.sysconfig; sys.stdout.write(distutils.sysconfig.get_config_var('LIBPL'))"` -- PYTHON_LFLAGS="-lpython$PYTHON_VERSION "`$PYTHON -c "import sys, distutils.sysconfig; sys.stdout.write(distutils.sysconfig.get_config_var('LIBS')+' '+distutils.sysconfig.get_config_var('SYSLIBS')+' '+distutils.sysconfig.get_config_var('LINKFORSHARED'))"` -- AC_MSG_CHECKING(for Python library) -- if test -r "$PYTHON_LIB/libpython$PYTHON_VERSION.so"; then -- PYTHON_LFLAGS="-L$PYTHON_LIB $PYTHON_LFLAGS" -- AC_MSG_RESULT(found) -- elif test -r "$PYTHON_LIB/libpython$PYTHON_VERSION.a"; then -- PYTHON_LFLAGS="-L$PYTHON_LIB $PYTHON_LFLAGS" -- AC_MSG_RESULT(found) -- elif test -r "$PYTHON_LIB/libpython$PYTHON_VERSION.dll.a"; then -- PYTHON_LFLAGS="-L$PYTHON_LIB $PYTHON_LFLAGS" -- AC_MSG_RESULT(found) -- elif test -r "$PYTHON_SYSPREFIX/lib/libpython$PYTHON_VERSION.so"; then -- PYTHON_LFLAGS="-L$PYTHON_SYSPREFIX/lib/ $PYTHON_LFLAGS" -- AC_MSG_RESULT(found) -- else -- AC_MSG_WARN([ --*** Python library couldn't be found on your system. --*** Try to install it with your software package manager. --*** WeeChat will be built without Python support.]) -- enable_python="no" -- not_found="$not_found python" -- fi -+ PYTHON_LFLAGS=`pkg-config python2 --libs` - else - AC_MSG_WARN([ - *** Python header files couldn't be found on your system. diff --git a/gnu/packages/perl-compression.scm b/gnu/packages/perl-compression.scm index ea71492262..d09e68e294 100644 --- a/gnu/packages/perl-compression.scm +++ b/gnu/packages/perl-compression.scm @@ -133,7 +133,7 @@ type by using either Perl modules, or command-line tools on your system.") (define-public perl-archive-zip (package (name "perl-archive-zip") - (version "1.64") + (version "1.65") (source (origin (method url-fetch) @@ -141,8 +141,7 @@ type by using either Perl modules, or command-line tools on your system.") "mirror://cpan/authors/id/P/PH/PHRED/Archive-Zip-" version ".tar.gz")) (sha256 - (base32 - "0zfinh8nx3rxzscp57vq3w8hihpdb0zs67vvalykcf402kr88pyy")))) + (base32 "116vcg8x7n92i7cn3bx0xck69mz9vjy0il9i8p7p7lk40kz7jcbl")))) (build-system perl-build-system) (native-inputs ;; For tests. diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 56a857c0f8..d104c2434c 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1266,14 +1266,14 @@ arrays for their internal representation.") (define-public perl-clone (package (name "perl-clone") - (version "0.42") + (version "0.43") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/G/GA/GARU/" + (uri (string-append "mirror://cpan/authors/id/A/AT/ATOOMIC/" "Clone-" version ".tar.gz")) (sha256 (base32 - "1r87rdm0nilfayxwlzvylwc8r3hr5m24180x437j30qpizdk1aal")))) + "1npf5s4b90ds6lv8gn76b2w4bdh0z5ni5zk4skgc2db5d12560lr")))) (build-system perl-build-system) (synopsis "Recursively copy Perl datatypes") (description diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index 676dae5430..b8aaef9b77 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -226,11 +227,27 @@ testing framework.") (base32 "03w2zz3crblj1p6i8nq17946hbn3zqp9z7cfnifw47hi4a4fww12")))) (build-system python-build-system) - (arguments '(#:tests? #f)) ; one test fails; can't find virtualenv + (arguments + `(#:phases + (modify-phases %standard-phases + ;; Reference the virtualenv executable directly, to avoid the need + ;; for PYTHONPATH, which gets cleared when instantiating a new + ;; virtualenv with pytest-virtualenv. + (add-after 'unpack 'patch-virtualenv-executable + (lambda* (#:key inputs #:allow-other-keys) + (let* ((virtualenv (assoc-ref inputs "python-virtualenv")) + (virtualenv-bin (string-append virtualenv + "/bin/virtualenv"))) + (substitute* "pytest_virtualenv.py" + (("^DEFAULT_VIRTUALENV_FIXTURE_EXECUTABLE.*$") + (format #f "DEFAULT_VIRTUALENV_FIXTURE_EXECUTABLE = '~a'" + virtualenv-bin))) + #t)))))) (propagated-inputs - `(("python-virtualenv" ,python-virtualenv) - ("python-pytest-shutil" ,python-pytest-shutil) + `(("python-pytest-shutil" ,python-pytest-shutil) ("python-pytest-fixture-config" ,python-pytest-fixture-config))) + (inputs + `(("python-virtualenv" ,python-virtualenv))) (native-inputs `(("python-mock" ,python-mock) ("python-pytest" ,python-pytest) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d5fcc5668c..4541604873 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -2984,38 +2984,44 @@ Language (TOML) configuration files.") Server (PLS).") (license license:expat))) +;; XXX: We must use a non-release version since the latest release version +;; requires python-jedi version < 0.15. (define-public python-language-server - (package - (name "python-language-server") - (version "0.26.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "python-language-server" version)) - (sha256 - (base32 - "1vs9ckfmm534n1hq3m871916wsjvi5h4gyj6wlzg13ck6506lx0s")))) - (build-system python-build-system) - (propagated-inputs - `(("python-pluggy" ,python-pluggy) - ("python-jsonrpc-server" ,python-jsonrpc-server) - ("python-jedi" ,python-jedi) - ("python-yapf" ,python-yapf) - ("python-pyflakes" ,python-pyflakes) - ("python-pydocstyle" ,python-pydocstyle) - ("python-pycodestyle" ,python-pycodestyle) - ("python-mccabe" ,python-mccabe) - ("python-rope" ,python-rope) - ("python-autopep8" ,python-autopep8) - ("python-pylint" ,python-pylint))) - (home-page "https://github.com/palantir/python-language-server") - (synopsis "Python implementation of the Language Server Protocol") - (description - "The Python Language Server (pyls) is an implementation of the Python 3 + (let ((commit "c3cab77a85b1de4af1aec1bafea6a7320d6baec5") + (revision "1")) + (package + (name "python-language-server") + (version (git-version "0.28.3" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/palantir/python-language-server.git") + (commit commit))) + (sha256 + (base32 + "1q0xdwgln09sh58j0ryygj92hfgdhwcs57zjvqihya23jr5v0bz4")))) + (build-system python-build-system) + (propagated-inputs + `(("python-pluggy" ,python-pluggy) + ("python-jsonrpc-server" ,python-jsonrpc-server) + ("python-jedi" ,python-jedi) + ("python-yapf" ,python-yapf) + ("python-pyflakes" ,python-pyflakes) + ("python-pydocstyle" ,python-pydocstyle) + ("python-pycodestyle" ,python-pycodestyle) + ("python-mccabe" ,python-mccabe) + ("python-rope" ,python-rope) + ("python-autopep8" ,python-autopep8) + ("python-pylint" ,python-pylint))) + (home-page "https://github.com/palantir/python-language-server") + (synopsis "Python implementation of the Language Server Protocol") + (description + "The Python Language Server (pyls) is an implementation of the Python 3 language specification for the Language Server Protocol (LSP). This tool is used in text editing environments to provide a complete and integrated feature-set for programming Python effectively.") - (license license:expat))) + (license license:expat)))) (define-public python-black (package @@ -3800,14 +3806,14 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc. (define-public python-matplotlib (package (name "python-matplotlib") - (version "2.2.3") + (version "3.1.1") (source (origin (method url-fetch) (uri (pypi-uri "matplotlib" version)) (sha256 (base32 - "1rcc7x9ig3hpchkc4cwdvym3y451w74275fxr455zkfagrsvymbk")))) + "14qc109dibp32xfd9lah54djc0rc76fhbsj9cwyb328lzqmd5sqz")))) (build-system python-build-system) (propagated-inputs ; the following packages are all needed at run time `(("python-cycler" ,python-cycler) @@ -3824,7 +3830,7 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc. ;; From version 1.4.0 'matplotlib' makes use of 'cairocffi' instead of ;; 'pycairo'. However, 'pygobject' makes use of a 'pycairo' 'context' ;; object. For this reason we need to import both libraries. - ;; https://pythonhosted.org/cairocffi/cffi_api.html#converting-pycairo + ;; https://cairocffi.readthedocs.io/en/stable/cffi_api.html#converting-pycairo-wrappers-to-cairocffi ("python-pycairo" ,python-pycairo) ("python-cairocffi" ,python-cairocffi))) (inputs @@ -3839,11 +3845,59 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc. ("tk" ,tk))) (native-inputs `(("pkg-config" ,pkg-config) - ("python-nose" ,python-nose) - ("python-mock" ,python-mock))) + ("python-pytest" ,python-pytest) + ("python-mock" ,python-mock) + ("unzip" ,unzip) + ("jquery-ui" + ,(origin + (method url-fetch) + (uri "https://jqueryui.com/resources/download/jquery-ui-1.12.1.zip") + (sha256 + (base32 + "0kb21xf38diqgxcdi1z3s9ssq36pldvyqxy56hn6pcva6rs3c8zq")))))) (arguments `(#:phases (modify-phases %standard-phases + ;; XXX We disable all image comparison tests because we're using a + ;; newer version of FreeType than matplotlib expects. This leads to + ;; minor differences throughout the tests. + (add-after 'unpack 'fix-and-disable-failing-tests + (lambda _ + (substitute* (append (find-files "lib/matplotlib/tests/" + "test_.*\\.py$") + (find-files "lib/mpl_toolkits/tests" + "test_.*\\.py$")) + (("^from matplotlib" match) + (string-append "import pytest\n" match)) + (("( *)@image_comparison" match indent) + (string-append indent + "@pytest.mark.skip(reason=\"unknown minor image differences\")\n" + match))) + (substitute* "lib/matplotlib/tests/test_animation.py" + (("/bin/sh") (which "sh"))) + (for-each delete-file + ;; test_normal_axes, test_get_tightbbox_polar + '("lib/matplotlib/tests/test_axes.py" + ;; test_outward_ticks + "lib/matplotlib/tests/test_tightlayout.py" + ;; Fontconfig returns no fonts. + "lib/matplotlib/tests/test_font_manager.py")) + #t)) + (add-before 'install 'install-jquery-ui + (lambda* (#:key outputs inputs #:allow-other-keys) + (let ((dir (string-append (assoc-ref outputs "out") + "/lib/python3.7/site-packages/matplotlib/backends/web_backend/"))) + (mkdir-p dir) + (invoke "unzip" + (assoc-ref inputs "jquery-ui") + "-d" dir)) + #t)) + (delete 'check) + (add-after 'install 'check + (lambda* (#:key outputs inputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs) + (invoke "python" "tests.py" "-v" + "-m" "not network"))) (add-before 'build 'configure-environment (lambda* (#:key outputs inputs #:allow-other-keys) (let ((cairo (assoc-ref inputs "cairo"))) @@ -3855,8 +3909,8 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc. (lambda (port) (format port "[directories]~% basedirlist = ~a,~a~% - [rc_options]~% -backend = TkAgg~%" +[packages]~% +tests = True~%" (assoc-ref inputs "tcl") (assoc-ref inputs "tk"))))) #t))))) @@ -3875,6 +3929,14 @@ toolkits.") (let ((matplotlib (package-with-python2 (strip-python2-variant python-matplotlib)))) (package (inherit matplotlib) + (version "2.2.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "matplotlib" version)) + (sha256 + (base32 + "1rcc7x9ig3hpchkc4cwdvym3y451w74275fxr455zkfagrsvymbk")))) ;; Make sure to use special packages for Python 2 instead ;; of those automatically rewritten by package-with-python2. (propagated-inputs @@ -3898,6 +3960,7 @@ toolkits.") `(("python-matplotlib" ,python-matplotlib) ("python-colorspacious" ,python-colorspacious) ("python-sphinx" ,python-sphinx) + ("python-sphinx-copybutton" ,python-sphinx-copybutton) ("python-sphinx-gallery" ,python-sphinx-gallery) ("python-numpydoc" ,python-numpydoc) ("python-ipython" ,python-ipython) @@ -3924,6 +3987,9 @@ toolkits.") `(#:tests? #f ; we're only generating documentation #:phases (modify-phases %standard-phases + ;; The tests in python-matplotlib are run after the install phase, so + ;; we need to delete the extra phase here. + (delete 'check) (replace 'build (lambda _ (chdir "doc") @@ -3972,7 +4038,12 @@ toolkits.") (license (package-license python-matplotlib)))) (define-public python2-matplotlib-documentation - (package-with-python2 python-matplotlib-documentation)) + (let ((parent (package-with-python2 python-matplotlib-documentation))) + (package + (inherit parent) + (native-inputs + (alist-delete "python-sphinx-copybutton" + (package-native-inputs parent)))))) (define-public python-matplotlib-venn (package @@ -4033,14 +4104,14 @@ operators such as union, intersection, and difference.") (define-public python-scipy (package (name "python-scipy") - (version "1.2.2") + (version "1.3.1") (source (origin (method url-fetch) (uri (pypi-uri "scipy" version)) (sha256 (base32 - "1cgvgin8fvckv96hjh3ikmwkra5rif51bdb75ifzf7xbil5iwcx4")))) + "1df113c9i6vazsn6y3n9wc22jh737z1g7dmx3mypkdwpdnscyhr6")))) (build-system python-build-system) (propagated-inputs `(("python-numpy" ,python-numpy) @@ -4136,9 +4207,19 @@ routines such as routines for numerical integration and optimization.") (properties `((python2-variant . ,(delay python2-scipy)))) (license license:bsd-3))) +;; Version 1.2.2 is the last version to support Python 2 (define-public python2-scipy - (package-with-python2 - (strip-python2-variant python-scipy))) + (package + (inherit (package-with-python2 + (strip-python2-variant python-scipy))) + (version "1.2.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "scipy" version)) + (sha256 + (base32 + "1cgvgin8fvckv96hjh3ikmwkra5rif51bdb75ifzf7xbil5iwcx4")))))) (define-public python-socksipy-branch (package @@ -4956,7 +5037,8 @@ releases.") (outputs '("out" "doc")) (build-system python-build-system) (propagated-inputs - `(("python-appdirs" ,python-appdirs))) + `(("python-appdirs" ,python-appdirs) + ("python-importlib-metadata" ,python-importlib-metadata))) (native-inputs `(("python-setuptools-scm" ,python-setuptools-scm) ("python-sphinx" ,python-sphinx) @@ -5389,6 +5471,13 @@ computing.") (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'make-docs-reproducible + (lambda _ + (substitute* "IPython/sphinxext/ipython_directive.py" + ((".*import datetime") "") + ((".*datetime.datetime.now\\(\\)") "") + (("%timeit") "# %timeit")) + #t)) ;; Tests can only be run after the library has been installed and not ;; within the source directory. (delete 'check) @@ -7480,17 +7569,31 @@ serve the same purpose: provide Python bindings for libmagic."))) (package (name "python-debian") (home-page "https://salsa.debian.org/python-debian-team/python-debian") - (version "0.1.28") + (version "0.1.36") (source (origin - (method url-fetch) - (uri (pypi-uri name version)) + ;; Use git-fetch, as pypi doesn't include test suite. + (method git-fetch) + (uri (git-reference + (url home-page) + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0i15f0xzx679sd0ldq2sls9pnnps9fv6vhqvnv9dzf4qhma42i0y")))) + "0qy6x28bj6yfikhjww932v5xq4mf5bm1iczl7acy4c7zm6mwhqfa")))) (build-system python-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'remove-debian-specific-tests + ;; python-apt, apt and dpkg are not yet available in guix, + ;; and these tests heavily depend on them. + (lambda _ + (delete-file "lib/debian/tests/test_deb822.py") + (delete-file "lib/debian/tests/test_debfile.py") + #t))))) (propagated-inputs - `(("python-six" ,python-six))) + `(("python-six" ,python-six) + ("python-chardet" ,python-chardet))) (synopsis "Debian package related modules") (description ;; XXX: Use @enumerate instead of @itemize to work around @@ -10532,25 +10635,29 @@ characters, mouse support, and auto suggestions.") (define-public python-jedi (package (name "python-jedi") - (version "0.13.3") + (version "0.15.1") (source (origin (method url-fetch) (uri (pypi-uri "jedi" version)) (sha256 (base32 - "0nsrjlb57njqppxmi8wjsb1dkad7qa7svx67jbkhixq66lz61c1b")))) + "0bp4pxhsynaarbvzblsn5x32lzp29svy3sxfy8i6m5iwz9s9r1ds")))) (build-system python-build-system) (arguments - `( ;; Many tests are failing with Python 3.7.x as of version 0.13.3 (see: - ;; https://github.com/davidhalter/jedi/issues/1263) - #:tests? #f - #:phases + `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'disable-file-completion-test + ;; A single parameterized test currently fail (see: + ;; https://github.com/davidhalter/jedi/issues/1395). Remove it. + (lambda _ + (substitute* "test/test_api/test_completion.py" + ((".*'example.py', 'rb\"' \\+ join\\('\\.\\.'.*") "")) + #t)) (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "py.test" "-vv"))))))) + (lambda _ + (setenv "HOME" "/tmp") + (invoke "python" "-m" "pytest")))))) (native-inputs `(("python-pytest" ,python-pytest) ("python-docopt" ,python-docopt))) @@ -10568,11 +10675,7 @@ well.") (license license:expat))) (define-public python2-jedi - (let ((base (package-with-python2 (strip-python2-variant python-jedi)))) - (package - (inherit base) - (arguments (substitute-keyword-arguments (package-arguments base) - ((#:tests? _) #t)))))) + (package-with-python2 python-jedi)) (define-public ptpython (package @@ -14720,17 +14823,21 @@ time-based (TOTP) passwords.") (define-public python-parso (package (name "python-parso") - (version "0.3.1") + (version "0.5.1") (source (origin (method url-fetch) (uri (pypi-uri "parso" version)) (sha256 (base32 - "18p89iwcm8mnf380f92g9w0bhx5km8wxp392vvjcq4y1ld1llw1m")))) + "171a9ivhxwsd52h1cgsz40zgzpgzscn7yqb7sdjhy8m1lzj0wsv6")))) (native-inputs `(("python-pytest" ,python-pytest))) (build-system python-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ (invoke "pytest" "-vv")))))) (home-page "https://github.com/davidhalter/parso") (synopsis "Python Parser") (description "Parso is a Python parser that supports error recovery and diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index aa92e82ac2..e8c0f63fe7 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -464,7 +464,7 @@ instead of @command{python3}."))) (define-public micropython (package (name "micropython") - (version "1.10") + (version "1.11") (source (origin (method url-fetch) @@ -473,7 +473,7 @@ instead of @command{python3}."))) "/micropython-" version ".tar.gz")) (sha256 (base32 - "1g1zjip3rkx6bp16qi1bag72wivnbh56fcsl3nffanrx4j5f4z90")) + "0px3xhw16rl0l7qifq7jw1gq92wzlnhd17dmszv9m2c3wbzs9p9f")) (modules '((guix build utils))) (snippet '(begin @@ -487,7 +487,7 @@ instead of @command{python3}."))) (arguments `(#:phases (modify-phases %standard-phases - (add-before 'build 'preprare-build + (add-before 'build 'prepare-build (lambda _ (chdir "ports/unix") ;; see: https://github.com/micropython/micropython/pull/4246 diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 52eb46cce0..165b8fd7b4 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -2212,6 +2212,12 @@ time Web content can be enhanced with native controls.") ;; Building QtWebKit takes around 13 hours on an AArch64 machine. Give some ;; room for slower or busy hardware. (properties '((timeout . 64800))) ;18 hours + + ;; XXX: This consumes too much RAM to successfully build on AArch64 (e.g., + ;; SoftIron OverDrive with 8 GiB of RAM), so instead of wasting resources, + ;; disable it on non-Intel platforms. + (supported-systems '("x86_64-linux" "i686-linux")) + (license license:lgpl2.1+))) (define-public dotherside diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index ef9792bc0f..a886a1cdd2 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2019 Mikhail Kirillov <w96k.ru@gmail.com> ;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org> ;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com> +;;; Copyright © 2019 Collin J. Doering <collin@rekahsoft.ca> ;;; ;;; This file is part of GNU Guix. ;;; @@ -670,6 +671,35 @@ RSpec tests.") (home-page "https://github.com/dblock/rspec-rerun") (license license:expat))) +(define-public ruby-rspec-wait + (package + (name "ruby-rspec-wait") + (version "0.0.9") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "rspec-wait" version)) + (sha256 + (base32 + "0gvj1bp5ccx001dyvcgk2j49s5sl6vs9fdaqqb08z3bd1554hsww")))) + (build-system ruby-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "rake" "spec")))))) + (native-inputs + `(("bundler" ,bundler))) + (propagated-inputs + `(("ruby-rspec" ,ruby-rspec))) + (home-page "https://github.com/laserlemon/rspec-wait") + (synopsis "Wait for conditions in RSpec") + (description + "RSpec::Wait strives to make it easier to test asynchronous or slow +interactions.") + (license license:expat))) + (define-public ruby-rspec (package (name "ruby-rspec") diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm index f7542ea759..6630332692 100644 --- a/gnu/packages/shellutils.scm +++ b/gnu/packages/shellutils.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net> +;;; Copyright © 2019 Collin J. Doering <collin@rekahsoft.ca> ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,21 +23,107 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages shellutils) - #:use-module (gnu packages base) - #:use-module (gnu packages golang) - #:use-module (gnu packages python) #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix utils) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix build-system gnu) + #:use-module (guix build-system go) + #:use-module (guix build-system python) #:use-module (gnu packages autotools) + #:use-module (gnu packages base) + #:use-module (gnu packages golang) #:use-module (gnu packages ncurses) - #:use-module (gnu packages readline) #:use-module (gnu packages pkg-config) - #:use-module (guix utils) - #:use-module (guix build-system gnu) - #:use-module (guix build-system go) - #:use-module (guix build-system python)) + #:use-module (gnu packages python) + #:use-module (gnu packages readline) + #:use-module (gnu packages ruby) + #:use-module (gnu packages shells) + #:use-module (gnu packages tmux)) + +(define-public zsh-autosuggestions + (package + (name "zsh-autosuggestions") + (version "0.6.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/zsh-users/zsh-autosuggestions.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1h8h2mz9wpjpymgl2p7pc146c1jgb3dggpvzwm9ln3in336wl95c")))) + (build-system gnu-build-system) + (native-inputs + `(("ruby" ,ruby) + ("ruby-byebug" ,ruby-byebug) + ("ruby-pry" ,ruby-pry) + ("ruby-rspec" ,ruby-rspec) + ("ruby-rspec-wait" ,ruby-rspec-wait) + ("tmux" ,tmux) + ("zsh" ,zsh))) + (arguments + '(#:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'check ; Tests use ruby's bundler; instead execute rspec directly. + (lambda _ + (setenv "TMUX_TMPDIR" (getenv "TMPDIR")) + (setenv "SHELL" (which "zsh")) + (invoke "rspec"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (zsh-plugins + (string-append out "/share/zsh/plugins/zsh-autosuggestions"))) + (invoke "make" "all") + (install-file "zsh-autosuggestions.zsh" zsh-plugins) + #t)))))) + (home-page "https://github.com/zsh-users/zsh-autosuggestions") + (synopsis "Fish-like autosuggestions for zsh") + (description + "Fish-like fast/unobtrusive autosuggestions for zsh. It suggests commands +as you type.") + (license license:expat))) + +(define-public sh-z + (package + (name "sh-z") + (version "1.11") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rupa/z.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "13zbgkj6y0qhvn5jpkrqbd4jjxjr789k228iwma5hjfh1nx7ghyb")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; No tests provided + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (man (string-append out "/share/man/man1")) + (bin (string-append out "/bin"))) + (install-file "z.sh" bin) + (chmod (string-append bin "/z.sh") #o755) + (install-file "z.1" man) + #t)))))) + (synopsis "Jump about directories") + (description + "Tracks your most used directories, based on ``frecency''. After a short +learning phase, z will take you to the most ``frecent'' directory that matches +all of the regexes given on the command line in order.") + (home-page "https://github.com/rupa/z") + (license license:expat))) (define-public envstore (package diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm index dbdbe7ea49..21d6027004 100644 --- a/gnu/packages/speech.scm +++ b/gnu/packages/speech.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net> +;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,12 +31,15 @@ #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages compression) + #:use-module (gnu packages emacs) #:use-module (gnu packages gcc) #:use-module (gnu packages glib) #:use-module (gnu packages linux) + #:use-module (gnu packages ncurses) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) + #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils)) (define-public espeak @@ -220,3 +224,236 @@ to improve their productivity with speech engines, like eSpeak. Sonic can also be used by the sighted.") (home-page "https://github.com/waywardgeek/sonic") (license license:asl2.0))) + +(define-public festival + (package + (name "festival") + (version "2.5.0") + (source (origin + (method url-fetch) + (uri (string-append "http://festvox.org/packed/festival/" + (version-major+minor version) + "/festival-" version "-release.tar.gz")) + (sha256 + (base32 + "1d5415nckiv19adxisxfm1l1xxfyw88g87ckkmcr0lhjdd10g42c")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there is no test target + #:make-flags + (list (string-append "RM=" + (assoc-ref %build-inputs "coreutils") + "/bin/rm") + (string-append "ECHO_N=" + (assoc-ref %build-inputs "coreutils") + "/bin/printf \"%s\"")) + #:parallel-build? #f ; not supported + #:modules ((guix build gnu-build-system) + (guix build utils) + (guix build emacs-utils)) + #:imported-modules (,@%gnu-build-system-modules + (guix build emacs-utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'unpack-and-patch-speech-tools + (lambda* (#:key inputs #:allow-other-keys) + (invoke "tar" "-C" ".." + "-xf" (assoc-ref inputs "speech-tools")) + (with-directory-excursion "../speech_tools" + (substitute* '("config/rules/modules.mak" + "config/rules/test_make_rules.mak" + "config/make_system.mak") + (("/bin/sh") (which "sh")))) + #t)) + (add-after 'unpack 'patch-/bin/sh + (lambda _ + (substitute* '("config/test_make_rules" + "config/make_system.mak") + (("/bin/sh") (which "sh"))) + #t)) + (add-before 'build 'build-speech-tools + (lambda* (#:key configure-flags make-flags #:allow-other-keys) + (with-directory-excursion "../speech_tools" + (apply invoke "sh" "configure" + (string-append "CONFIG_SHELL=" (which "sh")) + (string-append "SHELL=" (which "sh")) + configure-flags) + (apply invoke "make" make-flags)))) + (add-after 'build 'build-documentation + (lambda _ + (with-directory-excursion "doc" + (invoke "make" "festival.info")))) + (add-after 'unpack 'set-installation-directories + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "config/project.mak" + (("^FTLIBDIR.*") + (string-append "FTLIBDIR=" out "/share/festival/lib"))) + (substitute* "config/systems/default.mak" + (("^INSTALL_PREFIX.*") + (string-append "INSTALL_PREFIX=" out))) + #t))) + (add-after 'install 'actually-install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; Install Speech Tools first + (with-directory-excursion "../speech_tools" + ;; Target directories + (for-each (lambda (dir) + (mkdir-p (string-append out dir))) + '("/bin" + "/lib" + "/include/speech_tools/" + "/include/speech_tools/instantiate" + "/include/speech_tools/ling_class" + "/include/speech_tools/rxp" + "/include/speech_tools/sigpr" + "/include/speech_tools/unix")) + ;; Install binaries + (for-each (lambda (file) + (install-file file (string-append out "/bin"))) + (find-files "bin" ".*")) + (for-each (lambda (file) + (delete-file (string-append out "/bin/" file))) + '("est_gdb" "est_examples" "est_program")) + ;; Install libraries + (for-each (lambda (file) + (install-file file (string-append out "/lib"))) + (find-files "lib" "lib.*\\.so.*")) + + ;; Install headers + (for-each + (lambda (dir) + (for-each + (lambda (header) + (install-file header + (string-append out "/include/speech_tools/" dir))) + (find-files (string-append "include/" dir) + "\\.h$"))) + '("." "instantiate" "ling_class" "rxp" "sigpr" "unix"))) + + ;; Unpack files that will be installed together with the + ;; Festival libraries. + (invoke "tar" "--strip-components=1" + "-xvf" (assoc-ref inputs "festvox-cmu")) + (invoke "tar" "--strip-components=1" + "-xvf" (assoc-ref inputs "festvox-poslex")) + (invoke "tar" "--strip-components=1" + "-xvf" (assoc-ref inputs "default-voice")) + + ;; Install Festival + (let ((bin (string-append out "/bin")) + (incdir (string-append out "/include/festival")) + (share (string-append out "/share/festival")) + (info (string-append out "/share/info"))) + (for-each (lambda (executable) + (install-file executable bin)) + '("src/main/festival" + "src/main/festival_client" + "examples/benchmark")) + (let ((scripts '("examples/dumpfeats" + "examples/durmeanstd" + "examples/latest" + "examples/make_utts" + "examples/powmeanstd" + "examples/run-festival-script" + "examples/saytime" + "examples/scfg_parse_text" + "examples/text2pos" + "examples/text2wave"))) + (substitute* scripts + (("exec /tmp/guix-build.*/bin/festival") + (string-append "exec " bin "/festival"))) + (for-each (lambda (script) + (install-file script bin)) + scripts)) + + ;; Documentation + (for-each (lambda (file) + (install-file file info)) + (find-files "doc/info/" "festival.info.*")) + + ;; Headers + (mkdir-p incdir) + (for-each (lambda (header) + (install-file header + (string-append incdir "/" + (dirname header)))) + (find-files "src/include" "\\.h$")) + + ;; Data + (mkdir-p share) + (for-each (lambda (file) + (install-file file + (string-append share "/" + (dirname file)))) + (find-files "lib" ".*")) + (for-each delete-file + (append (find-files share "Makefile") + (find-files bin "Makefile"))))) + #t)) + (add-after 'actually-install 'install-emacs-mode + (lambda* (#:key outputs #:allow-other-keys) + (let ((emacs-dir (string-append (assoc-ref outputs "out") + "/share/emacs/site-lisp"))) + (install-file "lib/festival.el" emacs-dir) + (emacs-generate-autoloads ,name emacs-dir) + #t))) + ;; Rebuild the very old configure script that is confused by extra + ;; arguments. + (add-before 'configure 'bootstrap + (lambda _ (invoke "autoreconf" "-vif")))))) + (inputs + `(("ncurses" ,ncurses))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("texinfo" ,texinfo) + ("emacs" ,emacs-minimal) + ("festvox-cmu" + ,(origin + (method url-fetch) + (uri (string-append "http://festvox.org/packed/festival/" + (version-major+minor version) + "/festlex_CMU.tar.gz")) + (sha256 + (base32 + "01vwidqhhg2zifvk1gby91mckg1z2pv2mj6lihvdaifakf8k1561")))) + ("festvox-poslex" + ,(origin + (method url-fetch) + (uri (string-append "http://festvox.org/packed/festival/" + (version-major+minor version) + "/festlex_POSLEX.tar.gz")) + (sha256 + (base32 + "18wywilxaqwy63lc47p5g5529mpxhslibh1bjij0snxx5mjf7ip7")))) + ("default-voice" + ,(origin + (method url-fetch) + (uri (string-append "http://festvox.org/packed/festival/" + (version-major+minor version) + "/voices/festvox_kallpc16k.tar.gz")) + (sha256 + (base32 + "136hmsyiwnlg2qwa508dy0imf19mzrb5r3dmb2kg8kcyxnslm740")))) + ("speech-tools" + ,(origin + (method url-fetch) + (uri (string-append "http://festvox.org/packed/festival/" + (version-major+minor version) + "/speech_tools-" version "-release.tar.gz")) + (sha256 + (base32 + "1k2xh13miyv48gh06rgsq2vj25xwj7z6vwq9ilsn8i7ig3nrgzg4")))))) + (home-page "http://www.cstr.ed.ac.uk/projects/festival/") + (synopsis "Speech synthesis system") + (description "Festival offers a general framework for building speech +synthesis systems as well as including examples of various modules. As a +whole it offers full text to speech through a number APIs: from shell level, +though a Scheme command interpreter, as a C++ library, from Java, and an Emacs +interface. Festival is multi-lingual though English is the most advanced. +The system is written in C++ and uses the Edinburgh Speech Tools Library for +low level architecture and has a Scheme (SIOD) based command interpreter for +control.") + (license (license:non-copyleft "file://COPYING")))) diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm index 5ec769388a..9bd1e8d421 100644 --- a/gnu/packages/sphinx.scm +++ b/gnu/packages/sphinx.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 David Thompson <davet@gnu.org> -;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2017, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com> @@ -163,6 +163,25 @@ sources.") Apple help books.") (license license:bsd-2))) +(define-public python-sphinx-copybutton + (package + (name "python-sphinx-copybutton") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sphinx-copybutton" version)) + (sha256 + (base32 + "1bk006nv5s9ym6v67cxd4d2wvd8wm6czqi21mqcs33risygksncl")))) + (build-system python-build-system) + (home-page "https://github.com/choldgraf/sphinx-copybutton") + (synopsis "Sphinx extension to add \"copy\" buttons to code blocks") + (description + "This package provides a small sphinx extension to add \"copy\" buttons +to code blocks.") + (license license:expat))) + (define-public python-sphinxcontrib-devhelp (package (name "python-sphinxcontrib-devhelp") diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 143df3e63e..2ffe0a10d6 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -49,6 +49,7 @@ #:use-module (gnu packages curl) #:use-module (gnu packages emacs) #:use-module (gnu packages emacs-xyz) + #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) #:use-module (gnu packages gtk) #:use-module (gnu packages gettext) @@ -1199,23 +1200,24 @@ agnes cluster diagrams.") (define-public r-gdtools (package (name "r-gdtools") - (version "0.1.9") + (version "0.2.0") (source (origin (method url-fetch) (uri (cran-uri "gdtools" version)) (sha256 (base32 - "0w4fihf52q5qxxk0lg36x6yvjjl8vw66y60ncdjs5fvnxqn5z2vb")))) + "1mvpkp8cj30fwd4bwlz96x3cff7yzfbfz7iswmf77zl0a6122inh")))) (build-system r-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("cairo" ,cairo) + ("freetype2" ,freetype) ("zlib" ,zlib))) (propagated-inputs `(("r-rcpp" ,r-rcpp) - ("r-withr" ,r-withr))) + ("r-systemfonts" ,r-systemfonts))) (home-page "https://cran.r-project.org/web/packages/gdtools") (synopsis "Utilities for graphical rendering") (description @@ -2436,18 +2438,24 @@ informative error messages when it's not available.") (define-public r-devtools (package (name "r-devtools") - (version "2.1.0") + (version "2.2.0") (source (origin (method url-fetch) (uri (cran-uri "devtools" version)) (sha256 (base32 - "0393v7nr22gr5g9afgrhq4ab3lwbqy6fd3shnmlhdpqam5357xy1")))) + "05fag25mkqy13yja8x32aqr9c0ah9rbm8cfjcsmy1dv5h4j8cxa1")))) (build-system r-build-system) (propagated-inputs `(("r-callr" ,r-callr) ("r-cli" ,r-cli) + ("r-covr" ,r-covr) + ("r-crayon" ,r-crayon) + ("r-desc" ,r-desc) ("r-digest" ,r-digest) + ("r-dt" ,r-dt) + ("r-ellipsis" ,r-ellipsis) + ("r-glue" ,r-glue) ("r-git2r" ,r-git2r) ("r-httr" ,r-httr) ("r-jsonlite" ,r-jsonlite) @@ -2458,6 +2466,7 @@ informative error messages when it's not available.") ("r-roxygen2" ,r-roxygen2) ("r-remotes" ,r-remotes) ("r-rstudioapi" ,r-rstudioapi) + ("r-rversions" ,r-rversions) ("r-sessioninfo" ,r-sessioninfo) ("r-testthat" ,r-testthat) ("r-usethis" ,r-usethis) @@ -2598,13 +2607,13 @@ well as additional utilities such as panel and axis annotation functions.") (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.9.600.4.0") + (version "0.9.700.2.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "07jg2667xyhmp1fbcdi5nnhmkk81da76s9rlswfq4k2sjsmbfmr0")))) + "0g25w32dnqrvhnri8x4yxqawxd8qhn7w3m8d29nxxy0gybx3y8x9")))) (properties `((upstream-name . "RcppArmadillo"))) (build-system r-build-system) ;; All needed for vignettes @@ -3645,13 +3654,13 @@ t-probabilities, quantiles, random deviates and densities.") (define-public r-matrixstats (package (name "r-matrixstats") - (version "0.54.0") + (version "0.55.0") (source (origin (method url-fetch) (uri (cran-uri "matrixStats" version)) (sha256 (base32 - "0vx00ldsg2zvdrjn49jxczk2c9iaabgvzgpdka5j02ihh7hv83cg")))) + "06fvx0rlaz80k0lkqq2n7v0309xpz7h7ss0m9kgyikp4xs8bvmhn")))) (properties `((upstream-name . "matrixStats"))) (build-system r-build-system) (native-inputs @@ -3748,25 +3757,28 @@ selection.") (define-public r-tidyr (package (name "r-tidyr") - (version "0.8.3") + (version "1.0.0") (source (origin (method url-fetch) (uri (cran-uri "tidyr" version)) (sha256 (base32 - "0dyc4b03wi65bk7j0ma0y188syh37h57wgxji82i0h8j6pn593x1")))) + "1403j0xd93l0r7qj738ryd5zc79hbcghrzybib3c3hrnaq5s78cj")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) + ("r-ellipsis" ,r-ellipsis) ("r-magrittr" ,r-magrittr) ("r-glue" ,r-glue) + ("r-lifecycle" ,r-lifecycle) ("r-purrr" ,r-purrr) ("r-rlang" ,r-rlang) ("r-tidyselect" ,r-tidyselect) ("r-rcpp" ,r-rcpp) ("r-stringi" ,r-stringi) - ("r-tibble" ,r-tibble))) + ("r-tibble" ,r-tibble) + ("r-vctrs" ,r-vctrs))) (home-page "https://github.com/hadley/tidyr") (synopsis "Tidy data with `spread()` and `gather()` functions") (description diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index 427bc44598..f0055cc0cc 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm @@ -724,3 +724,31 @@ as -1, to be used instead of U+FFFD. It is a front end for ii-like chat programs. It uses @code{tail -f} to get the chat output in the background.") (license license:isc)))) + +(define-public scron + (package + (name "scron") + (version "0.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://dl.2f30.org/releases/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "066fwa55kqcgfrsqgxh94sqbkxfsr691360xg4ljxr4i75d25s2a")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; No tests + #:make-flags (list "CC=gcc" + (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure)))) ; No configure script + (home-page "https://git.2f30.org/scron/") + (synopsis "Simple cron daemon") + (description + "Schedule commands to be run at specified dates and times. +Single daemon and configuration file. Log to stdout or syslog. No mail +support.") + (license license:expat))) diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm index e281f43554..0c840a1a1d 100644 --- a/gnu/packages/sync.scm +++ b/gnu/packages/sync.scm @@ -264,14 +264,14 @@ over the Internet in an HTTP and CDN friendly way; (define-public rclone (package (name "rclone") - (version "1.49.1") + (version "1.49.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/rclone/rclone/releases/download/" "v" version "/rclone-v" version ".tar.gz")) (sha256 - (base32 "1d0qvj7fn5bx3zqlf6hzn1922nrmy4x341n760m1b6h9az32mc5x")))) + (base32 "1q8lf85hg2havb1xsal75r19ck166rh19lffpd3i43zgblc6gs8j")))) ;; FIXME: Rclone bundles some libraries Guix already provides. Need to ;; un-bundle them. (build-system go-build-system) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index f0117eead3..98ed77289a 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2016, 2017 José Miguel Sánchez García <jmi2k@openmailbox.org> ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net> -;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2018 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> @@ -460,7 +460,7 @@ should be thread-safe.") (define-public libvterm (package (name "libvterm") - (version "0+bzr681") + (version "0.1") (source (origin (method url-fetch) @@ -468,12 +468,13 @@ should be thread-safe.") "libvterm-" version ".tar.gz")) (sha256 (base32 - "1s56c8p1qz6frkcri0hg4qyydv2wcccj6n2xmz1dwcdqn38ldsmb")))) + "1pcxjhvdwhr2f3lyzf2rv1vp3l62bgkjm1ybhj82qf8yly7ca6g4")))) (build-system gnu-build-system) (arguments `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:tests? #f ; XXX: some tests fail in this release #:test-target "test" #:phases (modify-phases %standard-phases diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index e6b2fd0b6a..913ff5157d 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -6836,17 +6836,14 @@ titles.") "/fonts/afm/public/xypic/" "/fonts/tfm/public/xypic/" "/fonts/type1/public/xypic/" - - ;;"/tex/generic/xypic/" ; I guess these are generated - ) + "/tex/generic/xypic/") (base32 - "0sqkkvjzzsiazvh8803qqyrcv4is3m1qs9x9v2m35jjikbqc08y8")))) + "09b51bbm189xh7039h5n8nmab5nn2bybhh26qjn08763m80zdhjg") + #:trivial? #t))) (package (inherit template) (arguments (substitute-keyword-arguments (package-arguments template) - ((#:tex-directory _ #t) - "tex/generic/xypic") ((#:phases phases) `(modify-phases ,phases (delete 'reset-gzip-timestamps))))) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 388f164428..9ce01e66ea 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -13,7 +13,7 @@ ;;; Copyright © 2017,2019 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> -;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com> ;;; Copyright © 2019 Yoshinori Arai <kumagusu08@gmail.com> @@ -89,23 +89,22 @@ to DOS format and vice versa.") (define-public recode (package (name "recode") - (version "3.7.1") + (version "3.7.5") (source (origin (method url-fetch) (uri (string-append "https://github.com/rrthomas/recode/releases/" - "download/v" version "/" name "-" version ".tar.gz")) + "download/v" version "/recode-" version ".tar.gz")) (sha256 - (base32 - "0215hfj0rhlh0grg91qfx75pp6z09bpv8211qdxqihniw7y9a4fs")) + (base32 "1sl99dfx2b76paq86wv3a0lcy66f1hylf6iy04rzwxj7ccwpsk30")) (modules '((guix build utils))) (snippet '(begin (delete-file "tests/Recode.c") #t)))) (build-system gnu-build-system) (native-inputs - `(("python" ,python-2) - ("python2-cython" ,python2-cython))) + `(("python" ,python) + ("python-cython" ,python-cython))) (home-page "https://github.com/rrthomas/recode") (synopsis "Text encoding converter") (description "The Recode library converts files between character sets and @@ -879,6 +878,44 @@ indentation. (home-page "http://docx2txt.sourceforge.net") (license license:gpl3+))) +(define-public odt2txt + (package + (name "odt2txt") + (version "0.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dstosberg/odt2txt/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0im3kzvhxkjlx57w6h13mc9584c74ma1dyymgvpq2y61av3gc35v")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no make check + #:make-flags (list "CC=gcc" + (string-append "DESTDIR=" (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + ;; no configure script + (delete 'configure)))) + (inputs + `(("zlib" ,zlib))) + (home-page "https://github.com/dstosberg/odt2txt/") + (synopsis "Converter from OpenDocument Text to plain text") + (description "odt2txt is a command-line tool which extracts the text out +of OpenDocument Texts, as produced by OpenOffice.org, KOffice, StarOffice and +others. + +odt2txt can also extract text from some file formats similar to OpenDocument +Text, such as OpenOffice.org XML (*.sxw), which was used by OpenOffice.org +version 1.x and older StarOffice versions. To a lesser extent, odt2txt may be +useful to extract content from OpenDocument spreadsheets (*.ods) and +OpenDocument presentations (*.odp).") + (license license:gpl2))) + (define-public opencc (package (name "opencc") diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 833a3715af..45ec4f796b 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -412,7 +412,7 @@ required structures.") (package (inherit openssl) (name "openssl") - (version "1.1.1c") + (version "1.1.1d") (source (origin (method url-fetch) (uri (list (string-append "https://www.openssl.org/source/openssl-" @@ -425,7 +425,7 @@ required structures.") (patches (search-patches "openssl-1.1-c-rehash-in.patch")) (sha256 (base32 - "142c7zdlz06hjrrvinb9f276czc78bnkyhd9xma621qmmmwk1yzn")))) + "1whinyw402z3b9xlb3qaxv4b9sk4w1bgh9k0y8df1z4x3yy92fhy")))) (outputs '("out" "doc" ; 6.8 MiB of man3 pages and full HTML documentation "static")) ; 6.4 MiB of .a files diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index d5dfb1383e..422dbab57e 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1492,15 +1492,15 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2019.08.13") + (version "2019.09.12") (source (origin (method url-fetch) - (uri (string-append "https://github.com/rg3/youtube-dl/releases/" - "download/" version "/youtube-dl-" + (uri (string-append "https://github.com/ytdl-org/youtube-dl/" + "releases/download/" version "/youtube-dl-" version ".tar.gz")) (sha256 (base32 - "0b94hrhbqa7jhn91pxsbphg2ylwkpkknb2y4v4sczp7rjvgmjgdj")))) + "0wmc0rl4l08hnz3agh69ld1pcmjs7czg0d2k7mnnlxhwlwi38w56")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 8ebdbb9a35..b1f47bd010 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -735,7 +735,7 @@ are detected, the user is notified."))) (define-public neovim (package (name "neovim") - (version "0.3.7") + (version "0.4.2") (source (origin (method git-fetch) @@ -745,7 +745,7 @@ are detected, the user is notified."))) (file-name (git-file-name name version)) (sha256 (base32 - "1j6w5jvq5v7kf7diad91qs1acr427nidnk9s24yyrz0hwdd1c2lh")))) + "13w446plvgl219lhj29jyimhiqvs1y1byrz4qpdmxgyddmx9xqss")))) (build-system cmake-build-system) (arguments `(#:modules ((srfi srfi-26) @@ -754,13 +754,6 @@ are detected, the user is notified."))) #:configure-flags '("-DPREFER_LUA:BOOL=YES") #:phases (modify-phases %standard-phases - ;; TODO: remove 'patch-tic on update - ;; see: https://github.com/neovim/neovim/issues/9687 - (add-after 'unpack 'patch-tic - (lambda _ - (substitute* "src/nvim/tui/tui.c" - (("value != NULL") "value != NULL && value != (char *)-1")) - #t)) (add-after 'unpack 'set-lua-paths (lambda* (#:key inputs #:allow-other-keys) (let* ((lua-version "5.1") @@ -774,6 +767,7 @@ are detected, the user is notified."))) (string-append path "/?.lua;" path "/?/?.lua")))) (lua-inputs (map (cute assoc-ref %build-inputs <>) '("lua" + "lua-luv" "lua-lpeg" "lua-bitop" "lua-libmpack")))) @@ -791,6 +785,7 @@ are detected, the user is notified."))) ("jemalloc" ,jemalloc) ("libiconv" ,libiconv) ("lua" ,lua-5.1) + ("lua-luv" ,lua5.1-luv) ("lua-lpeg" ,lua5.1-lpeg) ("lua-bitop" ,lua5.1-bitop) ("lua-libmpack" ,lua5.1-libmpack))) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 26477714e4..f46c31df1f 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -401,7 +401,10 @@ manage system or application containers.") (build-system gnu-build-system) (arguments `(#:configure-flags - (list "--with-polkit" + (list "--with-qemu" + "--with-qemu-user=nobody" + "--with-qemu-group=kvm" + "--with-polkit" (string-append "--docdir=" (assoc-ref %outputs "out") "/share/doc/" ,name "-" ,version) "--sysconfdir=/etc" @@ -431,23 +434,13 @@ manage system or application containers.") (apply invoke "make" "install" "sysconfdir=/tmp/etc" "localstatedir=/tmp/var" - make-flags))) - (add-after 'install 'wrap-libvirtd - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (wrap-program (string-append out "/sbin/libvirtd") - `("PATH" = (,(string-append (assoc-ref inputs "iproute") - "/sbin") - ,(string-append (assoc-ref inputs "qemu") - "/bin")))) - #t)))))) + make-flags)))))) (inputs `(("libxml2" ,libxml2) ("eudev" ,eudev) ("libpciaccess" ,libpciaccess) ("gnutls" ,gnutls) ("dbus" ,dbus) - ("qemu" ,qemu) ("libpcap" ,libpcap) ("libnl" ,libnl) ("libuuid" ,util-linux) diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index 3c6db64ad7..bc875b1c99 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -239,13 +239,13 @@ the user specifically asks to proxy, so the @dfn{VPN} interface no longer (define-public openconnect (package (name "openconnect") - (version "8.04") + (version "8.05") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.infradead.org/pub/openconnect/" "openconnect-" version ".tar.gz")) (sha256 - (base32 "07zqcl2ykdc4mgix9sbv4jgpg7cybifxfgrycvf99ckq7xp9r5wq")))) + (base32 "14i9q727c2zc9xhzp1a9hz3gzb5lwgsslbhircm84dnbs192jp1k")))) (build-system gnu-build-system) (propagated-inputs `(("libxml2" ,libxml2) @@ -452,14 +452,14 @@ The peer-to-peer VPN implements a Layer 2 (Ethernet) network between the peers (define-public wireguard (package (name "wireguard") - (version "0.0.20190702") + (version "0.0.20190913") (source (origin (method url-fetch) (uri (string-append "https://git.zx2c4.com/WireGuard/snapshot/" "WireGuard-" version ".tar.xz")) (sha256 (base32 - "1b5s1ncwqxdgb0c6cd07x4ynnj6cpbiqp4bxqir7mm5bf6y124qs")))) + "06452jfibwar4sh7wf2k2k1a5qk5q703gxqqq5ymj6rdblc2fwwr")))) (build-system gnu-build-system) (outputs '("out" ; The WireGuard userspace tools "kernel-patch")) ; A patch to build Linux with WireGuard support diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 0b3d476fa2..511831b9bd 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com> -;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. @@ -53,7 +53,7 @@ (sha256 (base32 "0m56smanfcczjfif4yfcqhjj4d4sc088kwg6dgia8fwdsjavdm4d")) - (file-name (string-append name "-" version "-checkout")))) + (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments `(#:tests? #f ;; No tests diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 3368772ec6..22ecf3cfec 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -93,14 +93,14 @@ older or slower computers and embedded systems.") (define-public links (package (name "links") - (version "2.19") + (version "2.20.1") (source (origin (method url-fetch) (uri (string-append "http://links.twibright.com/download/" "links-" version ".tar.bz2")) (sha256 (base32 - "02ls11c02p7xvsdjyb43rrzr850i1yly003r812z0w5vv5yqqxbh")))) + "0184g59cxxhg9dqg5gv66f30f1wg8sx957pp5rs7b8icnwnafa5v")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index bea9f3dcc7..39475bd6a8 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -6386,7 +6386,7 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.") (method url-fetch) (uri (string-append "https://github.com/nghttp2/nghttp2/" "releases/download/v" version "/" - name "-" version ".tar.xz")) + "nghttp2-" version ".tar.xz")) (sha256 (base32 "0fi6qg2w82636wixwkqy7bclpgxslmvg82r431hs8h6aqc4mnzwv")))) @@ -6603,7 +6603,7 @@ Anonip can also be uses as a Python module in your own Python application.") (define-public poussetaches (package (name "poussetaches") - (version "0.0.1") + (version "0.0.2") (source (origin (method git-fetch) @@ -6613,7 +6613,7 @@ Anonip can also be uses as a Python module in your own Python application.") (file-name (git-file-name name version)) (sha256 (base32 - "07106kfcz3a39jvrv3mlqqxlihsmdhgkrjnqznyjsij9absgvdv6")))) + "0kckcwvqklavd855np9aq5js6mg84isrlwchr504yigwma0sm7hm")))) (build-system go-build-system) (propagated-inputs `(("go-github-com-robfig-cron" ,go-github-com-robfig-cron) diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm index 76ceed5ff7..1501ea2746 100644 --- a/gnu/packages/wget.scm +++ b/gnu/packages/wget.scm @@ -21,15 +21,13 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages wget) - #:use-module (guix licenses) + #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) - #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages documentation) - #:use-module (gnu packages flex) - #:use-module (gnu packages gettext) #:use-module (gnu packages gnunet) + #:use-module (gnu packages gnupg) #:use-module (gnu packages libidn) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) @@ -40,7 +38,6 @@ #:use-module (gnu packages xdisorg) #:use-module (guix packages) #:use-module (guix download) - #:use-module (guix git-download) #:use-module (guix build-system gnu)) (define-public wget @@ -74,7 +71,7 @@ HTTPS and FTP protocols. It can resume interrupted downloads, use file name wild cards, supports proxies and cookies, and it can convert absolute links in downloaded documents to relative links.") - (license gpl3+))) ; some files are under GPLv2+ + (license license:gpl3+))) ; some files are under GPLv2+ (define-public wgetpaste (package @@ -136,68 +133,47 @@ in downloaded documents to relative links.") (description "@code{wgetpaste} is an extremely simple command-line interface to various online pastebin services.") - (license public-domain))) + (license license:public-domain))) (define-public wget2 (package (name "wget2") - (version "1.99.1") + (version "1.99.2") (source (origin - (method git-fetch) - (uri (git-reference - (url "https://gitlab.com/gnuwget/wget2.git") - (commit (string-append name "-" version)) - (recursive? #t))) ;; Needed for 'gnulib' git submodule. - (file-name (string-append name "-" version "-checkout")) + (method url-fetch) + (uri (string-append "mirror://gnu/wget/wget2-" version ".tar.gz")) (sha256 (base32 - "15wxsnjhc6bzk7f60i1djmsarh1w31gwi5h2gh9k19ncwypfj5dm")))) + "0qv55f4bablrlhc8bnic8g3mkk1kq44c4cphrk5jmv92z9aqzi6b")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'skip-network-test + (add-after 'unpack 'skip-network-tests (lambda _ - (substitute* "tests/Makefile.am" - (("test-auth-digest\\$\\(EXEEXT)") "")) - #t)) - (replace 'bootstrap - (lambda _ - ;; Make sure all the files are writable so that ./bootstrap - ;; can proceed. - (for-each (lambda (file) - (chmod file #o755)) - (find-files ".")) - (patch-shebang "./gnulib/gnulib-tool.py") - ;; Remove unnecessary inputs from bootstrap.conf - (substitute* "bootstrap.conf" - (("flex.*") "") - (("makeinfo.*") "") - (("lzip.*") "") - (("rsync.*") "")) - (invoke "sh" "./bootstrap" - "--gnulib-srcdir=gnulib" - "--no-git")))))) + (substitute* "tests/Makefile.in" + (("test-gpg-verify-no-file\\$\\(EXEEXT)") "") + (("test-gpg-valid\\$\\(EXEEXT)") "") + (("test-gpg-styles\\$\\(EXEEXT)") "")) + #t))) + #:configure-flags '("--enable-static=no"))) (inputs - `(("gnutls" ,gnutls/dane) + `(("bzip2" ,bzip2) + ("gnutls" ,gnutls/dane) + ("gpgme" ,gpgme) ("libiconv" ,libiconv) ("libidn2" ,libidn2) ("libmicrohttpd" ,libmicrohttpd) ("libpsl" ,libpsl) - ("pcre2" ,pcre2))) + ("pcre2" ,pcre2) + ("zlib" ,zlib))) ;; TODO: Add libbrotlidec, libnghttp2. (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("flex" ,flex) - ("gettext" ,gettext-minimal) - ("libtool" ,libtool) - ("pkg-config" ,pkg-config) - ("python" ,python-2))) + `(("pkg-config" ,pkg-config))) (home-page "https://gitlab.com/gnuwget/wget2") (synopsis "Successor of GNU Wget") (description "GNU Wget2 is the successor of GNU Wget, a file and recursive website downloader. Designed and written from scratch it wraps around libwget, that provides the basic functions needed by a web client.") - (license (list gpl3+ lgpl3+)))) + (license (list license:gpl3+ license:lgpl3+)))) diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm index 3a5def50b1..d1c27a65a7 100644 --- a/gnu/packages/wine.scm +++ b/gnu/packages/wine.scm @@ -318,7 +318,7 @@ integrate Windows applications into your desktop.") (define-public wine-staging-patchset-data (package (name "wine-staging-patchset-data") - (version "4.15") + (version "4.16") (source (origin (method git-fetch) @@ -328,7 +328,7 @@ integrate Windows applications into your desktop.") (file-name (git-file-name name version)) (sha256 (base32 - "13g40h2ybcl6vab4zbl1ksqfqyly5hzxssza9dv8r5pmp8x54hgr")))) + "0zkvwl6rxr6xcqk4a3h43cak67w6bcyqqnajz6azif07ir3z1c61")))) (build-system trivial-build-system) (native-inputs `(("bash" ,bash) @@ -374,7 +374,7 @@ integrate Windows applications into your desktop.") (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "0bfh4vd99zwj7f4108zvs80dfvmmnnsap7i6gmf21jgcly3paygq")))) + "17qxbddv23ibbayw1ai984m0dlq63cgplms2jhsc09incjhafywd")))) (inputs `(("autoconf" ,autoconf) ; for autoreconf ("faudio" ,faudio) ("ffmpeg" ,ffmpeg) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index c62ccf4990..e19c6c1438 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -21,6 +21,7 @@ ;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com> ;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com> +;;; Copyright © 2019 Kyle Andrews <kyle.c.andrews@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -128,6 +129,86 @@ the leaves of a full binary tree.") (license license:bsd-2))) +(define-public herbstluftwm + (package + (name "herbstluftwm") + (version "0.7.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://herbstluftwm.org/tarballs/herbstluftwm-" + version ".tar.gz")) + (sha256 + (base32 + "1kc18aj9j3nfz6fj4qxg9s3gg4jvn6kzi3ii24hfm0vqdpy17xnz")) + (file-name (string-append "herbstluftwm-" version ".tar.gz")))) + (build-system gnu-build-system) + (inputs + `(("dzen" ,dzen) + ("dmenu" ,dmenu) + ("glib" ,glib) + ("glibmm" ,glibmm) + ("xterm" ,xterm) + ("xsetroot" ,xsetroot) + ("libx11" ,libx11) + ("libxext" ,libxext) + ("libxinerama" ,libxinerama))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + '(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'check) + (add-after 'install 'install-xsession + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (xsessions (string-append out "/share/xsessions"))) + (mkdir-p xsessions) + (call-with-output-file + (string-append xsessions "/herbstluftwm.desktop") + (lambda (port) + (format port "~ + [Desktop Entry]~@ + Name=herbstluftwm~@ + Comment=Manual tiling window manager~@ + Exec=~a/bin/herbstluftwm~@ + Type=XSession~%" out))) + #t)))) + #:tests? #f + #:make-flags + (let ((out (assoc-ref %outputs "out"))) + (list "CC=gcc" + (string-append "PREFIX=''") + (string-append "DESTDIR=" out) + (string-append "BASHCOMPLETIONDIR=" out + "/etc/bash_completion.d"))))) + (synopsis "Tiling window manager for X11") + (description "herbstluftwm is a manual tiling window manager for X11 using +Xlib and GLib. Its main features are: + +@itemize +@item +The layout is based on splitting frames into subframes which can be split +again or can be filled with windows (similar to i3 or musca). + +@item +Tags (or workspaces or virtual desktops or …) can be added/removed at runtime. +Each tag contains an own layout. + +@item +Exactly one tag is viewed on each monitor. The tags are monitor independent +(similar to Xmonad). + +@item +It is configured at runtime via IPC calls from @command{herbstclient}. So the +configuration file is just a script which is run on startup (similar to wmii +or musca). + +@end itemize") + (home-page "https://herbstluftwm.org") + (license license:bsd-2))) + (define-public i3status (package (name "i3status") @@ -271,42 +352,30 @@ Despite the name it should work with any X11 window manager.") (license license:bsd-3))) (define-public i3blocks - (let ((commit "ec050e79ad8489a6f8deb37d4c20ab10729c25c3") - (revision "2")) - (package - (name "i3blocks") - (version (string-append "1.4-" revision "." - (string-take commit 7))) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/vivien/i3blocks.git") - (commit commit))) - (sha256 - (base32 - "1fx4230lmqa5rpzph68dwnpcjfaaqv5gfkradcr85hd1z8d1qp1b")) - (file-name (git-file-name name version)))) - (build-system gnu-build-system) - (arguments - `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) - #:phases (modify-phases %standard-phases - (add-after 'install 'install-doc - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (man1 (string-append out "/share/man/man1"))) - (install-file "docs/i3blocks.1" man1) - #t)))))) - (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("pkg-config" ,pkg-config))) - (home-page "https://github.com/vivien/i3blocks") - (synopsis "Minimalist scheduler for status bar scripts") - (description "i3blocks executes your command lines and generates a + (package + (name "i3blocks") + (version "1.5") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/vivien/i3blocks.git") + (commit version))) + (sha256 + (base32 + "0v8mwnm8qzpv6xnqvrk43s4b9iyld4naqzbaxk4ldq1qkhai0wsv")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/vivien/i3blocks") + (synopsis "Minimalist scheduler for status bar scripts") + (description "i3blocks executes your command lines and generates a status line from their output. The generated line is meant to be displayed by the i3 window manager through its i3bar component, as an alternative to i3status.") - (license license:gpl3+)))) + (license license:gpl3+))) (define-public perl-anyevent-i3 (package diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm index 6bd47233cb..c71285c7bd 100644 --- a/gnu/packages/xfce.scm +++ b/gnu/packages/xfce.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2017 ng0 <ng0@n0.is> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com> +;;; Copyright © 2019 L p R n d n <guix@lprndn.info> ;;; ;;; This file is part of GNU Guix. ;;; @@ -37,6 +38,7 @@ #:use-module (guix build-system trivial) #:use-module (gnu artwork) #:use-module (gnu packages) + #:use-module (gnu packages base) #:use-module (gnu packages calendar) #:use-module (gnu packages cdrom) #:use-module (gnu packages pkg-config) @@ -127,7 +129,7 @@ Xfce Desktop Environment.") '(#:phases ;; Run check after install phase to test dbus activation. (modify-phases %standard-phases - (add-after 'install 'check + (add-after 'install 'custom-check (lambda _ (setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME ;; Run test-suite under a dbus session. @@ -140,8 +142,10 @@ Xfce Desktop Environment.") (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool) - ("glib:bin" ,glib "bin") ;; for gdbus-codegen - )) + ("glib:bin" ,glib "bin") ;; for gdbus-codegen + ("gobject-introspection" ,gobject-introspection) + ("vala" ,vala) + ("dbus" ,dbus))) (propagated-inputs ;; libxfconf-0.pc refers to all these. `(("glib" ,glib))) @@ -167,9 +171,13 @@ storage system.") (base32 "1npjhznmnckhnylsv3l7p1zvhckhmp9d7vifs8w12kdfmrg0fjf4")))) (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list "--with-vendor-info=GNU Guix"))) (native-inputs `(("pkg-config" ,pkg-config) - ("intltool" ,intltool))) + ("intltool" ,intltool) + ("gobject-introspection" ,gobject-introspection))) (propagated-inputs `(("gtk+-3" ,gtk+) ; required by libxfce4ui-2.pc ;; libxfce4kbd-private-2.pc refers to all these. @@ -276,11 +284,14 @@ merging features essential for loading menus modified with menu editors.") (inputs `(("dbus" ,dbus) ("gdk-pixbuf" ,gdk-pixbuf) + ("cairo" ,cairo) ;; Needed for pdf thumbnails (poppler-glibc.pc) ("freetype" ,freetype) ("libjpeg" ,libjpeg) ("libgsf" ,libgsf) ("poppler" ,poppler) - ("gstreamer" ,gstreamer))) + ;; FIXME Provide gstreamer and gstreamer-tag to get video thumbnails + ;; ("gstreamer" ,gstreamer) + )) (home-page "https://www.xfce.org/") (synopsis "D-Bus service for applications to request thumbnails") (description @@ -303,6 +314,15 @@ management D-Bus specification.") "1x3flv86jh9vqah7mr5mmfx2991mc6icsqjygsc3j88lgsyz7y6m")) (patches (search-patches "xfce4-panel-plugins.patch")))) (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tzdata-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (string-append "plugins/clock/clock.c") + (("/usr/share/zoneinfo") + (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))) + #t))))) (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool) @@ -311,7 +331,8 @@ management D-Bus specification.") `(("gtk+-3" ,gtk+) ; required by libxfce4panel-2.0.pc ("libxfce4util" ,libxfce4util))) ; required by libxfce4panel-2.0.pc (inputs - `(("exo" ,exo) + `(("tzdata" ,tzdata) ;; For fix-tzdata-path phase only. + ("exo" ,exo) ("gtk+-2" ,gtk+-2) ("xfconf" ,xfconf) ("garcon" ,garcon) @@ -621,7 +642,7 @@ like appearance, display, keyboard and mouse settings.") (define-public thunar (package (name "thunar") - (version "1.8.7") + (version "1.8.9") (source (origin (method url-fetch) (uri (string-append "http://archive.xfce.org/src/xfce/" @@ -629,7 +650,7 @@ like appearance, display, keyboard and mouse settings.") "Thunar-" version ".tar.bz2")) (sha256 (base32 - "0afkp528mwwa2m18m39mvw53qgaijyynrw9wwwiyxgjiczq3l0ry")))) + "1fah2d7v3a7fp28xa5wv896rap1iad9q9y04qchca09mq1x8wxbs")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -653,7 +674,7 @@ fast.") (define-public thunar-volman (package (name "thunar-volman") - (version "0.9.3") + (version "0.9.5") (source (origin (method url-fetch) @@ -661,7 +682,7 @@ fast.") (version-major+minor version) "/" "thunar-volman-" version ".tar.bz2")) (sha256 - (base32 "1sfmz40164rg77hclrkrgnbk8cb7f325qqi7lz2hh3wbvf8r0c19")))) + (base32 "0dqqkbhn43hhmhqyx1fnmawpvysdjzw6ln4ryf629wil6dlwd9vy")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -890,7 +911,7 @@ inhibit interface which allows applications to prevent automatic sleep.") (define-public ristretto (package (name "ristretto") - (version "0.8.4") + (version "0.10.0") (source (origin (method url-fetch) (uri (string-append "http://archive.xfce.org/src/apps/ristretto/" @@ -898,14 +919,14 @@ inhibit interface which allows applications to prevent automatic sleep.") "ristretto-" version ".tar.bz2")) (sha256 (base32 - "18nf01djwnbjc91bdlv3p0h6pwcq1kfnjgp6yaxhxv4kdi9f82rs")))) + "0sa75m1w6yvv4xvzrwqiif6vnqgi29hjrixrh87nxss58bbms8hn")))) (build-system gnu-build-system) (native-inputs `(("intltool" ,intltool) ("pkg-config" ,pkg-config))) (inputs `(("desktop-file-utils" ,desktop-file-utils) - ("gtk+" ,gtk+-2) + ("gtk+" ,gtk+) ("libexif" ,libexif) ("libxfce4ui" ,libxfce4ui) ("librsvg" ,librsvg) @@ -961,6 +982,14 @@ memory usage graphically, and it can display processes as a tree.") (sha256 (base32 "0qlhvnl2m33vfxqlbkic2nmfpwyd4mq230jzhs48cg78392amy9w")))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-build-with-libical3 + (lambda* _ + (substitute* "src/ical-code.c" ;; .is_utc not available in libical3 + ((".*\\.is_utc.*$") "")) + #t))))) (build-system gnu-build-system) (native-inputs `(("intltool" ,intltool) @@ -1051,7 +1080,7 @@ of data to either CD/DVD/BD.") (define-public mousepad (package (name "mousepad") - (version "0.4.1") + (version "0.4.2") (source (origin (method url-fetch) (uri (string-append "http://archive.xfce.org/src/apps/mousepad/" @@ -1059,11 +1088,10 @@ of data to either CD/DVD/BD.") version ".tar.bz2")) (sha256 (base32 - "12si6fvhp68wz4scr339c23jxqq5ywn5nf4w55jld5lxjadkg9rr")))) + "1myy7954r1a30dk7inwy7kwki7zvfbnnsc3a8swk72vzrbgjmh44")))) (build-system gnu-build-system) (arguments - '(#:configure-flags '("--enable-gtk3" - ;; Use the GSettings keyfile backend rather than + '(#:configure-flags '(;; Use the GSettings keyfile backend rather than ;; DConf. "--enable-keyfile-settings") #:phases @@ -1083,7 +1111,8 @@ of data to either CD/DVD/BD.") ("pkg-config" ,pkg-config))) (inputs `(("gtk+" ,gtk+) - ("gtksourceview" ,gtksourceview-3))) + ("gtksourceview" ,gtksourceview-3) + ("xfconf" ,xfconf))) (home-page "https://git.xfce.org/apps/mousepad/") (synopsis "Simple text editor for Xfce") (description |