Merge branch 'staging' into core-updates
This commit is contained in:
commit
4fb9165515
|
@ -489,9 +489,8 @@ check-system: $(GOBJECTS)
|
|||
-e '(@@ (run-system-tests) run-system-tests)' \
|
||||
$(top_srcdir)/build-aux/run-system-tests.scm
|
||||
|
||||
# Public key used to sign substitutes from hydra.gnu.org & co.
|
||||
# Public keys used to sign substitutes.
|
||||
dist_pkgdata_DATA = \
|
||||
etc/substitutes/hydra.gnu.org.pub \
|
||||
etc/substitutes/berlin.guixsd.org.pub \
|
||||
etc/substitutes/ci.guix.gnu.org.pub \
|
||||
etc/substitutes/ci.guix.info.pub
|
||||
|
|
|
@ -281,8 +281,7 @@ Once your package builds correctly, please send us a patch
|
|||
(@pxref{Submitting Patches}). Well, if you need help, we will be happy to
|
||||
help you too. Once the patch is committed in the Guix repository, the
|
||||
new package automatically gets built on the supported platforms by
|
||||
@url{http://hydra.gnu.org/jobset/gnu/master, our continuous integration
|
||||
system}.
|
||||
@url{@value{SUBSTITUTE-SERVER}, our continuous integration system}.
|
||||
|
||||
@cindex substituter
|
||||
Users can obtain the new package definition simply by running
|
||||
|
@ -893,7 +892,7 @@ changes). This branch is intended to be merged in @code{master} every
|
|||
2.5 months or so.
|
||||
@end table
|
||||
|
||||
All these branches are @uref{https://hydra.gnu.org/project/gnu,
|
||||
All these branches are @uref{@value{SUBSTITUTE-SERVER},
|
||||
tracked by our build farm} and merged into @code{master} once
|
||||
everything has been successfully built. This allows us to fix issues
|
||||
before they hit users, and to reduce the window during which pre-built
|
||||
|
|
|
@ -3134,7 +3134,6 @@ also result from derivation builds, can be available as substitutes.
|
|||
@node Official Substitute Server
|
||||
@subsection Official Substitute Server
|
||||
|
||||
@cindex hydra
|
||||
@cindex build farm
|
||||
The @code{@value{SUBSTITUTE-SERVER}} server is a front-end to an official build farm
|
||||
that builds packages from Guix continuously for some
|
||||
|
@ -3186,12 +3185,6 @@ Then, you can run something like this:
|
|||
# guix archive --authorize < @var{prefix}/share/guix/@value{SUBSTITUTE-SERVER}.pub
|
||||
@end example
|
||||
|
||||
@quotation Note
|
||||
Similarly, the @file{hydra.gnu.org.pub} file contains the public key
|
||||
of an independent build farm also run by the project, reachable at
|
||||
@indicateurl{https://mirror.hydra.gnu.org}.
|
||||
@end quotation
|
||||
|
||||
Once this is in place, the output of a command like @code{guix build}
|
||||
should change from something like:
|
||||
|
||||
|
@ -9611,7 +9604,7 @@ their store with others, who can then use it as a substitute server
|
|||
When @command{guix publish} runs, it spawns an HTTP server which allows
|
||||
anyone with network access to obtain substitutes from it. This means
|
||||
that any machine running Guix can also act as if it were a build farm,
|
||||
since the HTTP interface is compatible with Hydra, the software behind
|
||||
since the HTTP interface is compatible with Cuirass, the software behind
|
||||
the @code{@value{SUBSTITUTE-SERVER}} build farm.
|
||||
|
||||
For security, each substitute is signed, allowing recipients to check
|
||||
|
|
|
@ -104,7 +104,7 @@ chk_require()
|
|||
|
||||
gpg --list-keys ${OPENPGP_SIGNING_KEY_ID} >/dev/null 2>&1 || (
|
||||
_err "${ERR}Missing OpenPGP public key. Fetch it with this command:"
|
||||
echo " gpg --keyserver pool.sks-keyservers.net --recv-keys ${OPENPGP_SIGNING_KEY_ID}"
|
||||
echo " wget https://sv.gnu.org/people/viewgpg.php?user_id=15145 -qO - | gpg --import -"
|
||||
exit 1
|
||||
)
|
||||
}
|
||||
|
@ -362,13 +362,11 @@ sys_enable_guix_daemon()
|
|||
}
|
||||
|
||||
sys_authorize_build_farms()
|
||||
{ # authorize the public keys of the two build farms
|
||||
{ # authorize the public key of the build farm
|
||||
while true; do
|
||||
read -p "Permit downloading pre-built package binaries from the project's build farms? (yes/no) " yn
|
||||
read -p "Permit downloading pre-built package binaries from the project's build farm? (yes/no) " yn
|
||||
case $yn in
|
||||
[Yy]*) guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/hydra.gnu.org.pub" &&
|
||||
_msg "${PAS}Authorized public key for hydra.gnu.org";
|
||||
guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/ci.guix.gnu.org.pub" &&
|
||||
[Yy]*) guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/ci.guix.gnu.org.pub" &&
|
||||
_msg "${PAS}Authorized public key for ci.guix.gnu.org";
|
||||
break;;
|
||||
[Nn]*) _msg "${INF}Skipped authorizing build farm public keys"
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
(public-key
|
||||
(rsa
|
||||
(n #00DB1634E3D9DFAC97AE4734DAE968CCB15EE4815C82BDC254883DBB49FE1EF32268E82D4BBE0E35298C481C9DA1551642FAFF05AEC1A60712F1BB4BE7D25D7EFF7A4F89704A5A9AC232870CB9F2476C3B538A0E990A8825DEB73081D317001FB8A188600F2FEF5F5F570E857F3EE4355077A3C3918ED72723A56BA55C466D400658974D7DAD1F6B7B63C192B9C2704D98BBFF1C3BD5B8EF11A8ADC83ACB8FD8E9F1E792FDAD262415D13F2DEE55F330908CFDA9C3C8C32B64F7DD088457D34F445E2E2C83C6D680549DC9B6E6573B89496567204ED285E67A279F2F667080BA941D80D015CE87B0FB6A91A99CECC7D91D2D210B00E4B6E611DA51DB008F1DFE3FCAC6B27393FA781D45F9A15FC7B8785A3E86BA6592B2916CA22CF1E40FC85F85CACA590461154F58F3580B16398908EF32076F411299C28727C94D88B6A618F84DD73AEBED8270BCB6690928CB1BF250C35E1F6BF3B1B30D05BA246ECE8F69D9065DE26F4B3E0D814D70A9C27CB5B7B050C9090590D3A9EF83374F2643E5446FBD39DDB124DBF6DFDAA6D18E2560AD0CBFA11C959C9B7316BF19963A191967054E9FD97DC14D71082B30B1C90A46E8996682474C3BCB51BA0882958897B6DD35E41B5174D0A6BCDE97B89043E95BD1B70DE61DA666893B417196A180005466BC3A742FDF04E89B04460E3E6BC72E7F1B5FEA5B3092FEE551A3C447C12E104E65#)
|
||||
(e #010001#)
|
||||
)
|
||||
)
|
|
@ -908,6 +908,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/guile-relocatable.patch \
|
||||
%D%/packages/patches/guile-rsvg-pkgconfig.patch \
|
||||
%D%/packages/patches/guile-emacs-fix-configure.patch \
|
||||
%D%/packages/patches/gstreamer-buffer-reset-offset.patch \
|
||||
%D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \
|
||||
%D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
|
||||
%D%/packages/patches/gtk2-theme-paths.patch \
|
||||
|
@ -1264,7 +1265,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch \
|
||||
%D%/packages/patches/rust-bootstrap-stage0-test.patch \
|
||||
%D%/packages/patches/rust-coresimd-doctest.patch \
|
||||
%D%/packages/patches/rust-1.30-gdb-llvm.patch \
|
||||
%D%/packages/patches/rust-reproducible-builds.patch \
|
||||
%D%/packages/patches/rxvt-unicode-escape-sequences.patch \
|
||||
%D%/packages/patches/scalapack-blacs-mpi-deprecations.patch \
|
||||
|
@ -1368,7 +1368,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/wavpack-CVE-2018-6767.patch \
|
||||
%D%/packages/patches/wavpack-CVE-2018-7253.patch \
|
||||
%D%/packages/patches/wavpack-CVE-2018-7254.patch \
|
||||
%D%/packages/patches/webkitgtk-sans-gstreamer-gl.patch \
|
||||
%D%/packages/patches/weechat-python.patch \
|
||||
%D%/packages/patches/wicd-bitrate-none-fix.patch \
|
||||
%D%/packages/patches/wicd-get-selected-profile-fix.patch \
|
||||
|
|
|
@ -2220,19 +2220,19 @@ a new command using the matched rule, and runs it.")
|
|||
(define-public di
|
||||
(package
|
||||
(name "di")
|
||||
(version "4.47")
|
||||
(version "4.47.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gentoo.com/di/di-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0zlapxlzjizwzwa8xwrwibhcbkh0wx7n74gvjpp6wlwq7cgiq0xm"))))
|
||||
(base32 "1bdbl9k3gqf4h6g21difqc0w17pjid6r587y19wi37vx36aava7f"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; obscure test failures.
|
||||
`(#:tests? #f ; obscure test failures
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(delete 'configure) ; no configure script
|
||||
(add-before 'build 'setup-environment
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(setenv "CC" "gcc")
|
||||
|
|
|
@ -331,7 +331,7 @@ precision.")
|
|||
(define-public giac
|
||||
(package
|
||||
(name "giac")
|
||||
(version "1.5.0-57")
|
||||
(version "1.5.0-61")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
;; "~parisse/giac" is not used because the maintainer regularly
|
||||
|
@ -343,7 +343,7 @@ precision.")
|
|||
"source/giac_" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08c93knsisbk9dkyyrignw0wvqbr1sa5czlvk5l307ahxbbmqncf"))))
|
||||
"050vzpqq77fhky32sbisc0ysimgp60xjv39q7y45jkaabdkmclwh"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:modules ((ice-9 ftw)
|
||||
|
|
|
@ -3701,7 +3701,7 @@ library.")
|
|||
(define-public faudio
|
||||
(package
|
||||
(name "faudio")
|
||||
(version "19.06.07")
|
||||
(version "19.07")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -3710,7 +3710,7 @@ library.")
|
|||
(commit version)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32 "1w37qp279lgpyvslwz3wlb4fp0i68ncd411rqdlk5s71b1zz466n"))))
|
||||
(base32 "1wf6skc5agaikc9qgwk8bx56sad31fafs53lqqn4jmx8i76pl0lw"))))
|
||||
(arguments
|
||||
'(#:tests? #f ; No tests.
|
||||
#:configure-flags '("-DFFMPEG=ON")))
|
||||
|
|
|
@ -1177,15 +1177,15 @@ command.")
|
|||
(define-public tzdata
|
||||
(package
|
||||
(name "tzdata")
|
||||
(version "2019a")
|
||||
(version "2019b")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://www.iana.org/time-zones/repository/releases/tzdata"
|
||||
"https://data.iana.org/time-zones/releases/tzdata"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0wlpqm4asvi0waaz24xj20iq40gqfypmb4nldjhkfgm09bgnsdlh"))))
|
||||
"0r0clnlslwm15m1c61dinf1fi9ffgl6aipng7i7yryfwj0n0kn85"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
|
@ -1231,11 +1231,11 @@ command.")
|
|||
(inputs `(("tzcode" ,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.iana.org/time-zones/repository/releases/tzcode"
|
||||
"https://data.iana.org/time-zones/releases/tzcode"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1x9z8fpgnhzlsnps0hamb54ymaskjab7ys9m4i4gpk9hpiig2fc7"))))))
|
||||
"0vbmswvv3li25s31shyllq5v24449lxnrki9hr043nipjd09sirf"))))))
|
||||
(home-page "https://www.iana.org/time-zones")
|
||||
(synopsis "Database of current and historical time zones")
|
||||
(description "The Time Zone Database (often called tz or zoneinfo)
|
||||
|
@ -1258,7 +1258,7 @@ and daylight-saving rules.")
|
|||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://www.iana.org/time-zones/repository/releases/tzdata"
|
||||
"https://data.iana.org/time-zones/releases/tzdata"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
|
@ -1267,7 +1267,7 @@ and daylight-saving rules.")
|
|||
`(("tzcode" ,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.iana.org/time-zones/repository/releases/tzcode"
|
||||
"http://data.iana.org/time-zones/releases/tzcode"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
|
|
|
@ -2915,14 +2915,14 @@ to multiple hypothesis correction.")
|
|||
(define-public r-dose
|
||||
(package
|
||||
(name "r-dose")
|
||||
(version "3.10.1")
|
||||
(version "3.10.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "DOSE" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ab7mgj42fg6608qkciyqivr1n8s8r5ibvp0z3jfclrnyx6cl0w1"))))
|
||||
"06jm1mnfd92s84f21562vsmj6jfkravfqf4lcxx2lk7s4ll66znj"))))
|
||||
(properties `((upstream-name . "DOSE")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -3406,14 +3406,14 @@ type and symbol colors.")
|
|||
(define-public r-genomicscores
|
||||
(package
|
||||
(name "r-genomicscores")
|
||||
(version "1.8.0")
|
||||
(version "1.8.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "GenomicScores" version))
|
||||
(sha256
|
||||
(base32
|
||||
"17bd61icfycc61b5dij1968h026w7vfd9miwdcbppak1j6s08idq"))))
|
||||
"0xgv5h6hwr4p2p05z8vzhivy97gfirm4rj1ihb5c8fhgc5vp85dy"))))
|
||||
(properties `((upstream-name . "GenomicScores")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -4749,14 +4749,14 @@ annotations.")
|
|||
(define-public r-rsubread
|
||||
(package
|
||||
(name "r-rsubread")
|
||||
(version "1.34.2")
|
||||
(version "1.34.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "Rsubread" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0bsrw61wcav0q22c5m6gr0vn1f3c3ld8gxj730wcab6dj196z6q3"))))
|
||||
"1230p8nsakifmpsqfiaj8rpm7npa8ab903mfjmayfa71n6yzvcbs"))))
|
||||
(properties `((upstream-name . "Rsubread")))
|
||||
(build-system r-build-system)
|
||||
(inputs `(("zlib" ,zlib)))
|
||||
|
|
|
@ -6960,14 +6960,14 @@ ungapped alignment formats.")
|
|||
(define-public r-systempiper
|
||||
(package
|
||||
(name "r-systempiper")
|
||||
(version "1.18.1")
|
||||
(version "1.18.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "systemPipeR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1k57zyzagd7g7wl38l3cn9csylykxcllbfvyq7dz8pvihgkn0ssi"))))
|
||||
"18s5vpmw766pm64w7bwwfgpsv9yzhwclf0ya1rpqz8qslw7bbdjf"))))
|
||||
(properties `((upstream-name . "systemPipeR")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -7467,13 +7467,13 @@ names in their natural, rather than lexicographic, order.")
|
|||
(define-public r-edger
|
||||
(package
|
||||
(name "r-edger")
|
||||
(version "3.26.4")
|
||||
(version "3.26.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "edgeR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"013glavk6a1wpyq3q35k343bdp6rf27w30q59i4kf47rp3i37g15"))))
|
||||
"0iba4krz30dx5b0s89n5cfkwn64867s7vmvvfqms9lbcr4kj439m"))))
|
||||
(properties `((upstream-name . "edgeR")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -7667,13 +7667,13 @@ annotation data packages using SQLite data storage.")
|
|||
(define-public r-biomart
|
||||
(package
|
||||
(name "r-biomart")
|
||||
(version "2.40.0")
|
||||
(version "2.40.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "biomaRt" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1i457s91bn7n60bzw3zk4h64xgmawlrr6bq4z4cb7jlm04hdq8qm"))))
|
||||
"1abl0c4qbhfqf9ixdp74183phm7s8rszrr5ldczm59b8vyng8rhx"))))
|
||||
(properties
|
||||
`((upstream-name . "biomaRt")))
|
||||
(build-system r-build-system)
|
||||
|
@ -7859,13 +7859,13 @@ samples.")
|
|||
(define-public r-genomicalignments
|
||||
(package
|
||||
(name "r-genomicalignments")
|
||||
(version "1.20.0")
|
||||
(version "1.20.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "GenomicAlignments" version))
|
||||
(sha256
|
||||
(base32
|
||||
"13zw7bb1adgph9bf9b9y725nr0320b80y70p2yqf3bjb2klfxf55"))))
|
||||
"0s3q97q4pgj5jwn4g95al44rahrwsncsf45v01v4071msx3xmjxq"))))
|
||||
(properties
|
||||
`((upstream-name . "GenomicAlignments")))
|
||||
(build-system r-build-system)
|
||||
|
@ -7939,13 +7939,13 @@ as well as query and modify the browser state, such as the current viewport.")
|
|||
(define-public r-genomicfeatures
|
||||
(package
|
||||
(name "r-genomicfeatures")
|
||||
(version "1.36.1")
|
||||
(version "1.36.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "GenomicFeatures" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02psq3jfgghdydwbydb1j792lvfg44l5npb44mx8d54ckr8658dd"))))
|
||||
"0zkd57i5qjxsravv0gbyckc0wrnqzgxd61ibh3jmhmrccrr9ihn3"))))
|
||||
(properties
|
||||
`((upstream-name . "GenomicFeatures")))
|
||||
(build-system r-build-system)
|
||||
|
@ -8562,13 +8562,13 @@ factors bound at the specific regions.")
|
|||
(define-public r-tximport
|
||||
(package
|
||||
(name "r-tximport")
|
||||
(version "1.12.1")
|
||||
(version "1.12.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "tximport" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nq8v1sgkm2ssmvr2z3qw0zsk7zy0dzb95g1mfs8fkpjqh3nqq5s"))))
|
||||
"070nx0blvvfhsnkbb5j899wy7dgalrh4xfcciir9l2xl67lna1zf"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://bioconductor.org/packages/tximport")
|
||||
(synopsis "Import and summarize transcript-level estimates for gene-level analysis")
|
||||
|
@ -10693,14 +10693,14 @@ memory usage and processing time is minimized.")
|
|||
(define-public r-phangorn
|
||||
(package
|
||||
(name "r-phangorn")
|
||||
(version "2.5.3")
|
||||
(version "2.5.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "phangorn" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1bv86yfk5r015s7ij6v4zz7bagwrw9m13yfs5853drxb19d5h1m3"))))
|
||||
"0ihkaykqjmf80d8wrk3saphxvnv58zma6pd13633bd3cwanc33f5"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-ape" ,r-ape)
|
||||
|
@ -12748,7 +12748,7 @@ methylation and segmentation.")
|
|||
(define-public pigx-scrnaseq
|
||||
(package
|
||||
(name "pigx-scrnaseq")
|
||||
(version "0.0.7")
|
||||
(version "0.0.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_scrnaseq/"
|
||||
|
@ -12756,7 +12756,7 @@ methylation and segmentation.")
|
|||
"/pigx_scrnaseq-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"131zarirv16w8653m0d66jgjnwqfsxqc0hix0rypssz4d83bl51j"))))
|
||||
"0zv0sc5amivxhb95vx2gfx6l9bh7n80fh7h47dalnwxxnfvnzai4"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
(define-public nss-certs
|
||||
(package
|
||||
(name "nss-certs")
|
||||
(version "3.44")
|
||||
(version "3.44.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (let ((version-with-underscores
|
||||
|
@ -87,7 +87,7 @@
|
|||
"nss-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"1zvabgxlyvz3fnv4w89y4a5qkscjmm88naf929dgvvgfnrchwqm5"))))
|
||||
"1y0jvva4s3j7cjz22kqw2lsml0an1295bgpc2raf7kc9r60cpr7w"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out"))
|
||||
(native-inputs
|
||||
|
|
|
@ -1903,7 +1903,8 @@ backported from Python 2.7 for Python 2.4+.")
|
|||
("python-pyhamcrest" ,python-pyhamcrest)
|
||||
("python-pytest" ,python-pytest)))
|
||||
(propagated-inputs
|
||||
`(("python-six" ,python-six)
|
||||
`(("python-importlib-metadata" ,python-importlib-metadata)
|
||||
("python-six" ,python-six)
|
||||
("python-parse" ,python-parse)
|
||||
("python-parse-type" ,python-parse-type)))
|
||||
(arguments
|
||||
|
|
|
@ -714,7 +714,11 @@ from forcing GEXP-PROMISE."
|
|||
("glib" ,glib)
|
||||
("gtk+" ,gtk+)
|
||||
("harfbuzz" ,harfbuzz)
|
||||
("icu4c" ,icu4c)
|
||||
|
||||
;; Build against ICU 64 to prevent a localization problem in version 75
|
||||
;; and later: <https://github.com/Eloston/ungoogled-chromium/issues/778>.
|
||||
("icu4c" ,icu4c-64)
|
||||
|
||||
("jsoncpp" ,jsoncpp)
|
||||
("lcms" ,lcms)
|
||||
("libevent" ,libevent)
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
||||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -55,11 +56,13 @@
|
|||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages qt)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages valgrind)
|
||||
#:use-module (ice-9 match)
|
||||
|
@ -1910,3 +1913,40 @@ compressor. UPX typically reduces the file size of programs and shared
|
|||
libraries by around 50%--70%, thus reducing disk space, network load times,
|
||||
download times, and other distribution and storage costs.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public quazip
|
||||
(package
|
||||
(name "quazip")
|
||||
(version "0.8.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/stachenov/quazip.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1g473gnsbkvxpsv8lbsmhspn7jnq86b05zzgqh11r581v8ndvz5s"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ;no test
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)))
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "https://stachenov.github.io/quazip/index.html")
|
||||
(synopsis "Qt/C++ wrapper for Minizip")
|
||||
(description "QuaZIP is a simple C++ wrapper over Gilles Vollant's
|
||||
ZIP/UNZIP package that can be used to access ZIP archives. It uses
|
||||
Trolltech's Qt toolkit.
|
||||
|
||||
QuaZIP allows you to access files inside ZIP archives using QIODevice
|
||||
API, and that means that you can also use QTextStream, QDataStream or
|
||||
whatever you would like to use on your zipped files.
|
||||
|
||||
QuaZIP provides complete abstraction of the ZIP/UNZIP API, for both
|
||||
reading from and writing to ZIP archives. ")
|
||||
;; Project is distributed under LGPL, but "quazip/z*" "quazip/unzip.*" are
|
||||
;; distributed under zlib terms.
|
||||
(license (list license:lgpl2.1+ license:zlib))))
|
||||
|
|
|
@ -97,15 +97,17 @@ the system clipboards.")
|
|||
(define-public r-ellipsis
|
||||
(package
|
||||
(name "r-ellipsis")
|
||||
(version "0.1.0")
|
||||
(version "0.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "ellipsis" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pw94qpg81xmsdsagpqxddv7m2cmdszmyyq99dk3caqqj01z7wg6"))))
|
||||
"0hdk79q4wn5nq52p8qd65kqz81l0b8gfzsbzyvmfais0p24qclib"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-rlang" ,r-rlang)))
|
||||
(home-page "https://github.com/hadley/ellipsis")
|
||||
(synopsis "Tools for working with additional arguments")
|
||||
(description
|
||||
|
@ -1115,14 +1117,14 @@ and several other tools.")
|
|||
(define-public r-abbyyr
|
||||
(package
|
||||
(name "r-abbyyr")
|
||||
(version "0.5.4")
|
||||
(version "0.5.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "abbyyR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jh1c1ad6mgw7brdh2isnza1qpjlfxnqr7jl76yd93axyfl76xjx"))))
|
||||
"1vldnd3dg89aj6a73nhirirqddbfdrnzhb5m3679i60sark8nk6r"))))
|
||||
(properties `((upstream-name . "abbyyR")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -3196,14 +3198,14 @@ simplifying cross-class interoperability.")
|
|||
(define-public r-performanceanalytics
|
||||
(package
|
||||
(name "r-performanceanalytics")
|
||||
(version "1.5.2")
|
||||
(version "1.5.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "PerformanceAnalytics" version))
|
||||
(sha256
|
||||
(base32
|
||||
"01bgm57z079g6r505w3bj293zkbd49fwa8sg55z87vizwavipml6"))))
|
||||
"0jhjldwyxwq7a47zmk5y1jjck7hvq92p8rlgjvdfy51hx2dmlqqd"))))
|
||||
(properties
|
||||
`((upstream-name . "PerformanceAnalytics")))
|
||||
(build-system r-build-system)
|
||||
|
@ -3617,14 +3619,14 @@ iVAT).")
|
|||
(define-public r-xfun
|
||||
(package
|
||||
(name "r-xfun")
|
||||
(version "0.7")
|
||||
(version "0.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "xfun" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gllyyjhkvswcwa15h1f3kb1l1drs2ifpxy4jjanmmhaj7wcmvy9"))))
|
||||
"05jlbi5byqpw0fkhmmxqglnaxh9gwbcigx77kcpw1pkxnpwfry62"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://github.com/yihui/xfun")
|
||||
(synopsis "Miscellaneous functions")
|
||||
|
@ -3761,14 +3763,14 @@ terminals.")
|
|||
(define-public r-tinytex
|
||||
(package
|
||||
(name "r-tinytex")
|
||||
(version "0.13")
|
||||
(version "0.14")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "tinytex" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1bbphyrbk2rnyi0jhw4hj2w4l84kyhb0km901qd5qnnl0cy6dzvb"))))
|
||||
"0aab7ybc6kkxxk3lzdmbla8zcpp6nmlahchc33miv28cmnqw363w"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-xfun" ,r-xfun)))
|
||||
|
@ -4009,14 +4011,14 @@ Fisher's method), and Sidak correction.")
|
|||
(define-public r-quantmod
|
||||
(package
|
||||
(name "r-quantmod")
|
||||
(version "0.4-14")
|
||||
(version "0.4-15")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "quantmod" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1csljagnpkr1mmc18h70b64zbyj07kx972nip9dng39jfg7ilnyr"))))
|
||||
"0lyzaf5ypk93v6zj9gdghy05cc7cxgn9yasv1apx5r6qsjcfgwky"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-curl" ,r-curl)
|
||||
|
@ -4418,17 +4420,18 @@ fit into memory.")
|
|||
(define-public r-cgdsr
|
||||
(package
|
||||
(name "r-cgdsr")
|
||||
(version "1.2.10")
|
||||
(version "1.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "cgdsr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1xyhw7mhmjichr1l6f9y1qvfj9wm87kfbm87ji7lcwf36gxh5g23"))))
|
||||
"07yc819hkabpzzh0g0cbqza6bcfy67b2marrzz1lj97f9iba78ja"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-r-methodss3" ,r-r-methodss3)
|
||||
`(("r-httr" ,r-httr)
|
||||
("r-r-methodss3" ,r-r-methodss3)
|
||||
("r-r-oo" ,r-r-oo)))
|
||||
(home-page "https://github.com/cBioPortal/cgdsr")
|
||||
(synopsis "R-based API for accessing the MSKCC Cancer Genomics Data Server")
|
||||
|
@ -5385,14 +5388,14 @@ and adds the annotation to the plot.")
|
|||
(define-public r-ggpubr
|
||||
(package
|
||||
(name "r-ggpubr")
|
||||
(version "0.2")
|
||||
(version "0.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "ggpubr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rkpcjb1x7lvhj68aam5airbi534jqyiq12x5xk40a25iifhghq6"))))
|
||||
"0a4dv6a752hwvc7l31xs7bgqhfzfdy94xp6wgwaxf5dxm46na7k1"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-cowplot" ,r-cowplot)
|
||||
|
@ -5719,14 +5722,14 @@ references and Rd files.")
|
|||
(define-public r-officer
|
||||
(package
|
||||
(name "r-officer")
|
||||
(version "0.3.4")
|
||||
(version "0.3.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "officer" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1m4b3mcn5j5q3nq0jp1nranh4rdb8vxcpabn6ryqk9m6709fvhjz"))))
|
||||
"005kaxjhr40shpav2pg7s7gj8f49579r7rbgwlncbwv16nn0rbbg"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-base64enc" ,r-base64enc)
|
||||
|
@ -5883,14 +5886,14 @@ parse and convert strings into cases like snake or camel among others.")
|
|||
(define-public r-prediction
|
||||
(package
|
||||
(name "r-prediction")
|
||||
(version "0.3.6.2")
|
||||
(version "0.3.14")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "prediction" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0kx7xbm2j6c8h6gk1iig4vfpg877psg16j74hl7zc2mv40sc6dy5"))))
|
||||
"0awlq5lxfia6m2b91w73rksp93rbwv5gwqb36wbji4rgq41rzbrx"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-data-table" ,r-data-table)))
|
||||
|
@ -5962,14 +5965,14 @@ vice versa), or to deal with multiple declared missing values.")
|
|||
(define-public r-sjmisc
|
||||
(package
|
||||
(name "r-sjmisc")
|
||||
(version "2.8.0")
|
||||
(version "2.8.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "sjmisc" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pgavkygsj8fa591pmasx78b4gd32sf2pa067yqvi82xha7dj5k4"))))
|
||||
"1a30n3cyd9h9ilaiai9ywy53f03nikafc47rvpws2c2vghc8mbn7"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-dplyr" ,r-dplyr)
|
||||
|
@ -6039,14 +6042,14 @@ functions.")
|
|||
(define-public r-flextable
|
||||
(package
|
||||
(name "r-flextable")
|
||||
(version "0.5.4")
|
||||
(version "0.5.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "flextable" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0h6ylgz1mn61d2kh1bym8hfl3r7nf4z092lmjsaav3h1ki3avrnl"))))
|
||||
"1q6x9mfk5gikqjbbra1dn8hs1rq5ws99jdjav3m113gx9f2j5yxh"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-base64enc" ,r-base64enc)
|
||||
|
@ -6639,13 +6642,13 @@ and coverage methods to tune the choice of threshold.")
|
|||
(define-public r-ggstance
|
||||
(package
|
||||
(name "r-ggstance")
|
||||
(version "0.3.1")
|
||||
(version "0.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "ggstance" version))
|
||||
(sha256
|
||||
(base32 "0v7f3xdaaridw6d4jvnsfwxmpjrasvx5vl555wsrn50aah17fkvh"))))
|
||||
(base32 "078ih9s5b0xzf582qg0vjnxvg5qad5ms1v2vdd062ckahi8zz1r8"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-ggplot2" ,r-ggplot2)
|
||||
|
@ -7694,14 +7697,14 @@ Hothorn, Westfall, 2010, CRC Press).")
|
|||
(define-public r-emmeans
|
||||
(package
|
||||
(name "r-emmeans")
|
||||
(version "1.3.5")
|
||||
(version "1.3.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "emmeans" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0zyink60132f2a0491a94bf67hq8a0bwmw5wn19l0ms8iyiml9d2"))))
|
||||
"0rgzjvmp3yqhwgfg96v17wi8gbafzbrmz134shj2jsf5bsmw6vbj"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-estimability" ,r-estimability)
|
||||
|
@ -7926,14 +7929,14 @@ differentiation.")
|
|||
(define-public r-bayestestr
|
||||
(package
|
||||
(name "r-bayestestr")
|
||||
(version "0.2.0")
|
||||
(version "0.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "bayestestR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0729j4fdxkkvmh99nmny38dywidzgmipdjqbi2ljxygsn4jg7ysy"))))
|
||||
"09r654lrhwwnshn5h2s2fbx3c8wigv3j4sva5hmfnkwjg8cclhd9"))))
|
||||
(properties `((upstream-name . "bayestestR")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -8209,14 +8212,14 @@ more information about packages, and where they were installed from.")
|
|||
(define-public r-remotes
|
||||
(package
|
||||
(name "r-remotes")
|
||||
(version "2.0.4")
|
||||
(version "2.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "remotes" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jbn4kjimcr82zv5lnqxqa2487a96vn6jxf7wc6gnpxr6k06d61p"))))
|
||||
"19v8dmnk9l4i9m64p7zgmj7y1vhnnwhi5kyn0k5d034zzkvchi49"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://github.com/r-lib/remotes#readme")
|
||||
(synopsis "R package installation from remote repositories")
|
||||
|
@ -8722,14 +8725,14 @@ Bioconductor packages.")
|
|||
(define-public r-rgl
|
||||
(package
|
||||
(name "r-rgl")
|
||||
(version "0.100.19")
|
||||
(version "0.100.24")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "rgl" version))
|
||||
(sha256
|
||||
(base32
|
||||
"09bhvx8aq104yzysfgd7wlnq4vrvmnd4jzgj0c32whjfal10fqsh"))))
|
||||
"0nm3iyvhhmh0zlywkfmrq3vyh8z1l296xxfmcky0ifd2qnysfcqj"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
@ -9555,14 +9558,14 @@ Touzet and Varre (2007).")
|
|||
(define-public r-rnifti
|
||||
(package
|
||||
(name "r-rnifti")
|
||||
(version "0.10.0")
|
||||
(version "0.11.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "RNifti" version))
|
||||
(sha256
|
||||
(base32
|
||||
"07sfzps4yg5zdhbxh6i4rbjvbjvvf2d8i9jcf64ywbmi557sw1zv"))))
|
||||
"0zs8ffa6gpi9cygxk7xjin6k3vpvfgb540a506zlk50bf6kc5nlf"))))
|
||||
(properties `((upstream-name . "RNifti")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs `(("r-rcpp" ,r-rcpp)))
|
||||
|
@ -10590,14 +10593,14 @@ for association and heterogeneity.")
|
|||
(define-public r-bootstrap
|
||||
(package
|
||||
(name "r-bootstrap")
|
||||
(version "2017.2")
|
||||
(version "2019.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "bootstrap" version))
|
||||
(sha256
|
||||
(base32
|
||||
"08lmsy7k8wsgv89yc904c6fidcymr1ma2ry4fl0p69p21v4iiwa4"))))
|
||||
"1546jqhhw5h177ii8jkdikyd26rv6gwkav816np1zks4p7zgsljj"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs `(("gfortran" ,gfortran)))
|
||||
(home-page "https://cran.r-project.org/web/packages/bootstrap")
|
||||
|
@ -11000,14 +11003,14 @@ the local machine to, say, distributed processing on a remote compute cluster.")
|
|||
(define-public r-future-apply
|
||||
(package
|
||||
(name "r-future-apply")
|
||||
(version "1.2.0")
|
||||
(version "1.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "future.apply" version))
|
||||
(sha256
|
||||
(base32
|
||||
"00ma43ma3byrf9vfqqn9g8sn18c71ryhk7lpza5h7817f1kibw1h"))))
|
||||
"0wd3bh114zkvrqlpn8gqz4ix1igr9hr8x72h2g00a7mqkfjfqx33"))))
|
||||
(properties `((upstream-name . "future.apply")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
|
|
@ -804,14 +804,14 @@ as a drop-in replacement of MySQL.")
|
|||
(define-public postgresql
|
||||
(package
|
||||
(name "postgresql")
|
||||
(version "10.8")
|
||||
(version "10.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
|
||||
version "/postgresql-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0pfdmy4w95b49w9rkn8dwvzmi2brpqfvbxd04y0k0s0xvymc565i"))
|
||||
"0m0gbf7nwgag6a1z5f9xszwzgf2xhx0ncakyxwxlzs87n1zk32wm"))
|
||||
(patches (search-patches "postgresql-disable-resolve_symlinks.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
|
|
@ -250,17 +250,17 @@ easy.")
|
|||
(define-public snap
|
||||
(package
|
||||
(name "snap")
|
||||
(version "4.2.2.9")
|
||||
(version "5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jmoenig/Snap.git")
|
||||
(commit version)))
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"07qyhh4f8gr1fqyvxa2i6lkzaaa0vl12yzllgp81rdil8z8bi976"))))
|
||||
"0bh52n7nklaaq02qb56v7bvrslf047my6irl7g8h6xfjgw04yf20"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
|
|
|
@ -550,7 +550,7 @@ for editing Racket's Scribble documentation syntax in Emacs.")
|
|||
(define-public emacs-shroud
|
||||
(package
|
||||
(name "emacs-shroud")
|
||||
(version "1.15.1")
|
||||
(version "1.83.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -559,7 +559,7 @@ for editing Racket's Scribble documentation syntax in Emacs.")
|
|||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0wvm4lxqcc1p8v7rpqal3bnqgnpk1gs7v18i83f6cvi5d88jkgdg"))))
|
||||
(base32 "1yvdjx0kp4y8w5yz2cbqq9n6xl5splvmsyyx8ld1xv0q1c9872nf"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-bui" ,emacs-bui)
|
||||
|
@ -16340,3 +16340,35 @@ themselves live in an Org-mode file. As such, this leverages the power of
|
|||
Org-mode (the notes may have outlines, latex fragments, babel, etc...) while
|
||||
acting like notes that are made @emph{in} the document.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-multi-term
|
||||
(let ((commit "0804b11e52b960c80f5cd0712ee1e53ae70d83a4"))
|
||||
(package
|
||||
(name "emacs-multi-term")
|
||||
(version "1.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/manateelazycat/multi-term.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0apvidmvb7rv05qjnjhax42ma8wrimik5vxx620dlbv17svz7iyf"))))
|
||||
(build-system emacs-build-system)
|
||||
(inputs `(("zsh" ,zsh)))
|
||||
(home-page "https://github.com/manateelazycat/multi-term")
|
||||
(synopsis "Manage multiple terminal buffers in Emacs")
|
||||
(description
|
||||
"This package enhances @code{term.el} with the following features:
|
||||
|
||||
@enumerate
|
||||
@item Functions to switch between multiple terminal buffers
|
||||
@item List of keys to be intercepted by @code{emacs-multi-term} instead of by
|
||||
the underlying terminal
|
||||
@item Kills the unused buffer left after exiting the terminal
|
||||
@item Kills the running sub-processes along with the terminal when killing the
|
||||
it forcibly
|
||||
@item Dedicated window for debugging program.
|
||||
@end enumerate")
|
||||
(license license:gpl3+))))
|
||||
|
|
|
@ -1185,7 +1185,7 @@ play them on systems for which they were never designed!")
|
|||
(define-public mame
|
||||
(package
|
||||
(name "mame")
|
||||
(version "0.210")
|
||||
(version "0.211")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -1195,7 +1195,7 @@ play them on systems for which they were never designed!")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"08c62mc8aajzh44q36qvmrcq404hdzh3i8wwdfnvn0c4w8dbf486"))
|
||||
"0gbxgncbzmmplijg0c1ibwsb87fbmfvs1kjflh002yyx8yvfw83z"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Remove bundled libraries.
|
||||
|
|
|
@ -935,7 +935,7 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ")
|
|||
(define-public python-duniterpy
|
||||
(package
|
||||
(name "python-duniterpy")
|
||||
(version "0.54.1")
|
||||
(version "0.54.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -946,7 +946,7 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"15z5wc3ahvv8axyiqmf7hd4y91ahh1x4bfmgsqxwygyhswl1yjq8"))))
|
||||
"1k3rpfc9zxj9z50cr4zjfyzdla9ap5mj1v1rlcriqmflgb5cmiba"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; Tests fail with "AttributeError: module 'attr' has no attribute 's'".
|
||||
|
@ -993,7 +993,7 @@ main features are:
|
|||
(define-public silkaj
|
||||
(package
|
||||
(name "silkaj")
|
||||
(version "0.7.0")
|
||||
(version "0.7.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -1003,7 +1003,7 @@ main features are:
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pnd5v15sgxxm114sbs0z24a4dars5hy1nabc9v9ask7kxzrxs9y"))))
|
||||
"059k2kil2l8jcm4wp86w1z7y8p26rww7d3l5fzds0qq2dzvkvzgs"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ;no test
|
||||
|
|
|
@ -48,7 +48,7 @@
|
|||
(define-public flashrom
|
||||
(package
|
||||
(name "flashrom")
|
||||
(version "1.0.1")
|
||||
(version "1.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -56,7 +56,7 @@
|
|||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0i6yrrl69hrqmwd7azj7x3j46m0qpvzmk3b5basym7mnlpfzhyfm"))))
|
||||
"06afq680n9p34hi3vrkn12vd1pfyq2062db9qqbi4hi21k3skbdf"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("dmidecode" ,dmidecode)
|
||||
("pciutils" ,pciutils)
|
||||
|
|
|
@ -152,14 +152,14 @@ freedesktop.org project.")
|
|||
(define-public libinput
|
||||
(package
|
||||
(name "libinput")
|
||||
(version "1.13.2")
|
||||
(version "1.13.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://freedesktop.org/software/libinput/"
|
||||
"libinput-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0vbapc90m49n0z8w8w4v0qf1iiwaixw9h79jfmps9pj8hdls17qx"))))
|
||||
"07a0w7rak7rvnh6g4j0akwjxwinxfszc1xi9mrx12fv82k3mgsyk"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("-Ddocumentation=false")))
|
||||
|
|
|
@ -46,6 +46,7 @@
|
|||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages video)
|
||||
#:use-module (gnu packages vulkan)
|
||||
#:use-module (gnu packages xdisorg)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xorg)
|
||||
|
@ -223,7 +224,7 @@ also known as DXTn or DXTC) for Mesa.")
|
|||
(define-public mesa
|
||||
(package
|
||||
(name "mesa")
|
||||
(version "19.0.4")
|
||||
(version "19.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -235,7 +236,7 @@ also known as DXTn or DXTC) for Mesa.")
|
|||
version "/mesa-" version ".tar.xz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0iyffj3xd7f0vsayirswh6aia37ba26hkihpz273hxwd8hpz7y9r"))
|
||||
"10amy5sdmpjbskr3xazgk0jyli8xpgi0y1nsmjr76hx8nhb4n4bj"))
|
||||
(patches
|
||||
(search-patches "mesa-skip-disk-cache-test.patch"))))
|
||||
(build-system meson-build-system)
|
||||
|
@ -269,6 +270,13 @@ also known as DXTn or DXTC) for Mesa.")
|
|||
`(("bison" ,bison)
|
||||
("flex" ,flex)
|
||||
("gettext" ,gettext-minimal)
|
||||
,@(match (%current-system)
|
||||
((or "x86_64-linux" "i686-linux")
|
||||
`(("glslang" ,glslang)
|
||||
("vulkan-headers" ,vulkan-headers)
|
||||
("vulkan-loader" ,vulkan-loader)))
|
||||
(_
|
||||
`()))
|
||||
("pkg-config" ,pkg-config)
|
||||
("python" ,python)
|
||||
("python-mako" ,python-mako)
|
||||
|
@ -305,6 +313,13 @@ also known as DXTn or DXTC) for Mesa.")
|
|||
(_
|
||||
'("-Dvulkan-drivers=auto")))
|
||||
|
||||
;; Enable the Vulkan overlay layer on i686-linux and x86-64-linux.
|
||||
,@(match (%current-system)
|
||||
((or "x86_64-linux" "i686-linux")
|
||||
'("-Dvulkan-overlay-layer=true"))
|
||||
(_
|
||||
'()))
|
||||
|
||||
;; Also enable the tests.
|
||||
"-Dbuild-tests=true"
|
||||
|
||||
|
|
|
@ -110,6 +110,7 @@ arrays of data.")
|
|||
(uri (string-append
|
||||
"https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-"
|
||||
version ".tar.xz"))
|
||||
(patches (search-patches "gstreamer-buffer-reset-offset.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"003wy1p1in85p9sr5jsyhbnwqaiwz069flwkhyx7qhxy31qjz3hf"))))
|
||||
|
@ -119,19 +120,7 @@ arrays of data.")
|
|||
`(#:configure-flags
|
||||
(list (string-append "--with-html-dir="
|
||||
(assoc-ref %outputs "doc")
|
||||
"/share/gtk-doc/html"))
|
||||
|
||||
,@(if (not (target-64bit?))
|
||||
;; Skip test that fails on 32-bit systems:
|
||||
;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/316>.
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(add-before 'check 'disable-gstbufferpool-test
|
||||
(lambda _
|
||||
(substitute* "tests/check/Makefile"
|
||||
(("^[[:blank:]]+gst/gstbufferpool.*$")
|
||||
""))
|
||||
#t))))
|
||||
'())))
|
||||
"/share/gtk-doc/html"))))
|
||||
(propagated-inputs `(("glib" ,glib))) ; required by gstreamer-1.0.pc.
|
||||
(native-inputs
|
||||
`(("bison" ,bison)
|
||||
|
|
|
@ -732,7 +732,7 @@ application suites.")
|
|||
(name "gtk+")
|
||||
;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in
|
||||
;; mate.scm will also need to be updated.
|
||||
(version "3.24.8")
|
||||
(version "3.24.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
|
@ -740,7 +740,7 @@ application suites.")
|
|||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"16f71bbkhwhndcsrpyhjia3b77cb5ksf5c45lyfgws4pkgg64sb6"))
|
||||
"0dg6jf2763sp740ls6b5y86b5b9zhz3zj0sbmar2xpws1lkv0zjp"))
|
||||
(patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
|
||||
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
|
||||
(outputs '("out" "bin" "doc"))
|
||||
|
@ -1182,7 +1182,7 @@ extensive documentation, including API reference and a tutorial.")
|
|||
;; In 'Requires' of gtksourceviewmm-3.0.pc.
|
||||
`(("glibmm" ,glibmm)
|
||||
("gtkmm" ,gtkmm)
|
||||
("gtksourceview" ,gtksourceview)))
|
||||
("gtksourceview" ,gtksourceview-3)))
|
||||
(synopsis "C++ interface to the GTK+ 'GtkTextView' widget")
|
||||
(description
|
||||
"gtksourceviewmm is a portable C++ library that extends the standard GTK+
|
||||
|
|
|
@ -2326,82 +2326,55 @@ more expressive and flexible than the traditional @code{format} procedure.")
|
|||
(license license:bsd-3))))
|
||||
|
||||
(define-public emacsy
|
||||
(let ((commit "7d49cc1425d5d209bdb82cac0d8ea0694b8b3784")
|
||||
(revision "4"))
|
||||
(package
|
||||
(name "emacsy")
|
||||
(version (string-append "0.1.2-" revision "." (string-take commit 7)))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.com/janneke/emacsy.git")
|
||||
(commit commit)))
|
||||
(file-name (string-append name "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0k9yns1v8zn135w60sx96nqs2bm2p2dvcvlm987hkw4lbff9ii6i"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("emacsy-webkit-gtk"
|
||||
,(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.com/janneke/emacsy-webkit-gtk.git")
|
||||
(commit "35ded1b3e997fd779a17e0c4a2c73741718562d9")))
|
||||
(file-name (string-append "emacsy-webkit-gtk" "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gp0li2rbp6in926r3hrww6cnh864pp46v1din2pgmd7vzzl7kg0"))))
|
||||
("hello-emacsy"
|
||||
,(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.com/janneke/hello-emacsy.git")
|
||||
(commit "2c117e5286a261be4ff24938f3ae1d348396c538")))
|
||||
(file-name (string-append "hello-emacsy" "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"15ykd7s8axcy8ym4v71fgal4x28fxnim0pv0jmpi3dnhizr63zqn"))))
|
||||
("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("bzip2" ,bzip2)
|
||||
("guile" ,guile-2.2)
|
||||
("gettext" ,gnu-gettext)
|
||||
("libtool" ,libtool)
|
||||
("noweb" ,noweb)
|
||||
("perl" ,perl)
|
||||
("pkg-config" ,pkg-config)
|
||||
("texinfo" ,texinfo)
|
||||
("texlive" ,texlive)))
|
||||
(propagated-inputs
|
||||
`(("guile-lib" ,guile-lib)
|
||||
("guile-readline" ,guile-readline)
|
||||
("freeglut" ,freeglut)
|
||||
("gssettings-desktop-schemas" ,gsettings-desktop-schemas)
|
||||
("webkitgtk" ,webkitgtk)))
|
||||
(inputs `(("guile" ,guile-2.2)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'unpack-examples
|
||||
(lambda _
|
||||
(copy-recursively (assoc-ref %build-inputs "emacsy-webkit-gtk")
|
||||
"example/emacsy-webkit-gtk")
|
||||
(copy-recursively (assoc-ref %build-inputs "hello-emacsy")
|
||||
"example/hello-emacsy")))
|
||||
(add-before 'configure 'setenv
|
||||
(lambda _
|
||||
(setenv "GUILE_AUTO_COMPILE" "0"))))))
|
||||
(home-page "https://github.com/shanecelis/emacsy/")
|
||||
(synopsis "Embeddable GNU Emacs-like library using Guile")
|
||||
(description
|
||||
"Emacsy is an embeddable GNU Emacs-like library that uses GNU Guile
|
||||
(package
|
||||
(name "emacsy")
|
||||
(version "0.4.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://download.savannah.nongnu.org/releases/"
|
||||
name "/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1cpb85dl1nibd34c2x2h7vfmjpkgh353p5b1w20v6cs6gmvgg4np"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("bzip2" ,bzip2)
|
||||
("guile" ,guile-2.2)
|
||||
("gettext" ,gnu-gettext)
|
||||
("libtool" ,libtool)
|
||||
("perl" ,perl)
|
||||
("pkg-config" ,pkg-config)
|
||||
("texinfo" ,texinfo)
|
||||
("texlive" ,texlive)))
|
||||
(propagated-inputs
|
||||
`(("dbus-glib" ,dbus-glib)
|
||||
("guile" ,guile-2.2)
|
||||
("guile-lib" ,guile-lib)
|
||||
("guile-readline" ,guile-readline)
|
||||
("glib-networking" ,glib-networking)
|
||||
("freeglut" ,freeglut)
|
||||
("gssettings-desktop-schemas" ,gsettings-desktop-schemas)
|
||||
("webkitgtk" ,webkitgtk)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'setenv
|
||||
(lambda _
|
||||
(setenv "GUILE_AUTO_COMPILE" "0")
|
||||
#t)))))
|
||||
(home-page "https://savannah.nongnu.org/projects/emacsy")
|
||||
(synopsis "Embeddable GNU Emacs-like library using Guile")
|
||||
(description
|
||||
"Emacsy is an embeddable Emacs-like library that uses GNU Guile
|
||||
as extension language. Emacsy can give a C program an Emacsy feel with
|
||||
keymaps, minibuffer, recordable macros, history, tab completion, major
|
||||
and minor modes, etc., and can also be used as a pure Guile library. It
|
||||
comes with a simple counter example using GLUT and browser examples in C
|
||||
using gtk+-3 and webkitgtk.")
|
||||
(license license:gpl3+))))
|
||||
comes with a simple counter example using FreeGLUT and browser examples
|
||||
in C using Gtk+-3 and WebKitGtk.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public guile-jpeg
|
||||
(let ((commit "6a1673578b297c2c1b28e44a76bd5c49e76a5046")
|
||||
|
|
|
@ -822,3 +822,47 @@ minimal dependencies.")
|
|||
cryptographic ciphers, and is used by the test runners of various Haskell
|
||||
implementations of cryptographic ciphers.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-hedgehog
|
||||
(package
|
||||
(name "ghc-hedgehog")
|
||||
(version "0.6.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://hackage/package/hedgehog/hedgehog-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0xz10ycdm5vk9nrcym1fi83k19frfwqz18bz8bnpzwvaj0j41yfj"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-ansi-terminal" ,ghc-ansi-terminal-0.8)
|
||||
("ghc-async" ,ghc-async)
|
||||
("ghc-concurrent-output" ,ghc-concurrent-output)
|
||||
("ghc-exceptions" ,ghc-exceptions)
|
||||
("ghc-lifted-async" ,ghc-lifted-async)
|
||||
("ghc-mmorph" ,ghc-mmorph)
|
||||
("ghc-monad-control" ,ghc-monad-control)
|
||||
("ghc-pretty-show" ,ghc-pretty-show)
|
||||
("ghc-primitive" ,ghc-primitive)
|
||||
("ghc-random" ,ghc-random)
|
||||
("ghc-resourcet" ,ghc-resourcet)
|
||||
("ghc-semigroups" ,ghc-semigroups)
|
||||
("ghc-stm" ,ghc-stm)
|
||||
("ghc-th-lift" ,ghc-th-lift)
|
||||
("ghc-transformers-base" ,ghc-transformers-base)
|
||||
("ghc-wl-pprint-annotated"
|
||||
,ghc-wl-pprint-annotated)))
|
||||
(home-page "https://hedgehog.qa")
|
||||
(synopsis "Property-based testing in the spirt of QuickCheck")
|
||||
(description
|
||||
"Hedgehog is a property-based testing system, in the spirit of
|
||||
QuickCheck. Hedgehog uses integrated shrinking, so shrinks obey the invariants
|
||||
of generated values by construction.
|
||||
|
||||
To get started quickly, see the examples:
|
||||
@uref{https://github.com/hedgehogqa/haskell-hedgehog/tree/master/hedgehog-example}")
|
||||
(license license:bsd-3)))
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2018, 2019 Gabriel Hondet <gabrielhondet@gmail.com>
|
||||
;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
|
||||
;;; Copyright © 2019 Jacob MacDonald <jaccarmac@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -2685,7 +2686,7 @@ library, including the ability to split random number generators.")
|
|||
(define-public ghc-primitive
|
||||
(package
|
||||
(name "ghc-primitive")
|
||||
(version "0.6.3.0")
|
||||
(version "0.6.4.0")
|
||||
(outputs '("out" "doc"))
|
||||
(source
|
||||
(origin
|
||||
|
@ -2696,7 +2697,7 @@ library, including the ability to split random number generators.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0mcmbnj08wd6zfwn7xk6zf5hy5zwbla5v78pw0dpymqg9s0gzpnd"))))
|
||||
"0r0cda7acvplgwaxy69kviv4jp7kkfi038by68gj4yfx4iwszgjc"))))
|
||||
(build-system haskell-build-system)
|
||||
(home-page
|
||||
"https://github.com/haskell/primitive")
|
||||
|
@ -4085,7 +4086,7 @@ instances of the @code{Pretty} class.")
|
|||
"0gnb4mkqryv08vncxnj0bzwcnd749613yw3cxfzw6y3nsldp4c56"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-ansi-terminal" ,ghc-ansi-terminal)))
|
||||
`(("ghc-ansi-terminal" ,ghc-ansi-terminal-0.8)))
|
||||
(home-page "https://github.com/ekmett/ansi-wl-pprint")
|
||||
(synopsis "Wadler/Leijen Pretty Printer for colored ANSI terminal output")
|
||||
(description "This is a pretty printing library based on Wadler's paper
|
||||
|
@ -4362,7 +4363,7 @@ interface.")
|
|||
(define-public ghc-ansi-terminal
|
||||
(package
|
||||
(name "ghc-ansi-terminal")
|
||||
(version "0.8.0.4")
|
||||
(version "0.9.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -4372,7 +4373,7 @@ interface.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0428gq8m3fdnb7ldcsyk97qcch76hcxbgh2666p6f76fs2qbhg7b"))))
|
||||
"1yr0ld0kqns3w3j9gl62bdwshvyazidx4dv1qkvq19ivnf08w23l"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-colour" ,ghc-colour)))
|
||||
|
@ -4383,6 +4384,21 @@ allows cursor movement, screen clearing, color output showing or hiding the
|
|||
cursor, and changing the title.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-ansi-terminal-0.8
|
||||
(package (inherit ghc-ansi-terminal)
|
||||
(name "ghc-ansi-terminal")
|
||||
(version "0.8.0.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/ansi-terminal/ansi-terminal-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0428gq8m3fdnb7ldcsyk97qcch76hcxbgh2666p6f76fs2qbhg7b"))))))
|
||||
|
||||
(define-public ghc-vault
|
||||
(package
|
||||
(name "ghc-vault")
|
||||
|
@ -11591,4 +11607,122 @@ Replace some ASCII sequences by their Unicode equivalent (turned off by
|
|||
default)
|
||||
@end itemize")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-validation
|
||||
(package
|
||||
(name "ghc-validation")
|
||||
(version "1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://hackage/package/validation/validation-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1acj7mh3581ks405xswxw6667z7y1y0slisg6jvp6chc191ji9l5"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'add-setup-script
|
||||
(lambda _
|
||||
;; The usual "Setup.hs" script is missing from the source.
|
||||
(with-output-to-file "Setup.hs"
|
||||
(lambda ()
|
||||
(format #t "import Distribution.Simple~%")
|
||||
(format #t "main = defaultMain~%"))))))))
|
||||
(inputs
|
||||
`(("ghc-semigroups" ,ghc-semigroups)
|
||||
("ghc-semigroupoids" ,ghc-semigroupoids)
|
||||
("ghc-bifunctors" ,ghc-bifunctors)
|
||||
("ghc-lens" ,ghc-lens)))
|
||||
(native-inputs
|
||||
`(("ghc-hedgehog" ,ghc-hedgehog)
|
||||
("ghc-hunit" ,ghc-hunit)))
|
||||
(home-page "https://github.com/qfpl/validation")
|
||||
(synopsis
|
||||
"Data-type like Either but with an accumulating Applicative")
|
||||
(description
|
||||
"A data-type like Either but with differing properties and type-class
|
||||
instances.
|
||||
|
||||
Library support is provided for this different representation, including
|
||||
@code{lens}-related functions for converting between each and abstracting over
|
||||
their similarities.
|
||||
|
||||
The @code{Validation} data type is isomorphic to @code{Either}, but has an
|
||||
instance of @code{Applicative} that accumulates on the error side. That is to
|
||||
say, if two (or more) errors are encountered, they are appended using a
|
||||
@{Semigroup} operation.
|
||||
|
||||
As a consequence of this @code{Applicative} instance, there is no
|
||||
corresponding @code{Bind} or @code{Monad} instance. @code{Validation} is an
|
||||
example of, \"An applicative functor that is not a monad.\"")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-concurrent-output
|
||||
(package
|
||||
(name "ghc-concurrent-output")
|
||||
(version "1.10.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://hackage/package/concurrent-output/concurrent-output-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1wnjxnwbc3l853kiiijagzjyb6fmhz3lmkwls24plbximl1qrr22"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-async" ,ghc-async)
|
||||
("ghc-stm" ,ghc-stm)
|
||||
("ghc-exceptions" ,ghc-exceptions)
|
||||
("ghc-ansi-terminal" ,ghc-ansi-terminal)
|
||||
("ghc-terminal-size" ,ghc-terminal-size)))
|
||||
(home-page
|
||||
"https://hackage.haskell.org/package/concurrent-output")
|
||||
(synopsis
|
||||
"Ungarble output from several threads or commands")
|
||||
(description
|
||||
"Lets multiple threads and external processes concurrently output to the
|
||||
console, without it getting all garbled up.
|
||||
|
||||
Built on top of that is a way of defining multiple output regions, which are
|
||||
automatically laid out on the screen and can be individually updated by
|
||||
concurrent threads. Can be used for progress displays etc.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public ghc-wl-pprint-annotated
|
||||
(package
|
||||
(name "ghc-wl-pprint-annotated")
|
||||
(version "0.1.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://hackage/package/wl-pprint-annotated/wl-pprint-annotated-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1br7qyf27iza213inwhf9bm2k6in0zbmfw6w4clqlc9f9cj2nrkb"))))
|
||||
(build-system haskell-build-system)
|
||||
(native-inputs
|
||||
`(("ghc-tasty" ,ghc-tasty)
|
||||
("ghc-tasty-hunit" ,ghc-tasty-hunit)))
|
||||
(home-page
|
||||
"https://github.com/minad/wl-pprint-annotated#readme")
|
||||
(synopsis
|
||||
"Wadler/Leijen pretty printer with annotation support")
|
||||
(description
|
||||
"Annotations are useful for coloring. This is a limited version of
|
||||
@code{wl-pprint-extras} without support for point effects and without the free
|
||||
monad. Like in @code{annotated-wl-pprint}, only annotations are supported.
|
||||
Compared to @code{annotated-wl-pprint} this library provides a slightly
|
||||
modernized interface.")
|
||||
(license license:bsd-3)))
|
||||
;;; haskell.scm ends here
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -84,6 +85,22 @@ C/C++ part.")
|
|||
(license x11)
|
||||
(home-page "http://site.icu-project.org/")))
|
||||
|
||||
(define-public icu4c-64
|
||||
(package
|
||||
(inherit icu4c)
|
||||
(version "64.2")
|
||||
(source (origin
|
||||
(inherit (package-source icu4c))
|
||||
(uri (string-append
|
||||
"http://download.icu-project.org/files/icu4c/" version "/icu4c-"
|
||||
(string-map (lambda (x) (if (char=? x #\.) #\_ x)) version)
|
||||
"-src.tgz"))
|
||||
(sha256
|
||||
(base32 "0v0xsf14xwlj125y9fd8lrhsaych4d8liv8gr746zng6g225szb2"))))
|
||||
(native-inputs
|
||||
`(;; For tests.
|
||||
("python" ,python)))))
|
||||
|
||||
(define-public java-icu4j
|
||||
(package
|
||||
(name "java-icu4j")
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -477,3 +478,28 @@ minimalism and usability in mind. Its features include animated GIF
|
|||
controls, file history, rotation/mirroring, and multithreaded
|
||||
preloading.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public chafa
|
||||
(package
|
||||
(name "chafa")
|
||||
(version "1.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hpjansson.org/chafa/releases/chafa-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"00cf2z52az0z6bzc3hfm4l8infipy5ck410wqmbaybd2csjr3m29"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("glib" ,glib)
|
||||
("imagemagick" ,imagemagick)))
|
||||
(synopsis "Convert images to ANSI/Unicode characters")
|
||||
(description
|
||||
"Chafa is a command-line utility that converts all kinds of images,
|
||||
including animated GIFs, into ANSI/Unicode character output that can be
|
||||
displayed in a terminal.")
|
||||
(home-page "https://hpjansson.org/chafa/")
|
||||
(license license:lgpl3+)))
|
||||
|
|
|
@ -48,14 +48,14 @@
|
|||
;; The 7 release series has an incompatible API, while the 6 series is still
|
||||
;; maintained. Don't update to 7 until we've made sure that the ImageMagick
|
||||
;; users are ready for the 7-series API.
|
||||
(version "6.9.10-49")
|
||||
(version "6.9.10-51")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://imagemagick/ImageMagick-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1w4vsppyn1h58x3z4hgly5qxp16q66l18y9rwavrravw0kiq64fs"))))
|
||||
"03c5r14ycp7mmlk6pryfcnpvjjnghk3z7dbjd1b7m1bgzmw21jhj"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch")
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
;;; Copyright © 2017, 2018 Mark Meyer <mark@ofosos.org>
|
||||
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
|
||||
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -319,29 +320,21 @@ plugins, as well as code to create plugins, or complete applications.")
|
|||
(define-public krita
|
||||
(package
|
||||
(name "krita")
|
||||
(version "4.1.7.101")
|
||||
(version "4.2.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://kde/stable/krita/"
|
||||
(version-prefix version 3)
|
||||
"/" name "-" version ".tar.gz"))
|
||||
"/krita-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0pvghb17vj3y19wa1n1zfg3yl5206ir3y45znrgdgdw076m5pjav"))))
|
||||
"1pzk5bqp3kh22djhvsvmsc7ybirs4hsnkpg1y9677m2gxwbqnnps"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:configure-flags
|
||||
(list "-DBUILD_TESTING=OFF" "-DKDE4_BUILD_TESTS=OFF"
|
||||
(string-append "-DWITH_FFTW3="
|
||||
(assoc-ref %build-inputs "fftw"))
|
||||
(string-append "-DWITH_GSL="
|
||||
(assoc-ref %build-inputs "gsl"))
|
||||
(string-append "-DWITH_LibRaw="
|
||||
(assoc-ref %build-inputs "libraw"))
|
||||
(string-append "-DWITH_TIFF="
|
||||
(assoc-ref %build-inputs "libtiff"))
|
||||
(list "-DBUILD_TESTING=OFF"
|
||||
(string-append "-DCMAKE_CXX_FLAGS=-I"
|
||||
(assoc-ref %build-inputs "ilmbase")
|
||||
"/include/OpenEXR"))
|
||||
|
@ -366,14 +359,15 @@ plugins, as well as code to create plugins, or complete applications.")
|
|||
("extra-cmake-modules" ,extra-cmake-modules)
|
||||
("gettext-minimal" ,gettext-minimal)
|
||||
("kitemmodels" ,kitemmodels)
|
||||
("pkg-config" ,pkg-config)
|
||||
("qwt" ,qwt)
|
||||
("vc" ,vc)))
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)
|
||||
("qtdeclarative" ,qtdeclarative)
|
||||
("qtmultimedia" ,qtmultimedia)
|
||||
("qtx11extras" ,qtx11extras)
|
||||
("qtsvg" ,qtsvg)
|
||||
`(("boost" ,boost)
|
||||
("exiv2" ,exiv2)
|
||||
("fftw" ,fftw)
|
||||
("gsl" ,gsl)
|
||||
("ilmbase" ,ilmbase)
|
||||
("karchive" ,karchive)
|
||||
("kcompletion" ,kcompletion)
|
||||
("kconfig" ,kconfig)
|
||||
|
@ -387,23 +381,24 @@ plugins, as well as code to create plugins, or complete applications.")
|
|||
("kwidgetsaddons" ,kwidgetsaddons)
|
||||
("kwindowsystem" ,kwindowsystem)
|
||||
("kxmlgui" ,kxmlgui)
|
||||
("boost" ,boost)
|
||||
("exiv2" ,exiv2)
|
||||
("lcms" ,lcms)
|
||||
("libpng" ,libpng)
|
||||
("libjpeg-turbo" ,libjpeg-turbo)
|
||||
("zlib" ,zlib)
|
||||
("libpng" ,libpng)
|
||||
("libraw" ,libraw-0.18)
|
||||
("libtiff" ,libtiff)
|
||||
("libx11" ,libx11)
|
||||
("libxcb" ,libxcb)
|
||||
("libxi" ,libxi)
|
||||
("fftw" ,fftw)
|
||||
("gsl" ,gsl)
|
||||
("poppler-qt5" ,poppler-qt5)
|
||||
("libraw" ,libraw-0.18)
|
||||
("libtiff" ,libtiff)
|
||||
("openexr" ,openexr)
|
||||
("perl" ,perl)
|
||||
("ilmbase" ,ilmbase)
|
||||
("openexr" ,openexr)))
|
||||
("poppler-qt5" ,poppler-qt5)
|
||||
("qtbase" ,qtbase)
|
||||
("qtdeclarative" ,qtdeclarative)
|
||||
("qtmultimedia" ,qtmultimedia)
|
||||
("qtsvg" ,qtsvg)
|
||||
("qtx11extras" ,qtx11extras)
|
||||
("quazip" ,quazip)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "https://krita.org")
|
||||
(synopsis "Digital painting application")
|
||||
(description
|
||||
|
|
|
@ -457,8 +457,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
(make-linux-libre-headers %linux-libre-4.19-version
|
||||
%linux-libre-4.19-hash))
|
||||
|
||||
(define %linux-libre-4.14-version "4.14.130")
|
||||
(define %linux-libre-4.14-hash "1fk6ds0q2rykr6byvfass8f5a9k6qq9sk261wjcfp1gn8b9wmxws")
|
||||
(define %linux-libre-4.14-version "4.14.131")
|
||||
(define %linux-libre-4.14-hash "1qcf4cg83zpjirkj8l09y07x4zzskypngampvfw7zyazynwwgs1i")
|
||||
|
||||
(define-public linux-libre-4.14
|
||||
(make-linux-libre %linux-libre-4.14-version
|
||||
|
@ -471,14 +471,14 @@ It has been modified to remove all non-free binary blobs.")
|
|||
%linux-libre-4.14-hash))
|
||||
|
||||
(define-public linux-libre-4.9
|
||||
(make-linux-libre "4.9.183"
|
||||
"1w3syih3fggwkpcl6zkmm9f6577r2jvack4br5ffccgcddkz52ia"
|
||||
(make-linux-libre "4.9.184"
|
||||
"0q3ggndwf0rwsb3xv33zl9awkd1803h2l9b4g6d6ps3f2sjxwxwa"
|
||||
'("x86_64-linux" "i686-linux")
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.4
|
||||
(make-linux-libre "4.4.183"
|
||||
"1v21n5kwnv9n18gfp2dz9hsdkwmfwigalr82xsnwbzhs0x561bxx"
|
||||
(make-linux-libre "4.4.184"
|
||||
"05v295wk9fid17n5plkx6p9nwz6dvpcn2r7khwsq30sy3pg0vxv5"
|
||||
'("x86_64-linux" "i686-linux")
|
||||
#:configuration-file kernel-config
|
||||
#:extra-options
|
||||
|
@ -3535,7 +3535,7 @@ and copy/paste text in the console and in xterm.")
|
|||
(define-public btrfs-progs
|
||||
(package
|
||||
(name "btrfs-progs")
|
||||
(version "5.1")
|
||||
(version "5.1.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kernel.org/linux/kernel/"
|
||||
|
@ -3543,7 +3543,7 @@ and copy/paste text in the console and in xterm.")
|
|||
"btrfs-progs-v" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0dgh56pamav8wb9nmabjwdlpcazvqc9pgzwablxn77mqh0qrhkaq"))))
|
||||
"06xybs7rglxjqkbzl2409acb3rgmnc5zc0xhyaxsc2p1x5yipfcw"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out"
|
||||
"static")) ; static versions of the binaries in "out"
|
||||
|
|
|
@ -5665,6 +5665,45 @@ basic everyday functions and macros.")
|
|||
(define-public ecl-fare-utils
|
||||
(sbcl-package->ecl-package sbcl-fare-utils))
|
||||
|
||||
(define-public sbcl-trivial-utf-8
|
||||
(let ((commit "4d427cfbb1c452436a0efb71c3205c9da67f718f")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "sbcl-trivial-utf-8")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url (string-append "https://gitlab.common-lisp.net/"
|
||||
"trivial-utf-8/trivial-utf-8.git"))
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jz27gz8gvqdmvp3k9bxschs6d5b3qgk94qp2bj6nv1d0jc3m1l1"))))
|
||||
(arguments
|
||||
;; Guix incorrectly assumes the "8" is part of the version
|
||||
;; number and lobs it off.
|
||||
`(#:asd-file "trivial-utf-8.asd"
|
||||
#:asd-system-name "trivial-utf-8"))
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(synopsis "UTF-8 input/output library")
|
||||
(description
|
||||
"The Babel library solves a similar problem while understanding more
|
||||
encodings. Trivial UTF-8 was written before Babel existed, but for new
|
||||
projects you might be better off going with Babel. The one plus that Trivial
|
||||
UTF-8 has is that it doesn't depend on any other libraries.")
|
||||
(home-page "https://common-lisp.net/project/trivial-utf-8/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public cl-trivial-utf-8
|
||||
(sbcl-package->cl-source-package sbcl-trivial-utf-8))
|
||||
|
||||
(define-public ecl-trivial-utf-8
|
||||
(sbcl-package->ecl-package sbcl-trivial-utf-8))
|
||||
|
||||
(define-public sbcl-idna
|
||||
(package
|
||||
(name "sbcl-idna")
|
||||
|
|
|
@ -48,7 +48,7 @@
|
|||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages xml))
|
||||
|
||||
(define-public llvm
|
||||
(define-public llvm-8
|
||||
(package
|
||||
(name "llvm")
|
||||
(version "8.0.0")
|
||||
|
@ -99,6 +99,8 @@ languages is in development. The compiler infrastructure includes mirror sets
|
|||
of programming tools as well as libraries with equivalent functionality.")
|
||||
(license license:ncsa)))
|
||||
|
||||
(define-public llvm llvm-8)
|
||||
|
||||
(define* (clang-runtime-from-llvm llvm hash
|
||||
#:optional (patches '()))
|
||||
(package
|
||||
|
@ -371,6 +373,28 @@ with that of libgomp, the GNU Offloading and Multi Processing Library.")
|
|||
"0svk1f70hvpwrjp6x5i9kqwrqwxnmcrw5s7f4cxyd100mdd12k08"
|
||||
#:patches '("clang-7.0-libc-search-path.patch")))
|
||||
|
||||
(define-public llvm-7
|
||||
(package
|
||||
(inherit llvm)
|
||||
(version "7.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://llvm.org/releases/"
|
||||
version "/llvm-" version ".src.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"16s196wqzdw4pmri15hadzqgdi926zln3an2viwyq0kini6zr3d3"))))))
|
||||
|
||||
(define-public clang-runtime-7
|
||||
(clang-runtime-from-llvm
|
||||
llvm-7
|
||||
"065ybd8fsc4h2hikbdyricj6pyv4r7r7kpcikhb2y5zf370xybkq"))
|
||||
|
||||
(define-public clang-7
|
||||
(clang-from-llvm llvm-7 clang-runtime
|
||||
"067lwggnbg0w1dfrps790r5l6k8n5zwhlsw7zb6zvmfpwpfn4nx4"
|
||||
#:patches '("clang-7.0-libc-search-path.patch")))
|
||||
|
||||
(define-public llvm-6
|
||||
(package
|
||||
(inherit llvm)
|
||||
|
@ -542,9 +566,9 @@ with that of libgomp, the GNU Offloading and Multi Processing Library.")
|
|||
(inputs
|
||||
`(("llvm"
|
||||
,(package
|
||||
(inherit llvm)
|
||||
(inherit llvm-7)
|
||||
(source (origin
|
||||
(inherit (package-source llvm))
|
||||
(inherit (package-source llvm-7))
|
||||
(patches
|
||||
(list
|
||||
(origin
|
||||
|
|
|
@ -1463,30 +1463,30 @@ can solve two kinds of problems:
|
|||
"11wwxpy2q1bhxs2v41bqn05i2sb0905cj1xil6mg8l4k2kka4cq6"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("lapack" ,lapack)
|
||||
("qhull" ,qhull)
|
||||
("readline" ,readline)
|
||||
("gl2ps" ,gl2ps)
|
||||
("glpk" ,glpk)
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
("arpack" ,arpack-ng)
|
||||
("curl" ,curl)
|
||||
("fftw" ,fftw)
|
||||
("fftwf" ,fftwf)
|
||||
("arpack" ,arpack-ng)
|
||||
("pcre" ,pcre)
|
||||
("fltk" ,fltk)
|
||||
("fontconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
("gl2ps" ,gl2ps)
|
||||
("glpk" ,glpk)
|
||||
("glu" ,glu)
|
||||
("graphicsmagick" ,graphicsmagick)
|
||||
("hdf5" ,hdf5)
|
||||
("lapack" ,lapack)
|
||||
("libsndfile" ,libsndfile)
|
||||
("libxft" ,libxft)
|
||||
("mesa" ,mesa)
|
||||
("glu" ,glu)
|
||||
("zlib" ,zlib)
|
||||
("curl" ,curl)
|
||||
("texinfo" ,texinfo)
|
||||
("graphicsmagick" ,graphicsmagick)
|
||||
("suitesparse" ,suitesparse)
|
||||
("libsndfile" ,libsndfile)
|
||||
("pcre" ,pcre)
|
||||
("portaudio" ,portaudio)
|
||||
("alsa-lib" ,alsa-lib)))
|
||||
("qhull" ,qhull)
|
||||
("readline" ,readline)
|
||||
("suitesparse" ,suitesparse)
|
||||
("texinfo" ,texinfo)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs
|
||||
`(("lzip" ,lzip)
|
||||
("gfortran" ,gfortran)
|
||||
|
@ -3369,13 +3369,15 @@ packages.")
|
|||
;; Use `sh', not `/bin/sh'.
|
||||
(substitute* (find-files "." "Makefile|configure|SpewMakeInc\\.c")
|
||||
(("/bin/sh")
|
||||
"sh"))))
|
||||
"sh"))
|
||||
#t))
|
||||
;; Fix /bin/sh in generated make files.
|
||||
(add-after 'configure 'fix-/bin/sh-in-generated-files
|
||||
(lambda _
|
||||
(substitute* (find-files "." "^[Mm]ake\\.inc.*")
|
||||
(("/bin/sh")
|
||||
"sh"))))
|
||||
"sh"))
|
||||
#t))
|
||||
;; ATLAS configure program does not accepts the default flags
|
||||
;; passed by the 'gnu-build-system'.
|
||||
(replace 'configure
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
|
||||
;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com>
|
||||
;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si>
|
||||
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -129,6 +130,7 @@
|
|||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages texinfo)
|
||||
#:use-module (gnu packages tex)
|
||||
#:use-module (gnu packages time)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu packages video)
|
||||
|
@ -2816,6 +2818,33 @@ metadata as it goes using the MusicBrainz database. Then it provides a variety
|
|||
of tools for manipulating and accessing your music.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public beets-bandcamp
|
||||
(package
|
||||
(name "beets-bandcamp")
|
||||
(version "0.1.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "beets-bandcamp" version))
|
||||
(sha256
|
||||
(base32
|
||||
"04awg0zdhhg5h510fc1p3qkvr2l1qm6nf85hlr9z8im8a7xlka0i"))))
|
||||
(build-system python-build-system)
|
||||
(arguments '(#:tests? #f)) ; there are no tests
|
||||
(propagated-inputs
|
||||
`(("beets" ,beets)
|
||||
("python-isodate" ,python-isodate)))
|
||||
(inputs
|
||||
`(("python-beautifulsoup4" ,python-beautifulsoup4)
|
||||
("python-requests" ,python-requests)
|
||||
("python-six" ,python-six)))
|
||||
(home-page "https://github.com/unrblt/beets-bandcamp")
|
||||
(synopsis "Bandcamp plugin for beets")
|
||||
(description
|
||||
"This plugin for beets automatically obtains tag data from @uref{Bandcamp,
|
||||
https://bandcamp.com/}. It's also capable of getting song lyrics and album art
|
||||
using the beets FetchArt plugin.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public milkytracker
|
||||
(package
|
||||
(name "milkytracker")
|
||||
|
@ -3718,7 +3747,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
|
|||
(define-public musescore
|
||||
(package
|
||||
(name "musescore")
|
||||
(version "3.1")
|
||||
(version "3.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -3727,7 +3756,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"07xkn8gnnqzhj9cn1li5qpm2rfm86bmxbbfd76i1jx4v999icn0j"))
|
||||
"0719p4hjlq7skga8q4hvnd5w33vhrd1a1aygvqm9pn4na02zazy6"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Un-bundle OpenSSL and remove unused libraries.
|
||||
|
|
|
@ -70,7 +70,7 @@ in the Mozilla clients.")
|
|||
(define-public nss
|
||||
(package
|
||||
(name "nss")
|
||||
(version "3.44")
|
||||
(version "3.44.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (let ((version-with-underscores
|
||||
|
@ -81,7 +81,7 @@ in the Mozilla clients.")
|
|||
"nss-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"1zvabgxlyvz3fnv4w89y4a5qkscjmm88naf929dgvvgfnrchwqm5"))
|
||||
"1y0jvva4s3j7cjz22kqw2lsml0an1295bgpc2raf7kc9r60cpr7w"))
|
||||
;; Create nss.pc and nss-config.
|
||||
(patches (search-patches "nss-pkgconfig.patch"
|
||||
"nss-increase-test-timeout.patch"))))
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
|
||||
;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
|
||||
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2018, 2019 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2019 Vagrant Cascadian <vagrant@reproducible-builds.org>
|
||||
;;; Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
|
||||
|
@ -466,17 +466,32 @@ sub-directory.")
|
|||
(define-public stow
|
||||
(package
|
||||
(name "stow")
|
||||
(version "2.2.2")
|
||||
(version "2.3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/stow/stow-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1pvky9fayms4r6fhns8jd0vavszd7d979w62vfd5n88v614pdxz2"))))
|
||||
"0h8qr2rxsrkg6d8jxjk68r23jgn1dxdxyp4bnzzinpa8sjhfl905"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-stow
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(wrap-program (string-append out "/bin/stow")
|
||||
`("PERL5LIB" ":" prefix
|
||||
,(map (lambda (i) (string-append (assoc-ref inputs i)
|
||||
"/lib/perl5/site_perl"))
|
||||
'("perl-clone-choose" "perl-clone" "perl-hash-merge"))))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("perl" ,perl)))
|
||||
`(("perl" ,perl)
|
||||
("perl-clone" ,perl-clone)
|
||||
("perl-clone-choose" ,perl-clone-choose)
|
||||
("perl-hash-merge" ,perl-hash-merge)))
|
||||
(native-inputs
|
||||
`(("perl-test-simple" ,perl-test-simple)
|
||||
("perl-test-output" ,perl-test-output)
|
||||
|
@ -490,7 +505,7 @@ of data and makes them appear to be merged into the same directory. It is
|
|||
typically used for managing software packages installed from source, by
|
||||
letting you install them apart in distinct directories and then create
|
||||
symlinks to the files in a common directory such as /usr/local.")
|
||||
(license license:gpl2+)))
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public rpm
|
||||
(package
|
||||
|
|
|
@ -0,0 +1,59 @@
|
|||
Fix a buffer offset problem in GStreamer 1.16. Initially reported by Mark H.
|
||||
Weaver in <https://lists.gnu.org/archive/html/guix-devel/2019-06/msg00140.html>.
|
||||
|
||||
See also <https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/316>.
|
||||
|
||||
From 1734c9fc1a4f99b165383ae1eb02f04e0844a00c Mon Sep 17 00:00:00 2001
|
||||
From: Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||||
Date: Sat, 29 Jun 2019 09:22:05 -0400
|
||||
Subject: [PATCH] bufferpool: Fix the buffer size reset code
|
||||
|
||||
The offset in gst_buffer_resize() is additive. So to move back the
|
||||
offset to zero, we need to pass the opposite of the current offset. This
|
||||
was raised through the related unit test failingon 32bit as on 64bit
|
||||
the alignment padding was enough to hide the issue. The test was
|
||||
modified to also fail on 64bit. This patch will remove spurious
|
||||
assertions like:
|
||||
|
||||
assertion 'bufmax >= bufoffs + offset + size' failed
|
||||
|
||||
Fixes #316
|
||||
---
|
||||
gst/gstbufferpool.c | 7 +++++--
|
||||
tests/check/gst/gstbufferpool.c | 2 +-
|
||||
2 files changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/gst/gstbufferpool.c b/gst/gstbufferpool.c
|
||||
index e5c7a5872..619860e63 100644
|
||||
--- a/gst/gstbufferpool.c
|
||||
+++ b/gst/gstbufferpool.c
|
||||
@@ -1222,8 +1222,11 @@ default_reset_buffer (GstBufferPool * pool, GstBuffer * buffer)
|
||||
GST_BUFFER_OFFSET_END (buffer) = GST_BUFFER_OFFSET_NONE;
|
||||
|
||||
/* if the memory is intact reset the size to the full size */
|
||||
- if (!GST_BUFFER_FLAG_IS_SET (buffer, GST_BUFFER_FLAG_TAG_MEMORY))
|
||||
- gst_buffer_resize (buffer, 0, pool->priv->size);
|
||||
+ if (!GST_BUFFER_FLAG_IS_SET (buffer, GST_BUFFER_FLAG_TAG_MEMORY)) {
|
||||
+ gsize offset;
|
||||
+ gst_buffer_get_sizes (buffer, &offset, NULL);
|
||||
+ gst_buffer_resize (buffer, -offset, pool->priv->size);
|
||||
+ }
|
||||
|
||||
/* remove all metadata without the POOLED flag */
|
||||
gst_buffer_foreach_meta (buffer, remove_meta_unpooled, pool);
|
||||
diff --git a/tests/check/gst/gstbufferpool.c b/tests/check/gst/gstbufferpool.c
|
||||
index f0c3c8d8e..dd9b2dc03 100644
|
||||
--- a/tests/check/gst/gstbufferpool.c
|
||||
+++ b/tests/check/gst/gstbufferpool.c
|
||||
@@ -190,7 +190,7 @@ GST_START_TEST (test_buffer_modify_discard)
|
||||
gst_buffer_pool_acquire_buffer (pool, &buf, NULL);
|
||||
buffer_track_destroy (buf, &dcount);
|
||||
/* do resize, as we didn't modify the memory, pool should reuse this buffer */
|
||||
- gst_buffer_resize (buf, 5, 2);
|
||||
+ gst_buffer_resize (buf, 8, 2);
|
||||
gst_buffer_unref (buf);
|
||||
|
||||
/* buffer should've gone back into pool */
|
||||
--
|
||||
2.22.0
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
Fix build failure when USE_GSTREAMER_GL=off. See
|
||||
<https://bugs.webkit.org/show_bug.cgi?id=196440>.
|
||||
|
||||
This patch is taken from the upstream source repository:
|
||||
<https://git.webkit.org/?p=WebKit.git;a=commitdiff;h=e2dd6decbe25ea9498f1ba213808f34b232740c7>.
|
||||
|
||||
diff --git a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
|
||||
index 00a2af6489e..5cb5f7536ac 100644
|
||||
--- a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
|
||||
+++ b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
|
||||
@@ -1000,11 +1000,13 @@ void MediaPlayerPrivateGStreamerBase::updateTextureMapperFlags()
|
||||
break;
|
||||
}
|
||||
|
||||
+#if USE(GSTREAMER_GL)
|
||||
// When the imxvpudecoder is used, the texture sampling of the
|
||||
// directviv-uploaded texture returns an RGB value, so there's no need to
|
||||
// convert it.
|
||||
if (m_videoDecoderPlatform != WebKitGstVideoDecoderPlatform::ImxVPU)
|
||||
m_textureMapperFlags |= TEXTURE_MAPPER_COLOR_CONVERT_FLAG;
|
||||
+#endif
|
||||
}
|
||||
#endif
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015, 2016, 2017 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2015, 2016, 2017, 2019 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
|
||||
;;; Copyright © 2016, 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
|
||||
|
@ -1283,6 +1283,32 @@ objects.")
|
|||
(home-page "https://metacpan.org/release/Clone")
|
||||
(license (package-license perl))))
|
||||
|
||||
(define-public perl-clone-choose
|
||||
(package
|
||||
(name "perl-clone-choose")
|
||||
(version "0.010")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/H/HE/HERMES/"
|
||||
"Clone-Choose-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0cin2bjn5z8xhm9v4j7pwlkx88jnvz8al0njdjwyvs6fb0glh8sn"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-clone" ,perl-clone)
|
||||
("perl-clone-pp" ,perl-clone-pp)
|
||||
("perl-test-without-module" ,perl-test-without-module)))
|
||||
(propagated-inputs
|
||||
`(("perl-module-runtime" ,perl-module-runtime)))
|
||||
(home-page "https://metacpan.org/release/Clone-Choose")
|
||||
(synopsis "Choose appropriate Perl @code{clone} utility")
|
||||
(description "This @code{Clone::Choose} module checks several different
|
||||
modules which provide a @code{clone()} function and selects an appropriate
|
||||
one.")
|
||||
(license perl-license)))
|
||||
|
||||
(define-public perl-clone-pp
|
||||
(package
|
||||
(name "perl-clone-pp")
|
||||
|
@ -9562,7 +9588,7 @@ MYMETA.yml.")
|
|||
(define-public perl-module-build
|
||||
(package
|
||||
(name "perl-module-build")
|
||||
(version "0.4220")
|
||||
(version "0.4229")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -9570,7 +9596,7 @@ MYMETA.yml.")
|
|||
"Module-Build-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"18mm6k7d7cmj9l6na1c50vbc8hc1pwsz38yxi9x6ydlrwz3hf4pv"))))
|
||||
"064c03wxia7jz0i578awj4srykj0nnigm4p5r0dv0559rnk93r0z"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-cpan-meta" ,perl-cpan-meta)))
|
||||
|
|
|
@ -3188,14 +3188,14 @@ provides additional functionality on the produced Mallard documents.")
|
|||
(define-public python-cython
|
||||
(package
|
||||
(name "python-cython")
|
||||
(version "0.29.7")
|
||||
(version "0.29.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Cython" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1s61hq2ikawxp6qvmkbfvvaxy9rqj67cddzwgcfc3dwi44b83l2m"))))
|
||||
"1866m01ggl2h3rky4hac3m5p048gg4a0jb09ljkknryiqln54fkn"))))
|
||||
(build-system python-build-system)
|
||||
;; we need the full python package and not just the python-wrapper
|
||||
;; because we need libpython3.3m.so
|
||||
|
@ -4420,14 +4420,14 @@ a general image processing tool.")
|
|||
(define-public python-pycparser
|
||||
(package
|
||||
(name "python-pycparser")
|
||||
(version "2.18")
|
||||
(version "2.19")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pycparser" version))
|
||||
(sha256
|
||||
(base32
|
||||
"09mjyw82ibqzl449g7swy8bfxnfpmas0815d2rkdjlcqw81wma4r"))))
|
||||
"1cr5dcj9628lkz1qlwq3fv97c25363qppkmcayqvd05dpy573259"))))
|
||||
(outputs '("out" "doc"))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
|
@ -4450,7 +4450,8 @@ a general image processing tool.")
|
|||
(copy-file (string-append "." file)
|
||||
(string-append doc file)))
|
||||
'("/README.rst" "/CHANGES" "/LICENSE"))
|
||||
(copy-recursively "examples" examples)))))))
|
||||
(copy-recursively "examples" examples)
|
||||
#t))))))
|
||||
(home-page "https://github.com/eliben/pycparser")
|
||||
(synopsis "C parser in Python")
|
||||
(description
|
||||
|
@ -8642,14 +8643,14 @@ python-xdo for newer bindings.)")
|
|||
(define-public python-mako
|
||||
(package
|
||||
(name "python-mako")
|
||||
(version "1.0.12")
|
||||
(version "1.0.13")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Mako" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qj16ai937wrbpv1a9g395gybb9s06rmdj3arbp8fpl37bg6byhc"))))
|
||||
"0h95n0g0k1jwxiqarr09navpfajarvbmpm8mhmw66c25qc675vlm"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-markupsafe" ,python-markupsafe)))
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
(define-public re2
|
||||
(package
|
||||
(name "re2")
|
||||
(version "2019-06-01")
|
||||
(version "2019-07-01")
|
||||
(home-page "https://github.com/google/re2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -38,7 +38,7 @@
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"01613z66wgiffdngbq3031rwd92jf87j93h7y5mn8hlx19gg5k4j"))))
|
||||
"1ric6gdnf5mqj5iy5f81al49mr3mmjqj3nqi3mw2hjdbbgwkdn71"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build gnu-build-system)
|
||||
|
|
|
@ -868,14 +868,7 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
|
|||
(delete-file-recursively "src/llvm-emscripten")
|
||||
(delete-file-recursively "src/tools/clang")
|
||||
(delete-file-recursively "src/tools/lldb")
|
||||
#t))
|
||||
(patches (map search-patch '("rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-1.30-gdb-llvm.patch"
|
||||
"rust-reproducible-builds.patch")))))
|
||||
(inputs
|
||||
;; Use LLVM 7.0
|
||||
(alist-replace "llvm" (list llvm)
|
||||
(package-inputs base-rust)))
|
||||
#t))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base-rust)
|
||||
((#:phases phases)
|
||||
|
@ -915,12 +908,6 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
|
|||
"0sk84ff0cklybcp0jbbxcw7lk7mrm6kb6km5nzd6m64dy0igrlli")))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source base-rust))
|
||||
(patches (map search-patch '("rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-1.30-gdb-llvm.patch"
|
||||
"rust-reproducible-builds.patch")))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base-rust)
|
||||
((#:phases phases)
|
||||
|
@ -1066,6 +1053,9 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
|
|||
"0bbizy6b7002v1rdhrxrf5gijclbyizdhkglhp81ib3bf5x66kas")))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(inputs
|
||||
(alist-replace "llvm" (list llvm-8)
|
||||
(package-inputs base-rust)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base-rust)
|
||||
((#:phases phases)
|
||||
|
|
|
@ -460,14 +460,14 @@ k-nearest neighbour, Learning Vector Quantization and Self-Organizing Maps.")
|
|||
(define-public r-cluster
|
||||
(package
|
||||
(name "r-cluster")
|
||||
(version "2.0.9")
|
||||
(version "2.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "cluster" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1bg5dvs4bzj0rp75jpxaklz12rvyh5w99h7zkvfgpgn86ljg1rlf"))))
|
||||
"055af3yz2biqbsbwm4arwr1yqnj4gicpzv2i6dbfl5pnz2z5byga"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
`(("gfortran" ,gfortran)))
|
||||
|
@ -1198,14 +1198,14 @@ agnes cluster diagrams.")
|
|||
(define-public r-gdtools
|
||||
(package
|
||||
(name "r-gdtools")
|
||||
(version "0.1.8")
|
||||
(version "0.1.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "gdtools" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ayy0s699ghaz34lklvcskfwman3x2n2772s5sa5x9k9xgsnxwcl"))))
|
||||
"0w4fihf52q5qxxk0lg36x6yvjjl8vw66y60ncdjs5fvnxqn5z2vb"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
@ -1651,13 +1651,13 @@ defined in different packages.")
|
|||
(define-public r-rlang
|
||||
(package
|
||||
(name "r-rlang")
|
||||
(version "0.3.4")
|
||||
(version "0.4.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "rlang" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1pks7d2xavzgaxqrnk3f79qsmv4wqv93f8991jv93pnb1mxpyijf"))))
|
||||
"038mmbmklw17ncgz53vrdx2506c1jj6di3y165bbx2sl2yia8j4p"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "http://rlang.tidyverse.org")
|
||||
(synopsis "Functions for base types, core R and Tidyverse features")
|
||||
|
@ -1730,14 +1730,14 @@ database.")
|
|||
(define-public r-dbplyr
|
||||
(package
|
||||
(name "r-dbplyr")
|
||||
(version "1.4.1")
|
||||
(version "1.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "dbplyr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"15fs66qq2p20gi3y2jlcsw27ach8rwkkkgr1mz2qbiyddbsjks6g"))))
|
||||
"1q2dflr88s5a1amzfld3087q422vf70052qn84zyd8895kdg10xp"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-assertthat" ,r-assertthat)
|
||||
|
@ -2537,13 +2537,13 @@ disk (or a connection).")
|
|||
(define-public r-plotrix
|
||||
(package
|
||||
(name "r-plotrix")
|
||||
(version "3.7-5")
|
||||
(version "3.7-6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "plotrix" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0k6ivryac1k81z2dijjds376a9jxwk8rf5g48snj67cnjffkybxj"))))
|
||||
"0ijfjlr7ls5hvfyzdmwab6bx0w3nvp0c8fgynj4355cj8mbzgmc3"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/plotrix")
|
||||
(synopsis "Various plotting functions")
|
||||
|
@ -3004,14 +3004,14 @@ statements.")
|
|||
(define-public r-segmented
|
||||
(package
|
||||
(name "r-segmented")
|
||||
(version "0.5-4.0")
|
||||
(version "1.0-0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "segmented" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wa0xjda2j33284jkp5hj1wdjysc5f4paj1s1lcixgawj4ckmxkz"))))
|
||||
"1igsfkffpa60zn6j45lhw1zgr5pz6rjknv2f3sylnx5l9fdwibgf"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/segmented")
|
||||
(synopsis "Regression models with breakpoints estimation")
|
||||
|
@ -3622,13 +3622,13 @@ vignettes.")
|
|||
(define-public r-mvtnorm
|
||||
(package
|
||||
(name "r-mvtnorm")
|
||||
(version "1.0-10")
|
||||
(version "1.0-11")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "mvtnorm" version))
|
||||
(sha256
|
||||
(base32
|
||||
"04md0wmqgif24g0a4hx19ifn4kk8nx10986vf2d9vascig6ikpri"))))
|
||||
"0lkjph661blc1nwfzg9w48a60wvj6ffh4zjwlisvracsx4nn2883"))))
|
||||
(build-system r-build-system)
|
||||
(inputs
|
||||
`(("gfortran" ,gfortran)))
|
||||
|
@ -4748,14 +4748,14 @@ models, generalized linear models and model-based clustering.")
|
|||
(define-public r-mclust
|
||||
(package
|
||||
(name "r-mclust")
|
||||
(version "5.4.3")
|
||||
(version "5.4.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "mclust" version))
|
||||
(sha256
|
||||
(base32
|
||||
"18x5ych9zi3y87rxi4pf6f23sl2918dp9xxpw1pqa7p7drw817p6"))))
|
||||
"039ymr57bq5327gypizw0v2qb81j6bkqhjdh8yj23qa5sh51phyc"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
`(("gfortran" ,gfortran)))
|
||||
|
@ -4967,14 +4967,14 @@ of the points.")
|
|||
(define-public r-fpc
|
||||
(package
|
||||
(name "r-fpc")
|
||||
(version "2.2-2")
|
||||
(version "2.2-3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "fpc" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1lzqxi2jzc753j4356b949isx2nccd32mw2ch665q78nxccp145n"))))
|
||||
"1dy3pla4jjgs46izqg2kxajlxr80sbr9896jbzb1qszrdx7af041"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-class" ,r-class)
|
||||
|
@ -4984,7 +4984,6 @@ of the points.")
|
|||
("r-kernlab" ,r-kernlab)
|
||||
("r-mass" ,r-mass)
|
||||
("r-mclust" ,r-mclust)
|
||||
("r-mvtnorm" ,r-mvtnorm)
|
||||
("r-prabclus" ,r-prabclus)
|
||||
("r-robustbase" ,r-robustbase)))
|
||||
(home-page "https://cran.r-project.org/web/packages/fpc")
|
||||
|
@ -5138,14 +5137,14 @@ using modular prediction and response module classes.")
|
|||
(define-public r-quantreg
|
||||
(package
|
||||
(name "r-quantreg")
|
||||
(version "5.40")
|
||||
(version "5.41")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "quantreg" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1srni6lkgvy44ljxndz2j9ca702z2wy81f6z6mbbi6h06ni11qw6"))))
|
||||
"110ax3ngn6i94h7iw7ha67kfsmj94hycp7lk62nmyvkp34vpfykh"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
`(("gfortran" ,gfortran)))
|
||||
|
|
|
@ -140,32 +140,35 @@ libenca and several charset conversion libraries and tools.")
|
|||
(define-public utf8proc
|
||||
(package
|
||||
(name "utf8proc")
|
||||
(version "2.1.1")
|
||||
(version "2.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/JuliaLang/utf8proc/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/JuliaStrings/utf8proc")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1cnpigrazhslw65s4j1a56j7p6d7d61wsxxjf1218i9mkwv2yw17"))))
|
||||
(base32 "1i42hqwc8znqii9brangwkxk5cyc2lk95ip405fg88zr7z2ncr34"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs ; test data that is otherwise downloaded with curl
|
||||
(native-inputs ;test data that is otherwise downloaded with curl
|
||||
`(("NormalizationTest.txt"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.unicode.org/Public/9.0.0/ucd/"
|
||||
(uri (string-append "https://www.unicode.org/Public/12.1.0/ucd/"
|
||||
"NormalizationTest.txt"))
|
||||
(sha256
|
||||
(base32 "1fxrz0bilsbwl685336aqi88k62i6nqhm62rvy4zhg3bcm4dhj1d"))))
|
||||
(base32 "0hb97k9xv1lr847hwz0719ksqy39s47xw6k01dgs1368jdibvawc"))))
|
||||
("GraphemeBreakTest.txt"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.unicode.org/Public/9.0.0/ucd/"
|
||||
(uri (string-append "https://www.unicode.org/Public/12.1.0/ucd/"
|
||||
"auxiliary/GraphemeBreakTest.txt"))
|
||||
(sha256
|
||||
(base32 "0qbhyhmf0778lc2hcwlpizrvmdxwpk959v2q2wb8abv09ba7wvn7"))))))
|
||||
(base32 "0qc90ppmrwfn3y9cdn8jcjrn7qpdf0fhxkwh945yp4rvh37mbgcm"))))
|
||||
|
||||
;; For tests.
|
||||
("perl" ,perl)))
|
||||
(arguments
|
||||
'(#:make-flags (list "CC=gcc"
|
||||
(string-append "prefix=" (assoc-ref %outputs "out")))
|
||||
|
@ -180,8 +183,9 @@ libenca and several charset conversion libraries and tools.")
|
|||
'("NormalizationTest.txt" "GraphemeBreakTest.txt"))
|
||||
(substitute* "data/GraphemeBreakTest.txt"
|
||||
(("÷") "/")
|
||||
(("×") "+")))))))
|
||||
(home-page "https://julialang.org/utf8proc/")
|
||||
(("×") "+"))
|
||||
#t)))))
|
||||
(home-page "https://juliastrings.github.io/utf8proc/")
|
||||
(synopsis "C library for processing UTF-8 Unicode data")
|
||||
(description "utf8proc is a small C library that provides Unicode
|
||||
normalization, case-folding, and other operations for data in the UTF-8
|
||||
|
|
|
@ -616,14 +616,14 @@ certificates for free.")
|
|||
(define-public perl-net-ssleay
|
||||
(package
|
||||
(name "perl-net-ssleay")
|
||||
(version "1.85")
|
||||
(version "1.88")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/M/MI/MIKEM/"
|
||||
(uri (string-append "mirror://cpan/authors/id/C/CH/CHRISN/"
|
||||
"Net-SSLeay-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1j5h4ycm8538397l204d2d5fkm9595aj174pj7bkpbhwzfwqi0cx"))))
|
||||
"1pfgh4h3szcpvqlcimc60pjbk9zwls99x5863sva0wc47i4dl010"))))
|
||||
(build-system perl-build-system)
|
||||
(inputs `(("openssl" ,openssl)))
|
||||
(arguments
|
||||
|
@ -807,7 +807,7 @@ then ported to the GNU / Linux environment.")
|
|||
(define-public mbedtls-apache
|
||||
(package
|
||||
(name "mbedtls-apache")
|
||||
(version "2.16.1")
|
||||
(version "2.16.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -817,7 +817,7 @@ then ported to the GNU / Linux environment.")
|
|||
version "-apache.tgz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08zz88gcb2jmpfsgy5b6qc3li6l39yw1dbimd18aziyd889nvl7b"))))
|
||||
"1906hbwlkq32075hca4vjad03dcc36aycvmaz8yvhr3ygg6lz0x6"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
|
|
@ -32,14 +32,14 @@
|
|||
(define-public miniupnpc
|
||||
(package
|
||||
(name "miniupnpc")
|
||||
(version "2.1.20190408")
|
||||
(version "2.1.20190625")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://miniupnp.tuxfamily.org/files/"
|
||||
name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1v0l2m8j7r6jiy871d6v11ls243xqn6s3856iwd3bmk5c37npi50"))))
|
||||
(base32 "1yqp0d8x5ldjfma5x2vhpg1aaafdg0470ismccixww3rzpbza8w7"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("python" ,python-2)))
|
||||
|
|
|
@ -159,7 +159,7 @@ interpretation of the specifications for these languages.")
|
|||
(define-public vulkan-headers
|
||||
(package
|
||||
(name "vulkan-headers")
|
||||
(version "1.1.107")
|
||||
(version "1.1.112")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -169,7 +169,7 @@ interpretation of the specifications for these languages.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0kyf83n6fghqmjj5jbwhy08yq5sl598qnmw3kbavrnw9avqqm0c4"))))
|
||||
"0iia2wlq38hvxwip6r3k5946ylrlk42fw50mhf0pdjxjh02p8zn5"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; No tests.
|
||||
|
@ -193,7 +193,7 @@ interpretation of the specifications for these languages.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1p64k9x5r7nsrs0cn6d61687xbajqvsm78xk6j85w9wfin5dxs30"))))
|
||||
"1819bgmpjlikcc25bkmwwb7mp1rlyrq2v74wybg1g40ix70v0m0d"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;FIXME: 23/39 tests fail. Try "tests/run_all_tests.sh".
|
||||
|
@ -203,6 +203,28 @@ interpretation of the specifications for these languages.")
|
|||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Remove lines trying to build in a git commit id.
|
||||
(substitute* "CMakeLists.txt" ((".*spirv_tools_commit_id.h.*") ""))
|
||||
#t))
|
||||
;; Make sure that the files needed for Mesa's Vulkan overlay are availabe.
|
||||
(add-after 'unpack 'copy-headers1
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "tests/layers/vk_layer_data.h"
|
||||
(string-append (assoc-ref %outputs "out")
|
||||
"/include/vulkan"))
|
||||
(install-file "tests/layers/vk_layer_extension_utils.h"
|
||||
(string-append (assoc-ref %outputs "out")
|
||||
"/include/vulkan"))
|
||||
(install-file "loader/vk_loader_platform.h"
|
||||
(string-append (assoc-ref %outputs "out")
|
||||
"/include/vulkan"))
|
||||
#t))
|
||||
(add-after 'build 'copy-headers2
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "vk_layer_dispatch_table.h"
|
||||
(string-append (assoc-ref %outputs "out")
|
||||
"/include/vulkan"))
|
||||
(install-file "vk_dispatch_table_helper.h"
|
||||
(string-append (assoc-ref %outputs "out")
|
||||
"/include/vulkan"))
|
||||
#t)))
|
||||
#:configure-flags (list
|
||||
"-DBUILD_TESTS=OFF" ; FIXME: Needs 'googletest' submodule.
|
||||
|
@ -244,7 +266,7 @@ and the ICD.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1mak96jdg3wv043b4jxyv1fm2cz4nnallg0yb90my3yp5q64grrw"))))
|
||||
"0an9hqvvpfmfld2pkszzwi7ccb9g2ijjqqzlj24dqg9kqnmcr3x4"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
`(("glslang" ,glslang)
|
||||
|
|
|
@ -202,14 +202,14 @@ Interface} specification.")
|
|||
;; ’stable’ and recommends that “in general you deploy the NGINX mainline
|
||||
;; branch at all times” (https://www.nginx.com/blog/nginx-1-6-1-7-released/)
|
||||
;; Consider updating the nginx-documentation package together with this one.
|
||||
(version "1.17.0")
|
||||
(version "1.17.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://nginx.org/download/nginx-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1aqgmrjzmklmv2iiyirk2h0hy35v1a76gczhjkxnms2krl35s6z2"))))
|
||||
"0gp7cy2bbn8yi1wapjzssf4bhmn4d4vphdb0k1wiaq2fa6s2a63g"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("openssl" ,openssl)
|
||||
("pcre" ,pcre)
|
||||
|
|
|
@ -59,15 +59,14 @@
|
|||
(define-public webkitgtk
|
||||
(package
|
||||
(name "webkitgtk")
|
||||
(version "2.24.2")
|
||||
(version "2.24.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.webkitgtk.org/releases/"
|
||||
name "-" version ".tar.xz"))
|
||||
(patches (search-patches "webkitgtk-sans-gstreamer-gl.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"071jnjvjq6wsxx1jh4ql3j53h1nhphs5ga67fa5i9xjvs3qb3701"))))
|
||||
"0lbcrw5axwrbrajxq7fqywfyh0djqi23ynzb5wi5ghw2grnp83cl"))))
|
||||
(build-system cmake-build-system)
|
||||
(outputs '("out" "doc"))
|
||||
(arguments
|
||||
|
|
|
@ -1533,7 +1533,7 @@ GID."
|
|||
(('gnu rest ...) #t)
|
||||
(rest #f)))
|
||||
|
||||
(define (hydra-key-authorization keys guix)
|
||||
(define (substitute-key-authorization keys guix)
|
||||
"Return a gexp with code to register KEYS, a list of files containing 'guix
|
||||
archive' public keys, with GUIX."
|
||||
(define default-acl
|
||||
|
@ -1570,8 +1570,7 @@ archive' public keys, with GUIX."
|
|||
|
||||
(define %default-authorized-guix-keys
|
||||
;; List of authorized substitute keys.
|
||||
(list (file-append guix "/share/guix/hydra.gnu.org.pub")
|
||||
(file-append guix "/share/guix/berlin.guixsd.org.pub")))
|
||||
(list (file-append guix "/share/guix/berlin.guixsd.org.pub")))
|
||||
|
||||
(define-record-type* <guix-configuration>
|
||||
guix-configuration make-guix-configuration
|
||||
|
@ -1688,7 +1687,7 @@ archive' public keys, with GUIX."
|
|||
|
||||
;; Optionally authorize substitute server keys.
|
||||
(if authorize-key?
|
||||
(hydra-key-authorization keys guix)
|
||||
(substitute-key-authorization keys guix)
|
||||
#~#f))))
|
||||
|
||||
(define* (references-file item #:optional (name "references"))
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
|
||||
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
|
||||
;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -91,9 +92,9 @@
|
|||
(define %default-postgres-hba
|
||||
(plain-file "pg_hba.conf"
|
||||
"
|
||||
local all all trust
|
||||
host all all 127.0.0.1/32 trust
|
||||
host all all ::1/128 trust"))
|
||||
local all all peer
|
||||
host all all 127.0.0.1/32 md5
|
||||
host all all ::1/128 md5"))
|
||||
|
||||
(define %default-postgres-ident
|
||||
(plain-file "pg_ident.conf"
|
||||
|
|
|
@ -330,8 +330,8 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m
|
|||
;; The usual services.
|
||||
(syslog-service)
|
||||
|
||||
;; The build daemon. Register the hydra.gnu.org key as trusted.
|
||||
;; This allows the installation process to use substitutes by
|
||||
;; The build daemon. Register the default substitute server key(s)
|
||||
;; as trusted to allow the installation process to use substitutes by
|
||||
;; default.
|
||||
(service guix-service-type
|
||||
(guix-configuration (authorize-key? #t)))
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
"Return a URI string for the Python package hosted on the Python Package
|
||||
Index (PyPI) corresponding to NAME and VERSION. EXTENSION is the file name
|
||||
extension, such as '.tar.gz'."
|
||||
(string-append "https://pypi.org/packages/source/"
|
||||
(string-append "https://files.pythonhosted.org/packages/source/"
|
||||
(string-take name 1) "/" name "/"
|
||||
name "-" version extension))
|
||||
|
||||
|
|
|
@ -42,10 +42,10 @@
|
|||
"Return the fallback nar URL for ITEM--e.g.,
|
||||
\"/gnu/store/cabbag3…-foo-1.2-checkout\"."
|
||||
;; Here we hard-code nar URLs without checking narinfos. That's probably OK
|
||||
;; though.
|
||||
;; though. Use berlin.guixsd.org instead of its ci.guix.gnu.org front end to
|
||||
;; avoid sending these requests to CDN providers without user consent.
|
||||
;; TODO: Use HTTPS? The downside is the extra dependency.
|
||||
(let ((bases '("http://mirror.hydra.gnu.org/guix"
|
||||
"http://berlin.guixsd.org"))
|
||||
(let ((bases '("http://berlin.guixsd.org"))
|
||||
(item (basename item)))
|
||||
(append (map (cut string-append <> "/nar/gzip/" item) bases)
|
||||
(map (cut string-append <> "/nar/" item) bases))))
|
||||
|
|
|
@ -1011,8 +1011,8 @@ recursively."
|
|||
|
||||
(define* (build-derivations store derivations
|
||||
#:optional (mode (build-mode normal)))
|
||||
"Build DERIVATIONS, a list of <derivation> objects, .drv file names, or
|
||||
derivation/output pairs, using the specified MODE."
|
||||
"Build DERIVATIONS, a list of <derivation> or <derivation-input> objects,
|
||||
.drv file names, or derivation/output pairs, using the specified MODE."
|
||||
(build-things store (map (match-lambda
|
||||
((? derivation? drv)
|
||||
(derivation-file-name drv))
|
||||
|
|
|
@ -395,7 +395,6 @@
|
|||
'(guix base16) '(bytevector->base16-string))
|
||||
|
||||
(list (guix-publish "ci.guix.gnu.org")
|
||||
(guix-publish "mirror.hydra.gnu.org")
|
||||
(lambda (file algo hash)
|
||||
;; 'tarballs.nixos.org' supports several algorithms.
|
||||
(string-append "https://tarballs.nixos.org/"
|
||||
|
|
|
@ -163,16 +163,11 @@ references. Call REFERENCES to get the list of references."
|
|||
items))))
|
||||
(remove (cut member <> self) refs)))
|
||||
|
||||
(define (references-oracle store drv)
|
||||
"Return a one-argument procedure that, when passed the file name of DRV's
|
||||
outputs or their dependencies, returns the list of references of that item.
|
||||
Use either local info or substitute info; build DRV if no information is
|
||||
available."
|
||||
(define (output-paths drv)
|
||||
(match (derivation->output-paths drv)
|
||||
(((names . items) ...)
|
||||
items)))
|
||||
|
||||
(define (references-oracle store input)
|
||||
"Return a one-argument procedure that, when passed the output file names of
|
||||
INPUT, a derivation input, or their dependencies, returns the list of
|
||||
references of that item. Use either local info or substitute info; build
|
||||
INPUT if no information is available."
|
||||
(define (references* items)
|
||||
(guard (c ((store-protocol-error? c)
|
||||
;; As a last resort, build DRV and query the references of the
|
||||
|
@ -181,13 +176,14 @@ available."
|
|||
;; Warm up the narinfo cache, otherwise each derivation build
|
||||
;; will result in one HTTP request to get one narinfo, which is
|
||||
;; much less efficient than fetching them all upfront.
|
||||
(substitution-oracle store (list drv))
|
||||
(substitution-oracle store
|
||||
(list (derivation-input-derivation input)))
|
||||
|
||||
(and (build-derivations store (list drv))
|
||||
(and (build-derivations store (list input))
|
||||
(map (cut references store <>) items))))
|
||||
(references/substitutes store items)))
|
||||
|
||||
(let loop ((items (output-paths drv))
|
||||
(let loop ((items (derivation-input-output-paths input))
|
||||
(result vlist-null))
|
||||
(match items
|
||||
(()
|
||||
|
@ -324,7 +320,7 @@ DRV, and graft DRV itself to refer to those grafted dependencies."
|
|||
;; upfront to have as much parallelism as possible when querying substitute
|
||||
;; info or when building DRV.
|
||||
(define references
|
||||
(references-oracle store drv))
|
||||
(references-oracle store (derivation-input drv outputs)))
|
||||
|
||||
(match (run-with-state
|
||||
(cumulative-grafts store drv grafts references
|
||||
|
|
|
@ -85,14 +85,14 @@
|
|||
(()
|
||||
'())
|
||||
((package-inputs ...)
|
||||
`((#:cargo-inputs ,package-inputs)))))
|
||||
`(#:cargo-inputs ,package-inputs))))
|
||||
|
||||
(define (maybe-cargo-development-inputs package-names)
|
||||
(match (package-names->package-inputs package-names)
|
||||
(()
|
||||
'())
|
||||
((package-inputs ...)
|
||||
`((#:cargo-development-inputs ,package-inputs)))))
|
||||
`(#:cargo-development-inputs ,package-inputs))))
|
||||
|
||||
(define (maybe-arguments arguments)
|
||||
(match arguments
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
;;; Copyright © 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -21,25 +22,22 @@
|
|||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (guix import pypi)
|
||||
#:use-module (ice-9 binary-ports)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (ice-9 pretty-print)
|
||||
#:use-module (ice-9 regex)
|
||||
#:use-module (ice-9 receive)
|
||||
#:use-module ((ice-9 rdelim) #:select (read-line))
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-11)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
#:use-module (rnrs bytevectors)
|
||||
#:use-module (json)
|
||||
#:use-module (web uri)
|
||||
#:use-module (guix ui)
|
||||
#:use-module (guix utils)
|
||||
#:use-module ((guix build utils)
|
||||
#:select ((package-name->name+version
|
||||
. hyphen-package-name->name+version)
|
||||
find-files))
|
||||
find-files
|
||||
invoke))
|
||||
#:use-module (guix import utils)
|
||||
#:use-module ((guix download) #:prefix download:)
|
||||
#:use-module (guix import json)
|
||||
|
@ -47,7 +45,10 @@
|
|||
#:use-module (guix upstream)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix build-system python)
|
||||
#:export (guix-package->pypi-name
|
||||
#:export (parse-requires.txt
|
||||
parse-wheel-metadata
|
||||
specification->requirement-name
|
||||
guix-package->pypi-name
|
||||
pypi-recursive-import
|
||||
pypi->guix-package
|
||||
%pypi-updater))
|
||||
|
@ -108,86 +109,180 @@ package on PyPI."
|
|||
((name version _ ...)
|
||||
(string-append name "-" version ".dist-info"))))
|
||||
|
||||
(define (maybe-inputs package-inputs)
|
||||
(define (maybe-inputs package-inputs input-type)
|
||||
"Given a list of PACKAGE-INPUTS, tries to generate the 'inputs' field of a
|
||||
package definition."
|
||||
package definition. INPUT-TYPE, a symbol, is used to populate the name of
|
||||
the input field."
|
||||
(match package-inputs
|
||||
(()
|
||||
'())
|
||||
((package-inputs ...)
|
||||
`((propagated-inputs (,'quasiquote ,package-inputs))))))
|
||||
`((,input-type (,'quasiquote ,package-inputs))))))
|
||||
|
||||
(define (guess-requirements source-url wheel-url tarball)
|
||||
"Given SOURCE-URL, WHEEL-URL and a TARBALL of the package, return a list
|
||||
of the required packages specified in the requirements.txt file. TARBALL will
|
||||
be extracted in a temporary directory."
|
||||
(define %requirement-name-regexp
|
||||
;; Regexp to match the requirement name in a requirement specification.
|
||||
|
||||
(define (tarball-directory url)
|
||||
;; Given the URL of the package's tarball, return the name of the directory
|
||||
;; that will be created upon decompressing it. If the filetype is not
|
||||
;; supported, return #f.
|
||||
;; TODO: Support more archive formats.
|
||||
(let ((basename (substring url (+ 1 (string-rindex url #\/)))))
|
||||
(cond
|
||||
((string-suffix? ".tar.gz" basename)
|
||||
(string-drop-right basename 7))
|
||||
((string-suffix? ".tar.bz2" basename)
|
||||
(string-drop-right basename 8))
|
||||
(else
|
||||
(begin
|
||||
(warning (G_ "Unsupported archive format: \
|
||||
cannot determine package dependencies"))
|
||||
#f)))))
|
||||
;; Some grammar, taken from PEP-0508 (see:
|
||||
;; https://www.python.org/dev/peps/pep-0508/).
|
||||
|
||||
(define (clean-requirement s)
|
||||
;; Given a requirement LINE, as can be found in a Python requirements.txt
|
||||
;; file, remove everything other than the actual name of the required
|
||||
;; package, and return it.
|
||||
(string-take s
|
||||
(or (string-index s (lambda (chr) (member chr '(#\space #\> #\= #\<))))
|
||||
(string-length s))))
|
||||
;; Using this grammar makes the PEP-0508 regexp easier to understand for
|
||||
;; humans. The use of a regexp is preferred to more primitive string
|
||||
;; manipulations because we can more directly match what upstream uses
|
||||
;; (again, per PEP-0508). The regexp approach is also easier to extend,
|
||||
;; should we want to implement more completely the grammar of PEP-0508.
|
||||
|
||||
;; The unified rule can be expressed as:
|
||||
;; specification = wsp* ( url_req | name_req ) wsp*
|
||||
|
||||
;; where url_req is:
|
||||
;; url_req = name wsp* extras? wsp* urlspec wsp+ quoted_marker?
|
||||
|
||||
;; and where name_req is:
|
||||
;; name_req = name wsp* extras? wsp* versionspec? wsp* quoted_marker?
|
||||
|
||||
;; Thus, we need only matching NAME, which is expressed as:
|
||||
;; identifer_end = letterOrDigit | (('-' | '_' | '.' )* letterOrDigit)
|
||||
;; identifier = letterOrDigit identifier_end*
|
||||
;; name = identifier
|
||||
(let* ((letter-or-digit "[A-Za-z0-9]")
|
||||
(identifier-end (string-append "(" letter-or-digit "|"
|
||||
"[-_.]*" letter-or-digit ")"))
|
||||
(identifier (string-append "^" letter-or-digit identifier-end "*"))
|
||||
(name identifier))
|
||||
(make-regexp name)))
|
||||
|
||||
(define (specification->requirement-name spec)
|
||||
"Given a specification SPEC, return the requirement name."
|
||||
(match:substring
|
||||
(or (regexp-exec %requirement-name-regexp spec)
|
||||
(error (G_ "Could not extract requirement name in spec:") spec))))
|
||||
|
||||
(define (test-section? name)
|
||||
"Return #t if the section name contains 'test' or 'dev'."
|
||||
(any (cut string-contains-ci name <>)
|
||||
'("test" "dev")))
|
||||
|
||||
(define (parse-requires.txt requires.txt)
|
||||
"Given REQUIRES.TXT, a Setuptools requires.txt file, return a list of lists
|
||||
of requirements.
|
||||
|
||||
The first list contains the required dependencies while the second the
|
||||
optional test dependencies. Note that currently, optional, non-test
|
||||
dependencies are omitted since these can be difficult or expensive to
|
||||
satisfy."
|
||||
|
||||
(define (comment? line)
|
||||
;; Return #t if the given LINE is a comment, #f otherwise.
|
||||
(eq? (string-ref (string-trim line) 0) #\#))
|
||||
(string-prefix? "#" (string-trim line)))
|
||||
|
||||
(define (read-requirements requirements-file)
|
||||
;; Given REQUIREMENTS-FILE, a Python requirements.txt file, return a list
|
||||
;; of name/variable pairs describing the requirements.
|
||||
(call-with-input-file requirements-file
|
||||
(lambda (port)
|
||||
(let loop ((result '()))
|
||||
(let ((line (read-line port)))
|
||||
(if (eof-object? line)
|
||||
result
|
||||
(cond
|
||||
((or (string-null? line) (comment? line))
|
||||
(loop result))
|
||||
(else
|
||||
(loop (cons (clean-requirement line)
|
||||
result))))))))))
|
||||
(define (section-header? line)
|
||||
;; Return #t if the given LINE is a section header, #f otherwise.
|
||||
(string-prefix? "[" (string-trim line)))
|
||||
|
||||
(call-with-input-file requires.txt
|
||||
(lambda (port)
|
||||
(let loop ((required-deps '())
|
||||
(test-deps '())
|
||||
(inside-test-section? #f)
|
||||
(optional? #f))
|
||||
(let ((line (read-line port)))
|
||||
(cond
|
||||
((eof-object? line)
|
||||
;; Duplicates can occur, since the same requirement can be
|
||||
;; listed multiple times with different conditional markers, e.g.
|
||||
;; pytest >= 3 ; python_version >= "3.3"
|
||||
;; pytest < 3 ; python_version < "3.3"
|
||||
(map (compose reverse delete-duplicates)
|
||||
(list required-deps test-deps)))
|
||||
((or (string-null? line) (comment? line))
|
||||
(loop required-deps test-deps inside-test-section? optional?))
|
||||
((section-header? line)
|
||||
;; Encountering a section means that all the requirements
|
||||
;; listed below are optional. Since we want to pick only the
|
||||
;; test dependencies from the optional dependencies, we must
|
||||
;; track those separately.
|
||||
(loop required-deps test-deps (test-section? line) #t))
|
||||
(inside-test-section?
|
||||
(loop required-deps
|
||||
(cons (specification->requirement-name line)
|
||||
test-deps)
|
||||
inside-test-section? optional?))
|
||||
((not optional?)
|
||||
(loop (cons (specification->requirement-name line)
|
||||
required-deps)
|
||||
test-deps inside-test-section? optional?))
|
||||
(optional?
|
||||
;; Skip optional items.
|
||||
(loop required-deps test-deps inside-test-section? optional?))
|
||||
(else
|
||||
(warning (G_ "parse-requires.txt reached an unexpected \
|
||||
condition on line ~a~%") line))))))))
|
||||
|
||||
(define (parse-wheel-metadata metadata)
|
||||
"Given METADATA, a Wheel metadata file, return a list of lists of
|
||||
requirements.
|
||||
|
||||
Refer to the documentation of PARSE-REQUIRES.TXT for a description of the
|
||||
returned value."
|
||||
;; METADATA is a RFC-2822-like, header based file.
|
||||
|
||||
(define (requires-dist-header? line)
|
||||
;; Return #t if the given LINE is a Requires-Dist header.
|
||||
(string-match "^Requires-Dist: " line))
|
||||
|
||||
(define (requires-dist-value line)
|
||||
(string-drop line (string-length "Requires-Dist: ")))
|
||||
|
||||
(define (extra? line)
|
||||
;; Return #t if the given LINE is an "extra" requirement.
|
||||
(string-match "extra == '(.*)'" line))
|
||||
|
||||
(define (test-requirement? line)
|
||||
(and=> (match:substring (extra? line) 1) test-section?))
|
||||
|
||||
(call-with-input-file metadata
|
||||
(lambda (port)
|
||||
(let loop ((required-deps '())
|
||||
(test-deps '()))
|
||||
(let ((line (read-line port)))
|
||||
(cond
|
||||
((eof-object? line)
|
||||
(map (compose reverse delete-duplicates)
|
||||
(list required-deps test-deps)))
|
||||
((and (requires-dist-header? line) (not (extra? line)))
|
||||
(loop (cons (specification->requirement-name
|
||||
(requires-dist-value line))
|
||||
required-deps)
|
||||
test-deps))
|
||||
((and (requires-dist-header? line) (test-requirement? line))
|
||||
(loop required-deps
|
||||
(cons (specification->requirement-name (requires-dist-value line))
|
||||
test-deps)))
|
||||
(else
|
||||
(loop required-deps test-deps)))))))) ;skip line
|
||||
|
||||
(define (guess-requirements source-url wheel-url archive)
|
||||
"Given SOURCE-URL, WHEEL-URL and an ARCHIVE of the package, return a list
|
||||
of the required packages specified in the requirements.txt file. ARCHIVE will
|
||||
be extracted in a temporary directory."
|
||||
|
||||
(define (read-wheel-metadata wheel-archive)
|
||||
;; Given WHEEL-ARCHIVE, a ZIP Python wheel archive, return the package's
|
||||
;; requirements.
|
||||
;; requirements, or #f if the metadata file contained therein couldn't be
|
||||
;; extracted.
|
||||
(let* ((dirname (wheel-url->extracted-directory wheel-url))
|
||||
(json-file (string-append dirname "/metadata.json")))
|
||||
(and (zero? (system* "unzip" "-q" wheel-archive json-file))
|
||||
(dynamic-wind
|
||||
(const #t)
|
||||
(lambda ()
|
||||
(call-with-input-file json-file
|
||||
(lambda (port)
|
||||
(let* ((metadata (json->scm port))
|
||||
(run_requires (hash-ref metadata "run_requires"))
|
||||
(requirements (if run_requires
|
||||
(hash-ref (list-ref run_requires 0)
|
||||
"requires")
|
||||
'())))
|
||||
(map clean-requirement requirements)))))
|
||||
(lambda ()
|
||||
(delete-file json-file)
|
||||
(rmdir dirname))))))
|
||||
(metadata (string-append dirname "/METADATA")))
|
||||
(call-with-temporary-directory
|
||||
(lambda (dir)
|
||||
(if (zero?
|
||||
(parameterize ((current-error-port (%make-void-port "rw+"))
|
||||
(current-output-port (%make-void-port "rw+")))
|
||||
(system* "unzip" wheel-archive "-d" dir metadata)))
|
||||
(parse-wheel-metadata (string-append dir "/" metadata))
|
||||
(begin
|
||||
(warning
|
||||
(G_ "Failed to extract file: ~a from wheel.~%") metadata)
|
||||
#f))))))
|
||||
|
||||
(define (guess-requirements-from-wheel)
|
||||
;; Return the package's requirements using the wheel, or #f if an error
|
||||
|
@ -195,63 +290,68 @@ cannot determine package dependencies"))
|
|||
(call-with-temporary-output-file
|
||||
(lambda (temp port)
|
||||
(if wheel-url
|
||||
(and (url-fetch wheel-url temp)
|
||||
(read-wheel-metadata temp))
|
||||
#f))))
|
||||
(and (url-fetch wheel-url temp)
|
||||
(read-wheel-metadata temp))
|
||||
#f))))
|
||||
|
||||
(define (guess-requirements-from-source)
|
||||
;; Return the package's requirements by guessing them from the source.
|
||||
(let ((dirname (tarball-directory source-url)))
|
||||
(if (string? dirname)
|
||||
(call-with-temporary-directory
|
||||
(lambda (dir)
|
||||
(let* ((pypi-name (string-take dirname (string-rindex dirname #\-)))
|
||||
(req-files (list (string-append dirname "/requirements.txt")
|
||||
(string-append dirname "/" pypi-name ".egg-info"
|
||||
"/requires.txt")))
|
||||
(exit-codes (map (lambda (file-name)
|
||||
(parameterize ((current-error-port (%make-void-port "rw+"))
|
||||
(current-output-port (%make-void-port "rw+")))
|
||||
(system* "tar" "xf" tarball "-C" dir file-name)))
|
||||
req-files)))
|
||||
;; Only one of these files needs to exist.
|
||||
(if (any zero? exit-codes)
|
||||
(match (find-files dir)
|
||||
((file . _)
|
||||
(read-requirements file))
|
||||
(()
|
||||
(warning (G_ "No requirements file found.\n"))))
|
||||
(begin
|
||||
(warning (G_ "Failed to extract requirements files\n"))
|
||||
'())))))
|
||||
'())))
|
||||
(if (compressed-file? source-url)
|
||||
(call-with-temporary-directory
|
||||
(lambda (dir)
|
||||
(parameterize ((current-error-port (%make-void-port "rw+"))
|
||||
(current-output-port (%make-void-port "rw+")))
|
||||
(if (string=? "zip" (file-extension source-url))
|
||||
(invoke "unzip" archive "-d" dir)
|
||||
(invoke "tar" "xf" archive "-C" dir)))
|
||||
(let ((requires.txt-files
|
||||
(find-files dir (lambda (abs-file-name _)
|
||||
(string-match "\\.egg-info/requires.txt$"
|
||||
abs-file-name)))))
|
||||
(match requires.txt-files
|
||||
(()
|
||||
(warning (G_ "Cannot guess requirements from source archive:\
|
||||
no requires.txt file found.~%"))
|
||||
(list '() '()))
|
||||
(else (parse-requires.txt (first requires.txt-files)))))))
|
||||
(begin
|
||||
(warning (G_ "Unsupported archive format; \
|
||||
cannot determine package dependencies from source archive: ~a~%")
|
||||
(basename source-url))
|
||||
(list '() '()))))
|
||||
|
||||
;; First, try to compute the requirements using the wheel, since that is the
|
||||
;; most reliable option. If a wheel is not provided for this package, try
|
||||
;; getting them by reading either the "requirements.txt" file or the
|
||||
;; "requires.txt" from the egg-info directory from the source tarball. Note
|
||||
;; that "requirements.txt" is not mandatory, so this is likely to fail.
|
||||
;; First, try to compute the requirements using the wheel, else, fallback to
|
||||
;; reading the "requires.txt" from the egg-info directory from the source
|
||||
;; archive.
|
||||
(or (guess-requirements-from-wheel)
|
||||
(guess-requirements-from-source)))
|
||||
|
||||
|
||||
(define (compute-inputs source-url wheel-url tarball)
|
||||
"Given the SOURCE-URL of an already downloaded TARBALL, return a list of
|
||||
name/variable pairs describing the required inputs of this package. Also
|
||||
(define (compute-inputs source-url wheel-url archive)
|
||||
"Given the SOURCE-URL and WHEEL-URL of an already downloaded ARCHIVE, return
|
||||
a pair of lists, each consisting of a list of name/variable pairs, for the
|
||||
propagated inputs and the native inputs, respectively. Also
|
||||
return the unaltered list of upstream dependency names."
|
||||
(let ((dependencies
|
||||
(remove (cut string=? "argparse" <>)
|
||||
(guess-requirements source-url wheel-url tarball))))
|
||||
(values (sort
|
||||
(map (lambda (input)
|
||||
(let ((guix-name (python->package-name input)))
|
||||
(list guix-name (list 'unquote (string->symbol guix-name)))))
|
||||
dependencies)
|
||||
(lambda args
|
||||
(match args
|
||||
(((a _ ...) (b _ ...))
|
||||
(string-ci<? a b)))))
|
||||
dependencies)))
|
||||
|
||||
(define (strip-argparse deps)
|
||||
(remove (cut string=? "argparse" <>) deps))
|
||||
|
||||
(define (requirement->package-name/sort deps)
|
||||
(sort
|
||||
(map (lambda (input)
|
||||
(let ((guix-name (python->package-name input)))
|
||||
(list guix-name (list 'unquote (string->symbol guix-name)))))
|
||||
deps)
|
||||
(lambda args
|
||||
(match args
|
||||
(((a _ ...) (b _ ...))
|
||||
(string-ci<? a b))))))
|
||||
|
||||
(define process-requirements
|
||||
(compose requirement->package-name/sort strip-argparse))
|
||||
|
||||
(let ((dependencies (guess-requirements source-url wheel-url archive)))
|
||||
(values (map process-requirements dependencies)
|
||||
(concatenate dependencies))))
|
||||
|
||||
(define (make-pypi-sexp name version source-url wheel-url home-page synopsis
|
||||
description license)
|
||||
|
@ -260,29 +360,36 @@ VERSION, SOURCE-URL, HOME-PAGE, SYNOPSIS, DESCRIPTION, and LICENSE."
|
|||
(call-with-temporary-output-file
|
||||
(lambda (temp port)
|
||||
(and (url-fetch source-url temp)
|
||||
(receive (input-package-names upstream-dependency-names)
|
||||
(receive (guix-dependencies upstream-dependencies)
|
||||
(compute-inputs source-url wheel-url temp)
|
||||
(values
|
||||
`(package
|
||||
(name ,(python->package-name name))
|
||||
(version ,version)
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
|
||||
;; Sometimes 'pypi-uri' doesn't quite work due to mixed
|
||||
;; cases in NAME, for instance, as is the case with
|
||||
;; "uwsgi". In that case, fall back to a full URL.
|
||||
(uri (pypi-uri ,(string-downcase name) version))
|
||||
(sha256
|
||||
(base32
|
||||
,(guix-hash-url temp)))))
|
||||
(build-system python-build-system)
|
||||
,@(maybe-inputs input-package-names)
|
||||
(home-page ,home-page)
|
||||
(synopsis ,synopsis)
|
||||
(description ,description)
|
||||
(license ,(license->symbol license)))
|
||||
upstream-dependency-names))))))
|
||||
(match guix-dependencies
|
||||
((required-inputs test-inputs)
|
||||
(values
|
||||
`(package
|
||||
(name ,(python->package-name name))
|
||||
(version ,version)
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
;; PyPI URL are case sensitive, but sometimes a project
|
||||
;; named using mixed case has a URL using lower case, so
|
||||
;; we must work around this inconsistency. For actual
|
||||
;; examples, compare the URLs of the "Deprecated" and
|
||||
;; "uWSGI" PyPI packages.
|
||||
(uri ,(if (string-contains source-url name)
|
||||
`(pypi-uri ,name version)
|
||||
`(pypi-uri ,(string-downcase name) version)))
|
||||
(sha256
|
||||
(base32
|
||||
,(guix-hash-url temp)))))
|
||||
(build-system python-build-system)
|
||||
,@(maybe-inputs required-inputs 'propagated-inputs)
|
||||
,@(maybe-inputs test-inputs 'native-inputs)
|
||||
(home-page ,home-page)
|
||||
(synopsis ,synopsis)
|
||||
(description ,description)
|
||||
(license ,(license->symbol license)))
|
||||
upstream-dependencies))))))))
|
||||
|
||||
(define pypi->guix-package
|
||||
(memoize
|
||||
|
|
|
@ -577,9 +577,6 @@ load path."
|
|||
,(file-append* source "/etc/completion/zsh/_guix"))
|
||||
("share/fish/vendor_completions.d/guix.fish"
|
||||
,(file-append* source "/etc/completion/fish/guix.fish"))
|
||||
("share/guix/hydra.gnu.org.pub"
|
||||
,(file-append* source
|
||||
"/etc/substitutes/hydra.gnu.org.pub"))
|
||||
("share/guix/berlin.guixsd.org.pub"
|
||||
,(file-append* source
|
||||
"/etc/substitutes/berlin.guixsd.org.pub"))
|
||||
|
|
|
@ -91,7 +91,7 @@
|
|||
('build-system 'cargo-build-system)
|
||||
('arguments
|
||||
('quasiquote
|
||||
(('#:cargo-inputs (("rust-bar" ('unquote rust-bar)))))))
|
||||
('#:cargo-inputs (("rust-bar" ('unquote rust-bar))))))
|
||||
('home-page "http://example.com")
|
||||
('synopsis "summary")
|
||||
('description "summary")
|
||||
|
|
216
tests/pypi.scm
216
tests/pypi.scm
|
@ -1,6 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 David Thompson <davet@gnu.org>
|
||||
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -20,10 +21,12 @@
|
|||
(define-module (test-pypi)
|
||||
#:use-module (guix import pypi)
|
||||
#:use-module (guix base32)
|
||||
#:use-module (guix memoization)
|
||||
#:use-module (gcrypt hash)
|
||||
#:use-module (guix memoization)
|
||||
#:use-module (guix tests)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix build utils) #:select (delete-file-recursively which))
|
||||
#:use-module ((guix build utils) #:select (delete-file-recursively which mkdir-p))
|
||||
#:use-module (srfi srfi-64)
|
||||
#:use-module (ice-9 match))
|
||||
|
||||
|
@ -55,23 +58,64 @@
|
|||
(define test-source-hash
|
||||
"")
|
||||
|
||||
(define test-requirements
|
||||
"# A comment
|
||||
# A comment after a space
|
||||
bar
|
||||
baz > 13.37")
|
||||
(define test-specifications
|
||||
'("Fizzy [foo, bar]"
|
||||
"PickyThing<1.6,>1.9,!=1.9.6,<2.0a0,==2.4c1"
|
||||
"SomethingWithMarker[foo]>1.0;python_version<\"2.7\""
|
||||
"requests [security,tests] >= 2.8.1, == 2.8.* ; python_version < \"2.7\""
|
||||
"pip @ https://github.com/pypa/pip/archive/1.3.1.zip#\
|
||||
sha1=da9234ee9982d4bbb3c72346a6de940a148ea686"))
|
||||
|
||||
(define test-metadata
|
||||
"{
|
||||
\"run_requires\": [
|
||||
{
|
||||
\"requires\": [
|
||||
\"bar\",
|
||||
\"baz (>13.37)\"
|
||||
]
|
||||
}
|
||||
]
|
||||
}")
|
||||
(define test-requires.txt "\
|
||||
# A comment
|
||||
# A comment after a space
|
||||
foo ~= 3
|
||||
bar != 2
|
||||
|
||||
[test]
|
||||
pytest (>=2.5.0)
|
||||
")
|
||||
|
||||
;; Beaker contains only optional dependencies.
|
||||
(define test-requires.txt-beaker "\
|
||||
[crypto]
|
||||
pycryptopp>=0.5.12
|
||||
|
||||
[cryptography]
|
||||
cryptography
|
||||
|
||||
[testsuite]
|
||||
Mock
|
||||
coverage
|
||||
")
|
||||
|
||||
(define test-metadata "\
|
||||
Classifier: Programming Language :: Python :: 3.7
|
||||
Requires-Dist: baz ~= 3
|
||||
Requires-Dist: bar != 2
|
||||
Provides-Extra: test
|
||||
Requires-Dist: pytest (>=2.5.0) ; extra == 'test'
|
||||
")
|
||||
|
||||
(define test-metadata-with-extras "
|
||||
Classifier: Programming Language :: Python :: 3.7
|
||||
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
|
||||
Requires-Dist: wrapt (<2,>=1)
|
||||
Requires-Dist: bar
|
||||
|
||||
Provides-Extra: dev
|
||||
Requires-Dist: tox ; extra == 'dev'
|
||||
Requires-Dist: bumpversion (<1) ; extra == 'dev'
|
||||
")
|
||||
|
||||
;;; Provides-Extra can appear before Requires-Dist.
|
||||
(define test-metadata-with-extras-jedi "\
|
||||
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
|
||||
Provides-Extra: testing
|
||||
Requires-Dist: parso (>=0.3.0)
|
||||
Provides-Extra: testing
|
||||
Requires-Dist: pytest (>=3.1.0); extra == 'testing'
|
||||
")
|
||||
|
||||
(test-begin "pypi")
|
||||
|
||||
|
@ -100,18 +144,48 @@ baz > 13.37")
|
|||
(uri (list "https://bitheap.org/cram/cram-0.7.tar.gz"
|
||||
(pypi-uri "cram" "0.7"))))))))
|
||||
|
||||
(test-assert "pypi->guix-package"
|
||||
(test-equal "specification->requirement-name"
|
||||
'("Fizzy" "PickyThing" "SomethingWithMarker" "requests" "pip")
|
||||
(map specification->requirement-name test-specifications))
|
||||
|
||||
(test-equal "parse-requires.txt"
|
||||
(list '("foo" "bar") '("pytest"))
|
||||
(mock ((ice-9 ports) call-with-input-file
|
||||
call-with-input-string)
|
||||
(parse-requires.txt test-requires.txt)))
|
||||
|
||||
(test-equal "parse-requires.txt - Beaker"
|
||||
(list '() '("Mock" "coverage"))
|
||||
(mock ((ice-9 ports) call-with-input-file
|
||||
call-with-input-string)
|
||||
(parse-requires.txt test-requires.txt-beaker)))
|
||||
|
||||
(test-equal "parse-wheel-metadata, with extras"
|
||||
(list '("wrapt" "bar") '("tox" "bumpversion"))
|
||||
(mock ((ice-9 ports) call-with-input-file
|
||||
call-with-input-string)
|
||||
(parse-wheel-metadata test-metadata-with-extras)))
|
||||
|
||||
(test-equal "parse-wheel-metadata, with extras - Jedi"
|
||||
(list '("parso") '("pytest"))
|
||||
(mock ((ice-9 ports) call-with-input-file
|
||||
call-with-input-string)
|
||||
(parse-wheel-metadata test-metadata-with-extras-jedi)))
|
||||
|
||||
(test-assert "pypi->guix-package, no wheel"
|
||||
;; Replace network resources with sample data.
|
||||
(mock ((guix import utils) url-fetch
|
||||
(lambda (url file-name)
|
||||
(match url
|
||||
("https://example.com/foo-1.0.0.tar.gz"
|
||||
(begin
|
||||
(mkdir "foo-1.0.0")
|
||||
(with-output-to-file "foo-1.0.0/requirements.txt"
|
||||
;; Unusual requires.txt location should still be found.
|
||||
(mkdir-p "foo-1.0.0/src/bizarre.egg-info")
|
||||
(with-output-to-file "foo-1.0.0/src/bizarre.egg-info/requires.txt"
|
||||
(lambda ()
|
||||
(display test-requirements)))
|
||||
(system* "tar" "czvf" file-name "foo-1.0.0/")
|
||||
(display test-requires.txt)))
|
||||
(parameterize ((current-output-port (%make-void-port "rw+")))
|
||||
(system* "tar" "czvf" file-name "foo-1.0.0/"))
|
||||
(delete-file-recursively "foo-1.0.0")
|
||||
(set! test-source-hash
|
||||
(call-with-input-file file-name port-sha256))))
|
||||
|
@ -139,7 +213,10 @@ baz > 13.37")
|
|||
('propagated-inputs
|
||||
('quasiquote
|
||||
(("python-bar" ('unquote 'python-bar))
|
||||
("python-baz" ('unquote 'python-baz)))))
|
||||
("python-foo" ('unquote 'python-foo)))))
|
||||
('native-inputs
|
||||
('quasiquote
|
||||
(("python-pytest" ('unquote 'python-pytest)))))
|
||||
('home-page "http://example.com")
|
||||
('synopsis "summary")
|
||||
('description "summary")
|
||||
|
@ -157,27 +234,28 @@ baz > 13.37")
|
|||
(lambda (url file-name)
|
||||
(match url
|
||||
("https://example.com/foo-1.0.0.tar.gz"
|
||||
(begin
|
||||
(mkdir "foo-1.0.0")
|
||||
(with-output-to-file "foo-1.0.0/requirements.txt"
|
||||
(lambda ()
|
||||
(display test-requirements)))
|
||||
(system* "tar" "czvf" file-name "foo-1.0.0/")
|
||||
(delete-file-recursively "foo-1.0.0")
|
||||
(set! test-source-hash
|
||||
(call-with-input-file file-name port-sha256))))
|
||||
(begin
|
||||
(mkdir-p "foo-1.0.0/foo.egg-info/")
|
||||
(with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt"
|
||||
(lambda ()
|
||||
(display "wrong data to make sure we're testing wheels ")))
|
||||
(parameterize ((current-output-port (%make-void-port "rw+")))
|
||||
(system* "tar" "czvf" file-name "foo-1.0.0/"))
|
||||
(delete-file-recursively "foo-1.0.0")
|
||||
(set! test-source-hash
|
||||
(call-with-input-file file-name port-sha256))))
|
||||
("https://example.com/foo-1.0.0-py2.py3-none-any.whl"
|
||||
(begin
|
||||
(mkdir "foo-1.0.0.dist-info")
|
||||
(with-output-to-file "foo-1.0.0.dist-info/metadata.json"
|
||||
(lambda ()
|
||||
(display test-metadata)))
|
||||
(let ((zip-file (string-append file-name ".zip")))
|
||||
;; zip always adds a "zip" extension to the file it creates,
|
||||
;; so we need to rename it.
|
||||
(system* "zip" zip-file "foo-1.0.0.dist-info/metadata.json")
|
||||
(rename-file zip-file file-name))
|
||||
(delete-file-recursively "foo-1.0.0.dist-info")))
|
||||
(begin
|
||||
(mkdir "foo-1.0.0.dist-info")
|
||||
(with-output-to-file "foo-1.0.0.dist-info/METADATA"
|
||||
(lambda ()
|
||||
(display test-metadata)))
|
||||
(let ((zip-file (string-append file-name ".zip")))
|
||||
;; zip always adds a "zip" extension to the file it creates,
|
||||
;; so we need to rename it.
|
||||
(system* "zip" "-q" zip-file "foo-1.0.0.dist-info/METADATA")
|
||||
(rename-file zip-file file-name))
|
||||
(delete-file-recursively "foo-1.0.0.dist-info")))
|
||||
(_ (error "Unexpected URL: " url)))))
|
||||
(mock ((guix http-client) http-fetch
|
||||
(lambda (url . rest)
|
||||
|
@ -187,6 +265,9 @@ baz > 13.37")
|
|||
(string-length test-json)))
|
||||
("https://example.com/foo-1.0.0-py2.py3-none-any.whl" #f)
|
||||
(_ (error "Unexpected URL: " url)))))
|
||||
;; Not clearing the memoization cache here would mean returning the value
|
||||
;; computed in the previous test.
|
||||
(invalidate-memoization! pypi->guix-package)
|
||||
(match (pypi->guix-package "foo")
|
||||
(('package
|
||||
('name "python-foo")
|
||||
|
@ -202,6 +283,55 @@ baz > 13.37")
|
|||
('quasiquote
|
||||
(("python-bar" ('unquote 'python-bar))
|
||||
("python-baz" ('unquote 'python-baz)))))
|
||||
('native-inputs
|
||||
('quasiquote
|
||||
(("python-pytest" ('unquote 'python-pytest)))))
|
||||
('home-page "http://example.com")
|
||||
('synopsis "summary")
|
||||
('description "summary")
|
||||
('license 'license:lgpl2.0))
|
||||
(string=? (bytevector->nix-base32-string
|
||||
test-source-hash)
|
||||
hash))
|
||||
(x
|
||||
(pk 'fail x #f))))))
|
||||
|
||||
(test-assert "pypi->guix-package, no usable requirement file."
|
||||
;; Replace network resources with sample data.
|
||||
(mock ((guix import utils) url-fetch
|
||||
(lambda (url file-name)
|
||||
(match url
|
||||
("https://example.com/foo-1.0.0.tar.gz"
|
||||
(mkdir-p "foo-1.0.0/foo.egg-info/")
|
||||
(parameterize ((current-output-port (%make-void-port "rw+")))
|
||||
(system* "tar" "czvf" file-name "foo-1.0.0/"))
|
||||
(delete-file-recursively "foo-1.0.0")
|
||||
(set! test-source-hash
|
||||
(call-with-input-file file-name port-sha256)))
|
||||
("https://example.com/foo-1.0.0-py2.py3-none-any.whl" #f)
|
||||
(_ (error "Unexpected URL: " url)))))
|
||||
(mock ((guix http-client) http-fetch
|
||||
(lambda (url . rest)
|
||||
(match url
|
||||
("https://pypi.org/pypi/foo/json"
|
||||
(values (open-input-string test-json)
|
||||
(string-length test-json)))
|
||||
("https://example.com/foo-1.0.0-py2.py3-none-any.whl" #f)
|
||||
(_ (error "Unexpected URL: " url)))))
|
||||
;; Not clearing the memoization cache here would mean returning the value
|
||||
;; computed in the previous test.
|
||||
(invalidate-memoization! pypi->guix-package)
|
||||
(match (pypi->guix-package "foo")
|
||||
(('package
|
||||
('name "python-foo")
|
||||
('version "1.0.0")
|
||||
('source ('origin
|
||||
('method 'url-fetch)
|
||||
('uri ('pypi-uri "foo" 'version))
|
||||
('sha256
|
||||
('base32
|
||||
(? string? hash)))))
|
||||
('build-system 'python-build-system)
|
||||
('home-page "http://example.com")
|
||||
('synopsis "summary")
|
||||
('description "summary")
|
||||
|
|
Loading…
Reference in New Issue