Merge branch 'master' into core-updates

Conflicts:
	gnu/packages/cups.scm
	gnu/packages/python-web.scm
	gnu/packages/web.scm
	guix/build/maven/pom.scm
This commit is contained in:
Tobias Geerinckx-Rice 2021-06-23 18:45:21 +02:00
commit 9dea3f101f
No known key found for this signature in database
GPG Key ID: 0DB0FF884F556D79
72 changed files with 2096 additions and 751 deletions

View File

@ -23,7 +23,7 @@
"39B3 3C8D 9448 0D2D DCC2 A498 8B44 A0CD C7B9 56F2"
(name "bandali"))
(;; primary: "34FF 38BC D151 25A6 E340 A0B5 3453 2F9F AFCA 8B8E"
"A0C5 E352 2EF8 EF5C 64CD B7F0 FD73 CAC7 19D3 2566"
"A3A4 B419 0074 087C A7DE 5698 BC45 CA67 E2F8 D007"
(name "bavier"))
("45CC 63B8 5258 C9D5 5F34 B239 D37D 0EA7 CECC 3912"
(name "biscuolo"))

View File

@ -3738,7 +3738,7 @@ other substitute server.
@cindex access control list (ACL), for substitutes
@cindex ACL (access control list), for substitutes
To allow Guix to download substitutes from @code{@value{SUBSTITUTE-SERVER-1}}, @code{@value{SUBSTITUTE-SERVER-2}} or a mirror, you
must add the releavnt public key to the access control list (ACL) of archive
must add the relevant public key to the access control list (ACL) of archive
imports, using the @command{guix archive} command (@pxref{Invoking guix
archive}). Doing so implies that you trust the substitute server to not
be compromised and to serve genuine substitutes.
@ -17100,7 +17100,7 @@ shell daemon, @command{sshd}. Its value must be an
(service openssh-service-type
(openssh-configuration
(x11-forwarding? #t)
(permit-root-login 'without-password)
(permit-root-login 'prohibit-password)
(authorized-keys
`(("alice" ,(local-file "alice.pub"))
("bob" ,(local-file "bob.pub"))))))
@ -17134,7 +17134,7 @@ TCP port on which @command{sshd} listens for incoming connections.
@item @code{permit-root-login} (default: @code{#f})
This field determines whether and when to allow logins as root. If
@code{#f}, root logins are disallowed; if @code{#t}, they are allowed.
If it's the symbol @code{'without-password}, then root logins are
If it's the symbol @code{'prohibit-password}, then root logins are
permitted but not with password-based authentication.
@item @code{allow-empty-passwords?} (default: @code{#f})
@ -18735,12 +18735,6 @@ Specifies whether to support HTTP keep-alive connections.
Defaults to @samp{#t}.
@end deftypevr
@deftypevr {@code{cups-configuration} parameter} non-negative-integer keep-alive-timeout
Specifies how long an idle client connection remains open, in seconds.
Defaults to @samp{30}.
@end deftypevr
@deftypevr {@code{cups-configuration} parameter} non-negative-integer limit-request-body
Specifies the maximum size of print files, IPP requests, and HTML form
data. A limit of 0 disables the limit check.
@ -18967,7 +18961,7 @@ Specifies an access list for a job's private values. @code{@@ACL} maps
to the printer's requesting-user-name-allowed or
requesting-user-name-denied values. @code{@@OWNER} maps to the job's
owner. @code{@@SYSTEM} maps to the groups listed for the
@code{system-group} field of the @code{files-config} configuration,
@code{system-group} field of the @code{files-configuration},
which is reified into the @code{cups-files.conf(5)} file. Other
possible elements of the access list include specific user names, and
@code{@@@var{group}} to indicate members of a specific group. The
@ -18989,7 +18983,7 @@ Specifies an access list for a subscription's private values.
@code{@@ACL} maps to the printer's requesting-user-name-allowed or
requesting-user-name-denied values. @code{@@OWNER} maps to the job's
owner. @code{@@SYSTEM} maps to the groups listed for the
@code{system-group} field of the @code{files-config} configuration,
@code{system-group} field of the @code{files-configuration},
which is reified into the @code{cups-files.conf(5)} file. Other
possible elements of the access list include specific user names, and
@code{@@@var{group}} to indicate members of a specific group. The
@ -29369,7 +29363,7 @@ cluster node that supports multiple storage backends, and installs the
;; Ganeti uses SSH to communicate between nodes.
(service openssh-service-type
(openssh-configuration
(permit-root-login 'without-password)))
(permit-root-login 'prohibit-password)))
(service ganeti-service-type
(ganeti-configuration

View File

@ -29,7 +29,6 @@
system-service-packages
desktop-system-service?
networking-system-service?
%system-services
system-services->configuration))
@ -38,7 +37,7 @@
system-service make-system-service
system-service?
(name system-service-name) ;string
(type system-service-type) ;'desktop | 'networking
(type system-service-type) ;'desktop|'networking|…
(recommended? system-service-recommended? ;Boolean
(default #f))
(snippet system-service-snippet ;list of sexps
@ -46,7 +45,6 @@
(packages system-service-packages ;list of sexps
(default '())))
;; This is the list of desktop environments supported as services.
(define %system-services
(let-syntax ((desktop-environment (syntax-rules ()
((_ fields ...)
@ -56,6 +54,7 @@
(G_ (syntax-rules () ;for xgettext
((_ str) str))))
(list
;; This is the list of desktop environments supported as services.
(desktop-environment
(name "GNOME")
(snippet '((service gnome-desktop-service-type))))
@ -124,10 +123,6 @@
"Return true if SERVICE is a desktop environment service."
(eq? 'desktop (system-service-type service)))
(define (networking-system-service? service)
"Return true if SERVICE is a desktop environment service."
(eq? 'networking (system-service-type service)))
(define (system-services->configuration services)
"Return the configuration field for SERVICES."
(let* ((snippets (append-map system-service-snippet services))

View File

@ -934,6 +934,7 @@ dist_patch_DATA = \
%D%/packages/patches/crda-optional-gcrypt.patch \
%D%/packages/patches/clucene-contribs-lib.patch \
%D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/cups-CVE-2020-10001.patch \
%D%/packages/patches/curl-use-ssl-cert-env.patch \
%D%/packages/patches/curl-7.77-tls-priority-string.patch \
%D%/packages/patches/cursynth-wave-rand.patch \
@ -1358,7 +1359,6 @@ dist_patch_DATA = \
%D%/packages/patches/lierolibre-remove-arch-warning.patch \
%D%/packages/patches/lierolibre-try-building-other-arch.patch \
%D%/packages/patches/linbox-fix-pkgconfig.patch \
%D%/packages/patches/linkchecker-tests-require-network.patch \
%D%/packages/patches/linphone-desktop-without-sdk.patch \
%D%/packages/patches/linux-libre-support-for-Pinebook-Pro.patch \
%D%/packages/patches/linux-libre-arm64-generic-pinebook-lcd.patch \
@ -1717,6 +1717,7 @@ dist_patch_DATA = \
%D%/packages/patches/tipp10-qt5.patch \
%D%/packages/patches/tk-find-library.patch \
%D%/packages/patches/tla2tools-build-xml.patch \
%D%/packages/patches/tlf-support-hamlib-4.2+.patch \
%D%/packages/patches/tor-fix-build-with-gcc-7.patch \
%D%/packages/patches/transcode-ffmpeg.patch \
%D%/packages/patches/transmission-honor-localedir.patch \

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.org>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;;
;;; This file is part of GNU Guix.
;;;
@ -256,7 +257,7 @@ cat > /etc/bootstrap-config.scm << EOF
(service openssh-service-type
(openssh-configuration
(log-level 'debug)
(permit-root-login 'without-password))))
(permit-root-login 'prohibit-password))))
%base-services)))
EOF
# guix pull

View File

@ -42,6 +42,7 @@
;;; Copyright © 2021 Hyunseok Kim <lasnesne@lagunposprasihopre.org>
;;; Copyright © 2021 David Larsson <david.larsson@selfhosted.xyz>
;;; Copyright © 2021 WinterHound <winterhound@yandex.com>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1333,14 +1334,14 @@ network statistics collection, security monitoring, network debugging, etc.")
(define-public tcpdump
(package
(name "tcpdump")
(version "4.99.0")
(version "4.99.1")
(source (origin
(method url-fetch)
(uri (string-append "https://www.tcpdump.org/release/tcpdump-"
version ".tar.gz"))
(sha256
(base32
"0hmqh2fx8rgs9v1mk3vpywj61xvkifz260q685xllxr8jmxg3wlc"))))
"1ghfs5gifzrk3813zf9zalfbjs70wg6llz6q31k180r7zf2nkcvr"))))
(build-system gnu-build-system)
(inputs `(("libpcap" ,libpcap)
("openssl" ,openssl)))
@ -1712,18 +1713,27 @@ commands and their arguments.")
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'pre-configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "GNUmakefile"
(("^\tchown.*$") ""))
;; OpenDoas look for binaries in safepath when a rule specify a
;; relative command, such as “permit keepenv :wheel cmd guix”.
(substitute* "doas.c"
(("safepath =" match)
(string-append match " \""
"/run/setuid-programs:"
"/run/current-system/profile/bin:"
"/run/current-system/profile/sbin:"
"\" ")))
#t))
(replace 'configure
;; The configure script doesn't accept most of the default flags.
(lambda* (#:key configure-flags #:allow-other-keys)
;; The configure script can be told which compiler to use only
;; through environment variables.
(setenv "CC" ,(cc-for-target))
(apply invoke "./configure" configure-flags)))
(add-before 'install 'fix-makefile
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "GNUmakefile"
(("^\tchown.*$") ""))
#t)))
(apply invoke "./configure" configure-flags))))
#:configure-flags
(list (string-append "--prefix=" (assoc-ref %outputs "out"))
"--with-timestamp")

View File

@ -76,7 +76,7 @@
(define-public mpfrcx
(package
(name "mpfrcx")
(version "0.6.1")
(version "0.6.2")
(source (origin
(method url-fetch)
(uri (string-append
@ -84,7 +84,7 @@
version ".tar.gz"))
(sha256
(base32
"0gk2l40awp3q1lh828dhcjshcldy3b1l2v51glaq0lj1h7w34sin"))))
"165syd6kihwp6bry9hvr3v0908cgadsz5w5h5ry4mjnchrklnb7w"))))
(build-system gnu-build-system)
(propagated-inputs
`(("gmp" ,gmp)

View File

@ -85,6 +85,7 @@
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages libbsd)
#:use-module (gnu packages libffi)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
@ -2427,6 +2428,98 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
(define-public python2-pyliblo
(package-with-python2 python-pyliblo))
(define-public python-soundfile
(package
(name "python-soundfile")
(version "0.10.3.post1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "SoundFile" version))
(sha256
(base32
"0yqhrfz7xkvqrwdxdx2ydy4h467sk7z3gf984y1x2cq7cm1gy329"))))
(build-system python-build-system)
(propagated-inputs
`(("python-cffi" ,python-cffi)
("python-numpy" ,python-numpy)
("libsndfile" ,libsndfile)))
(native-inputs
`(("python-pytest" ,python-pytest)))
(arguments
`(#:tests? #f ; missing OGG support
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "soundfile.py"
(("_find_library\\('sndfile'\\)")
(string-append "\"" (assoc-ref inputs "libsndfile")
"/lib/libsndfile.so\""))))))))
(home-page "https://github.com/bastibe/SoundFile")
(synopsis "Python bindings for libsndfile")
(description "This package provides python bindings for libsndfile based on
CFFI and NumPy.")
(license license:expat)))
(define-public python-python3-midi
(package
(name "python-python3-midi")
(version "0.2.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python3_midi" version))
(sha256
(base32
"1z9j1w7mpn3xhkcpxmqm5rvmj6nffb5rf14bv7n3sdh07nf6n7sf"))))
(build-system python-build-system)
(home-page "https://github.com/NFJones/python3-midi")
(synopsis "Python MIDI API")
(description "This package provides a python API to read and write MIDI
files.")
(license license:expat)))
(define-public audio-to-midi
(package
(name "audio-to-midi")
(version "2020.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/NFJones/audio-to-midi")
(commit (string-append "v" version))))
(sha256
(base32
"12wf17abn3psbsg2r2lk0xdnk8n5cd5rrvjlpxjnjfhd09n7qqgm"))))
(build-system python-build-system)
(propagated-inputs
`(("python-cffi" ,python-cffi)
("python-cython" ,python-cython)
("python-numpy" ,python-numpy)
("python-progressbar2" ,python-progressbar2)
("python-pycparser" ,python-pycparser)
("python-python3-midi" ,python-python3-midi)
("python-soundfile" ,python-soundfile)))
(native-inputs
`(("libsndfile" ,libsndfile)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-versions
(lambda _
(substitute* "requirements.txt" (("==") ">=")))))))
(home-page "https://github.com/NFJones/audio-to-midi")
(synopsis "Convert audio to multichannel MIDI.")
(description "@command{audio-to-midi} converts audio files to multichannel
MIDI files. It accomplishes this by performing FFTs on all channels of the
audio data at user-specified time steps. It then separates the resulting
frequency analysis into equivalence classes which correspond to the twelve tone
scale; the volume of each class being the average volume of its constituent
frequencies. This data is then formatted to MIDI and written to disk.")
(license license:expat)))
(define-public lilv
(package
(name "lilv")

View File

@ -451,7 +451,7 @@ rdiff-backup is easy to use and settings have sensible defaults.")
(define-public rsnapshot
(package
(name "rsnapshot")
(version "1.4.3")
(version "1.4.4")
(source
(origin
(method url-fetch)
@ -459,7 +459,7 @@ rdiff-backup is easy to use and settings have sensible defaults.")
"https://github.com/rsnapshot/rsnapshot/releases/download/"
version "/rsnapshot-" version ".tar.gz"))
(sha256
(base32 "1lavqmmsf53pim0nvming7fkng6p0nk2a51k2c2jdq0l7snpl31b"))))
(base32 "0yc5k2fhm54ypxgm1fsaf8vrg5b7qbvbsqk371n6baf592vprjy1"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View File

@ -6205,6 +6205,80 @@ classification (assignment) methods. It also contains a Shiny application for
interactive exploration of results.")
(license license:gpl2+)))
(define-public r-residualmatrix
(package
(name "r-residualmatrix")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ResidualMatrix" version))
(sha256
(base32
"0p7va19aw0j6anx7ck879kbi5cn7dy712h5ia94adr38ssismv1v"))))
(properties
`((upstream-name . "ResidualMatrix")))
(build-system r-build-system)
(propagated-inputs
`(("r-delayedarray" ,r-delayedarray)
("r-matrix" ,r-matrix)
("r-s4vectors" ,r-s4vectors)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/LTLA/ResidualMatrix")
(synopsis "Create a DelayedMatrix of regression residuals")
(description
"This package implements tools for delayed computation of a matrix of
residuals after fitting a linear model to each column of an input matrix. It
also supports partial computation of residuals where selected factors are to
be preserved in the output matrix. It implements a number of efficient
methods for operating on the delayed matrix of residuals, most notably matrix
multiplication and calculation of row/column sums or means.")
(license license:gpl3)))
(define-public r-batchelor
(package
(name "r-batchelor")
(version "1.8.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "batchelor" version))
(sha256
(base32
"1xm204wp3m3mmlc1s59lscbbjvwm5nj32vvf16njcg7pb32lsiqa"))))
(properties `((upstream-name . "batchelor")))
(build-system r-build-system)
(propagated-inputs
`(("r-beachmat" ,r-beachmat)
("r-biocgenerics" ,r-biocgenerics)
("r-biocneighbors" ,r-biocneighbors)
("r-biocparallel" ,r-biocparallel)
("r-biocsingular" ,r-biocsingular)
("r-delayedarray" ,r-delayedarray)
("r-delayedmatrixstats" ,r-delayedmatrixstats)
("r-igraph" ,r-igraph)
("r-matrix" ,r-matrix)
("r-rcpp" ,r-rcpp)
("r-residualmatrix" ,r-residualmatrix)
("r-s4vectors" ,r-s4vectors)
("r-scaledmatrix" ,r-scaledmatrix)
("r-scuttle" ,r-scuttle)
("r-singlecellexperiment" ,r-singlecellexperiment)
("r-summarizedexperiment" ,r-summarizedexperiment)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/batchelor")
(synopsis "Single-Cell Batch Correction Methods")
(description
"This package implements a variety of methods for batch correction of
single-cell (RNA sequencing) data. This includes methods based on detecting
mutually nearest neighbors, as well as several efficient variants of linear
regression of the log-expression values. Functions are also provided to
perform global rescaling to remove differences in depth between batches, and
to perform a principal components analysis that is robust to differences in
the numbers of cells across batches.")
(license license:gpl3)))
(define-public r-mast
(package
(name "r-mast")
@ -6297,10 +6371,44 @@ tasks on single cell expression data. It is designed to work with RNA-Seq and
qPCR data, but could be used with other types as well.")
(license license:artistic2.0)))
(define-public r-leidenbase
(let ((commit "430f22af6982cc7d2e6e77f6b0df47bc970dcbce")
(revision "1"))
(package
(name "r-leidenbase")
(version (git-version "0.1.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cole-trapnell-lab/leidenbase")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0ylqsmdpv4xq6f6ldxvwkhk33a9i1jcgk60zvksk3iplykfzd6c0"))))
(properties `((upstream-name . "leidenbase")))
(build-system r-build-system)
(inputs
`(("zlib" ,zlib)))
(native-inputs
`(("gfortran" ,gfortran)))
(propagated-inputs
`(("r-igraph" ,r-igraph)))
(home-page "https://github.com/cole-trapnell-lab/leidenbase")
(synopsis "R and C wrappers to run the Leiden find_partition function")
(description
"This package provides an R to C interface that runs the Leiden
community detection algorithm to find a basic partition. It runs the
equivalent of the @code{find_partition} function. This package includes the
required source code files from the official Leidenalg distribution and
several functions from the R igraph package.")
(license license:gpl3+))))
(define-public r-monocle3
(package
(name "r-monocle3")
(version "0.1.2")
(version "1.0.0")
(source
(origin
(method git-fetch)
@ -6310,10 +6418,12 @@ qPCR data, but could be used with other types as well.")
(file-name (git-file-name name version))
(sha256
(base32
"1cjxqfw3qvy269hsf5v80d4kshl932wrl949iayas02saj6f70ls"))))
"16vpvlbms8fdvpfwzcig0rkg2mxnsq1h80d2l7q3953wm91qc9x4"))))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
`(("r-assertthat" ,r-assertthat)
("r-batchelor" ,r-batchelor)
("r-biobase" ,r-biobase)
("r-biocgenerics" ,r-biocgenerics)
("r-delayedmatrixstats" ,r-delayedmatrixstats)
("r-dplyr" ,r-dplyr)
@ -6323,6 +6433,7 @@ qPCR data, but could be used with other types as well.")
("r-htmlwidgets" ,r-htmlwidgets)
("r-igraph" ,r-igraph)
("r-irlba" ,r-irlba)
("r-leidenbase" ,r-leidenbase)
("r-limma" ,r-limma)
("r-lmtest" ,r-lmtest)
("r-mass" ,r-mass)
@ -6342,6 +6453,7 @@ qPCR data, but could be used with other types as well.")
("r-reshape2" ,r-reshape2)
("r-reticulate" ,r-reticulate)
("r-rhpcblasctl" ,r-rhpcblasctl)
("r-rsample" ,r-rsample)
("r-rtsne" ,r-rtsne)
("r-shiny" ,r-shiny)
("r-slam" ,r-slam)

View File

@ -11894,6 +11894,30 @@ options), bedgraph, links (represented as arcs), and Hi-C matrices.
pyGenomeTracks can make plots with or without Hi-C data.")
(license license:gpl3+)))
(define-public python-iced
(package
(name "python-iced")
(version "0.5.8")
(source
(origin
(method url-fetch)
(uri (pypi-uri "iced" version))
(sha256
(base32
"1avcjmpyyvhgbj5qca4l70ipiz7j3xmcw9p6rd9c06j99faa0r71"))))
(build-system python-build-system)
(arguments `(#:tests? #false)) ; there are none
(propagated-inputs
`(("python-numpy" ,python-numpy)
("python-pandas" ,python-pandas)
("python-scipy" ,python-scipy)
("python-scikit-learn" ,python-scikit-learn)))
(home-page "https://github.com/hiclib/iced")
(synopsis "ICE normalization")
(description "This is a package for normalizing Hi-C contact counts
efficiently.")
(license license:bsd-3)))
(define-public python-hic2cool
(package
(name "python-hic2cool")
@ -14175,6 +14199,100 @@ researchers to design and build computational workflows for the analysis of
large-scale data-analysis.")
(license license:expat)))
(define-public perl-cworld-dekker
(package
(name "perl-cworld-dekker")
(version "1.01")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dekkerlab/cworld-dekker.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1dvh23fx52m59y6304xi2j2pl2hiqadlqg8jyv2pm14j1hy71ych"))))
(build-system perl-build-system)
(arguments
`(#:modules ((guix build perl-build-system)
(guix build utils)
(srfi srfi-26))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'hardcode-references
(lambda* (#:key inputs #:allow-other-keys)
(let ((bedtools (assoc-ref inputs "bedtools"))
(r (assoc-ref inputs "r-minimal")))
(substitute* '("scripts/python/getEigenVectors.py"
"scripts/python/matrix2EigenVectors.py")
(("bedtools intersect")
(string-append bedtools "/bin/bedtools intersect")))
(substitute* "lib/cworld/dekker.pm"
(("bedtools --version")
(string-append bedtools "/bin/bedtools --version")))
(substitute* '("scripts/perl/correlateMatrices.pl"
"scripts/perl/matrix2scaling.pl"
"scripts/perl/matrix2distance.pl"
"scripts/perl/coverageCorrect.pl"
"scripts/perl/matrix2anchorPlot.pl"
"scripts/python/matrix2EigenVectors.py"
"scripts/python/matrix2insulation-lite.py"
"scripts/perl/matrix2compartment.pl"
"scripts/perl/anchorPurge.pl"
"scripts/perl/applyCorrection.pl"
"scripts/perl/compareInsulation.pl"
"scripts/perl/fillMissingData.pl"
"scripts/perl/matrix2loess.pl"
"scripts/python/getEigenVectors.py"
"scripts/perl/aggregateBED.pl"
"scripts/perl/collapseMatrix.pl"
"scripts/perl/matrix2direction.pl"
"scripts/perl/singletonRemoval.pl"
"lib/cworld/dekker.pm"
"scripts/perl/matrix2insulation.pl")
(("(`|\")Rscript" _ pre)
(string-append pre r "/bin/Rscript"))))))
(add-after 'install 'install-scripts
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/cworld-dekker")))
(mkdir-p share)
(copy-recursively "scripts" share)
;; Make all scripts executable and wrap them.
(let ((r (find-files share "\\.R$"))
(py (find-files share "\\.py$"))
(pl (find-files share "\\.pl$"))
(wrap (lambda* (script var #:optional (extra ""))
(let ((path (string-append (getenv var)
extra)))
(wrap-program script
`(,var ":" prefix (,path)))))))
(for-each (cut chmod <> #o555) (append r py pl))
(for-each (cut wrap <> "PERL5LIB"
(string-append ":" out
"/lib/perl5/site_perl"))
pl)
(for-each (cut wrap <> "PYTHONPATH") py))))))))
(inputs
`(("libgd" ,gd)
("perl-gd" ,perl-gd)
("bedtools" ,bedtools)
("python" ,python-wrapper)
("python-scipy" ,python-scipy)
("python-numpy" ,python-numpy)
("python-matplotlib" ,python-matplotlib)
("python-h5py" ,python-h5py)
("python-scikit-learn" ,python-scikit-learn)
("r-minimal" ,r-minimal)))
(native-inputs
`(("perl-module-build" ,perl-module-build)))
(home-page "https://github.com/dekkerlab/cworld-dekker")
(synopsis "Utility and analysis scripts for 3C, 4C, 5C, and Hi-C data")
(description "This package is a collection of Perl, Python, and R
scripts for manipulating 3C/4C/5C/Hi-C data.")
(license license:asl2.0)))
(define-public ensembl-vep
(let* ((api-version "103")
(api-module
@ -14195,6 +14313,7 @@ large-scale data-analysis.")
(uri (git-reference
(url "https://github.com/Ensembl/ensembl-vep.git")
(commit (string-append "release/" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1iq7p72cv9b38jz2v8a4slzy2n8y0md487943180ym9xc8qvw09c"))))

View File

@ -49,7 +49,7 @@ supported content to the Kodi media center.")
(make-chromium-extension play-to-kodi))
(define uassets
(let ((commit "f521473026f5f60cc753fa4a533af41badfc700e"))
(let ((commit "20d21ad7e92539660c7cde4c5884b3e234854264"))
(origin
(method git-fetch)
(uri (git-reference
@ -58,12 +58,12 @@ supported content to the Kodi media center.")
(file-name (git-file-name "uAssets" (string-take commit 9)))
(sha256
(base32
"0ms0xxj6rcfkib33wjbki631wix17vvzr4m6z0phqmaj49bla4kz")))))
"1xcl4qnvjb4pv3fajpmycg1i0xqsah2qakhq2figvyrq991pldy1")))))
(define ublock-origin
(package
(name "ublock-origin")
(version "1.35.2")
(version "1.36.0")
(home-page "https://github.com/gorhill/uBlock")
(source (origin
(method git-fetch)
@ -71,7 +71,7 @@ supported content to the Kodi media center.")
(file-name (git-file-name name version))
(sha256
(base32
"0w4rfwgvkjvdfccxi9b4qhp0hylnd946diri19cp3fd72zkjlcky"))))
"1r3aic18zkz8s3v1a2kffidp4swzbxnq0h8444bif9myjffnpxpj"))))
(build-system gnu-build-system)
(outputs '("xpi" "firefox" "chromium"))
(arguments

View File

@ -322,11 +322,11 @@
(string-append "ungoogled-chromium-" category "-" name))))
(sha256 (base32 hash))))
(define %chromium-version "91.0.4472.106")
(define %chromium-version "91.0.4472.114")
(define %debian-revision "debian/90.0.4430.85-1")
;; Note: use 'git describe --long' even for exact tags to placate the
;; custom version format for ungoogled-chromium.
(define %ungoogled-revision "91.0.4472.101-1-2-gbd0ffd1")
(define %ungoogled-revision "91.0.4472.114-1-0-ga9eb6fd")
(define %debian-patches
(list (debian-patch "fixes/nomerge.patch"
@ -346,7 +346,7 @@
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256
(base32
"0676wkk1zlccwwwk4hi8ifhrk2x5s66fi0amsj30b7lnydzwpfv9"))))
"1xb5g3hybaiwn3y1zw1fxd3g0zwmvplrs06sdqnxzsr1qm8b874h"))))
(define %guix-patches
(list (local-file
@ -488,7 +488,7 @@
%chromium-version ".tar.xz"))
(sha256
(base32
"1fxy1l2dl0f6v8566lykcng18ma6fv4nlwxmdb0hh06fgp6khpjl"))
"0wbyiwbdazgjjgj9vs56x26q3g9r80a57gfl0f2rfl1j7xwgxiy1"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)

View File

@ -17760,7 +17760,8 @@ colored by the number of neighboring points. This is useful to visualize the
(properties `((upstream-name . "arrow")))
(build-system r-build-system)
(inputs
`(("zlib" ,zlib)))
`(("apache-arrow" ,apache-arrow "lib")
("zlib" ,zlib)))
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
("r-bit64" ,r-bit64)

View File

@ -18,6 +18,7 @@
;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
;;; Copyright © 2021 Antero Mejr <antero@kodmin.com>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -4206,6 +4207,42 @@ c6e7d37. However, this package works only up to 128 bytes.")
(description "This library provides for encoding and decoding any base.")
(license license:expat)))
(define-public rust-battery-0.7
(package
(name "rust-battery")
(version "0.7.8")
(source
(origin
(method url-fetch)
(uri (crate-uri "battery" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32 "1r1641dyks76p39i1iihswhc6iz5z51pihmpxniy1h1pi4k29dml"))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f ;; Tests fail with "No such file or directory".
#:cargo-inputs
(("rust-cfg-if" ,rust-cfg-if-1)
("rust-core-foundation"
,rust-core-foundation-0.7)
("rust-lazycell" ,rust-lazycell-1)
("rust-libc" ,rust-libc-0.2)
("rust-mach" ,rust-mach-0.3)
("rust-nix" ,rust-nix-0.19)
("rust-num-traits" ,rust-num-traits-0.2)
("rust-uom" ,rust-uom-0.30)
("rust-winapi" ,rust-winapi-0.3))
#:cargo-development-inputs
(("rust-approx" ,rust-approx-0.3)
("rust-tempfile" ,rust-tempfile-3))))
(home-page "https://github.com/svartalf/rust-battery")
(synopsis "Information about the notebook batteries")
(description
"@code{battery} provides a unified API to a notebook batteries state.")
;; Dual licensed, either license applies.
(license (list license:asl2.0 license:expat))))
(define-public rust-beef-0.5
(package
(name "rust-beef")
@ -23160,7 +23197,7 @@ requires non-const function calls to be computed.")
(define-public rust-lazycell-1
(package
(name "rust-lazycell")
(version "1.2.1")
(version "1.3.0")
(source
(origin
(method url-fetch)
@ -23169,11 +23206,10 @@ requires non-const function calls to be computed.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"0gvqycmpv7parc98i6y64ai7rvxrn1947z2a6maa02g4kvxdd55j"))))
"0m8gw7dn30i0zjjpjdyf6pc16c34nl71lpv461mix50x3p70h3c3"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs (("rust-clippy" ,rust-clippy-0.0))))
`(#:cargo-inputs (("rust-clippy" ,rust-clippy-0.0))))
(home-page "https://github.com/indiv0/lazycell")
(synopsis "Lazily filled Cell struct")
(description
@ -24874,17 +24910,17 @@ lexer.")
"This package provides a collection of great and ubiqutitous macros.")
(license (list license:asl2.0 license:expat))))
(define-public rust-mach-0.2
(define-public rust-mach-0.3
(package
(name "rust-mach")
(version "0.2.3")
(version "0.3.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "mach" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1qdhs16cl1j3w7kvy6ak7h8lbyqmr6i3i15qfzpnv9gyrn3j9pc6"))))
(base32 "0a895rhg3a1l3ws4qf83s5mx0g29v1fzgjmbag1h36v62hmg1vi8"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
@ -24897,6 +24933,19 @@ lexer.")
Mach 3.0 kernel that underlies OSX.")
(license (list license:asl2.0 license:expat license:bsd-2))))
(define-public rust-mach-0.2
(package
(inherit rust-mach-0.3)
(name "rust-mach")
(version "0.2.3")
(source
(origin
(method url-fetch)
(uri (crate-uri "mach" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1qdhs16cl1j3w7kvy6ak7h8lbyqmr6i3i15qfzpnv9gyrn3j9pc6"))))))
(define-public rust-mach-o-sys-0.1
(package
(name "rust-mach-o-sys")
@ -29688,14 +29737,14 @@ system for OpenSSL.")
(define-public rust-openssl-sys-0.9
(package
(name "rust-openssl-sys")
(version "0.9.60")
(version "0.9.64")
(source
(origin
(method url-fetch)
(uri (crate-uri "openssl-sys" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1rpkfl0rmdcvxzyzp3n24g9clplh4avgzpi5c2a3hx96hcccf7wj"))
(base32 "1bsim2zk69q1dw6rixn48l1ci8bmz5kvbkgsks2ci079w0pzr7i0"))
(patches (search-patches "rust-openssl-sys-no-vendor.patch"))))
(build-system cargo-build-system)
(arguments
@ -51619,6 +51668,52 @@ untrusted inputs in Rust.")
(sha256
(base32 "0byf88b7ca1kb5aap8f6npp6xncvg95dnma8ipmnmd4n9r5izkam"))))))
(define-public rust-uom-0.31
(package
(name "rust-uom")
(version "0.31.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "uom" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32 "0dwih0bclq18gfdf7if6kqip82w8yrf076l0ad1n3gr71bynpvmi"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-num-bigint" ,rust-num-bigint-0.3)
("rust-num-rational" ,rust-num-rational-0.3)
("rust-num-traits" ,rust-num-traits-0.2)
("rust-serde" ,rust-serde-1)
("rust-typenum" ,rust-typenum-1))
#:cargo-development-inputs
(("rust-approx" ,rust-approx-0.3)
("rust-quickcheck" ,rust-quickcheck-0.9)
("rust-serde-json" ,rust-serde-json-1)
("rust-static-assertions"
,rust-static-assertions-1))))
(home-page "https://github.com/iliekturtles/uom")
(synopsis "Units of measurement")
(description "Units of measurement is a crate that does automatic
type-safe zero-cost dimensional analysis.")
;; Dual-licensed, either license applies.
(license (list license:asl2.0 license:expat))))
(define-public rust-uom-0.30
(package
(inherit rust-uom-0.31)
(name "rust-uom")
(version "0.30.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "uom" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1vg59hnb7hh0p8kjjhgmrsnn3597722lkfdkp481wksq6vk06rg7"))))))
(define-public rust-url-2
(package
(name "rust-url")

View File

@ -81,6 +81,7 @@
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl)
@ -3640,7 +3641,7 @@ the SQL language using a syntax that reflects the resulting query.")
(define-public apache-arrow
(package
(name "apache-arrow")
(version "3.0.0")
(version "4.0.1")
(source
(origin
(method git-fetch)
@ -3650,21 +3651,22 @@ the SQL language using a syntax that reflects the resulting query.")
(file-name (git-file-name name version))
(sha256
(base32
"03ngddh3r1g6f9aja2jlfksgvgyzmxmfy4bxvzjrcv5fvl5x8ii0"))))
"1lcd9gdpwlrr92rm812a5p4l6zx0arwd0zj72a4ga699s1psz8yv"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(add-before 'configure 'enter-source-directory
(lambda _ (chdir "cpp") #t))
(lambda _ (chdir "cpp")))
(add-after 'unpack 'set-env
(lambda _
(substitute* "cpp/cmake_modules/ThirdpartyToolchain.cmake"
(("set\\(xsimd_SOURCE.*") ""))
(setenv "BOOST_ROOT" (assoc-ref %build-inputs "boost"))
(setenv "BROTLI_HOME" (assoc-ref %build-inputs "brotli"))
(setenv "FLATBUFFERS_HOME" (assoc-ref %build-inputs "flatbuffers"))
(setenv "RAPIDJSON_HOME" (assoc-ref %build-inputs "rapidjson"))
#t)))
(setenv "RAPIDJSON_HOME" (assoc-ref %build-inputs "rapidjson")))))
#:build-type "Release"
#:configure-flags
(list "-DARROW_PYTHON=ON"
@ -3686,6 +3688,7 @@ the SQL language using a syntax that reflects the resulting query.")
;; function, or using pkg-config for packages that do not
;; have this feature
"-DARROW_DEPENDENCY_SOURCE=SYSTEM"
"-Dxsimd_SOURCE=SYSTEM"
;; Split output into its component packages.
(string-append "-DCMAKE_INSTALL_PREFIX="
@ -3744,6 +3747,7 @@ the SQL language using a syntax that reflects the resulting query.")
("re2" ,re2)
("snappy" ,snappy)
("utf8proc" ,utf8proc)
("xsimd" ,xsimd)
("zlib" ,zlib)
("zstd" ,zstd "lib")))
(native-inputs

View File

@ -20,6 +20,7 @@
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;; Copyright © 2021 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2021 Mathieu Othacehe <othacehe@gnu.org>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;;
;;; This file is part of GNU Guix.
;;;
@ -46,6 +47,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages databases)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
@ -1303,3 +1305,53 @@ like raw system image files, can be copied or flashed a lot faster and more
reliably with @code{bmaptool} than with traditional tools, like @code{dd} or
@code{cp}.")
(license license:gpl2)))
(define-public duc
(package
(name "duc")
(version "1.4.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zevv/duc")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1i7ry25xzy027g6ysv6qlf09ax04q4vy0kikl8h0aq5jbxsl9q52"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
(substitute* "src/duc/cmd-ui.c"
(("ncursesw/ncurses.h") "ncurses.h"))
(substitute* "examples/index.cgi"
(("/usr/local/bin/duc")
(string-append out "/bin/duc"))))))
(add-after 'install 'install-examples
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/" ,name "-" ,version)))
(copy-recursively "examples" (string-append doc "/examples"))))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("pkg-config" ,pkg-config)))
(inputs
`(("cairo" ,cairo)
("pango" ,pango)
("tokyocabinet" ,tokyocabinet)
("ncurses" ,ncurses)))
(home-page "http://duc.zevv.nl")
(synopsis "Library and suite of tools for inspecting disk usage")
(description "Duc maintains a database of accumulated sizes of
directories of the file system, and allows you to query this database with
some tools, or create fancy graphs showing you where your bytes are.
Duc comes with console utilities, ncurses and X11 user interfaces and a CGI
wrapper for disk usage querying and visualisation.")
(license license:lgpl3+)))

View File

@ -817,7 +817,7 @@ Extensions} (DNSSEC).")
(define-public knot
(package
(name "knot")
(version "3.0.6")
(version "3.0.7")
(source
(origin
(method git-fetch)
@ -826,7 +826,7 @@ Extensions} (DNSSEC).")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0mjgjx43yb3w688jw16g5m1724wb0wnv4y7di2rslrp0s11wl2a9"))
(base32 "0ihd0lfh0r1nzz2di2rqkrx5j1017xv7m54irlhccx21inwv6g3y"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -55,7 +55,7 @@
;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2019 Stephen Webber <montokapro@gmail.com>
;;; Copyright © 2019 Leo Prikler <leo.prikler@student.tugraz.at>
;;; Copyright © 2019, 2021 Leo Prikler <leo.prikler@student.tugraz.at>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net>
@ -2050,14 +2050,14 @@ incrementally confined in Isearch manner.")
(define emacs-emms-print-metadata
(package
(name "emacs-emms-print-metadata")
(version "7.4")
(version "7.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"emms-" version ".tar"))
(sha256
(base32 "153j76jfnh01b4pkkpyxfh83rl975rx0mh7mx4nnf83qd4dzkkd4"))))
(base32 "0d7nsx2idzbp6d5im5rrsnwppbr2cimvxgx31bhwsm2aq3ya5v2j"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("emms-print-metadata")
@ -2815,7 +2815,7 @@ of bibliographic references.")
(define-public emacs-corfu
(package
(name "emacs-corfu")
(version "0.8")
(version "0.9")
(source (origin
(method git-fetch)
(uri (git-reference
@ -2824,7 +2824,7 @@ of bibliographic references.")
(file-name (git-file-name name version))
(sha256
(base32
"007r1l3ian2bfj4h2xkd2qwh1d1m7kda1p6pj51dikbzaphglh1r"))))
"0265kld5vg870n1zaks42qdawl03zi6rjhffrkkngwgs9i9ap30i"))))
(build-system emacs-build-system)
(home-page "https://github.com/minad/corfu")
(synopsis "Completion overlay region function")
@ -3308,7 +3308,7 @@ during idle time, while Emacs is doing nothing else.")
("pdf-tools-handle-upgrades" '()))))
(add-after 'emacs-patch-variables 'emacs-expand-load-path
(assoc-ref emacs:%standard-phases 'expand-load-path))
(add-after 'emacs-add-source-to-load-path 'emacs-install
(add-after 'emacs-expand-load-path 'emacs-install
(assoc-ref emacs:%standard-phases 'install))
(add-after 'emacs-install 'emacs-build
(assoc-ref emacs:%standard-phases 'build))
@ -8029,7 +8029,7 @@ list of candidates.")
(define-public emacs-marginalia
(package
(name "emacs-marginalia")
(version "0.6")
(version "0.7")
(source
(origin
(method git-fetch)
@ -8038,7 +8038,7 @@ list of candidates.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1lisns2vghmqlg8wiv6jy15cfgnc8j83khz0vfnmrjwgcmjw3bbz"))))
(base32 "0yn6dybvsdhr37hnadmbfqi7pf7scxr9z6a6ghsqbrghycddd0mc"))))
(build-system emacs-build-system)
(home-page "https://github.com/minad/marginalia")
(synopsis "Marginalia in the minibuffer completions")
@ -14361,7 +14361,7 @@ or @code{treemacs}, but leveraging @code{Dired} to do the job of display.")
(define-public emacs-which-key
(package
(name "emacs-which-key")
(version "3.5.2")
(version "3.5.3")
(source
(origin
(method git-fetch)
@ -14370,7 +14370,7 @@ or @code{treemacs}, but leveraging @code{Dired} to do the job of display.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1wgygby4zwlbx6ry6asraaixl169qdz092zgk1brvg63w7f8vkkb"))))
(base32 "144i3hkgm36wnfmqk5vq390snziy3zhwifbh6q6dzs99ic77d5g6"))))
(build-system emacs-build-system)
(arguments
`(#:tests? #t
@ -20483,6 +20483,36 @@ e.g. the package dependencies it requires. See function
file.")
(license license:gpl3+)))
(define-public emacs-packed
(package
(name "emacs-packed")
(version "3.0.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacscollective/packed")
(commit version)))
(sha256
(base32
"06blk8parnpq3qi6y5628q3v59c8dyi41glb289a0l16248qwphk"))))
(build-system emacs-build-system)
(home-page "https://github.com/emacscollective/packed")
(synopsis "Package manager agnostic Emacs Lisp package utilities")
(description
"Packed provides some package manager agnostic utilities to work
with Emacs Lisp packages. As far as Packed is concerned packages
are collections of Emacs Lisp libraries that are stored in a
dedicated directory such as a Git repository. And libraries are
Emacs Lisp files that provide the correct feature (matching the
filename).
Where a package manager might depend on metadata, Packed instead
uses some heuristics to get the same information---that is slower
and might also fail at times but makes it unnecessary to maintain
package recipes.")
(license license:gpl3+)))
(define-public emacs-picpocket
(let ((version "41")
(commit "fa3a49f011b5ae139728548fec7375743f61c7c7"))
@ -27815,6 +27845,7 @@ Features:
(uri (git-reference
(url "https://git.sr.ht/~zge/bang")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1micvz6smhjma7qbka8h3w0crb3sgrxf9lz2548iqfgww50gb0lj"))))
(build-system emacs-build-system)
@ -28499,7 +28530,7 @@ and preferred services can easily be configured.")
(define-public emacs-vertico
(package
(name "emacs-vertico")
(version "0.11")
(version "0.12")
(source
(origin
(method git-fetch)
@ -28508,7 +28539,7 @@ and preferred services can easily be configured.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0vx23csk1nsrcazifwjxchqdmp3qbg2mwbvkqxn134g89qi8pqkw"))))
(base32 "1qb5qmspc7042r366d73j26hrzmrsdwscv8ly9glsa4gbdxcjkln"))))
(build-system emacs-build-system)
(native-inputs
`(("texinfo" ,texinfo)))

View File

@ -523,14 +523,14 @@ V2.")
(define-public mednafen
(package
(name "mednafen")
(version "1.26.1")
(version "1.27.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://mednafen.github.io/releases/files/"
"mednafen-" version ".tar.xz"))
(sha256
(base32 "1x7xhxjhwsdbak8l0iyb497f043xkhibk73w96xck4j2bk10fac4"))))
(base32 "1ysmb56wzr17ki6f1b486r2dzjr11igd021qb4r3437l68prpa7k"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -541,6 +541,7 @@ V2.")
`(("pkg-config" ,pkg-config)))
(inputs
`(("alsa" ,alsa-lib)
("flac" ,flac)
;; ("libmpcdec" ,libmpcdec) FIXME: not recognized.
("libsndfile" ,libsndfile)
("lzo" ,lzo)

View File

@ -1711,24 +1711,30 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
(substitute* "man/man1/Makefile.in"
(("^man_MANS = ngspice\\.1 ngnutmeg\\.1 ngsconvert\\.1 ngmultidec\\.1")
"man_MANS = "))))
(add-after 'install 'delete-script-files
(add-after 'install 'delete-scripts-and-config
(lambda* (#:key outputs #:allow-other-keys)
(delete-file-recursively
(string-append (assoc-ref outputs "out")
"/share/ngspice/scripts")))))
"/share/ngspice/scripts"))
;; This file is autogenerated by the configure script and should
;; not be distributed. It could be removed in ngspice 35. See
;; https://bugs.archlinux.org/task/70569 for reference.
(delete-file (string-append (assoc-ref outputs "out")
"/include/config.h")))))
#:configure-flags
(list "--enable-openmp"
"--enable-ciderlib"
"--enable-xspice"
"--with-ngshared"
"--with-readline=yes")))
;; Readline must be disabled to build KiCad with ngspice 34. See
;; https://bugs.archlinux.org/task/70563 for reference.
"--with-readline=no")))
(native-inputs
`(("bison" ,bison)
("flex" ,flex)))
(inputs
`(("libxaw" ,libxaw)
("mpi" ,openmpi)
("readline" ,readline)))
("mpi" ,openmpi)))
(home-page "http://ngspice.sourceforge.net/")
(synopsis "Mixed-level/mixed-signal circuit simulator")
(description

View File

@ -232,7 +232,7 @@ built-in support for concurrency, distribution and fault tolerance.")
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'add-source-to-load-path 'change-working-directory
(add-before 'expand-load-path 'change-working-directory
(lambda _ (chdir "lib/tools/emacs") #t)))))
(home-page "https://www.erlang.org/")
(synopsis "Erlang major mode for Emacs")

View File

@ -1457,7 +1457,14 @@ following three utilities are included with the library:
(substitute* "src/Makefile.test.include"
(("test/utilprocess_tests.cpp")
""))
#t))
;; Some transaction validation rules have changed (see upstream
;; commit f208400825d4641b9310a1fba023d56e0862e3b0), which makes
;; a test fail. Disable it for now.
;; TODO: Remove this when the next version is released.
(substitute* "src/Makefile.test.include"
(("test/txvalidationcache_tests.cpp")
""))))
(add-before 'check 'set-home
(lambda _
(setenv "HOME" (getenv "TMPDIR")) ; tests write to $HOME

View File

@ -426,7 +426,7 @@ The unified Libertinus family consists of:
(sha256
(base32 "0yggffiplk22lgqklfmd2c0rw8gwchynjh5kz4bz8yv2h6vw2qfr"))))
(build-system gnu-build-system)
(outputs (list "out" "pcf-8bit"))
(outputs (list "out" "pcf-8bit" "otb"))
(arguments
`(#:tests? #f ; no test target in tarball
#:phases
@ -441,6 +441,15 @@ The unified Libertinus family consists of:
(let ((pcf-8bit (assoc-ref outputs "pcf-8bit")))
(apply invoke "make" "install-pcf-8bit" (string-append "prefix="
pcf-8bit)
make-flags))))
(add-after 'build-more-bits 'build-otb
;; Build Open Type Bitmap
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "otb" make-flags)))
(add-after 'install 'install-otb
(lambda* (#:key make-flags outputs #:allow-other-keys)
(let ((otb (assoc-ref outputs "otb")))
(apply invoke "make" "install-otb" (string-append "prefix=" otb)
make-flags)))))))
(native-inputs
`(("bdftopcf" ,bdftopcf)
@ -809,6 +818,27 @@ and Chrome OS, and the recommended font for the
visual language \"Material Design\".")
(license license:asl2.0)))
(define-public font-borg-sans-mono
(package
(name "font-borg-sans-mono")
(version "0.3.1")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/charje/borg-sans-mono"
"/releases/download/v" version "/borg-sans-mono.zip"))
(sha256
(base32
"1xxakd9nfb8wz76rh0gbd69gh0mlqs2453g0j516xgxn8bxip2yj"))))
(build-system font-build-system)
(home-page "https://github.com/charje/borg-sans-mono")
(synopsis "The Borg Sans Mono font")
(description "Borg Sans Mono is a monospaced font derived from Droid Sans
Mono. It includes additions commonly found in programming fonts such as a
slashed zero and ligatures for operators.")
(license license:asl2.0)))
(define-public font-un
(package
(name "font-un")
@ -2234,6 +2264,6 @@ half of the twentieth century.")
(description
"Overpass is a sans-serif typeface based on the U.S. interstate highway
road signage typefaces, adapted for on-screen display and user interfaces.
Overpass includes proprotional and monospace variants.")
Overpass includes proportional and monospace variants.")
(license (list license:silofl1.1
license:lgpl2.1))))

View File

@ -4,7 +4,7 @@
;;; Copyright © 2015, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2018 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015, 2016, 2017 David Thompson <davet@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2020 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018 Julian Graham <joolean@gmail.com>
@ -2288,6 +2288,39 @@ computer games, 3D authoring tools and simulation tools.")
rigid body physics library written in C.")
(license license:expat)))
(define-public box2d
(package
(name "box2d")
(version "2.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/erincatto/box2d")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1ja9cahf3z9zzrdaqcw44lpjmqf2ir2g4chwz0iwqwlkckwhpgvh"))
(modules '((guix build utils)))
(snippet
'(begin
;; Bundled code only used for the testbed.
(delete-file-recursively "extern")))))
(build-system cmake-build-system)
(arguments
`(#:test-target "unit_test"
#:configure-flags '("-DBUILD_SHARED_LIBS=ON"
"-DBOX2D_BUILD_TESTBED=OFF")))
(inputs
`(("libx11" ,libx11)))
(home-page "https://box2d.org/")
(synopsis "2D physics engine for games")
(description "Box2D is a 2D rigid body simulation library for games.
Programmers can use it in their games to make objects move in realistic ways and
make the game world more interactive. From the game engine's point of view, a
physics engine is just a system for procedural animation.")
(license license:expat)))
(define-public libtcod
(package
(name "libtcod")

View File

@ -396,14 +396,14 @@ The game includes a built-in editor so you can design and share your own maps.")
(define-public armagetronad
(package
(name "armagetronad")
(version "0.2.9.0.1")
(version "0.2.9.1.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/armagetronad/stable/"
version "/armagetronad-" version ".tbz"))
(sha256
(base32
"19rfhlg4gp0r7k1j8v4iw20325ciy156nmzax4xikmw22c6nmxcz"))))
"18gn4sg4j5sw38ngb90sl50raliplrsgjcvy8fjwry733k0cgdjr"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -946,7 +946,7 @@ allows users to brew while offline.")
(define-public corsix-th
(package
(name "corsix-th")
(version "0.64")
(version "0.65")
(source
(origin
(method git-fetch)
@ -955,7 +955,7 @@ allows users to brew while offline.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0chh9cv2kdc39sr0x8hclcyzd8dz2y6grgagqzkvr7j570wa5cqh"))))
(base32 "0hp7da7b73dpn1h22rw3h8w6aaj9azn18qnp3ap3lrlqhj4fzcb3"))))
(build-system cmake-build-system)
(arguments
`(#:phases
@ -4164,7 +4164,7 @@ falling, themeable graphics and sounds, and replays.")
(define-public wesnoth
(package
(name "wesnoth")
(version "1.14.16")
(version "1.14.17")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/wesnoth/wesnoth-"
@ -4173,7 +4173,7 @@ falling, themeable graphics and sounds, and replays.")
"wesnoth-" version ".tar.bz2"))
(sha256
(base32
"1d9hq3dcx0sgs2v4400rg2nw98v46m7bwiqqjv8z8n7vw8kx8lhg"))))
"1qc4ylhc4ab51milclzhflpmzw6bg35knwqaj3b157700jkcniin"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ;no check target
@ -5203,15 +5203,16 @@ tactics.")
(define-public widelands
(package
(name "widelands")
(version "21")
(version "1.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://launchpad.net/widelands/"
"build" version "/build" version "/+download/"
"widelands-build" version "-source.tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/widelands/widelands")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0mz3jily0w1zxxqbnkqrp6hl88xhrwzbil9crq7gpcwidx60w7k0"))
(base32 "1hw51binnbia15mj1gzx1cbk3cw9r91sisqci2qzcy4ahxiadnw0"))
(modules '((guix build utils)))
(snippet
'(begin
@ -5251,7 +5252,8 @@ tactics.")
`(("gettext" ,gettext-minimal)
("python" ,python-wrapper)))
(inputs
`(("boost" ,boost)
`(("curl" ,curl)
("boost" ,boost)
("glew" ,glew)
("icu4c" ,icu4c)
("libpng" ,libpng)
@ -5270,8 +5272,8 @@ nothing but your headquarters, where all your resources are stored.
In the course of the game, you will build an ever growing settlement. Every
member of your clan will do his or her part to produce more resources---wood,
food, iron, gold and more---to further this growth. The economic network is
complex and different in the four tribes (Barbarians, Empire, Atlanteans, and
Frisians).
complex and different in the five tribes (Barbarians, Empire, Atlanteans,
Frisians and Amazons).
As you are not alone in the world, you will meet other clans sooner or later.
Some of them may be friendly and you may eventually trade with them. However,
@ -5289,6 +5291,12 @@ of war. Widelands also offers an Artificial Intelligence to challenge you.")
license:silofl1.1 ;Widelands.ttf
license:cc-by-sa3.0)))) ;some music files
(define-public widelands-21
(package
(inherit widelands)
(version "21")
(properties `((superseded . ,widelands)))))
(define-public starfighter
(package
(name "starfighter")
@ -7499,7 +7507,7 @@ Strife, Chex Quest, and fan-created games like Harmony, Hacx and Freedoom.")
(define-public odamex
(package
(name "odamex")
(version "0.9.0")
(version "0.9.3")
(source
(origin
(method url-fetch)
@ -7507,7 +7515,7 @@ Strife, Chex Quest, and fan-created games like Harmony, Hacx and Freedoom.")
"mirror://sourceforge/odamex/Odamex/" version "/"
"odamex-src-" version ".tar.bz2"))
(sha256
(base32 "0yfrvx8zb3chy47fyz4nik6gbh0y5608yvld4gz4y8l158qk71y1"))))
(base32 "0vmw9ijb6n4wrxjxixakn7l6a6carnvs9wbbzb4vcq1brbzyrb0p"))))
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ; no tests
(native-inputs

View File

@ -15,6 +15,7 @@
;;; Copyright © 2020 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2020, 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -91,6 +92,7 @@
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
@ -881,6 +883,93 @@ utilities for data translation and processing.")
`(("gdal" ,gdal)))
(synopsis "GDAL (Geospatial Data Abstraction Library) python bindings")))
(define-public python-pyshp
(package
(name "python-pyshp")
(version "2.1.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/GeospatialPython/pyshp")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0jsraqzq82pw19wvx84x7w5cs8agr44a9b5y0jjw540wim4xa73r"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; This is the only test file.
(invoke "python" "-m" "pytest" "test_shapefile.py")))))))
(native-inputs
`(("python-pytest" ,python-pytest)
("python-pytest-runner" ,python-pytest-runner)))
(home-page "https://github.com/GeospatialPython/pyshp")
(synopsis "Read/write support for ESRI Shapefile format")
(description
"The Python Shapefile Library (PyShp) reads and writes ESRI Shapefiles.")
(license license:expat)))
(define-public python-cartopy
(package
(name "python-cartopy")
;; This is a post-release fix that adds build_ext to setup.py.
(version "0.19.0.post1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Cartopy" version))
(sha256
(base32 "0xnm8z3as3hriivdfd26s6vn5b63gb46x6vxw6gh1mwfm5rlg2sb"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "python" "-m" "pytest" "--pyargs" "cartopy"
;; These tests require online data.
"-m" "not natural_earth and not network"
;; This one too but it's not marked as such.
"-k" "not test_gridliner_labels_bbox_style")))))))
(propagated-inputs
`(("python-matplotlib" ,python-matplotlib)
("python-numpy" ,python-numpy)
("python-pykdtree" ,python-pykdtree)
("python-pyshp" ,python-pyshp)
("python-scipy" ,python-scipy)
("python-shapely" ,python-shapely)))
(inputs
`(("geos" ,geos)
("proj" ,proj)))
(native-inputs
`(("python-cython" ,python-cython)
("python-flufl-lock" ,python-flufl-lock)
("python-pytest" ,python-pytest)))
(home-page "https://scitools.org.uk/cartopy/docs/latest/")
(synopsis "Cartographic library for visualisation")
(description
"Cartopy is a Python package designed to make drawing maps for data
analysis and visualisation easy.
It features:
@itemize
@item object oriented projection definitions
@item point, line, polygon and image transformations between projections
@item integration to expose advanced mapping in Matplotlib with a simple and
intuitive interface
@item powerful vector data handling by integrating shapefile reading with
Shapely capabilities
@end itemize")
(license license:lgpl3+)))
(define-public postgis
(package
(name "postgis")

View File

@ -127,6 +127,7 @@
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages ibus)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
@ -11578,6 +11579,69 @@ and toolbars.")
GTK+. It integrates well with the GNOME desktop environment.")
(license license:gpl3+)))
(define-public apostrophe
(package
(name "apostrophe")
(version "2.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/somas/apostrophe")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1qzy3zhi18wf42m034s8kcmx9gl05j620x3hf6rnycq2fvy7g4gz"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-meson
(lambda _
(substitute* "build-aux/meson_post_install.py"
(("gtk-update-icon-cache") "true"))
#t))
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((prog (string-append (assoc-ref outputs "out")
"/bin/apostrophe"))
(pylib (string-append (assoc-ref outputs "out")
"/lib/python"
,(version-major+minor
(package-version python))
"/site-packages")))
(wrap-program prog
`("PYTHONPATH" = (,(getenv "PYTHONPATH") ,pylib))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))
`("PATH" prefix (,(string-append (assoc-ref inputs "pandoc")
"/bin"))))
#t))))))
(inputs
`(("glib" ,glib)
("gobject-introspection" ,gobject-introspection)
("gspell" ,gspell)
("gtk+" ,gtk+)
("libhandy" ,libhandy)
("pandoc" ,pandoc)
("python-chardet" ,python-chardet)
("python-levenshtein" ,python-levenshtein)
("python-regex" ,python-regex)
("python-pycairo" ,python-pycairo)
("python-pygobject" ,python-pygobject)
("python-pyenchant" ,python-pyenchant)
("python-pypandoc" ,python-pypandoc)
("webkitgtk" ,webkitgtk)))
(native-inputs
`(("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("pkg-config" ,pkg-config)))
(home-page "https://gitlab.gnome.org/somas/apostrophe")
(synopsis "Markdown editor written in Python with GTK+")
(description "Apostrophe is a GTK+ based distraction free Markdown editor.
It uses pandoc as back-end for parsing Markdown.")
(license license:gpl3)))
(define-public libratbag
(package
(name "libratbag")

View File

@ -25,6 +25,7 @@
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@mgail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2413,6 +2414,32 @@ which satisfies the cron expression.")
values.")
(license license:asl2.0)))
(define-public go-gopkg-in-yaml-v3
(package
(name "go-gopkg-in-yaml-v3")
(version "3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gopkg.in/yaml.v3")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06f4lnrp494wqaygv09dggr2dwf3z2bawqhnlnnwiamg5y787k4g"))))
(build-system go-build-system)
(arguments
'(#:import-path "gopkg.in/yaml.v3"))
(native-inputs
`(("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1)))
(home-page "https://gopkg.in/yaml.v3")
(synopsis "YAML reader and writer for the Go language")
(description
"This package provides a Go library for encode and decode YAML values.
The yaml package supports most of YAML 1.2, but preserves some behavior from
1.1 for backwards compatibility.")
(license license:asl2.0)))
(define-public go-github-com-mattn-go-isatty
(package
(name "go-github-com-mattn-go-isatty")

View File

@ -378,7 +378,7 @@ for the IRCv3 protocol.")
(define-public kirc
(package
(name "kirc")
(version "0.2.6")
(version "0.2.7")
(source (origin
(method git-fetch)
(uri (git-reference
@ -386,7 +386,7 @@ for the IRCv3 protocol.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "11pwbil44q7sm3mp1khgw8wmwln2n03f1qawlgmg168jzyxqrs16"))))
(base32 "0phx00lr7ya8rx1hskv1wdwbq2vlihiqhnplqdvk1r3m23is7al9"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests

View File

@ -3,7 +3,7 @@
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2017, 2019, 2021 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2017-2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017-2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017, 2019, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
@ -45,6 +45,7 @@
#:use-module (guix gexp)
#:use-module (guix build-system ant)
#:use-module (guix build-system gnu)
#:use-module (guix build-system maven)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages attr)
@ -3851,25 +3852,11 @@ documentation tools.")
(arguments
`(#:jar-name "qdox.jar"
#:tests? #f; no tests
#:modules
((guix build ant-build-system)
(guix build java-utils)
(guix build utils)
(sxml simple))
#:phases
(modify-phases %standard-phases
(add-before 'install 'create-pom
(lambda _
(with-output-to-file "pom.xml"
(lambda _
(sxml->xml
`((project
(modelVersion "4.0.0")
(name "QDox")
(groupId "com.thoughtworks.qdox")
(artifactId "qdox")
(version ,,version))))))
#t))
(generate-pom.xml "pom.xml" "com.thoughtworks.qdox" "qdox" ,version
#:name "QDox"))
(replace 'install
(install-from-pom "pom.xml")))))
(home-page "https://github.com/codehaus/qdox")
@ -3895,7 +3882,14 @@ documentation tools.")
"/qdox-" version "-sources.jar"))
(sha256
(base32
"1s2jnmx2dkwnaha12lcj26aynywgwa8sslc47z82wx8xai13y4fg"))))))
"1s2jnmx2dkwnaha12lcj26aynywgwa8sslc47z82wx8xai13y4fg"))))
(arguments
(substitute-keyword-arguments (package-arguments java-qdox)
((#:phases phases)
`(modify-phases ,phases
(replace 'create-pom
(generate-pom.xml "pom.xml" "com.thoughtworks.qdox" "qdox" ,version
#:name "QDox"))))))))
(define-public java-jarjar
(package
@ -5792,7 +5786,13 @@ The jMock library
(build-system ant-build-system)
(arguments
`(#:tests? #f ; there are no tests
#:jar-name "jopt-simple.jar"))
#:jar-name "jopt-simple.jar"
#:phases
(modify-phases %standard-phases
(add-before 'install 'create-pom
(generate-pom.xml "pom.xml" "net.sf.jopt-simple" "jopt-simple" ,version))
(replace 'install
(install-from-pom "pom.xml")))))
(home-page "https://pholser.github.io/jopt-simple/")
(synopsis "Java library for parsing command line options")
(description "JOpt Simple is a Java library for parsing command line
@ -5804,6 +5804,28 @@ retrieval of options and their arguments simple and expressive, without being
overly clever.")
(license license:expat)))
;; Required by jmh
(define-public java-jopt-simple-4
(package
(inherit java-jopt-simple)
(version "4.6")
(source (origin
(method url-fetch)
(uri (string-append "https://repo1.maven.org/maven2/"
"net/sf/jopt-simple/jopt-simple/"
version "/jopt-simple-"
version "-sources.jar"))
(sha256
(base32
"0ny82zczxkn201ld0b7rps0ifzjhfs8m1ncdmy1f50145ciszkpd"))))
(arguments
(substitute-keyword-arguments (package-arguments java-jopt-simple)
((#:phases phases)
`(modify-phases ,phases
(replace 'create-pom
(generate-pom.xml "pom.xml" "net.sf.jopt-simple" "jopt-simple"
,version))))))))
(define-public java-commons-math3
(package
(name "java-commons-math3")
@ -5838,7 +5860,7 @@ overly clever.")
#t))
;; There is no install target.
(replace 'install
(install-jars "target")))))
(install-from-pom "pom.xml")))))
(native-inputs
`(("java-junit" ,java-junit)
("java-hamcrest-core" ,java-hamcrest-core)))
@ -5852,36 +5874,37 @@ available in the Java programming language or Commons Lang.")
(define-public java-jmh
(package
(name "java-jmh")
(version "1.17.5")
(version "1.32")
(source (origin
(method hg-fetch)
(uri (hg-reference
(url "http://hg.openjdk.java.net/code-tools/jmh/")
(changeset version)))
(file-name (string-append name "-" version "-checkout"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/openjdk/jmh")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1fxyxhg9famwcg1prc4cgwb5wzyxqavn3cjm5vz8605xz7x5k084"))))
(build-system ant-build-system)
"0i7fa7l3gdqkkgz5ddayp6m46dgbj9rqlz35xffrcbyiz3gpljy0"))))
(build-system maven-build-system)
(arguments
`(#:jar-name "jmh-core.jar"
#:source-dir "jmh-core/src/main"
#:test-dir "jmh-core/src/test"
`(#:exclude
(("org.apache.maven.plugins" .
("maven-source-plugin" "maven-archetype-plugin" "maven-shade-plugin"
"maven-site-plugin" "maven-javadoc-plugin" "maven-eclipse-plugin"))
("com.mycila.maven-license-plugin" . ("maven-license-plugin"))
("org.apache.maven.wagon" . ("wagon-ssh")))
#:maven-plugins
(("maven-enforcer-plugin" ,maven-enforcer-plugin)
,@(default-maven-plugins))
#:phases
(modify-phases %standard-phases
;; This seems to be a bug in the JDK. It may not be necessary in
;; future versions of the JDK.
(add-after 'unpack 'fix-bug
(add-after 'unpack 'remove-unnecessary
(lambda _
(with-directory-excursion
"jmh-core/src/main/java/org/openjdk/jmh/runner/options"
(substitute* '("IntegerValueConverter.java"
"ThreadsValueConverter.java")
(("public Class<Integer> valueType")
"public Class<? extends Integer> valueType")))
#t)))))
(inputs
`(("java-jopt-simple" ,java-jopt-simple)
;; requires org.apache.maven.archetype:archetype-packaging.
;; Its subprojects also require groovy, kotlin and scala,
;; respectively.
(delete-file-recursively "jmh-archetypes"))))))
(propagated-inputs
`(("java-jopt-simple" ,java-jopt-simple-4)
("java-commons-math3" ,java-commons-math3)))
(native-inputs
`(("java-junit" ,java-junit)
@ -6467,25 +6490,11 @@ bottlenecks move away from the database in an effectively cached system.")
`(#:tests? #f ; no tests included
#:jdk ,icedtea-8
#:jar-name "jsr250.jar"
#:modules ((guix build ant-build-system)
(guix build utils)
(guix build maven pom)
(guix build java-utils)
(sxml simple))
#:phases
(modify-phases %standard-phases
(add-before 'install 'create-pom
(lambda _
(with-output-to-file "pom.xml"
(lambda _
(sxml->xml
`((project
(modelVersion "4.0.0")
(name "jsr250")
(groupId "javax.annotation")
(artifactId "jsr250-api")
(version ,,version))))))
#t))
(generate-pom.xml "pom.xml" "javax.annotation" "jsr250-api" ,version
#:name "jsr250"))
(replace 'install
(install-from-pom "pom.xml")))))
(home-page "https://jcp.org/en/jsr/detail?id=250")
@ -6514,25 +6523,10 @@ namespaces.")
(arguments
`(#:tests? #f ; no tests included
#:jar-name "jsr305.jar"
#:modules ((guix build ant-build-system)
(guix build java-utils)
(guix build maven pom)
(guix build utils)
(sxml simple))
#:phases
(modify-phases %standard-phases
(add-before 'install 'create-pom
(lambda _
(with-output-to-file "pom.xml"
(lambda _
(sxml->xml
`((project
(modelVersion "4.0.0")
(name "jsr305")
(groupId "com.google.code.findbugs")
(artifactId "jsr305")
(version ,,version))))))
#t))
(generate-pom.xml "pom.xml" "com.google.code.findbugs" "jsr305" ,version))
(replace 'install
(install-from-pom "pom.xml")))))
(home-page "http://findbugs.sourceforge.net/")
@ -10563,25 +10557,10 @@ this is not a static analysis tool.)")
#:jdk ,icedtea-8
#:tests? #f; no tests
#:source-dir "aopalliance/src/main"
#:modules ((guix build ant-build-system)
(guix build utils)
(guix build maven pom)
(guix build java-utils)
(sxml simple))
#:phases
(modify-phases %standard-phases
(add-before 'install 'create-pom
(lambda _
(with-output-to-file "pom.xml"
(lambda _
(sxml->xml
`((project
(modelVersion "4.0.0")
(name "aopalliance")
(groupId "aopalliance")
(artifactId "aopalliance")
(version "1.0"))))))
#t))
(generate-pom.xml "pom.xml" "aopalliance" "aopalliance" ,version))
(replace 'install
(install-from-pom "pom.xml")))))
(home-page "http://aopalliance.sourceforge.net")
@ -11706,7 +11685,9 @@ protocol-independent framework to build mail and messaging applications.")
"**/ClientUtilsTest.java"
;; End with errors that seem related to our powermock
"**/KafkaProducerTest.java"
"**/BufferPoolTest.java")))
"**/BufferPoolTest.java"
;; Undeterministic failure, seems to affect mostly ci
"**/GarbageCollectedMemoryPoolTest.java")))
(inputs
`(("java-slf4j-api" ,java-slf4j-api)
("java-lz4" ,java-lz4)))
@ -12180,29 +12161,14 @@ sequences to format your console output which works on every platform.")
(build-system ant-build-system)
(arguments
`(#:jar-name "java-jboss-el-api_spec.jar"
#:modules ((guix build ant-build-system)
(guix build utils)
(guix build maven pom)
(guix build java-utils)
(sxml simple))
#:phases
(modify-phases %standard-phases
;; the origin of javax.el:javax.el-api is unknown, so we use this package
;; instead, which implements the same thing. We override the pom file
;; to "rename" the package so it can be found by maven.
(add-before 'install 'override-pom
(lambda _
(delete-file "pom.xml")
(with-output-to-file "pom.xml"
(lambda _
(sxml->xml
`(project
(modelVersion "4.0.0")
(name "el-api")
(groupId "javax.el")
(artifactId "javax.el-api")
(version "3.0")))))
#t))
(generate-pom.xml "pom.xml" "javax.el" "javax.el-api" "3.0"
#:name "el-api"))
(replace 'install
(install-from-pom "pom.xml")))))
(inputs
@ -12234,11 +12200,6 @@ JavaServer Pages (JSP).")
#:jdk ,icedtea-8
#:source-dir "."
#:tests? #f; no tests
#:modules ((guix build ant-build-system)
(guix build utils)
(guix build maven pom)
(guix build java-utils)
(sxml simple))
#:phases
(modify-phases %standard-phases
;; the origin of javax.interceptor:javax.interceptor-api is unknown,
@ -12246,18 +12207,8 @@ JavaServer Pages (JSP).")
;; We override the pom file to "rename" the package so it can be found
;; by maven.
(add-before 'install 'override-pom
(lambda _
(delete-file "pom.xml")
(with-output-to-file "pom.xml"
(lambda _
(sxml->xml
`(project
(modelVersion "4.0.0")
(name "interceptor-api")
(groupId "javax.interceptor")
(artifactId "javax.interceptor-api")
(version "3.0")))))
#t))
(generate-pom.xml "pom.xml" "javax.interceptor" "javax.interceptor-api"
"3.0" #:name "interceptor-api"))
(replace 'install
(install-from-pom "pom.xml")))))
(home-page "https://github.com/jboss/jboss-interceptors-api_spec")

View File

@ -57,6 +57,7 @@
#:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages game-development)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
@ -88,7 +89,7 @@
(define-public ixion
(package
(name "ixion")
(version "0.15.0")
(version "0.16.1")
(source
(origin
(method url-fetch)
@ -96,7 +97,7 @@
version ".tar.xz"))
(sha256
(base32
"1rmrl2zjzi4z0abf2cd54acypkccdhx2065dlyzy6xg83gv0mxmi"))))
"17q84mhy4rb3masvjw24x549irdjmccnc8n04xh58v9l7hxn8v22"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -115,7 +116,7 @@ their dependencies automatically upon calculation.")
(define-public orcus
(package
(name "orcus")
(version "0.15.3")
(version "0.16.1")
(source
(origin
(method url-fetch)
@ -123,8 +124,10 @@ their dependencies automatically upon calculation.")
"orcus-" version ".tar.xz"))
(sha256
(base32
"14gbnqsv5n2fm4sxa17014f440clrzls6p2w2ixk9wipg4950v9s"))))
"1bps34sqz7wlrl01ssywjd5fbmssplifs0rskivgrg801lr6pcm4"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--disable-static")))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
@ -1086,7 +1089,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
(define-public libreoffice
(package
(name "libreoffice")
(version "6.4.7.2")
(version "7.1.4.2")
(source
(origin
(method url-fetch)
@ -1095,7 +1098,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
"https://download.documentfoundation.org/libreoffice/src/"
(version-prefix version 3) "/libreoffice-" version ".tar.xz"))
(sha256
(base32 "0i3654rmzs8aazj8j3dmxamilslfrki0y4sksg3n1zygc2ddfk83"))))
(base32 "1jsskhnlyra7q6d12kkc8dxq5fgrnd8grl32bdck7j9hkwv6d13m"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("bison" ,bison)
@ -1108,6 +1111,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
(inputs
`(("bluez" ,bluez)
("boost" ,boost)
("box2d" ,box2d)
("clucene" ,clucene)
("cups" ,cups)
("dbus-glib" ,dbus-glib)
@ -1178,12 +1182,23 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
("vigra" ,vigra)
("xdg-utils" ,xdg-utils)
("xmlsec" ,xmlsec-nss)
("zip" ,zip)))
("zip" ,zip)
("dtoa" ; needed after version 6.4.7.2.
,(origin
(method url-fetch)
(uri "https://dev-www.libreoffice.org/src/dtoa-20180411.tgz")
(sha256
(base32 "1d0iwy0q5sjznv23d3nbwmy0r7m1mdzlnv5pc4izddkx9xld10h0"))))))
(arguments
`(#:tests? #f ; Building the tests already fails.
#:make-flags '("build-nocheck") ; Do not build unit tests, which fails.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'insert-external-tarballs
(lambda* (#:key inputs #:allow-other-keys)
(mkdir-p "external/tarballs")
(copy-file (assoc-ref inputs "dtoa")
"external/tarballs/dtoa-20180411.tgz")
#t))
(add-before 'configure 'prepare-src
(lambda* (#:key inputs #:allow-other-keys)
(substitute*
@ -1201,14 +1216,11 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
(list "dirname" "grep" "uname"))
;; GPGME++ headers are installed in a gpgme++ subdirectory, but
;; files in "xmlsecurity/source/gpg/" and elsewhere expect to
;; find them on the include path without a prefix.
(substitute* '("xmlsecurity/Library_xsec_xmlsec.mk"
"comphelper/Library_comphelper.mk")
(("\\$\\$\\(INCLUDE\\)")
(string-append "$$(INCLUDE) -I"
(assoc-ref inputs "gpgme")
"/include/gpgme++")))
;; configure is hardcoded to use FHS directories.
(substitute* "configure"
(("GPGMEPP_CFLAGS=-I/usr")
(string-append "GPGMEPP_CFLAGS=-I"
(assoc-ref inputs "gpgme"))))
;; /usr/bin/xdg-open doesn't exist on Guix System.
(substitute* '("shell/source/unix/exec/shellexec.cxx"
@ -1259,10 +1271,6 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
"/bin/soffice")
(symlink-output "/lib/libreoffice/program/soffice"
"/bin/libreoffice")
(install "workdir/CustomTarget/sysui/share/libreoffice/openoffice.keys"
"/share/mime-info/libreoffice.keys")
(install "workdir/CustomTarget/sysui/share/libreoffice/openoffice.mime"
"/share/mime-info/libreoffice.mime")
(install
"workdir/CustomTarget/sysui/share/libreoffice/openoffice.org.xml"
"/share/mime/packages/libreoffice.xml")
@ -1278,6 +1286,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
#:configure-flags
(list
"--enable-release-build"
"--with-vendor=GNU Guix"
;; Avoid using all cpu cores by default
(format #f "--with-parallelism=~d" (parallel-job-count))
"--disable-fetch-external" ; disable downloads
@ -1295,6 +1304,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
"--without-java"
;; FIXME: Enable once the corresponding inputs are packaged.
"--disable-coinmp"
"--disable-skia"
;; This could (Debian does this) be a separate output containing only
;; program/libfirebird_sdbclo.so, if there's a way to point to it.
"--enable-firebird-sdbc"

View File

@ -730,9 +730,9 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
(define* (make-linux-libre version hash-string supported-systems
#:key
(extra-version #f)
;; A function that takes an arch and a variant.
;; See kernel-config for an example.
(extra-version #f)
(configuration-file #f)
(defconfig "defconfig")
(extra-options %default-extra-linux-options)
@ -751,9 +751,9 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
(define* (make-linux-libre* version source supported-systems
#:key
(extra-version #f)
;; A function that takes an arch and a variant.
;; See kernel-config for an example.
(extra-version #f)
(configuration-file #f)
(defconfig "defconfig")
(extra-options %default-extra-linux-options))
@ -819,7 +819,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
(format #t "`CROSS_COMPILE' set to `~a'~%"
(getenv "CROSS_COMPILE"))))
(setenv "EXTRA_VERSION" ,extra-version)
(setenv "EXTRAVERSION" ,(and extra-version
(string-append "-" extra-version)))
(let ((build (assoc-ref %standard-phases 'build))
(config (assoc-ref (or native-inputs inputs) "kconfig")))

View File

@ -17471,3 +17471,227 @@ Memory transactions give freedom from deadlocks, are immune to thread-safety
bugs and race conditions, provide automatic roll-back on failure, and aim at
resolving the tension between granularity and concurrency.")
(license license:llgpl))))
(define-public ecl-stmx
(sbcl-package->ecl-package sbcl-stmx))
(define-public cl-stmx
(sbcl-package->cl-source-package sbcl-stmx))
(define-public sbcl-binding-arrows
;; Fork of sbcl-arrows that does not have a new tag.
(let ((commit "d19364ec8850880ed6e42078ccaa2ed9114dc83a")
(revision "1"))
(package
(name "sbcl-binding-arrows")
(version (git-version "1.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/phoe/binding-arrows")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0hqikgzic7kjq2n1d924yldfm30qz67cmsk6gghi9cbmxkwdlwp8"))))
(build-system asdf-build-system/sbcl)
(native-inputs
`(("hu.dwim.stefil" ,sbcl-hu.dwim.stefil)))
(home-page "https://github.com/phoe/binding-arrows")
(synopsis "Threading macros based on binding anonymous variables")
(description
"This system implements binding threading macros -- a kind of threading
macros with different semantics than classical, Clojure core threading macros
or their extension, swiss-arrows. Two Common Lisp implementations of those are
@code{arrows} and @code{arrow-macros}.
This system is a fork of @code{arrows} with changes in semantics that make it
impossible to merge back upstream.")
(license license:expat))))
(define-public ecl-binding-arrows
(sbcl-package->ecl-package sbcl-binding-arrows))
(define-public cl-binding-arrows
(sbcl-package->cl-source-package sbcl-binding-arrows))
(define-public sbcl-atomics
;; No release in years.
(let ((commit "9ee0bdebcd2bb9b242671a75460db13fbf45454c")
(revision "1"))
(package
(name "sbcl-atomics")
(version (git-version "1.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/atomics")
(commit commit)))
(file-name (git-file-name "atomics" version))
(sha256
(base32 "0mp5jdqq0aamdhgnvw149cqqi3zg7dkkibp25qi4rafw1fnpd40z"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("documentation-utils" ,sbcl-documentation-utils)))
(native-inputs
`(("parachute" ,sbcl-parachute)))
(home-page "https://shinmera.github.io/atomics/")
(synopsis "Common Lisp portability layer for atomic operations")
(description
"This is a library for access to atomic operation primitives such as
compare-and-swap. It aims to be a rather thin layer over what the
implementations offer.")
(license license:zlib))))
(define-public ecl-atomics
(sbcl-package->ecl-package sbcl-atomics))
(define-public cl-atomics
(sbcl-package->cl-source-package sbcl-atomics))
(define-public sbcl-cl-mock
;; .asd version only got updated recently, despired the old GitHug "1.0.1" release.
(let ((commit "7988dca2093358911b67597a2cd1570c785dfe76"))
(package
(name "sbcl-cl-mock")
(version (git-version "1.0.1" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Ferada/cl-mock/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0f40wikcf783jx26ip0nnhwjjfjvjiw7njqsqrb6kaphc8bgw0i1"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("closer-mop" ,sbcl-closer-mop)
("trivia" ,sbcl-trivia)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(home-page "https://github.com/Ferada/cl-mock")
(synopsis "Mocking functions for Common Lisp testing")
(description
"This small library provides a way to replace the actual implementation
of either regular or generic functions with mocks.")
(license license:agpl3))))
(define-public ecl-cl-mock
(sbcl-package->ecl-package sbcl-cl-mock))
(define-public cl-mock
(sbcl-package->cl-source-package sbcl-cl-mock))
(define-public sbcl-cl-murmurhash
;; No release.
(let ((commit "5433f5e95f1cce63a81259a471150834c6a59364")
(revision "1"))
(package
(name "sbcl-cl-murmurhash")
(version (git-version "0.0.0" revision commit))
(home-page "https://github.com/ruricolist/cl-murmurhash/")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0251r0mpjm0y3qsm4lm7ncvrkxvgwc53spdm1p2mpayhvkkqqsws"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("babel" ,sbcl-babel)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(synopsis "32-bit version of Murmurhash3 for Common Lisp")
(description
"This Common Lisp package offers an implementation of the 32-bit
variant of MurmurHash3 (@url{https://github.com/aappleby/smhasher}), a fast
non-crytographic hashing algorithm.")
(license license:expat))))
(define-public ecl-cl-murmurhash
(sbcl-package->ecl-package sbcl-cl-murmurhash))
(define-public cl-murmurhash
(sbcl-package->cl-source-package sbcl-cl-murmurhash))
(define-public sbcl-cl-hamt
;; No release
(let ((commit "7a99eaaca1f952029def9ad5a2b80a612a712208"))
(package
(name "sbcl-cl-hamt")
(version (git-version "0.0.0" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/danshapero/cl-hamt/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1ycbd73ykfj5j9sdhlzamyv18qbjj6xqf7fhm4fa0nsyr6sr3rf5"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("cl-murmurhash" ,sbcl-cl-murmurhash)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(home-page "https://github.com/danshapero/cl-hamt")
(synopsis "Dictionary & set data structure using hash array-mapped tries")
(description
"This library provides purely functional dictionaries and sets in
Common Lisp based on the hash array-mapped trie data structure.")
(license license:bsd-3))))
(define-public ecl-cl-hamt
(sbcl-package->ecl-package sbcl-cl-hamt))
(define-public cl-hamt
(sbcl-package->cl-source-package sbcl-cl-hamt))
(define-public sbcl-cl-gserver
(package
(name "sbcl-cl-gserver")
(version "1.7.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mdbergmann/cl-gserver")
(commit version)))
(file-name (git-file-name "cl-gserver" version))
(sha256
(base32 "1vkxs6ybi1pkpji2crmhq8c71zg0dn2ji0lcwhs0rivphz5jxk24"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("bordeaux-threads" ,sbcl-bordeaux-threads)
("lparallel" ,sbcl-lparallel)
("cl-speedy-queue" ,sbcl-cl-speedy-queue)
("log4cl" ,sbcl-log4cl)
("str" ,sbcl-cl-str)
("blackbird" ,sbcl-blackbird)
("cl-hamt" ,sbcl-cl-hamt)
("binding-arrows" ,sbcl-binding-arrows)
("atomics" ,sbcl-atomics)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)
("mock" ,sbcl-cl-mock)))
(home-page "https://mdbergmann.github.io/cl-gserver/index.html")
(synopsis "Actor framework for easy access to state and async operations")
(description
"@code{cl-gserver} is a 'message passing' library / framework with actors
similar to Erlang or Akka. It supports creating reactive systems for parallel
computing and event based message handling.")
(license license:agpl3)))
(define-public ecl-cl-gserver
(sbcl-package->ecl-package sbcl-cl-gserver))
(define-public cl-gserver
(sbcl-package->cl-source-package sbcl-cl-gserver))

View File

@ -1108,23 +1108,20 @@ shell command executions.")
(define-public emilua
(package
(name "emilua")
(version "0.3.0")
(version "0.3.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/emilua/emilua.git")
(commit (string-append "v" version))
;; Current version requires bundled CLI11, but at some future
;; release the one found in the system could be used
;; instead. Current version also requires Trial.Protocol and
;; the HTTP lib developed as part of GSoC 2014 for Boost, but
;; these are dependencies unlikely to be "unbundled" in future
;; releases.
;; Current version requires Trial.Protocol and the HTTP lib
;; developed as part of GSoC 2014 for Boost, and these are
;; dependencies unlikely to be "unbundled" in future releases.
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32
"124fj73722c03znwdyqp1i0jygwv3s11f6s1j9rzym513qrf7fnd"))))
"1999bgrh52124a5g4qizav3x257ff2brjr855srpm1jv1nxzbygv"))))
(build-system meson-build-system)
(arguments
`(;; Tests are disabled for now due to an issue that affecs guix:

View File

@ -1833,7 +1833,7 @@ facilities for checking incoming mail.")
(package
(name "dovecot")
;; Also update dovecot-pigeonhole when updating to a new minor version.
(version "2.3.14")
(version "2.3.15")
(source
(origin
(method url-fetch)
@ -1841,7 +1841,7 @@ facilities for checking incoming mail.")
(version-major+minor version) "/"
"dovecot-" version ".tar.gz"))
(sha256
(base32 "0jm3p52z619v7ajh533g2g7d790k82fk0w7ry0zqlm8ymzrxgcy8"))))
(base32 "141manrh54cy8xizr7f8fsa3vdzc2ccfgdz87l9rjylm8mfxvfr1"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -1902,7 +1902,7 @@ It supports mbox/Maildir and its own dbox/mdbox formats.")
(let ((dovecot-version (version-major+minor (package-version dovecot))))
(package
(name "dovecot-pigeonhole")
(version "0.5.14")
(version "0.5.15")
(source
(origin
(method url-fetch)
@ -1910,7 +1910,7 @@ It supports mbox/Maildir and its own dbox/mdbox formats.")
"https://pigeonhole.dovecot.org/releases/" dovecot-version "/"
"dovecot-" dovecot-version "-pigeonhole-" version ".tar.gz"))
(sha256
(base32 "1lmjzz4kd90wbdslacybizd1dks4bhwmrx39lj8b19naldw0zjk8"))
(base32 "1l2h0p8ddsl3ja2lnwk0mfqplqh8n0iw8k27awd3ak7prr88yjg1"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -2421,7 +2421,7 @@ September 2004}")
`(("python" ,python-2)))
(inputs
`(("gfortran" ,gfortran)
("lapack" ,lapack)
("openblas" ,openblas)
("superlu" ,superlu)
;; leaving out hdf5 and fftw, as petsc expects them to be built with mpi
;; leaving out opengl, as configuration seems to only be for mac
@ -2432,6 +2432,7 @@ September 2004}")
#:configure-flags
`("--with-mpi=0"
"--with-openmp=1"
"--with-openblas=1"
"--with-superlu=1")
#:make-flags
;; Honor (parallel-job-count) for build. Do not use --with-make-np,
@ -6314,14 +6315,14 @@ numeric differences and differences in numeric formats.")
(define-public why3
(package
(name "why3")
(version "1.3.1")
(version "1.3.3")
(source (origin
(method url-fetch)
(uri (string-append "https://gforge.inria.fr/frs/download.php/file"
"/38291/why3-" version ".tar.gz"))
"/38367/why3-" version ".tar.gz"))
(sha256
(base32
"16zcrc60zz2j3gd3ww93z2z9x2jkxb3kr57y8i5rcgmacy7mw3bv"))))
"1n0a2nn1gnk0zg339lh698g4wpk7m8m1vyi2yvifd5adqvk4milw"))))
(build-system ocaml-build-system)
(native-inputs
`(("coq" ,coq)
@ -6345,8 +6346,8 @@ numeric differences and differences in numeric formats.")
(setenv "CONFIG_SHELL" (which "sh"))
(substitute* "configure"
;; find ocaml-num in the correct directory
(("\\$DIR/nums.cma") "$DIR/../nums.cma")
(("\\$DIR/num.cmi") "$DIR/../num.cmi"))
(("\\$DIR/nums.cma") "$DIR/num.cma")
(("\\$DIR/num.cmi") "$DIR/core/num.cmi"))
#t))
(add-after 'configure 'fix-makefile
(lambda _

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018-2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
@ -1541,7 +1541,9 @@ process."))))
(add-before 'build 'modify-metainf
(lambda _
(substitute* "build.xml"
(("message=\"\"") "message=\"Implementation-Version: 3.5.4\n\""))
(("message=\"\"")
(string-append "message=\"Implementation-Version: "
(package-version maven) "\n\"")))
#t))
(add-before 'build 'add-maven-files
(lambda _
@ -1590,7 +1592,28 @@ artifactId=maven-core" ,(package-version maven-core-bootstrap))))
default-bindings-xml
artifact-handlers-xml)))))))
#t))
(add-after 'generate-metadata 'rebuild
(add-after 'generate-metadata 'fix-plugin-versions
(lambda _
;; This file controls the default plugins used by Maven. Ensure
;; we use the versions we have packaged by default
(substitute* '("build/classes/META-INF/plexus/default-bindings.xml"
"build/classes/META-INF/plexus/components.xml")
(("maven-install-plugin:[0-9.]+")
(string-append "maven-install-plugin:"
,(package-version maven-install-plugin)))
(("maven-resources-plugin:[0-9.]+")
(string-append "maven-resources-plugin:"
,(package-version maven-resources-plugin)))
(("maven-compiler-plugin:[0-9.]+")
(string-append "maven-compiler-plugin:"
,(package-version maven-compiler-plugin)))
(("maven-surefire-plugin:[0-9.]+")
(string-append "maven-surefire-plugin:"
,(package-version maven-surefire-plugin)))
(("maven-jar-plugin:[0-9.]+")
(string-append "maven-jar-plugin:"
,(package-version maven-jar-plugin))))))
(add-after 'fix-plugin-versions 'rebuild
(lambda _
(invoke "ant" "jar")
#t))))))
@ -2690,6 +2713,15 @@ Maven project dependencies.")
(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(add-before 'install 'fix-pom-versions
(lambda _
(substitute* "pom.xml"
(("3.8.1") ,(package-version java-commons-lang3))
(("1.4.1") ,(package-version maven-resolver-util))
(("1.12") ,(package-version java-commons-codec))
(("<version>2.2</version>")
,(string-append "<version>" (package-version maven-dependency-tree)
"</version>")))))
(replace 'install
(install-pom-file "pom.xml")))))
(propagated-inputs
@ -3424,23 +3456,17 @@ starting from JUnit 4.")))
#:phases
(modify-phases %standard-phases
(add-before 'install 'regenerate-own-pom
(lambda _
;; Surefire struggles resolving artifacts because of this pom
;; file, resulting in a NullPointerException when collecting
;; Artifacts (and a "Failure detected." message from
;; DefaultArtifactResolver). Replace the pom file with a much
;; simpler one. Everything is shaded anyway (as used to be the
;; case in 2.22), so there will not be missing dependencies.
(with-output-to-file "surefire-providers/surefire-junit4/pom.xml"
(lambda _
(sxml->xml
`((project
(modelVersion "4.0.0")
(name "Surefire JUnit4")
(groupId "org.apache.maven.surefire")
(artifactId "surefire-junit4")
(version ,,(package-version java-surefire-common-java5)))))))
#t))
;; Surefire struggles resolving artifacts because of this pom
;; file, resulting in a NullPointerException when collecting
;; Artifacts (and a "Failure detected." message from
;; DefaultArtifactResolver). Replace the pom file with a much
;; simpler one. Everything is shaded anyway (as used to be the
;; case in 2.22), so there will not be missing dependencies.
(generate-pom.xml
"surefire-providers/surefire-junit4/pom.xml"
"org.apache.maven.surefire" "surefire-junit4"
,(package-version java-surefire-common-java5)
#:name "Surefire JUnit4"))
(add-before 'build 'copy-resources
(lambda _
(mkdir-p "build/classes")

View File

@ -1242,30 +1242,49 @@ Encryption to Gajim.")
(guix build glib-or-gtk-build-system))
#:phases
(modify-phases %standard-phases
;; To be enabled in v0.3.0, for A/V support.
;;(add-after 'install 'wrap
;;(lambda* (#:key outputs #:allow-other-keys)
;;(let* ((out (assoc-ref outputs "out"))
;;(dino (string-append out "/bin/dino"))
;;(gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")))
;;(wrap-program dino
;;`("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))))))
(add-after 'install 'glib-or-gtk-wrap
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
(native-inputs
`(("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gtk+:bin" ,gtk+ "bin")
("pkg-config" ,pkg-config)
("vala" ,vala)))
(inputs
`(("glib" ,glib)
;; NOTE: Commented-out lines are to be enabled in v0.3.0.
`(("atk" ,atk)
("cairo" ,cairo)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("glib" ,glib)
("glib-networking" ,glib-networking)
("gpgme" ,gpgme)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gspell" ,gspell) ;for spell-check support
;;("gstreamer" ,gstreamer) ;for A/V support
;;("gst-plugins-base" ,gst-plugins-base)
;;("gst-plugins-good" ,gst-plugins-good)
("gtk+" ,gtk+)
("icu4c" ,icu4c) ;for emoji support
;;("libcanberra" ,libcanberra) ;for sound-notification support
("libgcrypt" ,libgcrypt)
("libgee" ,libgee)
("libnice" ,libnice)
("libsignal-protocol-c" ,libsignal-protocol-c)
("libsoup" ,libsoup)
;;("libsrtp" ,libsrtp) ;for calls support
("pango" ,pango)
("qrencode" ,qrencode)
("sqlite" ,sqlite)
("gpgme" ,gpgme)
("gtk+" ,gtk+)
("glib-networking" ,glib-networking)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
("sqlite" ,sqlite)))
;;("webrtc-audio-processing" ,webrtc-audio-processing))) ;for A/V support
(synopsis "Graphical Jabber/XMPP Client using GTK+/Vala")
(description "Dino is a chat client for the desktop. It focuses on providing
a minimal yet reliable Jabber/XMPP experience and having encryption enabled by

View File

@ -34,13 +34,9 @@
(source
(origin
(method url-fetch)
(uri (list
(string-append
"https://git.joeyh.name/index.cgi/moreutils.git/snapshot/"
name "-" version ".tar.gz")
(string-append
"http://drabczyk.org/"
name "-" version ".tar.gz")))
(uri (string-append
"https://git.joeyh.name/index.cgi/moreutils.git/snapshot/"
name "-" version ".tar.gz"))
(sha256
(base32 "10c8b4bwnli4gxwvgmgkc5kin1ksrxsnxmigs7y4rrh4aaszdjb0"))))
(build-system gnu-build-system)

View File

@ -1399,7 +1399,7 @@ and up to 1 Mbit/s downstream.")
(define-public whois
(package
(name "whois")
(version "5.5.9")
(version "5.5.10")
(source
(origin
(method git-fetch)
@ -1408,7 +1408,7 @@ and up to 1 Mbit/s downstream.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0l9dhyciylh14lqw8j5mrk0y2hl95cnj8pyvvabbgwxpsdn0yvbb"))))
(base32 "179hgmh9yqk8jq26ybik4cr3lgryd5p6kdwccc3r7mfssk3yp8lz"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
@ -3033,14 +3033,14 @@ asynchronous model using a modern C++ approach.")
(define-public asio
(package
(inherit asio-1.12)
(version "1.18.1")
(version "1.18.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/asio/asio/"
version " (Stable)/asio-" version ".tar.bz2"))
(sha256
(base32 "04wi69d72l1p5c7d63z1dz06zn8pdqsbgx1if98dszs9ymfqgyaa"))))))
(base32 "1wpr4ymv63a192fmymwyxd7v0bv575v022gz53y0mcflhr2mvh1s"))))))
(define-public shadowsocks
;; There are some security fixes after the last release.

View File

@ -647,7 +647,14 @@ underlying solvers like Cplex, Gurobi, Lpsolver, Glpk, CbC, SCIP or WBO.")
#:make-flags
(list (string-append "LIBDIR="
(assoc-ref %outputs "out")
"/lib/ocaml/site-lib"))))
"/lib/ocaml/site-lib"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-test-script
(lambda _
(substitute* "applications/dose-tests.py"
(("warning\\(")
"from warnings import warn\nwarn(")))))))
(propagated-inputs
`(("ocaml-graph" ,ocaml-graph)
("ocaml-cudf" ,ocaml-cudf)
@ -1030,7 +1037,7 @@ Emacs.")
(define-public ocaml-menhir
(package
(name "ocaml-menhir")
(version "20200211")
(version "20210419")
(source
(origin
(method git-fetch)
@ -1039,7 +1046,7 @@ Emacs.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "019izf51kdc7pzkw68zg8a2alc8lxw1gwdp7in970mr90n16b5zj"))))
(base32 "0jcbr7s3iwfr7xxfybs3h407g76yfp5yq5r9i0wg2ahvvbqh03ky"))))
(build-system dune-build-system)
(inputs
`(("ocaml" ,ocaml)))
@ -3086,39 +3093,41 @@ every compliant installation of OCaml and organize these libraries into a
hierarchy of modules.")
(license license:lgpl2.1+)))
(define-public ocaml4.07-pcre
(define-public ocaml-pcre
(package
(name "ocaml4.07-pcre")
(version "7.4.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mmottl/pcre-ocaml")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"11sd8g668h48790lamz0riw9jgnfkaif5qdfa0akcndwa6aj07jf"))))
(name "ocaml-pcre")
(version "7.4.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mmottl/pcre-ocaml")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"11mck879p5zvkghps4ky8yslm0isgz52d84adl0dmcfxv2ibvcym"))))
(build-system dune-build-system)
(arguments
`(#:test-target "."
#:ocaml ,ocaml-4.07
#:findlib ,ocaml4.07-findlib
#:dune ,ocaml4.07-dune))
;; No tests.
'(#:tests? #f))
(propagated-inputs
`(("dune-configurator" ,dune-configurator)
("pcre" ,pcre)))
(native-inputs
`(("ocaml-base" ,(package-with-ocaml4.07 ocaml-base))
("pcre:bin" ,pcre "bin")))
(propagated-inputs `(("pcre" ,pcre)))
`(("pcre:bin" ,pcre "bin")))
(home-page "https://mmottl.github.io/pcre-ocaml")
(synopsis "Bindings to the Perl Compatibility Regular Expressions library")
(description "Pcre-ocaml offers library functions for string pattern
matching and substitution, similar to the functionality offered by the Perl
language.")
(license license:lgpl2.1+))); with the OCaml link exception
(synopsis
"Bindings to the Perl Compatibility Regular Expressions library")
(description "Pcre-ocaml offers library functions for string
pattern matching and substitution, similar to the functionality
offered by the Perl language.")
;; With static linking exception
(license license:lgpl2.1+)))
(define-public ocaml4.07-expect
(define-public ocaml-expect
(package
(name "ocaml4.07-expect")
(name "ocaml-expect")
(version "0.0.6")
(source (origin
(method url-fetch)
@ -3127,21 +3136,20 @@ language.")
(base32
"098qvg9d4yrqzr5ax291y3whrpax0m3sx4gi6is0mblc96r9yqk0"))))
(arguments
`(#:tests? #f
#:ocaml ,ocaml-4.07
#:findlib ,ocaml4.07-findlib))
`(#:tests? #f))
(build-system ocaml-build-system)
(native-inputs
`(("ocamlbuild" ,(package-with-ocaml4.07 ocamlbuild))
("ocaml-num" ,(package-with-ocaml4.07 ocaml-num))
("ocaml-pcre" ,ocaml4.07-pcre)
("ounit" ,(package-with-ocaml4.07 ocaml-ounit))))
`(("ocamlbuild" ,ocamlbuild)
("ocaml-num" ,ocaml-num)
("ocaml-pcre" ,ocaml-pcre)
("ounit" ,ocaml-ounit)))
(propagated-inputs
`(("batteries" ,(package-with-ocaml4.07 ocaml-batteries))))
`(("batteries" ,ocaml-batteries)))
(home-page "https://forge.ocamlcore.org/projects/ocaml-expect/")
(synopsis "Simple implementation of expect")
(description "Help building unitary testing of interactive program. You
can match the question using a regular expression or a timeout.")
(description "This package provides utilities for building unitary testing
of interactive program. You can match the question using a regular expression
or a timeout.")
(license license:lgpl2.1+))) ; with the OCaml static compilation exception
(define-public ocaml-stdlib-shims
@ -3452,6 +3460,7 @@ JSON.")
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"10bf28my1yhj8a2d7bkgbna9j20wq0ghp92k926y29bmjj2qh0l7"))))
@ -4539,7 +4548,7 @@ format}. @code{craml} is released as a single binary (called @code{craml}).")
(define-public ocaml-dot-merlin-reader
(package
(name "ocaml-dot-merlin-reader")
(version "3.4.2")
(version "4.2-411")
(source
(origin
(method git-fetch)
@ -4549,7 +4558,7 @@ format}. @code{craml} is released as a single binary (called @code{craml}).")
(file-name (git-file-name name version))
(sha256
(base32
"0i2nwkdh6cfzmnsdsr8aw86vs8j1k5jkjzrs61b9384wnffdbbmj"))))
"1vl6p8m2pag5j283h5g2gzxxfm599k6qhyrjkdf3kyc476fc9lw8"))))
(build-system dune-build-system)
(arguments '(#:package "dot-merlin-reader"
#:tests? #f)) ; no tests
@ -4565,21 +4574,16 @@ format}. @code{craml} is released as a single binary (called @code{craml}).")
(define-public ocaml-merlin
(package
(inherit ocaml-dot-merlin-reader)
(name "ocaml-merlin")
(version "3.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ocaml/merlin")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0i2nwkdh6cfzmnsdsr8aw86vs8j1k5jkjzrs61b9384wnffdbbmj"))))
(build-system dune-build-system)
(arguments '(#:package "merlin"
#:test-target "tests"))
(arguments
'(#:package "merlin"
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "dune" "runtest" "-p" "merlin,dot-merlin-reader")))))))
(inputs
`(("ocaml-yojson" ,ocaml-yojson)
("ocaml-csexp" ,ocaml-csexp)
@ -4588,7 +4592,6 @@ format}. @code{craml} is released as a single binary (called @code{craml}).")
`(("ocaml-dot-merlin-reader" ,ocaml-dot-merlin-reader) ; required for tests
("ocaml-mdx" ,ocaml-mdx)
("jq" ,jq)))
(home-page "https://ocaml.github.io/merlin/")
(synopsis "Context sensitive completion for OCaml in Vim and Emacs")
(description "Merlin is an editor service that provides modern IDE
features for OCaml. Emacs and Vim support is provided out-of-the-box.
@ -5024,7 +5027,7 @@ as part of the same ocaml-migrate-parsetree driver.")
(define-public ocaml-ppxlib
(package
(name "ocaml-ppxlib")
(version "0.22.0")
(version "0.22.1")
(home-page "https://github.com/ocaml-ppx/ppxlib")
(source
(origin
@ -5035,7 +5038,7 @@ as part of the same ocaml-migrate-parsetree driver.")
(file-name (git-file-name name version))
(sha256
(base32
"0kf7lgcwygf6zlx7rwddqpqvasa6v7xiq0bqal8vxlib6lpg074q"))))
"0cpfg634if1py1b2rljk3cagq9gj68dl2gk1kdg76f9rapvl2i4g"))))
(build-system dune-build-system)
(propagated-inputs
`(("ocaml-base" ,ocaml-base)
@ -6798,6 +6801,64 @@ in the documentation always stays up-to-date.
compatibility.")
(license license:isc)))
(define-public ocaml-mparser
(package
(name "ocaml-mparser")
(version "1.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/murmour/mparser")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"16j19v16r42gcsii6a337zrs5cxnf12ig0vaysxyr7sq5lplqhkx"))))
(build-system dune-build-system)
(arguments
;; No tests.
'(#:package "mparser"
#:tests? #f))
(home-page "https://github.com/murmour/mparser")
(synopsis "Simple monadic parser combinator library")
(description
"This library implements a rather complete and efficient monadic parser
combinator library similar to the Parsec library for Haskell by Daan Leijen and
the FParsec library for FSharp by Stephan Tolksdorf.")
;; With static linking exception.
(license license:lgpl2.1+)))
(define-public ocaml-mparser-re
(package
(inherit ocaml-mparser)
(name "ocaml-mparser-re")
(arguments
;; No tests.
'(#:package "mparser-re"
#:tests? #f))
(propagated-inputs
`(("ocaml-mparser" ,ocaml-mparser)
("ocaml-re" ,ocaml-re)))
(synopsis "MParser plugin for RE-based regular expressions")
(description "This package provides RE-based regular expressions
support for Mparser.")))
(define-public ocaml-mparser-pcre
(package
(inherit ocaml-mparser)
(name "ocaml-mparser-pcre")
(arguments
;; No tests.
'(#:package "mparser-pcre"
#:tests? #f))
(propagated-inputs
`(("ocaml-mparser" ,ocaml-mparser)
("ocaml-pcre" ,ocaml-pcre)))
(synopsis "MParser plugin for PCRE-based regular expressions")
(description "This package provides PCRE-based regular expressions
support for Mparser.")))
(define-public lablgtk3
(package
(name "lablgtk")

View File

@ -0,0 +1,47 @@
From efbea1742bd30f842fbbfb87a473e5c84f4162f9 Mon Sep 17 00:00:00 2001
From: Michael R Sweet <msweet@msweet.org>
Date: Mon, 1 Feb 2021 15:02:32 -0500
Subject: [PATCH] Fix a buffer (read) overflow in ippReadIO (CVE-2020-10001)
---
diff --git a/cups/ipp.c b/cups/ipp.c
index 3d529346c..adbb26fba 100644
--- a/cups/ipp.c
+++ b/cups/ipp.c
@@ -2866,7 +2866,8 @@ ippReadIO(void *src, /* I - Data source */
unsigned char *buffer, /* Data buffer */
string[IPP_MAX_TEXT],
/* Small string buffer */
- *bufptr; /* Pointer into buffer */
+ *bufptr, /* Pointer into buffer */
+ *bufend; /* End of buffer */
ipp_attribute_t *attr; /* Current attribute */
ipp_tag_t tag; /* Current tag */
ipp_tag_t value_tag; /* Current value tag */
@@ -3441,6 +3442,7 @@ ippReadIO(void *src, /* I - Data source */
}
bufptr = buffer;
+ bufend = buffer + n;
/*
* text-with-language and name-with-language are composite
@@ -3454,7 +3456,7 @@ ippReadIO(void *src, /* I - Data source */
n = (bufptr[0] << 8) | bufptr[1];
- if ((bufptr + 2 + n) >= (buffer + IPP_BUF_SIZE) || n >= (int)sizeof(string))
+ if ((bufptr + 2 + n + 2) > bufend || n >= (int)sizeof(string))
{
_cupsSetError(IPP_STATUS_ERROR_INTERNAL,
_("IPP language length overflows value."), 1);
@@ -3481,7 +3483,7 @@ ippReadIO(void *src, /* I - Data source */
bufptr += 2 + n;
n = (bufptr[0] << 8) | bufptr[1];
- if ((bufptr + 2 + n) >= (buffer + IPP_BUF_SIZE))
+ if ((bufptr + 2 + n) > bufend)
{
_cupsSetError(IPP_STATUS_ERROR_INTERNAL,
_("IPP string length overflows value."), 1);

View File

@ -1,182 +0,0 @@
From f24c88a0732024028fffe0372039a847e91722ea Mon Sep 17 00:00:00 2001
From: Christopher Baines <mail@cbaines.net>
Date: Tue, 1 Jan 2019 22:36:29 +0000
Subject: [PATCH] Mark more tests that require the network
I believe all these tests require the network, at least they seem to
fail if it's I run them without connecting my computer to the web.
I'm looking at this as part of packaging linkchecker for GNU Guix,
where the package is build and the tests are run in a isolated
environment, intentionally without network access, to avoid issues
with non-reproducible package builds.
---
tests/checker/test_http.py | 2 ++
tests/checker/test_http_misc.py | 2 ++
tests/checker/test_http_redirect.py | 2 ++
tests/checker/test_httpbin.py | 5 +++++
tests/checker/test_misc.py | 4 ++++
tests/checker/test_whitespace.py | 3 +++
6 files changed, 18 insertions(+)
diff --git a/tests/checker/test_http.py b/tests/checker/test_http.py
index e4c1e097..8a8af567 100644
--- a/tests/checker/test_http.py
+++ b/tests/checker/test_http.py
@@ -20,6 +20,7 @@
import pytest
+from tests import need_network
from .httpserver import HttpServerTest, CookieRedirectHttpRequestHandler
class TestHttp (HttpServerTest):
@@ -29,6 +30,7 @@ def __init__(self, methodName='runTest'):
super(TestHttp, self).__init__(methodName=methodName)
self.handler = CookieRedirectHttpRequestHandler
+ @need_network
def test_html (self):
confargs = dict(recursionlevel=1)
self.file_test("http.html", confargs=confargs)
diff --git a/tests/checker/test_http_misc.py b/tests/checker/test_http_misc.py
index 9922d85f..c6b6afdb 100644
--- a/tests/checker/test_http_misc.py
+++ b/tests/checker/test_http_misc.py
@@ -20,11 +20,13 @@
import os
import sys
from .httpserver import HttpServerTest
+from tests import need_network
from linkcheck.network import iputil
class TestHttpMisc (HttpServerTest):
"""Test http:// misc link checking."""
+ @need_network
def test_html (self):
self.swf_test()
self.obfuscate_test()
diff --git a/tests/checker/test_http_redirect.py b/tests/checker/test_http_redirect.py
index f212d98e..2253a70d 100644
--- a/tests/checker/test_http_redirect.py
+++ b/tests/checker/test_http_redirect.py
@@ -17,6 +17,7 @@
"""
Test http checking.
"""
+from tests import need_network
from .httpserver import HttpServerTest, CookieRedirectHttpRequestHandler
class TestHttpRedirect (HttpServerTest):
@@ -26,6 +27,7 @@ def __init__(self, methodName='runTest'):
super(TestHttpRedirect, self).__init__(methodName=methodName)
self.handler = CookieRedirectHttpRequestHandler
+ @need_network
def test_redirect (self):
self.redirect1()
self.redirect2()
diff --git a/tests/checker/test_httpbin.py b/tests/checker/test_httpbin.py
index 0319c2f6..4c8fa846 100644
--- a/tests/checker/test_httpbin.py
+++ b/tests/checker/test_httpbin.py
@@ -18,6 +18,7 @@
Test http stuff with httpbin.org.
"""
import re
+from tests import need_network
from . import LinkCheckTest
@@ -30,6 +31,7 @@ def get_httpbin_url(path):
class TestHttpbin(LinkCheckTest):
"""Test http:// link redirection checking."""
+ @need_network
def test_http_link(self):
linkurl = u"http://www.example.com"
nlinkurl = self.norm(linkurl)
@@ -48,6 +50,7 @@ def test_http_link(self):
]
self.direct(url, resultlines, recursionlevel=1)
+ @need_network
def test_basic_auth(self):
user = u"testuser"
password = u"testpassword"
@@ -67,6 +70,7 @@ def test_basic_auth(self):
]
self.direct(url, resultlines, confargs=confargs)
+ @need_network
def test_http_refresh_header(self):
linkurl = u"http://www.example.com"
nlinkurl = self.norm(linkurl)
@@ -85,6 +89,7 @@ def test_http_refresh_header(self):
]
self.direct(url, resultlines, recursionlevel=1)
+ @need_network
def test_http_content_location_header(self):
linkurl = u"http://www.example.com"
nlinkurl = self.norm(linkurl)
diff --git a/tests/checker/test_misc.py b/tests/checker/test_misc.py
index 2e4cfd07..f9591f9d 100644
--- a/tests/checker/test_misc.py
+++ b/tests/checker/test_misc.py
@@ -17,6 +17,7 @@
"""
Test miscellaneous html tag parsing and URL types
"""
+from tests import need_network
from . import LinkCheckTest
@@ -25,15 +26,18 @@ class TestMisc (LinkCheckTest):
Test misc link types.
"""
+ @need_network
def test_misc (self):
self.file_test("misc.html")
def test_html5 (self):
self.file_test("html5.html")
+ @need_network
def test_archive (self):
self.file_test("archive.html")
+ @need_network
def test_itms_services(self):
url = u"itms-services:?action=download-manifest&url=http://www.example.com/"
resultlines = [
diff --git a/tests/checker/test_whitespace.py b/tests/checker/test_whitespace.py
index 609c108a..fc2727d6 100644
--- a/tests/checker/test_whitespace.py
+++ b/tests/checker/test_whitespace.py
@@ -17,6 +17,7 @@
"""
Test whitespace handling.
"""
+from tests import need_network
from . import LinkCheckTest
@@ -25,6 +26,7 @@ class TestWhitespace (LinkCheckTest):
Test whitespace in URLs.
"""
+ @need_network
def test_leading_whitespace (self):
# Leading whitespace
url = u" http://www.example.org/"
@@ -50,6 +52,7 @@ def test_leading_whitespace (self):
]
self.direct(url, resultlines)
+ @need_network
def test_trailing_whitespace (self):
# Trailing whitespace
url = u"http://www.example.org/ "

View File

@ -0,0 +1,66 @@
From 295fa956f899af37acb6bda9c76ad77748eb9a4a Mon Sep 17 00:00:00 2001
From: Ervin Hegedus <airween@gmail.com>
Date: Sat, 5 Jun 2021 09:23:06 +0200
Subject: [PATCH] Quick fix for changing of Hamlib's FILPATHLEN macro
This patch was prepared for Guix by Jack Hill <jackhill@jackhill.us> by
squashing together the changes from upstream #268
<https://github.com/Tlf/tlf/pull/268>.
It allows the released version of Tlf to build against the version 4.2 of
hamlib in Guix.
---
src/sendqrg.c | 6 +++---
src/sendqrg.h | 10 ++++++++++
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/src/sendqrg.c b/src/sendqrg.c
index ceeb356..5d4420e 100644
--- a/src/sendqrg.c
+++ b/src/sendqrg.c
@@ -87,7 +87,7 @@ int init_tlf_rig(void) {
rigportname[strlen(rigportname) - 1] = '\0'; // remove '\n'
strncpy(my_rig->state.rigport.pathname, rigportname,
- FILPATHLEN - 1);
+ TLFFILPATHLEN - 1);
caps = my_rig->caps;
@@ -104,9 +104,9 @@ int init_tlf_rig(void) {
if (dcd_type != RIG_DCD_NONE)
my_rig->state.dcdport.type.dcd = dcd_type;
if (ptt_file)
- strncpy(my_rig->state.pttport.pathname, ptt_file, FILPATHLEN);
+ strncpy(my_rig->state.pttport.pathname, ptt_file, TLFFILPATHLEN);
if (dcd_file)
- strncpy(my_rig->state.dcdport.pathname, dcd_file, FILPATHLEN);
+ strncpy(my_rig->state.dcdport.pathname, dcd_file, TLFFILPATHLEN);
my_rig->state.rigport.parm.serial.rate = serial_rate;
diff --git a/src/sendqrg.h b/src/sendqrg.h
index 8c53f2e..1ef85a6 100644
--- a/src/sendqrg.h
+++ b/src/sendqrg.h
@@ -23,6 +23,16 @@
#include <hamlib/rig.h>
+#ifdef HAMLIB_FILPATHLEN
+ #define TLFFILPATHLEN HAMLIB_FILPATHLEN
+#else
+ #ifdef FILPATHLEN
+ #define TLFFILPATHLEN FILPATHLEN
+ #else
+ #error "(HAMLIB_)FILPATHLEN macro not found"
+ #endif
+#endif
+
int init_tlf_rig(void);
void close_tlf_rig(RIG *my_rig);
--
2.32.0

View File

@ -2,41 +2,29 @@ Description: use the system-wide minizip instead of the embeeded one if found.
Forwarded-Upstream: It was provided by upstream: http://bazaar.launchpad.net/~widelands-dev/widelands/b19-debian/revision/8147
.
Thanks to Fòram na Gàidhlig for the patch.
I just added this line to make its use easier:
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_HOME_DIRECTORY}/Modules)
=== modified file 'CMakeLists.txt'
---
CMakeLists.txt | 3 +++
Modules/FindMinizip.cmake | 37 +++++++++++++++++++++++++++++++++++++
cmake/WlFunctions.cmake | 7 +++++++
src/io/CMakeLists.txt | 2 +-
src/third_party/CMakeLists.txt | 20 +++++++++++---------
src/third_party/minizip/README.txt | 4 ++++
6 files changed, 63 insertions(+), 10 deletions(-)
CMakeLists.txt | 1 +
cmake/Modules/FindMinizip.cmake | 37 +++++++++++++++++++++++++++++++++++++
cmake/WlFunctions.cmake | 8 ++++++++
src/io/filesystem/CMakeLists.txt | 2 +-
src/io/filesystem/zip_filesystem.h | 6 ++++++
src/third_party/CMakeLists.txt | 20 +++++++++++---------
6 files changed, 64 insertions(+), 10 deletions(-)
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -43,6 +43,7 @@
endif(POLICY CMP0074)
include("${CMAKE_SOURCE_DIR}/cmake/WlFunctions.cmake")
+set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_HOME_DIRECTORY}/Modules)
option(OPTION_USE_GLBINDING "Use glbinding instead of GLEW" OFF)
option(OPTION_GLEW_STATIC "Use static GLEW Library" OFF)
@@ -105,6 +106,8 @@
@@ -142,6 +142,7 @@
find_package(SDL2_mixer REQUIRED)
find_package(SDL2_ttf REQUIRED)
find_package(ZLIB REQUIRED)
find_package(ICU REQUIRED)
+find_package(Minizip)
+
if(OPTION_USE_GLBINDING)
find_package(glbinding REQUIRED)
if(${CMAKE_VERSION} VERSION_LESS 3.9.0)
find_package(ICU_old REQUIRED)
else()
--- /dev/null
+++ b/Modules/FindMinizip.cmake
+++ b/cmake/Modules/FindMinizip.cmake
@@ -0,0 +1,37 @@
+# - Try to find Minizip
+# Once done this will define
@ -77,10 +65,10 @@ I just added this line to make its use easier:
+
--- a/cmake/WlFunctions.cmake
+++ b/cmake/WlFunctions.cmake
@@ -81,6 +81,14 @@
@@ -84,6 +84,14 @@
if(ARG_USES_ZLIB)
wl_include_system_directories(${NAME} ${ZLIB_INCLUDE_DIRS})
target_link_libraries(${NAME} ${ZLIB_LIBRARY})
target_link_libraries(${NAME} ZLIB::ZLIB)
+ if (MINIZIP_FOUND)
+ wl_include_system_directories(${NAME} ${MINIZIP_INCLUDE_DIR})
+ target_link_libraries(${NAME} ${MINIZIP_LIBRARY})
@ -136,7 +124,7 @@ I just added this line to make its use easier:
)
--- a/src/io/filesystem/zip_filesystem.h
+++ b/src/io/filesystem/zip_filesystem.h
@@ -28,8 +28,14 @@
@@ -25,8 +25,14 @@
#include "io/filesystem/filesystem.h"
#include "io/streamread.h"
#include "io/streamwrite.h"

View File

@ -298,7 +298,7 @@ structured data.")
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'add-source-to-load-path 'change-working-directory
(add-before 'expand-load-path 'change-working-directory
(lambda _ (chdir "editors") #t)))))
(home-page "https://github.com/protocolbuffers/protobuf")
(synopsis "Protocol buffers major mode for Emacs")

View File

@ -73,8 +73,7 @@
("python-matplotlib" ,python-matplotlib)
("python-pyparsing" ,python-pyparsing)))
(inputs
`(("lapack" ,lapack)
("openblas" ,openblas)
`(("openblas" ,openblas)
("pybind11" ,pybind11)))
(native-inputs
`(("python-cython" ,python-cython)

View File

@ -356,13 +356,13 @@ WSGI. This package includes libraries for implementing ASGI servers.")
(define-public python-aws-sam-translator
(package
(name "python-aws-sam-translator")
(version "1.30.1")
(version "1.36.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "aws-sam-translator" version))
(sha256
(base32
"0d9ppd94x2kw404m49ajswmmxgdngbs4p5ajyrdvnlivfzqbv7dx"))))
"115mcbb4r205c1hln199llqrvvbijfqz075rwx991l99jc6rj6zs"))))
(build-system python-build-system)
(arguments
`(;; XXX: Tests are not distributed with the PyPI archive, and would
@ -456,7 +456,7 @@ emit information from within their applications to the AWS X-Ray service.")
(define-public python-cfn-lint
(package
(name "python-cfn-lint")
(version "0.41.0")
(version "0.51.0")
(home-page "https://github.com/aws-cloudformation/cfn-python-lint")
(source (origin
(method git-fetch)
@ -466,7 +466,7 @@ emit information from within their applications to the AWS X-Ray service.")
(file-name (git-file-name name version))
(sha256
(base32
"0nqs0fmj3hd7pnd9hkb4z57jvi2iv82hh6n3xxba6i6p8zgx75q4"))))
"1027s243sik25c6sqw6gla7k7vl3jdicrik5zdsa8pafxh2baja4"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -477,6 +477,8 @@ emit information from within their applications to the AWS X-Ray service.")
;; to avoid a dependency on 'git'.
(delete-file
"test/unit/module/maintenance/test_update_documentation.py")
(delete-file
"test/unit/module/maintenance/test_update_resource_specs.py")
(invoke "python" "-m" "unittest" "discover"
"-s" "test")))))))
(native-inputs

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2019 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2017, 2021 Eric Bavier <bavier@posteo.net>
@ -3514,14 +3514,14 @@ environments and back.")
(define-public python-pyyaml
(package
(name "python-pyyaml")
(version "5.3.1")
(version "5.4.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PyYAML" version))
(sha256
(base32
"0pb4zvkfxfijkpgd1b86xjsqql97ssf1knbd1v53wkg1qm9cgsmq"))))
"0pm440pmpvgv5rbbnm8hk4qga5a292kvlm1bh3x2nwr8pb5p8xv0"))))
(build-system python-build-system)
(inputs
`(("libyaml" ,libyaml)))
@ -4916,8 +4916,7 @@ between language specification and implementation aspects.")
"1ak9dmjja0q90a7fsxli51ypcwssh8c4pb6f8wkrsnf2xgdk6dy9"))))
(build-system python-build-system)
(inputs
`(("openblas" ,openblas)
("lapack" ,lapack)))
`(("openblas" ,openblas)))
(native-inputs
`(("python-cython" ,python-cython)
("python-pytest" ,python-pytest)
@ -5859,6 +5858,28 @@ operators such as union, intersection, and difference.")
(define-public python2-pysnptools
(package-with-python2 python-pysnptools))
(define-public python-pykdtree
(package
(name "python-pykdtree")
(version "1.3.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pykdtree" version))
(sha256
(base32 "0p8n2ljdacfixkiw092974dmhy4s1c0h032ii1z9kwi9h5h5rgmy"))))
(build-system python-build-system)
(native-inputs
`(("python-nose" ,python-nose)))
(propagated-inputs
`(("python-numpy" ,python-numpy)))
(home-page "https://github.com/storpipfugl/pykdtree")
(synopsis "Fast kd-tree implementation with OpenMP-enabled queries")
(description
"@code{pykdtree} is a kd-tree implementation for fast nearest neighbour
search in Python.")
(license license:lgpl3+)))
(define-public python-wurlitzer
(package
(name "python-wurlitzer")
@ -6204,13 +6225,13 @@ the OleFileIO module from PIL, the Python Image Library.")
(define-public python-pikepdf
(package
(name "python-pikepdf")
(version "2.12.2")
(version "2.13.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pikepdf" version))
(sha256
(base32 "1r68zh8whp8wg4brjf5vha8h1ly8pjqyb37pfw91hyxfn6cm9wsz"))))
(base32 "1di5bbh2mr8m1aydky8ix12pkybrd0cvs8xqf5s2y1xa349r514l"))))
(build-system python-build-system)
(arguments
`(#:tests? #false)) ;require python-xmp-toolkit
@ -14322,17 +14343,40 @@ focus on event-based network programming and multiprotocol integration.")
(define-public python-pika
(package
(name "python-pika")
(version "0.12.0")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pika" version))
(method git-fetch)
(uri (git-reference
(url "https://github.com/pika/pika")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0ld7akgm93s8pfa4dsx9qlzlhj76zspbr5m9ms0ns09yd2w4aq9h"))))
"0cm45xydk2jigydwszwik89qlbk6l3l18sxhzppzqmxw2rdkm22s"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(add-before 'check 'disable-live-tests
(lambda _
;; Disable tests that require RabbitMQ, which is not
;; yet available in Guix.
(substitute* "setup.cfg"
(("tests/unit,tests/acceptance")
"tests/unit"))
(with-directory-excursion "tests"
(for-each delete-file
'("unit/base_connection_tests.py"
"unit/threaded_test_wrapper_test.py")))))
(replace 'check
(lambda _
(invoke "nosetests"))))))
(native-inputs
`(("python-pyev" ,python-pyev)
`(("python-mock" ,python-mock)
("python-nose" ,python-nose)
;; These are optional at runtime, and provided here for tests.
("python-gevent" ,python-gevent)
("python-tornado" ,python-tornado)
("python-twisted" ,python-twisted)))
(home-page "https://pika.readthedocs.org")
@ -14343,9 +14387,6 @@ Protocol) 0-9-1 protocol that tries to stay fairly independent of the underlying
network support library.")
(license license:bsd-3)))
(define-public python2-pika
(package-with-python2 python-pika))
(define-public python-ply
(package
(name "python-ply")
@ -16584,14 +16625,14 @@ can even create animations with the cursor controls.")
(define-public python-ddt
(package
(name "python-ddt")
(version "1.4.1")
(version "1.4.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ddt" version))
(sha256
(base32
"1niqpzc26sxdbyi46r07n4pma5fjx6crww2539vpfmsf0w6yg585"))))
"0y2k756qjz1rhpivi60hy29b4bf0bh3wck39i1mn6pkil9k779k4"))))
(build-system python-build-system)
(native-inputs
`(("python-pytest" ,python-pytest)))
@ -22680,8 +22721,7 @@ standard error channel (stderr) in your program.")
("python-mock" ,python-mock)
("python-pytest" ,python-pytest)
("python-pytest-cov" ,python-pytest-cov)
("python-pytest-xdist" ,python-pytest-xdist)
("python-tox" ,python-tox)))
("python-pytest-xdist" ,python-pytest-xdist)))
(home-page "https://github.com/neithere/argh/")
(synopsis "Argparse wrapper with natural syntax")
(description

View File

@ -7,6 +7,7 @@
;;; Copyright © 2020 Charlie Ritter <chewzerita@posteo.net>
;;; Copyright © 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 João Pedro Simas <jpsimas@gmail.com>
;;; Copyright © 2021 Jack Hill <jackhill@jackhill.us>
;;;
;;; This file is part of GNU Guix.
;;;
@ -29,6 +30,7 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages algebra)
#:use-module (gnu packages astronomy)
@ -68,6 +70,7 @@
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
@ -1065,6 +1068,65 @@ users.")
"--with-tcl-binding"
"--with-xml-support")))))
(define-public tlf
(package
(name "tlf")
(version "1.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tlf/tlf")
(commit (string-append "tlf-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1xpgs4k27pjd9mianfknknp6mf34365bcp96wrv5xh4dhph573rj"))
(patches
(search-patches "tlf-support-hamlib-4.2+.patch"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags
(list "--enable-fldigi-xmlrpc")))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("perl" ,perl)
("pkg-config" ,pkg-config)))
(inputs
`(("cmocka" ,cmocka)
("glib" ,glib)
("hamlib" ,hamlib)
("libusb" ,libusb) ;`Requires.private: libusb-1.0` in hamlib pkg-config
("ncurses" ,ncurses)
("xmlrpc-c" ,xmlrpc-c)))
(home-page "https://tlf.github.io/")
(synopsis "Amateur radio contest logging for the terminal")
(description "TLF is a @acronym{Text User Interface, TUI} amateur radio
contest logging program. It integrates with radios supported by hamlib and
other ham radio programs like fldigi. Many contests are supported including:
@itemize
@item CQWW (SO, M/S and M/M)
@item WPX (SO, M/S and M/M)
@item ARRL Sweepstakes (SO, M/S )
@item EU SPRINT
@item EUHFC
@item ARRL-DX (both sides)
@item ARRL-FD
@item ARRL 10m
@item ARRL 160m
@item Region1 field day
@item SP DX contest
@item PACC (both sides)
@item NRAU - scandinavian
@item Wysiwyg mults mode (per band or per contest)
@item WAEDX
@end itemize
It also supports connecting to DX clusters, log synchronization with other TLF
instances over the network, and general QSO and DXpedition logging.")
(license license:gpl2+)))
(define-public wsjtx
(package
(name "wsjtx")

View File

@ -587,14 +587,14 @@ gitignore rules.")
(define-public tectonic
(package
(name "tectonic")
(version "0.6.4")
(version "0.7.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "tectonic" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1h6m0mxqd8580c82dknja7qqhkg1pbvwmw4rlzfr1ndfjrcbk3al"))))
(base32 "1x6i97dl28y6wxpq2r4dcsa853sa4yw5vhl79qdb44q5wsd6ba1f"))))
(build-system cargo-build-system)
(arguments
`(#:rust ,rust-1.52

View File

@ -424,9 +424,9 @@ it a convenient format to store user input files.")
;; /etc/services, which is not present in build environment.
(substitute* "src/kj/async-io-test.c++" ((":http") ":80"))
#t))
(add-before 'check 'use-tmp-for-tempory-files
(add-before 'check 'use-tmp-for-temporary-files
(lambda _
;; Use /tmp for tempory files, as the default /var/tmp directory
;; Use /tmp for temporary files, as the default /var/tmp directory
;; doesn't exist.
(substitute* "src/kj/filesystem-disk-test.c++"
(("VAR\\_TMP \"/var/tmp\"")

View File

@ -840,14 +840,14 @@ editors.")
(define-public texmacs
(package
(name "texmacs")
(version "1.99.21")
(version "2.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.texmacs.org/Download/ftp/tmftp/"
"source/TeXmacs-" version "-src.tar.gz"))
(sha256
(base32 "0zmm8212cha22dp1xablj1h4anlnyhjh09n13ckqf6ppb1bkf4gm"))))
(base32 "1gl6k1bwrk1y7hjyl4xvlqvmk5crl4jvsk8wrfp7ynbdin6n2i48"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -868,16 +868,14 @@ editors.")
(let ((out (assoc-ref outputs "out")))
(substitute* "packages/linux/icons.sh"
(("/usr/share")
(string-append out "/share")))
#t)))
(string-append out "/share"))))))
(add-after 'install 'install-desktop-file
(lambda* (#:key outputs #:allow-other-keys)
;; Install desktop file.
(let* ((out (assoc-ref outputs "out"))
(apps (string-append out "/share/applications"))
(source "TeXmacs/misc/mime/texmacs.desktop"))
(install-file source apps)
#t)))
(install-file source apps))))
(add-before 'configure 'gzip-flags
(lambda _
(substitute* "Makefile.in"

View File

@ -6,8 +6,9 @@
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 20192021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -43,7 +44,7 @@
(define-public tmux
(package
(name "tmux")
(version "3.2")
(version "3.2a")
(source (origin
(method url-fetch)
(uri (string-append
@ -51,12 +52,12 @@
version "/tmux-" version ".tar.gz"))
(sha256
(base32
"16d310gcpfnfh7rl5vy1lwqy54ai5awkkybzkm1bw761719k8kb6"))))
"0pyhmipg6vxvxjk7mr410007qk98rh5q0mljvkdaisibz2j565am"))))
(build-system gnu-build-system)
(inputs
`(("libevent" ,libevent)
("ncurses" ,ncurses)))
(home-page "https://tmux.github.io/")
(home-page "https://github.com/tmux/tmux/wiki")
(synopsis "Terminal multiplexer")
(description
"tmux is a terminal multiplexer: it enables a number of terminals (or

View File

@ -42,7 +42,7 @@
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Alex McGrath <amk@amk.ie>
;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
;;; Copyright © 2020 Ivan Kozlov <kanichos@yandex.ru>
@ -86,6 +86,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system waf)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
@ -2988,7 +2989,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
(define-public mlt
(package
(name "mlt")
(version "6.22.1")
(version "6.26.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -2997,11 +2998,12 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
(file-name (git-file-name name version))
(sha256
(base32
"0jxv848ykw0csbnayrd710ylw46m0picfv7rpzsxz1vh4jzs395k"))))
"1gz79xvs5jrzqhwhfk0dqdd3xiavnjp4q957h7nb02rij32byb39"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
#:make-flags '("CC=gcc" "CXX=g++")
#:make-flags '(,(string-append "CC=" (cc-for-target))
,(string-append "CXX=" (cxx-for-target)))
#:configure-flags
(list "--enable-gpl3"
"--enable-gpl")
@ -3018,6 +3020,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
#t)))))
(inputs
`(("alsa-lib" ,alsa-lib)
("alsa-plugins" ,alsa-plugins "pulseaudio")
("ffmpeg" ,ffmpeg)
("fftw" ,fftw)
("frei0r-plugins" ,frei0r-plugins)
@ -3026,6 +3029,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
("libxml2" ,libxml2)
("jack" ,jack-1)
("ladspa" ,ladspa)
("libebur128" ,libebur128)
("libexif" ,libexif)
("libvorbis" ,libvorbis)
("rubberband" ,rubberband)
@ -3033,8 +3037,11 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
("pulseaudio" ,pulseaudio)
("qtbase" ,qtbase-5)
("qtsvg" ,qtsvg)
("sdl" ,sdl)
("sox" ,sox)))
("rtaudio" ,rtaudio)
("sdl2" ,sdl2)
("sdl2-image" ,sdl2-image)
("sox" ,sox)
("vidstab" ,vidstab)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://www.mltframework.org/")
@ -3045,7 +3052,7 @@ broadcasting. It provides a toolkit for broadcasters, video editors, media
players, transcoders, web streamers and many more types of applications. The
functionality of the system is provided via an assortment of ready to use
tools, XML authoring components, and an extensible plug-in based API.")
(license license:gpl3)))
(license license:lgpl2.1+)))
(define-public v4l-utils
(package
@ -4606,6 +4613,82 @@ helps you create the film you have always dreamed of. Easily add sub-titles,
transitions, and effects and then export your film to many common formats.")
(license license:gpl3+)))
(define-public shotcut
(package
(name "shotcut")
(version "21.03.21")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mltframework/shotcut")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0jb488vynn0vmq22z51bg4hb4617732nva9rg52lzl89v5n8gmsi"))))
(build-system qt-build-system)
(arguments
`(#:tests? #f ;there are no tests
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
(invoke "qmake"
(string-append "PREFIX=" out)
"QMAKE_LRELEASE=lrelease"
"QMAKE_LUPDATE=lupdate"
"shotcut.pro"))))
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(frei0r (assoc-ref inputs "frei0r-plugins"))
(ffmpeg (assoc-ref inputs "ffmpeg"))
(jack (assoc-ref inputs "jack"))
(sdl2 (assoc-ref inputs "sdl2")))
(wrap-program (string-append out "/bin/shotcut")
`("PATH" ":" prefix
,(list (string-append ffmpeg "/bin")))
`("LD_LIBRARY_PATH" ":" prefix
,(list (string-append jack "/lib" ":" sdl2 "/lib")))
`("FREI0R_PATH" ":" =
(,(string-append frei0r "/lib/frei0r-1/")))
`("MLT_PREFIX" ":" =
(,(assoc-ref inputs "mlt")))))
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("qttools" ,qttools)))
(inputs
`(("ffmpeg" ,ffmpeg)
("frei0r-plugins" ,frei0r-plugins)
("jack" ,jack-1)
("ladspa" ,ladspa)
("lame" ,lame)
("libvpx" ,libvpx)
("libx264" ,libx264)
("mlt" ,mlt)
("pulseaudio" ,pulseaudio)
("qtbase" ,qtbase-5)
("qtdeclarative" ,qtdeclarative)
("qtgraphicaleffects" ,qtgraphicaleffects)
("qtmultimedia" ,qtmultimedia)
("qtquickcontrols" ,qtquickcontrols)
("qtquickcontrols2" ,qtquickcontrols2)
("qtsvg" ,qtsvg)
("qtwebkit" ,qtwebkit)
("qtwebsockets" ,qtwebsockets)
("qtx11extras" ,qtx11extras)
("sdl2" ,sdl2)))
(home-page "https://www.shotcut.org/")
(synopsis "Video editor built on the MLT framework")
(description
"Shotcut is a video editor built on the MLT framework. Features include
a wide range of formats through @code{ffmpeg}, 4k resolution support, webcam
and audio capture, network stream playback, and many more.")
(license license:gpl3+)))
(define-public dav1d
(package
(name "dav1d")

View File

@ -8,7 +8,7 @@
;;; Copyright © 2019 HiPhish <hiphish@posteo.de>
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019, 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2020, 2021 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Tissevert <tissevert+guix@marvid.fr>
;;;
@ -43,6 +43,7 @@
#:use-module (gnu packages attr)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages enlightenment)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gawk)
#:use-module (gnu packages gettext)
@ -746,6 +747,48 @@ refactor Vim in order to:
;; except for parts that were contributed under the Vim license.
(license (list license:asl2.0 license:vim))))
(define-public eovim
(package
(name "eovim")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jeanguyomarch/eovim/")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06b7crmz3wvvq15ncl0jk20s8j1pmna2jin0k5y5n5qxpafbgp3k"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #false ;no tests
#:phases
(modify-phases %standard-phases
(add-after 'configure 'reference-nvim
(lambda* (#:key inputs #:allow-other-keys)
(let ((nvim (string-append (assoc-ref inputs "neovim")
"/bin/nvim")))
;; This substitution should change one line, and replaces the default
;; value in the struct of options with an absolute store reference.
(substitute* "../source/src/main.c"
(("(^[[:blank:]]+\\.nvim = \")nvim" _ start)
(string-append start nvim))))))
(add-before 'build 'set-home
(lambda _ (setenv "HOME" "/tmp"))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("efl" ,efl)
("msgpack" ,msgpack)
("neovim" ,neovim)))
(home-page "https://github.com/jeanguyomarch/eovim/")
(synopsis "EFL GUI for Neovim")
(description "Graphical Neovim interface based on the @acronym{EFL, Enlightenment
Foundation Libraries} toolkit. Its features include customizable appearance
and support for fonts with ligatures.")
(license license:expat)))
(define-public vifm
(package
(name "vifm")

View File

@ -1026,10 +1026,10 @@ manage system or application containers.")
(inputs
`(("fuse" ,fuse)))
(build-system gnu-build-system)
(synopsis "FUSE based filesystem for LXC")
(description "LXCFS is a small FUSE filesystem written with the intention
(synopsis "FUSE-based file system for LXC")
(description "LXCFS is a small FUSE file system written with the intention
of making Linux containers feel more like a virtual machine.
It started as a side-project of LXC but is useable by any runtime.")
It started as a side project of LXC but can be used by any run-time.")
(license license:lgpl2.1+)))
(define-public libvirt

View File

@ -516,7 +516,7 @@ this process. It is compatible with Fortinet VPNs.")
(define-public openvpn
(package
(name "openvpn")
(version "2.5.2")
(version "2.5.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -524,7 +524,7 @@ this process. It is compatible with Fortinet VPNs.")
version ".tar.xz"))
(sha256
(base32
"1j0xkiya20hhvalfjg5l3v1226vyjs9j9aw2mzpnbwq1d61l69xi"))))
"0zlski66mw10klmwvg445z051mld7xjng4iyl4f9b883qr1rjspv"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--enable-iproute2=yes")))

View File

@ -604,7 +604,7 @@ driven and does not detract you from your daily work.")
(define-public nyxt
(package
(name "nyxt")
(version "2.0.0")
(version "2.1.0")
(source
(origin
(method git-fetch)
@ -615,7 +615,7 @@ driven and does not detract you from your daily work.")
(commit version)))
(sha256
(base32
"0y91hnanf1bj378zsxhjh33qnhj09f6ixpdqmkl69k0075zls93r"))
"0f2c029213apppj6ziky3wsrpsi2gpx9s55wnfriy6hp33j241gd"))
(file-name (git-file-name "nyxt" version))))
(build-system gnu-build-system)
(arguments

View File

@ -15,7 +15,7 @@
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017, 2018, 2019, 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
@ -1597,7 +1597,7 @@ used to validate and fix HTML data.")
(define-public esbuild
(package
(name "esbuild")
(version "0.11.14")
(version "0.12.9")
(source
(origin
(method git-fetch)
@ -1606,7 +1606,7 @@ used to validate and fix HTML data.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0qxylzc7lzpsp5hm3dl5jvy9aca8azn8dmbjz9z5n5rkdmm8vd9p"))
(base32 "10bz1xq2frdja7mbx04m009svg8b5rj7vfq3sc2gc88n31v21b1j"))
(modules '((guix build utils)))
(snippet
'(begin
@ -6577,41 +6577,36 @@ Instagram and YouTube.")
(define-public linkchecker
(package
(name "linkchecker")
(version "9.4.0")
(version "10.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/linkchecker/linkchecker")
(commit (string-append "v" version))))
(patches
(search-patches "linkchecker-tests-require-network.patch"))
(file-name (git-file-name name version))
(sha256
(base32
"03ihjmc4bqxxqv71bb43r2f23sx0xnbq1k2fsg9fw05qa5s9x187"))))
"1j97dc9a4yhpscwadhv5dxp7036pnrxiaky18l8ddr3pvxdjvkxs"))))
(build-system python-build-system)
(inputs
`(("python2-dnspython" ,python2-dnspython-1.16)
("python2-pyxdg" ,python2-pyxdg)
("python2-requests" ,python2-requests)))
`(("python-beautifulsoup4" ,python-beautifulsoup4)
("python-dnspython" ,python-dnspython)
("python-pyxdg" ,python-pyxdg)
("python-requests" ,python-requests)))
(native-inputs
`(("gettext" ,gettext-minimal)
("python2-pytest" ,python2-pytest)
("python2-miniboa" ,python2-miniboa)
("python2-parameterized" ,python2-parameterized)))
("python-pytest" ,python-pytest)
("python-miniboa" ,python-miniboa)
("python-parameterized" ,python-parameterized)))
(arguments
`(#:python ,python-2
#:phases
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; Remove this directory to avoid it being used when running
;; the tests
(delete-file-recursively "linkcheck")
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "py.test" "tests")))))))
(home-page "https://linkcheck.github.io/linkchecker")
(home-page "https://linkchecker.github.io/linkchecker/")
(synopsis "Check websites for broken links")
(description "LinkChecker is a website validator. It checks for broken
links in websites. It is recursive and multithreaded providing output in

View File

@ -292,11 +292,12 @@ methods. Otherwise apply to only the listed methods.")
"Name of the policy.")
(job-private-access
(string "@OWNER @SYSTEM")
"Specifies an access list for a job's private values. @code{@@ACL} maps to
the printer's requesting-user-name-allowed or requesting-user-name-denied
values. @code{@@OWNER} maps to the job's owner. @code{@@SYSTEM} maps to the
groups listed for the @code{system-group} field of the @code{files-config}
configuration, which is reified into the @code{cups-files.conf(5)} file.
"Specifies an access list for a job's private values.
@code{@@ACL} maps to the printer's requesting-user-name-allowed or
requesting-user-name-denied values. @code{@@OWNER} maps to the job's owner.
@code{@@SYSTEM} maps to the groups listed for the @code{system-group} field of
the @code{files-configuration}, which is reified into the
@code{cups-files.conf(5)} file.
Other possible elements of the access list include specific user names, and
@code{@@@var{group}} to indicate members of a specific group. The access list
may also be simply @code{all} or @code{default}.")
@ -312,11 +313,11 @@ may also be simply @code{all} or @code{default}.")
@code{@@ACL} maps to the printer's requesting-user-name-allowed or
requesting-user-name-denied values. @code{@@OWNER} maps to the job's owner.
@code{@@SYSTEM} maps to the groups listed for the @code{system-group} field of
the @code{files-config} configuration, which is reified into the
@code{cups-files.conf(5)} file. Other possible elements of the access list
include specific user names, and @code{@@@var{group}} to indicate members of a
specific group. The access list may also be simply @code{all} or
@code{default}.")
the @code{files-configuration}, which is reified into the
@code{cups-files.conf(5)} file.
Other possible elements of the access list include specific user names, and
@code{@@@var{group}} to indicate members of a specific group. The access list
may also be simply @code{all} or @code{default}.")
(subscription-private-values
(string (string-join '("notify-events" "notify-pull-method"
"notify-recipient-uri" "notify-subscriber-user-name"
@ -617,9 +618,6 @@ policy is @code{retry-job} or @code{retry-current-job}.")
(keep-alive?
(boolean #t)
"Specifies whether to support HTTP keep-alive connections.")
(keep-alive-timeout
(non-negative-integer 30)
"Specifies how long an idle client connection remains open, in seconds.")
(limit-request-body
(non-negative-integer 0)
"Specifies the maximum size of print files, IPP requests, and HTML form

View File

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;;
;;; This file is part of GNU Guix.
;;;
@ -57,6 +58,9 @@
(requirement '(syslogd))
(modules '((gnu build shepherd)))
(start #~(lambda _
(let ((socket "/run/pcscd/pcscd.comm"))
(when (file-exists? socket)
(delete-file socket)))
(invoke #$(file-append pcsc-lite "/sbin/pcscd"))
(call-with-input-file "/run/pcscd/pcscd.pid" read)))
(stop #~(make-kill-destructor)))))))

View File

@ -6,6 +6,8 @@
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 pinoaffe <pinoaffe@airmail.cc>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -30,6 +32,7 @@
#:use-module (gnu services web)
#:use-module (gnu system pam)
#:use-module (gnu system shadow)
#:use-module (guix deprecation)
#:use-module (guix gexp)
#:use-module (guix records)
#:use-module (guix modules)
@ -288,7 +291,7 @@ The other options should be self-descriptive."
;; integer
(port-number openssh-configuration-port-number
(default 22))
;; Boolean | 'without-password
;; Boolean | 'prohibit-password
(permit-root-login openssh-configuration-permit-root-login
(default #f))
;; Boolean
@ -441,7 +444,11 @@ of user-name/file-like tuples."
#$(match (openssh-configuration-permit-root-login config)
(#t "yes")
(#f "no")
('without-password "without-password")))
('without-password (warn-about-deprecation
'without-password #f
#:replacement 'prohibit-password)
"prohibit-password")
('prohibit-password "prohibit-password")))
(format port "PermitEmptyPasswords ~a\n"
#$(if (openssh-configuration-allow-empty-passwords? config)
"yes" "no"))

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>.
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;;
;;; This file is part of GNU Guix.
;;;
@ -65,7 +66,7 @@
(service openssh-service-type
(openssh-configuration
(permit-root-login 'without-password)))
(permit-root-login 'prohibit-password)))
(service ganeti-service-type
(ganeti-configuration

View File

@ -2,7 +2,7 @@
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2020, 2021 Julien Lepiller <julien@lepiller.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@ -28,6 +28,7 @@
#:use-module (sxml simple)
#:export (ant-build-javadoc
generate-plugin.xml
generate-pom.xml
install-jars
install-javadoc
install-pom-file
@ -68,9 +69,9 @@ fetched."
(let* ((out (assoc-ref outputs "out"))
(java-inputs (append (map cdr inputs) (map cdr outputs)))
(pom-content (get-pom pom-file))
(version (pom-version pom-content java-inputs))
(version (pom-version pom-content))
(artifact (pom-artifactid pom-content))
(group (group->dir (pom-groupid pom-content java-inputs)))
(group (group->dir (pom-groupid pom-content)))
(repository (string-append out "/lib/m2/" group "/" artifact "/"
version "/"))
(pom-name (string-append repository artifact "-" version ".pom")))
@ -86,8 +87,8 @@ to ensure that maven can find dependencies."
(manifest (string-append dir "/META-INF/MANIFEST.MF"))
(pom (get-pom pom-file))
(artifact (pom-artifactid pom))
(group (pom-groupid pom inputs))
(version (pom-version pom inputs))
(group (pom-groupid pom))
(version (pom-version pom))
(pom-dir (string-append "META-INF/maven/" group "/" artifact)))
(mkdir-p (string-append dir "/" pom-dir))
(copy-file pom-file (string-append dir "/" pom-dir "/pom.xml"))
@ -112,9 +113,9 @@ the phase fails."
(let* ((out (assoc-ref outputs "out"))
(java-inputs (append (map cdr inputs) (map cdr outputs)))
(pom-content (get-pom pom-file))
(version (pom-version pom-content java-inputs))
(version (pom-version pom-content))
(artifact (pom-artifactid pom-content))
(group (group->dir (pom-groupid pom-content java-inputs)))
(group (group->dir (pom-groupid pom-content)))
(repository (string-append out "/lib/m2/" group "/" artifact "/"
version "/"))
;; We try to find the file that was built. If it was built from our
@ -124,7 +125,7 @@ the phase fails."
version ".jar"))))
;; Otherwise, we try to find any jar file.
(jars (if (null? jars)
(find-files "." ".*.jar")
(find-files "." "\\.jar$")
jars))
(jar-name (string-append repository artifact "-" version ".jar"))
(pom-name (string-append repository artifact "-" version ".pom")))
@ -179,9 +180,9 @@ recognize the package as a plugin, and find the entry points in the plugin."
(name (pom-name pom-content))
(description (pom-description pom-content))
(dependencies (pom-dependencies pom-content))
(version (pom-version pom-content java-inputs))
(version (pom-version pom-content))
(artifact (pom-artifactid pom-content))
(groupid (pom-groupid pom-content java-inputs))
(groupid (pom-groupid pom-content))
(mojos
`(mojos
,@(with-directory-excursion directory
@ -206,3 +207,31 @@ recognize the package as a plugin, and find the entry points in the plugin."
,mojos
(dependencies
,@dependencies)))))))))
(define* (generate-pom.xml pom-file groupid artifactid version
#:key (dependencies '())
(name artifactid))
"Generates the @file{pom.xml} for a project. It is required by Maven to find
a package, and by the java build system to know where to install a package, when
a pom.xml doesn't already exist and installing to the maven repository."
(lambda _
(mkdir-p (dirname pom-file))
(with-output-to-file pom-file
(lambda _
(sxml->xml
(sxml-indent
`(project
(modelVersion "4.0.0")
(name ,name)
(groupId ,groupid)
(artifactId ,artifactid)
(version ,version)
(dependencies
,@(map
(match-lambda
((groupid artifactid version)
`(dependency
(groupId ,groupid)
(artifactId ,artifactid)
(version ,version))))
dependencies)))))))))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2020, 2021 Julien Lepiller <julien@lepiller.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@ -60,47 +60,23 @@
(invoke "mvn" "-v")
#t)
(define (add-local-package local-packages group artifact version)
(define (alist-set lst key val)
(match lst
('() (list (cons key val)))
(((k . v) lst ...)
(if (equal? k key)
(cons (cons key val) lst)
(cons (cons k v) (alist-set lst key val))))))
(alist-set local-packages group
(alist-set (or (assoc-ref local-packages group) '()) artifact
version)))
(define (fix-pom pom-file inputs local-packages excludes)
(chmod pom-file #o644)
(format #t "fixing ~a~%" pom-file)
(fix-pom-dependencies pom-file (map cdr inputs)
#:with-plugins? #t #:with-build-dependencies? #t
#:with-modules? #t
#:local-packages local-packages
#:excludes excludes)
(let* ((pom (get-pom pom-file))
(java-inputs (map cdr inputs))
(artifact (pom-artifactid pom))
(group (pom-groupid pom java-inputs local-packages))
(version (pom-version pom java-inputs local-packages)))
(let loop ((modules (pom-ref pom "modules"))
(local-packages
(add-local-package local-packages group artifact version)))
(pk 'local-packages local-packages)
(match modules
(#f local-packages)
('() local-packages)
(((? string? _) modules ...)
(loop modules local-packages))
(((_ module) modules ...)
(loop
modules
(fix-pom (string-append (dirname pom-file) "/" module "/pom.xml")
inputs local-packages excludes)))))))
#:excludes excludes))
(define* (fix-pom-files #:key inputs local-packages exclude #:allow-other-keys)
(fix-pom "pom.xml" inputs local-packages exclude)
(let ((local-packages (pom-local-packages "pom.xml" #:local-packages local-packages)))
(format (current-error-port) "Fix pom files with local packages: ~a~%" local-packages)
(for-each
(lambda (pom)
(when (file-exists? pom)
(fix-pom pom inputs local-packages exclude)))
(pom-and-submodules "pom.xml")))
#t)
(define* (build #:key outputs #:allow-other-keys)

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019, 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019-2021 Julien Lepiller <julien@lepiller.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@ -21,7 +21,8 @@
#:use-module (system foreign)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
#:export (get-pom
#:export (add-local-package
get-pom
pom-ref
pom-description
pom-name
@ -30,8 +31,24 @@
pom-groupid
pom-dependencies
group->dir
pom-and-submodules
pom-local-packages
fix-pom-dependencies))
(define (add-local-package local-packages group artifact version)
"Takes @var{local-packages}, a list of local packages, and adds a new one
for @var{group}:@var{artifact} at @var{version}."
(define (alist-set lst key val)
(match lst
('() (list (cons key val)))
(((k . v) lst ...)
(if (equal? k key)
(cons (cons key val) lst)
(cons (cons k v) (alist-set lst key val))))))
(alist-set local-packages group
(alist-set (or (assoc-ref local-packages group) '()) artifact
version)))
(define (get-pom file)
"Return the content of a @file{.pom} file."
(let ((pom-content (call-with-input-file file xml->sxml)))
@ -93,13 +110,12 @@ If no result is found, the result is @code{#f}."
(get-pom (car java-inputs))))
#f)))
(define* (pom-groupid content inputs #:optional local-packages)
(define* (pom-groupid content)
"Find the groupID of a pom file, potentially looking at its parent pom file.
See @code{find-parent} for the meaning of the arguments."
(if content
(let ((res (or (pom-ref content "groupId")
(pom-groupid (find-parent content inputs local-packages)
inputs))))
(pom-ref (pom-ref content "parent") "groupId"))))
(cond
((string? res) res)
((null? res) #f)
@ -114,13 +130,12 @@ See @code{find-parent} for the meaning of the arguments."
(car res)
#f)))
(define* (pom-version content inputs #:optional local-packages)
(define* (pom-version content)
"Find the version of a pom file, potentially looking at its parent pom file.
See @code{find-parent} for the meaning of the arguments."
(if content
(let ((res (or (pom-ref content "version")
(pom-version (find-parent content inputs local-packages)
inputs))))
(pom-ref (pom-ref content "parent") "version"))))
(cond
((string? res) res)
((null? res) #f)
@ -236,13 +251,48 @@ to re-declare the namespaces in the top-level element."
http://maven.apache.org/xsd/maven-4.0.0.xsd"))
,(map fix-xml sxml)))))
(define (pom-and-submodules pom-file)
"Given @var{pom-file}, the file name of a pom, return the list of pom file
names that correspond to itself and its submodules, recursively."
(define (get-modules modules)
(match modules
(#f '())
('() '())
(((? string? _) rest ...) (get-modules rest))
((('http://maven.apache.org/POM/4.0.0:module mod) rest ...)
(let ((pom (string-append (dirname pom-file) "/" mod "/pom.xml")))
(if (file-exists? pom)
(cons pom (get-modules rest))
(get-modules rest))))))
(let* ((pom (get-pom pom-file))
(modules (get-modules (pom-ref pom "modules"))))
(cons pom-file
(apply append (map pom-and-submodules modules)))))
(define* (pom-local-packages pom-file #:key (local-packages '()))
"Given @var{pom-file}, a pom file name, return a list of local packages that
this repository contains."
(let loop ((modules (pom-and-submodules pom-file))
(local-packages local-packages))
(match modules
(() local-packages)
((module modules ...)
(let* ((pom (get-pom module))
(version (pom-version pom))
(artifactid (pom-artifactid pom))
(groupid (pom-groupid pom)))
(loop modules
(add-local-package local-packages groupid artifactid version)))))))
(define (group->dir group)
"Convert a group ID to a directory path."
(string-join (string-split group #\.) "/"))
(define* (fix-pom-dependencies pom-file inputs
#:key with-plugins? with-build-dependencies?
(excludes '()) (local-packages '()))
with-modules? (excludes '())
(local-packages '()))
"Open @var{pom-file}, and override its content, rewriting its dependencies
to set their version to the latest version available in the @var{inputs}.
@ -290,8 +340,24 @@ Returns nothing, but overrides the @var{pom-file} as a side-effect."
`((http://maven.apache.org/POM/4.0.0:build ,(fix-build build))
,@(fix-pom rest))
(cons tag (fix-pom rest))))
(('http://maven.apache.org/POM/4.0.0:modules modules ...)
(if with-modules?
`((http://maven.apache.org/POM/4.0.0:modules ,(fix-modules modules))
,@(fix-pom rest))
(cons tag (fix-pom rest))))
(tag (cons tag (fix-pom rest)))))))
(define fix-modules
(match-lambda
('() '())
((tag rest ...)
(match tag
(('http://maven.apache.org/POM/4.0.0:module module)
(if (file-exists? (string-append (dirname pom-file) "/" module "/pom.xml"))
`((http://maven.apache.org/POM/4.0.0:module ,module) ,@(fix-modules rest))
(fix-modules rest)))
(tag (cons tag (fix-modules rest)))))))
(define fix-dep-management
(match-lambda
('() '())
@ -325,8 +391,27 @@ Returns nothing, but overrides the @var{pom-file} as a side-effect."
`((http://maven.apache.org/POM/4.0.0:plugins
,(fix-plugins plugins))
,@(fix-build rest)))
(('http://maven.apache.org/POM/4.0.0:extensions extensions ...)
`((http://maven.apache.org/POM/4.0.0:extensions
,(fix-extensions extensions))
,@(fix-build rest)))
(tag (cons tag (fix-build rest)))))))
(define* (fix-extensions extensions #:optional optional?)
(match extensions
('() '())
((tag rest ...)
(match tag
(('http://maven.apache.org/POM/4.0.0:extension extension ...)
(let ((group (or (pom-groupid extension) "org.apache.maven.plugins"))
(artifact (pom-artifactid extension)))
(if (member artifact (or (assoc-ref excludes group) '()))
(fix-extensions rest optional?)
`((http://maven.apache.org/POM/4.0.0:extension
,(fix-plugin extension optional?)); extensions are similar to plugins
,@(fix-extensions rest optional?)))))
(tag (cons tag (fix-extensions rest optional?)))))))
(define fix-management
(match-lambda
('() '())
@ -344,7 +429,7 @@ Returns nothing, but overrides the @var{pom-file} as a side-effect."
((tag rest ...)
(match tag
(('http://maven.apache.org/POM/4.0.0:plugin plugin ...)
(let ((group (or (pom-groupid plugin inputs) "org.apache.maven.plugins"))
(let ((group (or (pom-groupid plugin) "org.apache.maven.plugins"))
(artifact (pom-artifactid plugin)))
(if (member artifact (or (assoc-ref excludes group) '()))
(fix-plugins rest optional?)
@ -355,11 +440,11 @@ Returns nothing, but overrides the @var{pom-file} as a side-effect."
(define* (fix-plugin plugin #:optional optional?)
(let* ((artifact (pom-artifactid plugin))
(group (or (pom-groupid plugin inputs) "org.apache.maven.plugins"))
(group (or (pom-groupid plugin) "org.apache.maven.plugins"))
(version (or (assoc-ref (assoc-ref local-packages group) artifact)
(find-version inputs group artifact optional?)
(pom-version plugin inputs))))
(if (pom-version plugin inputs)
(pom-version plugin))))
(if (pom-version plugin)
(map
(lambda (tag)
(match tag
@ -373,7 +458,7 @@ Returns nothing, but overrides the @var{pom-file} as a side-effect."
(define* (fix-dep dep #:optional optional?)
(let* ((artifact (pom-artifactid dep))
(group (or (pom-groupid dep inputs) (pom-groupid pom inputs)))
(group (or (pom-groupid dep) (pom-groupid pom)))
(scope (pom-ref dep "scope"))
(is-optional? (equal? (pom-ref dep "optional") '("true"))))
(format (current-error-port) "maven: ~a:~a :: ~a (optional: ~a)~%"
@ -382,8 +467,8 @@ Returns nothing, but overrides the @var{pom-file} as a side-effect."
with-build-dependencies?)
(let ((version (or (assoc-ref (assoc-ref local-packages group) artifact)
(find-version inputs group artifact optional?)
(pom-version dep inputs))))
(if (pom-version dep inputs)
(pom-version dep))))
(if (pom-version dep)
(map
(lambda (tag)
(match tag
@ -396,7 +481,7 @@ Returns nothing, but overrides the @var{pom-file} as a side-effect."
(cons `(http://maven.apache.org/POM/4.0.0:version ,version) dep)))
dep)))
(define* (find-version inputs group artifact #:optional optional?)
(define (find-packaged-version inputs group artifact)
(let* ((directory (string-append "lib/m2/" (group->dir group)
"/" artifact))
(java-inputs (filter
@ -408,15 +493,22 @@ Returns nothing, but overrides the @var{pom-file} as a side-effect."
(versions (append-map ls java-inputs))
(versions (sort versions version>?)))
(if (null? versions)
(if optional?
#f
(begin
(format (current-error-port) "maven: ~a:~a is missing from inputs~%"
group artifact)
(throw 'no-such-input group artifact)))
(car versions))))
(car versions))))
(define* (find-version inputs group artifact #:optional optional?)
(let ((packaged-version (find-packaged-version inputs group artifact))
(local-version (assoc-ref (assoc-ref local-packages group) artifact)))
(or local-version packaged-version
(if optional?
#f
(begin
(format (current-error-port) "maven: ~a:~a is missing from inputs~%"
group artifact)
(throw 'no-such-input group artifact))))))
(let ((tmpfile (string-append pom-file ".tmp")))
(with-output-to-file pom-file
(with-output-to-file tmpfile
(lambda _
(sxml->xml (fix-maven-xml (fix-pom pom)))))))
(sxml->xml (fix-maven-xml (fix-pom pom)))))
(rename-file tmpfile pom-file)))

View File

@ -159,15 +159,15 @@ search path specifications."
(((name version output item
('propagated-inputs deps)
('search-paths paths) _ ...) . rest)
(loop (append deps rest)
(loop (append rest deps) ;breadth-first traversal
(cons item inputs)
(append paths search-paths)))
(()
(values inputs
(values (reverse inputs)
(delete-duplicates
(cons $PATH
(map sexp->search-path-specification
search-paths))))))))))
(reverse search-paths)))))))))))
(define* (build-profile output manifest
#:key (extra-inputs '()) (symlink symlink))

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -173,10 +174,13 @@ return the package metadata in FILE."
;;;
(define* (egg->guix-package name #:key (file #f) (source #f))
"Import CHICKEN egg NAME from and return a <package> record type for the
egg, or #f on failure. FILE is the filepath to the NAME.egg file. SOURCE is
the a ``file-like'' object containing the source code corresonding to the egg.
If SOURCE is not specified, the tarball for the egg will be downloaded.
"Import a CHICKEN egg called NAME from either the given .egg FILE, or from
the latest NAME metadata downloaded from the official repository if FILE is #f.
Return a <package> record or #f on failure.
SOURCE is a ``file-like'' object containing the source code corresponding to
the egg. If SOURCE is not specified, the latest tarball for egg NAME will be
downloaded.
Specifying the SOURCE argument is mainly useful for developing a CHICKEN egg
locally. Note that if FILE and SOURCE are specified, recursive import will

View File

@ -1,5 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;;
;;; This file is part of GNU Guix.
;;;
@ -100,8 +102,8 @@ URL of the form
(match (string-split (uri-path (string->uri url)) #\/)
((_ repo . rest) repo)))
(define (latest-released-version package-name)
"Return a string of the newest released version name given the PACKAGE-NAME,
(define (latest-released-version repository)
"Return a string of the newest released version name given the REPOSITORY,
for example, 'linuxdcpp'. Return #f if there is no releases."
(define (pre-release? x)
;; Versions containing anything other than digit characters and "." (for
@ -112,7 +114,7 @@ for example, 'linuxdcpp'. Return #f if there is no releases."
(match (json-fetch
(string-append "https://api.launchpad.net/1.0/"
package-name "/releases"))
repository "/releases"))
(#f #f) ;404 or similar
(json
(assoc-ref
@ -121,15 +123,16 @@ for example, 'linuxdcpp'. Return #f if there is no releases."
(define (latest-release pkg)
"Return an <upstream-source> for the latest release of PKG."
(define (origin-github-uri origin)
(define (origin-launchpad-uri origin)
(match (origin-uri origin)
((? string? url) url) ; surely a Launchpad URL
((urls ...)
(find (cut string-contains <> "launchpad.net") urls))))
(let* ((source-uri (origin-github-uri (package-source pkg)))
(let* ((source-uri (origin-launchpad-uri (package-source pkg)))
(name (package-name pkg))
(newest-version (latest-released-version name)))
(repository (launchpad-repository source-uri))
(newest-version (latest-released-version repository)))
(if newest-version
(upstream-source
(package name)

View File

@ -279,6 +279,36 @@
(string=? (dirname (readlink bindir))
(derivation->output-path guile))))))
(test-assertm "profile-derivation, ordering & collisions"
;; ENTRY1 and ENTRY2 both provide 'bin/guile'--a collision. Make sure
;; ENTRY1 "wins" over ENTRY2. See <https://bugs.gnu.org/49102>.
(mlet* %store-monad
((entry1 -> (package->manifest-entry %bootstrap-guile))
(entry2 -> (manifest-entry
(name "fake-guile")
(version "0")
(item (computed-file
"fake-guile"
#~(begin
(mkdir #$output)
(mkdir (string-append #$output "/bin"))
(call-with-output-file
(string-append #$output "/bin/guile")
(lambda (port)
(display "Fake!\n" port))))))))
(guile (package->derivation %bootstrap-guile))
(drv (profile-derivation (manifest (list entry1 entry2))
#:hooks '()
#:locales? #f))
(profile -> (derivation->output-path drv))
(bindir -> (string-append profile "/bin"))
(file -> (string-append bindir "/guile"))
(_ (built-derivations (list drv))))
(return (string=? (readlink file)
(string-append
(derivation->output-path guile)
"/bin/guile")))))
(test-assertm "load-profile"
(mlet* %store-monad
((entry -> (package->manifest-entry %bootstrap-guile))