me
/
guix
Archived
1
0
Fork 0

Merge branch 'master' into core-updates-frozen

Conflicts:
	gnu/packages/bioinformatics.scm
	gnu/packages/chez.scm
	gnu/packages/docbook.scm
	gnu/packages/ebook.scm
	gnu/packages/gnome.scm
	gnu/packages/linux.scm
	gnu/packages/networking.scm
	gnu/packages/python-web.scm
	gnu/packages/python-xyz.scm
	gnu/packages/tex.scm
	gnu/packages/version-control.scm
	gnu/packages/xml.scm
	guix/build-system/dune.scm
	guix/build-system/go.scm
	guix/build-system/linux-module.scm
	guix/packages.scm
master
Marius Bakke 2021-09-17 01:25:52 +02:00
commit 5c3cb22c9b
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
96 changed files with 47255 additions and 1103 deletions

View File

@ -371,6 +371,10 @@ AUX_FILES = \
gnu/packages/aux-files/chromium/master-preferences.json \
gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/guix.vim \
gnu/packages/aux-files/linux-libre/5.14-arm.conf \
gnu/packages/aux-files/linux-libre/5.14-arm64.conf \
gnu/packages/aux-files/linux-libre/5.14-i686.conf \
gnu/packages/aux-files/linux-libre/5.14-x86_64.conf \
gnu/packages/aux-files/linux-libre/5.13-arm.conf \
gnu/packages/aux-files/linux-libre/5.13-arm64.conf \
gnu/packages/aux-files/linux-libre/5.13-i686.conf \
@ -624,9 +628,11 @@ EXTRA_DIST += \
.guix-authorizations \
.guix-channel \
scripts/guix.in \
etc/disarchive-manifest.scm \
etc/guix-install.sh \
etc/news.scm \
etc/release-manifest.scm \
etc/source-manifest.scm \
etc/system-tests.scm \
etc/historical-authorizations \
build-aux/build-self.scm \

2
THANKS
View File

@ -43,7 +43,7 @@ infrastructure help:
Alen Skondro <askondro@gmail.com>
Jan Synáček <jan.synacek@gmail.com>
Matthias Wachs <wachs@net.in.tum.de>
Christopher Allan Webber <cwebber@dustycloud.org>
Christine Lemmer-Webber <cwebber@dustycloud.org>
Philip Woods <elzairthesorcerer@gmail.com>
GNU Guix also includes non-software works. Thanks to the following

View File

@ -2046,10 +2046,12 @@ Copy into it the output of:
cat ~/.ssh/<username>_rsa.pub
@end example
Power the Linode down. In the Linode's Disks/Configurations tab, resize
the Debian disk to be smaller. 30 GB is recommended.
Power the Linode down.
In the Linode's Storage tab, resize the Debian disk to be smaller.
30 GB free space is recommended. Then click "Add a disk", and fill
out the form with the following:
In the Linode settings, "Add a disk", with the following:
@itemize @bullet
@item
Label: "Guix"
@ -2061,9 +2063,9 @@ Filesystem: ext4
Set it to the remaining size
@end itemize
On the "configuration" field that comes with the default image, press
"..." and select "Edit", then on that menu add to @file{/dev/sdc} the "Guix"
label.
In the Configurations tab, press "Edit" on the default Debian profile.
Under "Block Device Assignment" click "Add a Device". It should be
@file{/dev/sdc} and you can select the "Guix" disk. Save Changes.
Now "Add a Configuration", with the following:
@itemize @bullet
@ -2089,8 +2091,8 @@ Root device: @file{/dev/sda}
Turn off all the filesystem/boot helpers
@end itemize
Now power it back up, picking the Debian configuration. Once it's
booted up, ssh in your server via @code{ssh
Now power it back up, booting with the Debian configuration. Once it's
running, ssh to your server via @code{ssh
root@@@var{<your-server-IP-here>}}. (You can find your server IP address in
your Linode Summary section.) Now you can run the "install guix from
@pxref{Binary Installation,,, guix, GNU Guix}" steps:
@ -2179,19 +2181,20 @@ Replace the following fields in the above configuration:
@end lisp
The last line in the above example lets you log into the server as root
and set the initial root password. After you have done this, you may
and set the initial root password (see the note at the end of this
recipe about root login). After you have done this, you may
delete that line from your configuration and reconfigure to prevent root
login.
Save your ssh public key (eg: @file{~/.ssh/id_rsa.pub}) as
@file{@var{<your-username-here>}_rsa.pub} and your
Copy your ssh public key (eg: @file{~/.ssh/id_rsa.pub}) as
@file{@var{<your-username-here>}_rsa.pub} and put
@file{guix-config.scm} in the same directory. In a new terminal run
these commands.
@example
sftp root@@<remote server ip address>
put /home/<username>/ssh/id_rsa.pub .
put /path/to/linode/guix-config.scm .
put /path/to/files/<username>_rsa.pub .
put /path/to/files/guix-config.scm .
@end example
In your first terminal, mount the guix drive:
@ -2201,9 +2204,9 @@ mkdir /mnt/guix
mount /dev/sdc /mnt/guix
@end example
Due to the way we set things up above, we do not install GRUB
completely. Instead we install only our grub configuration file. So we
need to copy over some of the other GRUB stuff that is already there:
Due to the way we set up the bootloader section of the guix-config.scm,
only the grub configuration file will be installed. So, we need to copy
over some of the other GRUB stuff already installed on the Debian system:
@example
mkdir -p /mnt/guix/boot/grub
@ -2256,7 +2259,7 @@ still need to set your root and user password initially by clicking on
the ``Launch Console'' option in your linode. Choose the ``Glish''
instead of ``Weblish''. Now you should be able to ssh into the machine.
Horray! At this point you can shut down the server, delete the
Hooray! At this point you can shut down the server, delete the
Debian disk, and resize the Guix to the rest of the size.
Congratulations!

View File

@ -47,7 +47,7 @@ Copyright @copyright{} 2017, 2018 Carlo Zancanaro@*
Copyright @copyright{} 2017 Thomas Danckaert@*
Copyright @copyright{} 2017 humanitiesNerd@*
Copyright @copyright{} 2017, 2021 Christine Lemmer-Webber@*
Copyright @copyright{} 2017, 2018, 2019, 2020 Marius Bakke@*
Copyright @copyright{} 2017, 2018, 2019, 2020, 2021 Marius Bakke@*
Copyright @copyright{} 2017, 2019, 2020 Hartmut Goebel@*
Copyright @copyright{} 2017, 2019, 2020, 2021 Maxim Cournoyer@*
Copyright @copyright{} 2017, 2018, 2019, 2020, 2021 Tobias Geerinckx-Rice@*
@ -7059,9 +7059,10 @@ retrieve.
The URL of the Git repository to clone.
@item @code{commit}
This string denotes either the commit to fetch (a hexadecimal string,
either the full SHA1 commit or a ``short'' commit string; the latter is
not recommended) or the tag to fetch.
This string denotes either the commit to fetch (a hexadecimal string),
or the tag to fetch. You can also use a ``short'' commit ID or a
@command{git describe} style identifier such as
@code{v1.0.1-10-g58d7909c97}.
@item @code{recursive?} (default: @code{#f})
This Boolean indicates whether to recursively fetch Git sub-modules.
@ -7805,11 +7806,6 @@ is useful when a package contains multiple packages and you want to build
only one of them. This is equivalent to passing the @code{-p} argument to
@code{dune}.
The @code{#:profile} parameter can be passed to specify the
@uref{https://dune.readthedocs.io/en/stable/dune-files.html#profile,
dune build profile}. This is equivalent to passing the @code{--profile}
argument to @code{dune}. Its default value is @code{"release"}.
@end defvr
@defvr {Scheme Variable} go-build-system
@ -7833,6 +7829,13 @@ Packages that provide Go libraries should install their source code into
the built output. The key @code{#:install-source?}, which defaults to
@code{#t}, controls whether or not the source code is installed. It can
be set to @code{#f} for packages that only provide executable files.
Packages can be cross-built, and if a specific architecture or operating
system is desired then the keywords @code{#:goarch} and @code{#:goos}
can be used to force the package to be built for that architecture and
operating system. The combinations known to Go can be found
@url{"https://golang.org/doc/install/source#environment", in their
documentation}.
@end defvr
@defvr {Scheme Variable} glib-or-gtk-build-system
@ -10760,7 +10763,8 @@ guix build --with-branch=guile-sqlite3=master cuirass
@item --with-commit=@var{package}=@var{commit}
This is similar to @option{--with-branch}, except that it builds from
@var{commit} rather than the tip of a branch. @var{commit} must be a valid
Git commit SHA1 identifier or a tag.
Git commit SHA1 identifier, a tag, or a @command{git describe} style
identifier such as @code{1.0-3-gabc123}.
@item --with-patch=@var{package}=@var{file}
Add @var{file} to the list of patches applied to @var{package}, where
@ -11709,6 +11713,10 @@ contained in the GnuPG keyring at
@code{emacs} package (@pxref{Package Installation, ELPA package
signatures,, emacs, The GNU Emacs Manual}).
@item
@uref{https://elpa.nongnu.org/nongnu/, NonGNU}, selected by the
@code{nongnu} identifier.
@item
@uref{https://stable.melpa.org/packages, MELPA-Stable}, selected by the
@code{melpa-stable} identifier.

View File

@ -0,0 +1,112 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This file returns a manifest that builds a directory containing Disarchive
;;; metadata for all the tarballs packages refer to.
(use-modules (srfi srfi-1) (ice-9 match)
(guix packages) (guix gexp) (guix profiles)
(guix base16)
(gnu packages))
(include "source-manifest.scm")
(define (tarball-origin? origin)
(match (origin-actual-file-name origin)
(#f #f)
((? string? file)
;; As of version 0.2.1, Disarchive can only deal with raw tarballs and
;; gzip-compressed tarballs.
(and (origin-hash origin)
(or (string-suffix? ".tar.gz" file)
(string-suffix? ".tgz" file)
(string-suffix? ".tar" file))))))
(define (origin->disarchive origin)
"Return a directory containing Disarchive metadata for ORIGIN, a tarball, or
an empty directory if ORIGIN could not be disassembled."
(define file-name
(let ((hash (origin-hash origin)))
(string-append (symbol->string (content-hash-algorithm hash))
"/"
(bytevector->base16-string
(content-hash-value hash)))))
(define disarchive
(specification->package "disarchive"))
(define build
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils)
(srfi srfi-34))
(define tarball
#+(upstream-origin origin))
(define file-name
(string-append #$output "/" #$file-name))
(define profile
#+(profile (content (packages->manifest (list disarchive)))))
(mkdir-p (dirname file-name))
(setenv "PATH" (string-append profile "/bin"))
(setenv "GUILE_LOAD_PATH"
(string-append profile "/share/guile/site/"
(effective-version)))
(setenv "GUILE_LOAD_COMPILED_PATH"
(string-append profile "/lib/guile/" (effective-version)
"/site-ccache"))
(guard (c ((invoke-error? c)
;; Sometimes Disarchive fails with "could not find Gzip
;; compressor". When that happens, produce an empty
;; directory instead of failing.
(report-invoke-error c)
(delete-file file-name)))
(with-output-to-file file-name
(lambda ()
;; Disarchive records the tarball name in its output. Thus,
;; strip the hash from TARBALL.
(let ((short-name (strip-store-file-name tarball)))
(symlink tarball short-name)
(invoke "disarchive" "disassemble" short-name))))))))
(computed-file (match (origin-actual-file-name origin)
((? string? str) (string-append str ".dis"))
(#f "anonymous-tarball.dis"))
build))
(define (disarchive-collection origins)
"Return a directory containing all the Disarchive metadata for ORIGINS."
(directory-union "disarchive-collection"
(filter-map (lambda (origin)
(and (tarball-origin? origin)
(origin->disarchive origin)))
origins)
#:copy? #t))
;; The manifest containing Disarchive data.
(let ((origins (all-origins)))
(manifest
(list (manifest-entry
(name "disarchive-collection")
(version (length origins))
(item (disarchive-collection origins))))))

View File

@ -0,0 +1,66 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This file returns a manifest containing origins of all the packages. The
;;; main purpose is to allow continuous integration services to keep upstream
;;; source code around. It can also be passed to 'guix weather -m'.
(use-modules (srfi srfi-1) (srfi srfi-26)
(ice-9 match) (ice-9 vlist)
(guix packages) (guix profiles)
(gnu packages))
(define (all-packages)
"Return the list of all the packages, public or private, omitting only
superseded packages."
(fold-packages (lambda (package lst)
(match (package-replacement package)
(#f (cons package lst))
(replacement
(append (list replacement package) lst))))
'()
#:select? (negate package-superseded)))
(define (upstream-origin source)
"Return SOURCE without any patches or snippet."
(origin (inherit source)
(snippet #f) (patches '())))
(define (all-origins)
"Return the list of origins referred to by all the packages."
(let loop ((packages (all-packages))
(origins '())
(visited vlist-null))
(match packages
((head . tail)
(let ((new (remove (cut vhash-assq <> visited)
(package-direct-sources head))))
(loop tail (append new origins)
(fold (cut vhash-consq <> #t <>)
visited new))))
(()
origins))))
;; Return a manifest containing all the origins.
(manifest (map (lambda (origin)
(manifest-entry
(name (or (origin-actual-file-name origin)
"origin"))
(version "0")
(item (upstream-origin origin))))
(all-origins)))

View File

@ -390,10 +390,6 @@ networking values.) Return #t if INTERFACE is up, #f otherwise."
(set-network-interface-address sock interface address)
(set-network-interface-flags sock interface (logior flags IFF_UP))
;; Hello! We used to create /etc/resolv.conf here, with "nameserver
;; 10.0.2.3\n". However, with Linux-libre 3.16, we're getting ENOSPC.
;; And since it's actually unnecessary, it's gone.
(logand (network-interface-flags sock interface) IFF_UP)))
(define (device-number major minor)

View File

@ -1170,6 +1170,8 @@ dist_patch_DATA = \
%D%/packages/patches/gobject-introspection-cc.patch \
%D%/packages/patches/gobject-introspection-girepository.patch \
%D%/packages/patches/go-fix-script-tests.patch \
%D%/packages/patches/go-github-com-urfave-cli-fix-tests.patch \
%D%/packages/patches/go-github-com-urfave-cli-v2-fix-tests.patch \
%D%/packages/patches/go-skip-gc-test.patch \
%D%/packages/patches/gpm-glibc-2.26.patch \
%D%/packages/patches/gpodder-disable-updater.patch \
@ -1419,7 +1421,6 @@ dist_patch_DATA = \
%D%/packages/patches/luajit-no_ldconfig.patch \
%D%/packages/patches/luit-posix.patch \
%D%/packages/patches/lvm2-static-link.patch \
%D%/packages/patches/mailutils-fix-uninitialized-variable.patch \
%D%/packages/patches/mailutils-variable-lookup.patch \
%D%/packages/patches/make-impure-dirs.patch \
%D%/packages/patches/marble-qt-add-qt-headers.patch \
@ -1697,6 +1698,7 @@ dist_patch_DATA = \
%D%/packages/patches/ripperx-missing-file.patch \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
%D%/packages/patches/rtags-separate-rct.patch \
%D%/packages/patches/racket-minimal-backport-1629887.patch \
%D%/packages/patches/racket-minimal-sh-via-rktio.patch \
%D%/packages/patches/remake-impure-dirs.patch \
%D%/packages/patches/restic-0.9.6-fix-tests-for-go1.15.patch \

View File

@ -1687,7 +1687,7 @@ system administrator.")
(define-public sudo
(package
(name "sudo")
(version "1.9.7p2")
(version "1.9.8")
(source (origin
(method url-fetch)
(uri
@ -1697,7 +1697,7 @@ system administrator.")
version ".tar.gz")))
(sha256
(base32
"1a7w99mlpa7kb7zfqkhvafli0a3xhz50kws25y2sg2dzbmrfxd98"))
"1rlln9nb3lvg4qlkp0c9qxjflx36rf16mflg0sps2kl0k7lmswzi"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -78,7 +78,7 @@
(define-public mpfrcx
(package
(name "mpfrcx")
(version "0.6.2")
(version "0.6.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -86,7 +86,7 @@
version ".tar.gz"))
(sha256
(base32
"165syd6kihwp6bry9hvr3v0908cgadsz5w5h5ry4mjnchrklnb7w"))))
"1545vgizpypqi2rrriad0ybqv0qwbn9zr0ibxpk00gha9ihv7acx"))))
(build-system gnu-build-system)
(propagated-inputs
`(("gmp" ,gmp)
@ -343,7 +343,7 @@ precision.")
(define-public giac
(package
(name "giac")
(version "1.7.0-29")
(version "1.7.0-31")
(source
(origin
(method url-fetch)
@ -355,7 +355,7 @@ precision.")
"~parisse/debian/dists/stable/main/source/"
"giac_" version ".tar.gz"))
(sha256
(base32 "1dw0mh212ri9viks15cn75m38m4q4nj3hlv2bbrpdz8sgnnssz0a"))))
(base32 "19vjyijlm3hb758h6nk70k41zw9wrbg6vwfx4r4rgvrb1myy5kpl"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((ice-9 ftw)

View File

@ -132,7 +132,18 @@ know anything about Autoconf or M4.")
(find-files "bin"
(lambda (file stat)
(executable-file? file)))))
#t))))))))
#t))
(add-after 'install 'unpatch-shebangs
(lambda* (#:key outputs #:allow-other-keys)
;; Scripts that "autoconf -i" installs (config.guess,
;; config.sub, and install-sh) must use a regular shebang
;; rather than a reference to the store. Restore it.
;; TODO: Move this phase to 'autoconf-2.69'.
(let* ((out (assoc-ref outputs "out"))
(build-aux (string-append
out "/share/autoconf/build-aux")))
(substitute* (find-files build-aux)
(("^#!.*/bin/sh") "#!/bin/sh")))))))))))
(define-public autoconf autoconf-2.69)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -40,6 +40,7 @@
#:use-module (gnu packages cran)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages docker)
#:use-module (gnu packages gcc)
#:use-module (gnu packages graph)
#:use-module (gnu packages graphviz)
@ -84,6 +85,31 @@ submit gene-specific information, or which are scheduled for intense sequence
analysis.")
(license license:artistic2.0)))
(define-public r-org-bt-eg-db
(package
(name "r-org-bt-eg-db")
(version "3.13.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri
"org.Bt.eg.db"
version
'annotation))
(sha256
(base32
"0pwvwyfah8fhvaxdc8zkp3lp1v4mchhzr84r3hb0jx97icdvhafi"))))
(properties `((upstream-name . "org.Bt.eg.db")))
(build-system r-build-system)
(propagated-inputs
`(("r-annotationdbi" ,r-annotationdbi)))
(home-page "https://bioconductor.org/packages/org.Bt.eg.db")
(synopsis "Genome wide annotation for Bovine")
(description
"This package provides genome wide annotations for Bovine, primarily
based on mapping using Entrez Gene identifiers.")
(license license:artistic2.0)))
(define-public r-reactome-db
(package
(name "r-reactome-db")
@ -487,6 +513,34 @@ information about the latest version of the Gene Ontologies.")
several related annotation packages.")
(license license:artistic2.0)))
(define-public r-mus-musculus
(package
(name "r-mus-musculus")
(version "1.3.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "Mus.musculus" version 'annotation))
(sha256
(base32
"143zdf83gbfqhy8jm9df7gzhw5q3a64jrjrxrzjf0zd76j8s8j6y"))))
(properties `((upstream-name . "Mus.musculus")))
(build-system r-build-system)
(propagated-inputs
`(("r-annotationdbi" ,r-annotationdbi)
("r-genomicfeatures" ,r-genomicfeatures)
("r-go-db" ,r-go-db)
("r-org-mm-eg-db" ,r-org-mm-eg-db)
("r-organismdbi" ,r-organismdbi)
("r-txdb-mmusculus-ucsc-mm10-knowngene"
,r-txdb-mmusculus-ucsc-mm10-knowngene)))
(home-page "https://bioconductor.org/packages/Mus.musculus")
(synopsis "Annotation package for the Mus.musculus object")
(description
"This package contains the @code{Mus.musculus} object to access data
from several related annotation packages.")
(license license:artistic2.0)))
(define-public r-org-ce-eg-db
(package
(name "r-org-ce-eg-db")
@ -1060,6 +1114,32 @@ sequencing data.")
from Illumina 450k methylation arrays.")
(license license:artistic2.0)))
(define-public r-biscuiteerdata
(package
(name "r-biscuiteerdata")
(version "1.6.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biscuiteerData" version 'experiment))
(sha256
(base32
"1d7zibjf0qccmdnzdxh7wy1h943yhnbf8zdix72486pvhzm124zj"))))
(properties
`((upstream-name . "biscuiteerData")))
(build-system r-build-system)
(propagated-inputs
`(("r-annotationhub" ,r-annotationhub)
("r-curl" ,r-curl)
("r-experimenthub" ,r-experimenthub)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/biscuiteerData")
(synopsis "Data package for Biscuiteer")
(description
"This package contains default datasets used by the Bioconductor package
biscuiteer.")
(license license:gpl3)))
(define-public r-chromstardata
(package
(name "r-chromstardata")
@ -13733,6 +13813,846 @@ BAM files. With this package, you can build base-pair coverage matrices for
regions or annotations of your choice from BigWig files.")
(license license:artistic2.0)))
(define-public r-beclear
(package
(name "r-beclear")
(version "2.8.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BEclear" version))
(sha256
(base32
"0w18livng2gcmjgvws7pix3gsnj237rs34sgwxsfmn8p5vfx8b30"))))
(properties `((upstream-name . "BEclear")))
(build-system r-build-system)
(propagated-inputs
`(("r-abind" ,r-abind)
("r-biocparallel" ,r-biocparallel)
("r-data-table" ,r-data-table)
("r-futile-logger" ,r-futile-logger)
("r-matrix" ,r-matrix)
("r-outliers" ,r-outliers)
("r-rcpp" ,r-rcpp)
("r-rdpack" ,r-rdpack)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/uds-helms/BEclear")
(synopsis "Correction of batch effects in DNA methylation data")
(description
"This package provides functions to detect and correct for batch effects
in DNA methylation data. The core function is based on latent factor models
and can also be used to predict missing values in any other matrix containing
real numbers.")
(license license:gpl3)))
(define-public r-bgeecall
(package
(name "r-bgeecall")
(version "1.8.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BgeeCall" version))
(sha256
(base32
"1byciy7vzbdkdgaim10s9qb7zlxsywbhcsrka31gm0rm9ljqc665"))))
(properties `((upstream-name . "BgeeCall")))
(build-system r-build-system)
(propagated-inputs
`(("kallisto" ,kallisto)
("r-biomart" ,r-biomart)
("r-biostrings" ,r-biostrings)
("r-data-table" ,r-data-table)
("r-dplyr" ,r-dplyr)
("r-genomicfeatures" ,r-genomicfeatures)
("r-jsonlite" ,r-jsonlite)
("r-rhdf5" ,r-rhdf5)
("r-rslurm" ,r-rslurm)
("r-rtracklayer" ,r-rtracklayer)
("r-sjmisc" ,r-sjmisc)
("r-tximport" ,r-tximport)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/BgeeDB/BgeeCall")
(synopsis "RNA-Seq present/absent gene expression calls generation")
(description
"BgeeCall allows to generate present/absent gene expression calls without
using an arbitrary cutoff like TPM<1. Calls are generated based on reference
intergenic sequences. These sequences are generated based on expression of
all RNA-Seq libraries of each species integrated in Bgee.")
(license license:gpl3)))
(define-public r-bgeedb
(package
(name "r-bgeedb")
(version "2.18.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BgeeDB" version))
(sha256
(base32
"1ziq180yfpdqwhjdzkwjjhwzn3kb0gkj6q0a26c7a30mcfb50w11"))))
(properties `((upstream-name . "BgeeDB")))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-curl" ,r-curl)
("r-data-table" ,r-data-table)
("r-digest" ,r-digest)
("r-dplyr" ,r-dplyr)
("r-graph" ,r-graph)
("r-r-utils" ,r-r-utils)
("r-rcurl" ,r-rcurl)
("r-rsqlite" ,r-rsqlite)
("r-tidyr" ,r-tidyr)
("r-topgo" ,r-topgo)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/BgeeDB/BgeeDB_R")
(synopsis "Annotation and gene expression data retrieval from Bgee database")
(description
"This package provides a package for the annotation and gene expression
data download from Bgee database, and TopAnat analysis: GO-like enrichment of
anatomical terms, mapped to genes by expression patterns.")
(license license:gpl3)))
(define-public r-biobtreer
(package
(name "r-biobtreer")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biobtreeR" version))
(sha256
(base32
"0pynx4ps1qxsn13ba6zyg6h5dqlp2y7qish67m7sdjns079zh061"))))
(properties `((upstream-name . "biobtreeR")))
(build-system r-build-system)
(propagated-inputs
`(("r-httpuv" ,r-httpuv)
("r-httr" ,r-httr)
("r-jsonlite" ,r-jsonlite)
("r-stringi" ,r-stringi)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/tamerh/biobtreeR")
(synopsis "Use biobtree tool from R")
(description
"The biobtreeR package provides an interface to biobtree, a tool which
covers large sets of bioinformatics datasets and allows search and chain
mappings functionalities.")
(license license:expat)))
(define-public r-minet
(package
(name "r-minet")
(version "3.50.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "minet" version))
(sha256
(base32
"0bir2zr4r2wawkdvdhrk2hcyxmgkrkfvx36jj85fcm24axlqrzzb"))))
(properties `((upstream-name . "minet")))
(build-system r-build-system)
(propagated-inputs
`(("r-infotheo" ,r-infotheo)))
(home-page "http://minet.meyerp.com")
(synopsis "Mutual information networks")
(description
"This package implements various algorithms for inferring mutual
information networks from data.")
(license license:artistic2.0)))
(define-public r-genetclassifier
(package
(name "r-genetclassifier")
(version "1.32.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "geNetClassifier" version))
(sha256
(base32
"1i1cavbbvxzqgqxfmikghnls18jrq12hb953mjrwa95lkhzdxm2d"))))
(properties
`((upstream-name . "geNetClassifier")))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-e1071" ,r-e1071)
("r-ebarrays" ,r-ebarrays)
("r-minet" ,r-minet)))
(home-page "https://www.cicancer.org")
(synopsis "Classify diseases and build gene networks using expression profiles")
(description
"This is a comprehensive package to automatically train and validate a
multi-class SVM classifier based on gene expression data. It provides
transparent selection of gene markers, their coexpression networks, and an
interface to query the classifier.")
(license license:gpl2+)))
(define-public r-dir-expiry
(package
(name "r-dir-expiry")
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "dir.expiry" version))
(sha256
(base32
"05mk7iwzay1xrgvssbz7nyl5d1n03syalbk18lmjmbx05dy0cjik"))))
(properties `((upstream-name . "dir.expiry")))
(build-system r-build-system)
(propagated-inputs `(("r-filelock" ,r-filelock)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/dir.expiry")
(synopsis "Managing expiration for cache directories")
(description
"This package implements an expiration system for access to versioned
directories. Directories that have not been accessed by a registered function
within a certain time frame are deleted. This aims to reduce disk usage by
eliminating obsolete caches generated by old versions of packages.")
(license license:gpl3)))
(define-public r-basilisk-utils
(package
(name "r-basilisk-utils")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "basilisk.utils" version))
(sha256
(base32
"0qbm6rj6h059hakflbwz4j4f59311jhbk5dnpx11kyixh5pgjk7v"))))
(properties
`((upstream-name . "basilisk.utils")))
(build-system r-build-system)
(propagated-inputs
`(("r-dir-expiry" ,r-dir-expiry)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/basilisk.utils")
(synopsis "Basilisk installation utilities")
(description
"This package implements utilities for installation of the basilisk
package, primarily for creation of the underlying Conda instance.")
(license license:gpl3)))
(define-public r-basilisk
(package
(name "r-basilisk")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "basilisk" version))
(sha256
(base32
"1nzbn3f2jzvg3a3m6wgksi4cvamqas2q7csdk4ir7fcirasf536v"))))
(properties `((upstream-name . "basilisk")))
(build-system r-build-system)
(propagated-inputs
`(("r-basilisk-utils" ,r-basilisk-utils)
("r-dir-expiry" ,r-dir-expiry)
("r-reticulate" ,r-reticulate)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/basilisk")
(synopsis "Freeze Python dependencies inside Bioconductor packages")
(description
"This package installs a self-contained Conda instance that is managed by
the R/Bioconductor installation machinery. This aims to provide a consistent
Python environment that can be used reliably by Bioconductor packages.
Functions are also provided to enable smooth interoperability of multiple
Python environments in a single R session.")
(license license:gpl3)))
(define-public r-biocthis
(package
(name "r-biocthis")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biocthis" version))
(sha256
(base32
"08awghsg7q22csb0j9dr8dpb1vkn9gcs9qnhhljxifkw2ahbqia4"))))
(properties `((upstream-name . "biocthis")))
(build-system r-build-system)
(propagated-inputs
`(("r-biocmanager" ,r-biocmanager)
("r-fs" ,r-fs)
("r-glue" ,r-glue)
("r-rlang" ,r-rlang)
("r-styler" ,r-styler)
("r-usethis" ,r-usethis)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/lcolladotor/biocthis")
(synopsis "Automate package and project setup for Bioconductor packages")
(description
"This package expands the @code{usethis} package with the goal of helping
automate the process of creating R packages for Bioconductor or making them
Bioconductor-friendly.")
(license license:artistic2.0)))
(define-public r-biocdockermanager
(package
(name "r-biocdockermanager")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BiocDockerManager" version))
(sha256
(base32
"0dh1flm5chsdcihljrg6znjskqkp0qyjh39hsv4zq0frf1rm97j7"))))
(properties
`((upstream-name . "BiocDockerManager")))
(build-system r-build-system)
(propagated-inputs
`(("docker" ,docker)
("r-dplyr" ,r-dplyr)
("r-httr" ,r-httr)
("r-memoise" ,r-memoise)
("r-readr" ,r-readr)
("r-whisker" ,r-whisker)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/BiocDockerManager")
(synopsis "Access and manage Bioconductor Docker images")
(description
"This package works analogous to BiocManager but for Docker images. Use
the BiocDockerManager package to install and manage Docker images provided by
the Bioconductor project.")
(license license:artistic2.0)))
(define-public r-biodb
(package
(name "r-biodb")
(version "1.0.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biodb" version))
(sha256
(base32
"1apnbr5p619nsrhd2drm6arj69sw0wijv8ap7dfrndqkffrpbfmx"))))
(properties `((upstream-name . "biodb")))
(build-system r-build-system)
(propagated-inputs
`(("r-chk" ,r-chk)
("r-jsonlite" ,r-jsonlite)
("r-lgr" ,r-lgr)
("r-lifecycle" ,r-lifecycle)
("r-openssl" ,r-openssl)
("r-plyr" ,r-plyr)
("r-progress" ,r-progress)
("r-r6" ,r-r6)
("r-rappdirs" ,r-rappdirs)
("r-rcpp" ,r-rcpp)
("r-rcurl" ,r-rcurl)
("r-rsqlite" ,r-rsqlite)
("r-stringr" ,r-stringr)
("r-testthat" ,r-testthat)
("r-withr" ,r-withr)
("r-xml" ,r-xml)
("r-yaml" ,r-yaml)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/biodb")
(synopsis "Library for connecting to chemical and biological databases")
(description
"The biodb package provides access to standard remote chemical and
biological databases (ChEBI, KEGG, HMDB, ...), as well as to in-house local
database files (CSV, SQLite), with easy retrieval of entries, access to web
services, search of compounds by mass and/or name, and mass spectra matching
for LCMS and MSMS. Its architecture as a development framework facilitates
the development of new database connectors for local projects or inside
separate published packages.")
(license license:agpl3+)))
(define-public r-biomformat
(package
(name "r-biomformat")
(version "1.20.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biomformat" version))
(sha256
(base32
"1wgshkddxbmpsihpkm0dp7vqp59ns6iqbx574y80n2pxb8dx8sy9"))))
(properties `((upstream-name . "biomformat")))
(build-system r-build-system)
(propagated-inputs
`(("r-jsonlite" ,r-jsonlite)
("r-matrix" ,r-matrix)
("r-plyr" ,r-plyr)
("r-rhdf5" ,r-rhdf5)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/joey711/biomformat/")
(synopsis "Interface package for the BIOM file format")
(description
"This is an R package for interfacing with the BIOM format. This package
includes basic tools for reading biom-format files, accessing and subsetting
data tables from a biom object (which is more complex than a single table), as
well as limited support for writing a biom-object back to a biom-format file.
The design of this API is intended to match the Python API and other tools
included with the biom-format project, but with a decidedly \"R flavor\" that
should be familiar to R users. This includes S4 classes and methods, as well
as extensions of common core functions/methods.")
(license license:gpl2)))
(define-public r-mvcclass
(package
(name "r-mvcclass")
(version "1.66.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "MVCClass" version))
(sha256
(base32
"1di7y10mr7caacd6igwxnr62cm4v1x877yi4a2i5jqz1058jqni7"))))
(properties `((upstream-name . "MVCClass")))
(build-system r-build-system)
(home-page "https://bioconductor.org/packages/MVCClass")
(synopsis "Model-View-Controller (MVC) classes")
(description
"This package contains classes used in model-view-controller (MVC)
design.")
(license license:lgpl2.1+)))
(define-public r-biomvcclass
(package
(name "r-biomvcclass")
(version "1.60.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BioMVCClass" version))
(sha256
(base32
"04pld93nffbci47dnf0awmcmhlfzv599ggcd7hvq78w41ac60qv8"))))
(properties `((upstream-name . "BioMVCClass")))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-graph" ,r-graph)
("r-mvcclass" ,r-mvcclass)
("r-rgraphviz" ,r-rgraphviz)))
(home-page "https://bioconductor.org/packages/BioMVCClass")
(synopsis "Model-View-Controller (MVC) classes that use Biobase")
(description
"This package contains classes used in model-view-controller (MVC)
design.")
(license license:lgpl2.1+)))
(define-public r-biomvrcns
(package
(name "r-biomvrcns")
(version "1.32.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biomvRCNS" version))
(sha256
(base32
"0wyzj422smr4m9mswzn9inc1sn86pnia7jmd6k28nd2a7fjyrm16"))))
(properties `((upstream-name . "biomvRCNS")))
(build-system r-build-system)
(propagated-inputs
`(("r-genomicranges" ,r-genomicranges)
("r-gviz" ,r-gviz)
("r-iranges" ,r-iranges)
("r-mvtnorm" ,r-mvtnorm)))
(home-page "https://bioconductor.org/packages/biomvRCNS")
(synopsis "Copy number study and segmentation for multivariate biological data")
(description
"In this package, a @dfn{Hidden Semi Markov Model} (HSMM) and one
homogeneous segmentation model are designed and implemented for segmentation
genomic data, with the aim of assisting in transcripts detection using high
throughput technology like RNA-seq or tiling array, and copy number analysis
using aCGH or sequencing.")
(license license:gpl2+)))
(define-public r-bionero
(package
(name "r-bionero")
(version "1.0.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BioNERO" version))
(sha256
(base32
"1yj0pavyfrj2gsvaj1dkgmznibm2appxjx9rk5qjslhslmm5b05b"))))
(properties `((upstream-name . "BioNERO")))
(build-system r-build-system)
(propagated-inputs
`(("r-biocparallel" ,r-biocparallel)
("r-complexheatmap" ,r-complexheatmap)
("r-deseq2" ,r-deseq2)
("r-dynamictreecut" ,r-dynamictreecut)
("r-genie3" ,r-genie3)
("r-ggnetwork" ,r-ggnetwork)
("r-ggnewscale" ,r-ggnewscale)
("r-ggplot2" ,r-ggplot2)
("r-ggpubr" ,r-ggpubr)
("r-igraph" ,r-igraph)
("r-intergraph" ,r-intergraph)
("r-matrixstats" ,r-matrixstats)
("r-minet" ,r-minet)
("r-netrep" ,r-netrep)
("r-networkd3" ,r-networkd3)
("r-rcolorbrewer" ,r-rcolorbrewer)
("r-reshape2" ,r-reshape2)
("r-summarizedexperiment" ,r-summarizedexperiment)
("r-sva" ,r-sva)
("r-wgcna" ,r-wgcna)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/almeidasilvaf/BioNERO")
(synopsis "Biological network reconstruction omnibus")
(description
"BioNERO aims to integrate all aspects of biological network inference in
a single package, including data preprocessing, exploratory analyses, network
inference, and analyses for biological interpretations. BioNERO can be used
to infer gene coexpression networks (GCNs) and gene regulatory networks (GRNs)
from gene expression data. Additionally, it can be used to explore
topological properties of protein-protein interaction (PPI) networks. GCN
inference relies on the popular WGCNA algorithm. GRN inference is based on
the \"wisdom of the crowds\" principle, which consists in inferring GRNs with
multiple algorithms (here, CLR, GENIE3 and ARACNE) and calculating the average
rank for each interaction pair. As all steps of network analyses are included
in this package, BioNERO makes users avoid having to learn the syntaxes of
several packages and how to communicate between them. Finally, users can also
identify consensus modules across independent expression sets and calculate
intra and interspecies module preservation statistics between different
networks.")
(license license:gpl3)))
(define-public r-bionet
(package
(name "r-bionet")
(version "1.52.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BioNet" version))
(sha256
(base32
"15rk1jfv4h1mxvr5bs0qmq6fdnza7zcmksigqxb46fs7f6znr3yi"))))
(properties `((upstream-name . "BioNet")))
(build-system r-build-system)
(propagated-inputs
`(("r-annotationdbi" ,r-annotationdbi)
("r-biobase" ,r-biobase)
("r-graph" ,r-graph)
("r-igraph" ,r-igraph)
("r-rbgl" ,r-rbgl)))
(home-page "http://bioconductor.org/packages/release/bioc/html/BioNet.html")
(synopsis "Functional analysis of biological networks")
(description
"This package provides functions for the integrated analysis of
protein-protein interaction networks and the detection of functional modules.
Different datasets can be integrated into the network by assigning p-values of
statistical tests to the nodes of the network. E.g. p-values obtained from
the differential expression of the genes from an Affymetrix array are assigned
to the nodes of the network. By fitting a beta-uniform mixture model and
calculating scores from the p-values, overall scores of network regions can be
calculated and an integer linear programming algorithm identifies the maximum
scoring subnetwork.")
(license license:gpl2+)))
(define-public r-bionetstat
(package
(name "r-bionetstat")
(version "1.12.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BioNetStat" version))
(sha256
(base32
"16xlfng9m8xvm831c2x6zmjc0gavlfiy9pnza55hdv86888fcnbg"))))
(properties `((upstream-name . "BioNetStat")))
(build-system r-build-system)
(propagated-inputs
`(("r-biocparallel" ,r-biocparallel)
("r-dt" ,r-dt)
("r-ggplot2" ,r-ggplot2)
("r-hmisc" ,r-hmisc)
("r-igraph" ,r-igraph)
("r-knitr" ,r-knitr)
("r-markdown" ,r-markdown)
("r-pathview" ,r-pathview)
("r-pheatmap" ,r-pheatmap)
("r-plyr" ,r-plyr)
("r-psych" ,r-psych)
("r-rcolorbrewer" ,r-rcolorbrewer)
("r-rjsonio" ,r-rjsonio)
("r-rmarkdown" ,r-rmarkdown)
("r-shiny" ,r-shiny)
("r-shinybs" ,r-shinybs)
("r-whisker" ,r-whisker)
("r-yaml" ,r-yaml)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/jardimViniciusC/BioNetStat")
(synopsis "Biological network analysis")
(description
"This package provides a package to perform differential network
analysis, differential node analysis (differential coexpression analysis),
network and metabolic pathways view.")
(license license:gpl3+)))
(define-public r-bioqc
(package
(name "r-bioqc")
(version "1.20.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BioQC" version))
(sha256
(base32
"04akp94p0d0zid55m1b1k3qlw7iq914pcg57lihgj3pa92n1sc5l"))))
(properties `((upstream-name . "BioQC")))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-edger" ,r-edger)
("r-rcpp" ,r-rcpp)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://accio.github.io/BioQC/")
(synopsis "Detect tissue heterogeneity in expression profiles with gene sets")
(description
"BioQC performs quality control of high-throughput expression data based
on tissue gene signatures. It can detect tissue heterogeneity in gene
expression data. The core algorithm is a Wilcoxon-Mann-Whitney test that is
optimised for high performance.")
(license license:gpl3+)))
(define-public r-biotip
(package
(name "r-biotip")
(version "1.6.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BioTIP" version))
(sha256
(base32
"1i6r8px0fmdjx8frpljppwql74mhx08ibvhs9y3qk91ck5h3f0js"))))
(properties `((upstream-name . "BioTIP")))
(build-system r-build-system)
(propagated-inputs
`(("r-cluster" ,r-cluster)
("r-genomicranges" ,r-genomicranges)
("r-hmisc" ,r-hmisc)
("r-igraph" ,r-igraph)
("r-mass" ,r-mass)
("r-psych" ,r-psych)
("r-stringr" ,r-stringr)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/xyang2uchicago/BioTIP")
(synopsis "R package for characterization of biological tipping-point")
(description
"This package adopts tipping-point theory to transcriptome profiles to
help unravel disease regulatory trajectory.")
(license license:gpl2)))
(define-public r-biotmle
(package
(name "r-biotmle")
(version "1.16.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biotmle" version))
(sha256
(base32
"01smkmbv40yprgrgi2gjnmi8ncqyrlkfdxsh33ki20amcx32nc7f"))))
(properties `((upstream-name . "biotmle")))
(build-system r-build-system)
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
("r-biocgenerics" ,r-biocgenerics)
("r-biocparallel" ,r-biocparallel)
("r-dofuture" ,r-dofuture)
("r-dplyr" ,r-dplyr)
("r-drtmle" ,r-drtmle)
("r-future" ,r-future)
("r-ggplot2" ,r-ggplot2)
("r-ggsci" ,r-ggsci)
("r-limma" ,r-limma)
("r-s4vectors" ,r-s4vectors)
("r-summarizedexperiment" ,r-summarizedexperiment)
("r-superheat" ,r-superheat)
("r-tibble" ,r-tibble)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://code.nimahejazi.org/biotmle/")
(synopsis "Targeted learning with moderated statistics for biomarker discovery")
(description
"This package provides tools for differential expression biomarker
discovery based on microarray and next-generation sequencing data that
leverage efficient semiparametric estimators of the average treatment effect
for variable importance analysis. Estimation and inference of the (marginal)
average treatment effects of potential biomarkers are computed by targeted
minimum loss-based estimation, with joint, stable inference constructed across
all biomarkers using a generalization of moderated statistics for use with the
estimated efficient influence function. The procedure accommodates the use of
ensemble machine learning for the estimation of nuisance functions.")
(license license:expat)))
(define-public r-bsseq
(package
(name "r-bsseq")
(version "1.28.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "bsseq" version))
(sha256
(base32
"1xpv85hr681kkkilsnasndkszwmzbzq11y0lff4na2ilsm7sqmmi"))))
(properties `((upstream-name . "bsseq")))
(build-system r-build-system)
(propagated-inputs
`(("r-beachmat" ,r-beachmat)
("r-biobase" ,r-biobase)
("r-biocgenerics" ,r-biocgenerics)
("r-biocparallel" ,r-biocparallel)
("r-biostrings" ,r-biostrings)
("r-bsgenome" ,r-bsgenome)
("r-data-table" ,r-data-table)
("r-delayedarray" ,r-delayedarray)
("r-delayedmatrixstats" ,r-delayedmatrixstats)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicranges" ,r-genomicranges)
("r-gtools" ,r-gtools)
("r-hdf5array" ,r-hdf5array)
("r-iranges" ,r-iranges)
("r-limma" ,r-limma)
("r-locfit" ,r-locfit)
("r-permute" ,r-permute)
("r-r-utils" ,r-r-utils)
("r-rcpp" ,r-rcpp)
("r-rhdf5" ,r-rhdf5)
("r-s4vectors" ,r-s4vectors)
("r-scales" ,r-scales)
("r-summarizedexperiment" ,r-summarizedexperiment)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/hansenlab/bsseq")
(synopsis "Analyze, manage and store bisulfite sequencing data")
(description
"This package provides a collection of tools for analyzing and
visualizing bisulfite sequencing data.")
(license license:artistic2.0)))
(define-public r-dmrseq
(package
(name "r-dmrseq")
(version "1.12.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "dmrseq" version))
(sha256
(base32
"1jbbjifjsnk9261wqmdwkbzj1w52g6vaanpk4w816ri0fap587m4"))))
(properties `((upstream-name . "dmrseq")))
(build-system r-build-system)
(propagated-inputs
`(("r-annotationhub" ,r-annotationhub)
("r-annotatr" ,r-annotatr)
("r-biocparallel" ,r-biocparallel)
("r-bsseq" ,r-bsseq)
("r-bumphunter" ,r-bumphunter)
("r-delayedmatrixstats" ,r-delayedmatrixstats)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicranges" ,r-genomicranges)
("r-ggplot2" ,r-ggplot2)
("r-iranges" ,r-iranges)
("r-locfit" ,r-locfit)
("r-matrixstats" ,r-matrixstats)
("r-nlme" ,r-nlme)
("r-outliers" ,r-outliers)
("r-rcolorbrewer" ,r-rcolorbrewer)
("r-rtracklayer" ,r-rtracklayer)
("r-s4vectors" ,r-s4vectors)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/dmrseq")
(synopsis "Detection and inference of differentially methylated regions")
(description
"This package implements an approach for scanning the genome to detect
and perform accurate inference on differentially methylated regions from Whole
Genome Bisulfite Sequencing data. The method is based on comparing detected
regions to a pooled null distribution, that can be implemented even when as
few as two samples per population are available. Region-level statistics are
obtained by fitting a @dfn{generalized least squares} (GLS) regression model
with a nested autoregressive correlated error structure for the effect of
interest on transformed methylation proportions.")
(license license:expat)))
(define-public r-biscuiteer
(package
(name "r-biscuiteer")
(version "1.6.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biscuiteer" version))
(sha256
(base32
"0f4kk4v2c5diq0fbvyvgwjd1kjk9izr6n9wfrlrr7wbx4pz3c3h6"))))
(properties `((upstream-name . "biscuiteer")))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-biocgenerics" ,r-biocgenerics)
("r-biocparallel" ,r-biocparallel)
("r-biscuiteerdata" ,r-biscuiteerdata)
("r-bsseq" ,r-bsseq)
("r-data-table" ,r-data-table)
("r-delayedmatrixstats" ,r-delayedmatrixstats)
("r-dmrseq" ,r-dmrseq)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicranges" ,r-genomicranges)
("r-gtools" ,r-gtools)
("r-hdf5array" ,r-hdf5array)
("r-homo-sapiens" ,r-homo-sapiens)
("r-impute" ,r-impute)
("r-matrix" ,r-matrix)
("r-matrixstats" ,r-matrixstats)
("r-mus-musculus" ,r-mus-musculus)
("r-qdnaseq" ,r-qdnaseq)
("r-qualv" ,r-qualv)
("r-r-utils" ,r-r-utils)
("r-readr" ,r-readr)
("r-rsamtools" ,r-rsamtools)
("r-rtracklayer" ,r-rtracklayer)
("r-s4vectors" ,r-s4vectors)
("r-summarizedexperiment" ,r-summarizedexperiment)
("r-variantannotation" ,r-variantannotation)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/trichelab/biscuiteer")
(synopsis "Convenience functions for the Biscuit package")
(description
"This package provides a test harness for bsseq loading of Biscuit
output, summarization of WGBS data over defined regions and in mappable
samples, with or without imputation, dropping of mostly-NA rows, age
estimates, etc.")
(license license:gpl3)))
(define-public r-tximeta
(package
(name "r-tximeta")

View File

@ -73,8 +73,8 @@
(file-name (string-append name "-" version "-checkout")))))))
(define-public cuirass
(let ((commit "91e8b2ec2c2dbb87089b0c98a29bba427ba7b7bb")
(revision "3"))
(let ((commit "60190401ce4ccc890629ec3cb22a84a8ab8c2645")
(revision "4"))
(package
(name "cuirass")
(version (git-version "1.1.0" revision commit))
@ -87,7 +87,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"00xkxvghfgnmbs182s0q67habxjkv9sh7q8acsiy66m0z4f57y39"))))
"0b0bs32lzk5ck7lw8ac9dj2h70sqc5y430vhi7rcnwj48mdrchma"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build utils)

View File

@ -9390,6 +9390,144 @@ and make comparisons between different methodologies straightforward.")
several entropy estimators.")
(license license:gpl3+)))
(define-public r-nsprcomp
(package
(name "r-nsprcomp")
(version "0.5.1-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "nsprcomp" version))
(sha256
(base32
"1zlc1ximx96f235c0l8qfs6vbp1kpnbf943wxsfahnnlnxvwi59f"))))
(properties `((upstream-name . "nsprcomp")))
(build-system r-build-system)
(home-page "https://sigg-iten.ch/research/")
(synopsis "Non-negative and sparse PCA")
(description
"This package implements two methods for performing a constrained
principal component analysis (PCA), where non-negativity and/or sparsity
constraints are enforced on the principal axes (PAs). The function
@code{nsprcomp} computes one principal component (PC) after the other. Each
PA is optimized such that the corresponding PC has maximum additional variance
not explained by the previous components. In contrast, the function
@code{nscumcomp} jointly computes all PCs such that the cumulative variance is
maximal. Both functions have the same interface as the @code{prcomp} function
from the @code{stats} package (plus some extra parameters).")
(license license:gpl2+)))
(define-public r-cmplot
(package
(name "r-cmplot")
(version "3.6.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "CMplot" version))
(sha256
(base32
"13y05j5gsdc712fn7yvcz5nx2pbcdvl201hfb6jzpvl86qx2l0j1"))))
(properties `((upstream-name . "CMplot")))
(build-system r-build-system)
(home-page "https://github.com/YinLiLin/CMplot")
(synopsis "Circle Manhattan plot")
(description
"Circle Manhattan Plot is an R package that can lay out genome-wide
association study P-value results in both traditional rectangular patterns,
QQ-plot and novel circular ones. United in only one bull's eye style plot,
association results from multiple traits can be compared interactively,
thereby to reveal both similarities and differences between signals.
Additional functions include: highlight signals, a group of SNPs, chromosome
visualization and candidate genes around SNPs.")
(license license:gpl2+)))
(define-public r-precrec
(package
(name "r-precrec")
(version "0.12.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "precrec" version))
(sha256
(base32
"0vwzaqnh9ymrm52dd79bihwqprnygz0d71ay8fv51hdw0zg6saya"))))
(properties `((upstream-name . "precrec")))
(build-system r-build-system)
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
("r-data-table" ,r-data-table)
("r-ggplot2" ,r-ggplot2)
("r-gridextra" ,r-gridextra)
("r-rcpp" ,r-rcpp)
("r-withr" ,r-withr)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://evalclass.github.io/precrec/")
(synopsis "Calculate accurate precision-recall and ROC curves")
(description
"This package provides tools for accurate calculations and visualization
of precision-recall and ROC (Receiver Operator Characteristics) curves.")
(license license:gpl3)))
(define-public r-netrep
(package
(name "r-netrep")
(version "1.2.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "NetRep" version))
(sha256
(base32
"1swlb2k9bc7whvslxbklz864j9ynvna73hvq5rhv61cv5vy05ksd"))))
(properties `((upstream-name . "NetRep")))
(build-system r-build-system)
(propagated-inputs
`(("r-abind" ,r-abind)
("r-bh" ,r-bh)
("r-foreach" ,r-foreach)
("r-rcolorbrewer" ,r-rcolorbrewer)
("r-rcpp" ,r-rcpp)
("r-rcpparmadillo" ,r-rcpparmadillo)
("r-rhpcblasctl" ,r-rhpcblasctl)
("r-statmod" ,r-statmod)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://cran.r-project.org/package=NetRep")
(synopsis "Permutation testing network module preservation across datasets")
(description
"This package provides functions for assessing the
replication/preservation of a network module's topology across datasets
through permutation testing.")
(license license:gpl2)))
(define-public r-intergraph
(package
(name "r-intergraph")
(version "2.0-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "intergraph" version))
(sha256
(base32
"18a7xgb2rp0w9jl2rkh8nzyjprrs5w7h2iidvc8c38bzx3qpggkc"))))
(properties `((upstream-name . "intergraph")))
(build-system r-build-system)
(propagated-inputs
`(("r-igraph" ,r-igraph)
("r-network" ,r-network)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "http://mbojan.github.io/intergraph")
(synopsis "Coercion routines for network data objects")
(description
"Functions implemented in this package allow to coerce (i.e. convert)
network data between classes provided by other R packages. Currently
supported classes are those defined in packages @code{network} and
@code{igraph}.")
(license license:gpl3)))
(define-public r-abcoptim
(package
(name "r-abcoptim")
@ -9517,6 +9655,233 @@ and coverage methods to tune the choice of threshold.")
@end enumerate")
(license license:gpl3)))
(define-public r-ggnetwork
(package
(name "r-ggnetwork")
(version "0.5.10")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggnetwork" version))
(sha256
(base32
"0gqdgy5yh700dg0f7xb80hczlnqfisn8l55j7amd1n7fp2x5sr8v"))))
(properties `((upstream-name . "ggnetwork")))
(build-system r-build-system)
(propagated-inputs
`(("r-ggplot2" ,r-ggplot2)
("r-ggrepel" ,r-ggrepel)
("r-igraph" ,r-igraph)
("r-network" ,r-network)
("r-sna" ,r-sna)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/briatte/ggnetwork")
(synopsis "Geometries to plot networks with ggplot2")
(description
"This package provides geometries to plot network objects with the
ggplot2 package.")
(license license:gpl3)))
(define-public r-cvauc
(package
(name "r-cvauc")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "cvAUC" version))
(sha256
(base32
"13bk97l5nn97h85iz93zxazhr63n21nwyrpnl856as9qp59yvn64"))))
(properties `((upstream-name . "cvAUC")))
(build-system r-build-system)
(propagated-inputs
`(("r-data-table" ,r-data-table)
("r-rocr" ,r-rocr)))
(home-page "https://github.com/ledell/cvAUC")
(synopsis "Cross-validated area under the ROC curve confidence intervals")
(description
"This package contains various tools for working with and evaluating
cross-validated area under the ROC curve (AUC) estimators. The primary
functions of the package are @code{ci.cvAUC} and @code{ci.pooled.cvAUC}, which
report cross-validated AUC and compute confidence intervals for
cross-validated AUC estimates based on influence curves for i.i.d. and pooled
repeated measures data, respectively.")
(license license:asl2.0)))
(define-public r-gam
(package
(name "r-gam")
(version "1.20")
(source
(origin
(method url-fetch)
(uri (cran-uri "gam" version))
(sha256
(base32
"1zhy2fp7pxac8xp3z3hndhprj4s5gx3305b627vc78bal1ml3swi"))))
(properties `((upstream-name . "gam")))
(build-system r-build-system)
(propagated-inputs
`(("r-foreach" ,r-foreach)))
(native-inputs
`(("gfortran" ,gfortran)))
(home-page "https://cran.r-project.org/package=gam")
(synopsis "Generalized additive models")
(description
"This package provides functions for fitting and working with generalized
additive models, as described in chapter 7 of \"Statistical Models in
S\" (Chambers and Hastie (eds), 1991), and \"Generalized Additive
Models\" (Hastie and Tibshirani, 1990).")
(license license:gpl2)))
(define-public r-superlearner
(package
(name "r-superlearner")
(version "2.0-28")
(source
(origin
(method url-fetch)
(uri (cran-uri "SuperLearner" version))
(sha256
(base32
"00any24msgflyagy87nznpfjz5g9v15frqda6c679wa8plx26hjz"))))
(properties `((upstream-name . "SuperLearner")))
(build-system r-build-system)
(propagated-inputs
`(("r-cvauc" ,r-cvauc)
("r-gam" ,r-gam)
("r-nnls" ,r-nnls)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/ecpolley/SuperLearner")
(synopsis "Super learner prediction")
(description
"This package implements the super learner prediction method and contains
a library of prediction algorithms to be used in the super learner.")
(license license:gpl3)))
(define-public r-drtmle
(package
(name "r-drtmle")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "drtmle" version))
(sha256
(base32
"08a6k0nrg6mqdslwjc71583x52vnax87nbfalk98zczwvrrdwvxa"))))
(properties `((upstream-name . "drtmle")))
(build-system r-build-system)
(propagated-inputs
`(("r-future-apply" ,r-future-apply)
("r-np" ,r-np)
("r-superlearner" ,r-superlearner)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/benkeser/drtmle")
(synopsis "Doubly-robust nonparametric estimation and inference")
(description
"This package implements targeted minimum loss-based estimators of
counterfactual means and causal effects that are doubly-robust with respect
both to consistency and asymptotic normality.")
(license license:expat)))
(define-public r-dofuture
(package
(name "r-dofuture")
(version "0.12.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "doFuture" version))
(sha256
(base32
"1hqzdlgcrc5l6xjwdylsc9iiysi2wx8k1j1vmw3wryj26057c9y4"))))
(properties `((upstream-name . "doFuture")))
(build-system r-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-HOME
(lambda _ (setenv "HOME" "/tmp"))))))
(propagated-inputs
`(("r-foreach" ,r-foreach)
("r-future" ,r-future)
("r-globals" ,r-globals)
("r-iterators" ,r-iterators)))
(native-inputs
`(("r-r-rsp" ,r-r-rsp))) ; vignette builder
(home-page "https://github.com/HenrikBengtsson/doFuture")
(synopsis "Foreach parallel adapter using the future API")
(description
"This package provides a @code{%dopar%} adapter such that any type of
futures can be used as backends for the @code{foreach} framework.")
(license license:lgpl2.1+)))
(define-public r-superheat
(package
(name "r-superheat")
(version "0.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "superheat" version))
(sha256
(base32
"01v8s6px1k5fajlm6py3ksr1i853kwwlky1yryzhy3p1cxhwgg83"))))
(properties `((upstream-name . "superheat")))
(build-system r-build-system)
(propagated-inputs
`(("r-dplyr" ,r-dplyr)
("r-ggdendro" ,r-ggdendro)
("r-ggplot2" ,r-ggplot2)
("r-gtable" ,r-gtable)
("r-magrittr" ,r-magrittr)
("r-plyr" ,r-plyr)
("r-scales" ,r-scales)))
(home-page "https://cran.r-project.org/package=superheat")
(synopsis "Graphical tool for exploring complex datasets using heatmaps")
(description
"This package provides a system for generating extendable and
customizable heatmaps for exploring complex datasets, including big data and
data with multiple data types.")
(license license:cc0)))
(define-public r-qualv
(package
(name "r-qualv")
(version "0.3-3")
(source
(origin
(method url-fetch)
(uri (cran-uri "qualV" version))
(sha256
(base32
"1yyqk223ydcc0125gsn33a4mcdp8bd76fpn8kj9bfz9g78b8dqmx"))))
(properties `((upstream-name . "qualV")))
(build-system r-build-system)
(propagated-inputs
`(("r-kernsmooth" ,r-kernsmooth)))
(home-page "http://qualV.R-Forge.R-Project.org/")
(synopsis "Qualitative Validation Methods")
(description
"This package provides qualitative methods for the validation of dynamic
models. It contains
@enumerate
@item an orthogonal set of deviance measures for absolute, relative and
ordinal scale and
@item approaches accounting for time shifts.
@end enumerate
The first approach transforms time to take time delays and speed differences
into account. The second divides the time series into interval units
according to their main features and finds the @dfn{longest common
subsequence} (LCS) using a dynamic programming algorithm.")
(license license:gpl2+)))
(define-public r-mosaiccore
(package
(name "r-mosaiccore")
@ -11745,6 +12110,54 @@ builders who wish to wrap command line software, and to help analysts stay
inside R when they might usually leave to execute non-R software.")
(license license:expat)))
(define-public r-rslurm
(package
(name "r-rslurm")
(version "0.6.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "rslurm" version))
(sha256
(base32
"0fn2na8prsaxa03x5wi3105gpsxc35qvgmik7wy3nylvx4wdfv9g"))))
(properties `((upstream-name . "rslurm")))
(build-system r-build-system)
(propagated-inputs `(("r-whisker" ,r-whisker)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "http://cyberhelp.sesync.org/rslurm/")
(synopsis "Submit R calculations to a Slurm cluster")
(description
"This package provides functions that simplify submitting R scripts to a
Slurm workload manager, in part by automating the division of embarrassingly
parallel calculations across cluster nodes.")
(license license:gpl3)))
(define-public r-chk
(package
(name "r-chk")
(version "0.7.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "chk" version))
(sha256
(base32
"1fxsxgvd08lkb6amjgs4x48dhqr046mmjngjfgy2ya9cl2shd7ls"))))
(properties `((upstream-name . "chk")))
(build-system r-build-system)
(propagated-inputs
`(("r-lifecycle" ,r-lifecycle)
("r-rlang" ,r-rlang)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/poissonconsulting/chk")
(synopsis "Check user-supplied function arguments")
(description
"This is a package for developers to check user-supplied function
arguments. It is designed to be simple, fast and customizable. Error
messages follow the tidyverse style guide.")
(license license:expat)))
(define-public r-weights
(package
(name "r-weights")

View File

@ -43,6 +43,7 @@
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages crates-graphics)
@ -55,6 +56,7 @@
#:use-module (gnu packages glib)
#:use-module (gnu packages image)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages nettle)
@ -5824,6 +5826,57 @@ functions} for a collection of hashable objects.")
(description "This package provides a safe FnOnce boxing for Rust.")
(license license:expat)))
(define-public rust-boxxy-0.11
(package
(name "rust-boxxy")
(version "0.11.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "boxxy" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"10p8i30ri9rhrmlbdxp9s4k4fgsjq6q6b1x2ncchli1ad6psylms"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-base64" ,rust-base64-0.10)
("rust-bufstream" ,rust-bufstream-0.1)
("rust-caps" ,rust-caps-0.3)
("rust-cfg-if" ,rust-cfg-if-0.1)
("rust-clap" ,rust-clap-2)
("rust-errno" ,rust-errno-0.2)
("rust-error-chain" ,rust-error-chain-0.12)
("rust-futures" ,rust-futures-0.1)
("rust-http" ,rust-http-0.1)
("rust-hyper" ,rust-hyper-0.12)
("rust-hyper-rustls" ,rust-hyper-rustls-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-libflate" ,rust-libflate-0.1)
("rust-log" ,rust-log-0.4)
("rust-nix" ,rust-nix-0.15)
("rust-pledge" ,rust-pledge-0.3)
("rust-regex" ,rust-regex-1)
("rust-rustls" ,rust-rustls-0.16)
("rust-rustyline" ,rust-rustyline-5)
("rust-sha2" ,rust-sha2-0.8)
("rust-tar" ,rust-tar-0.4)
("rust-tokio-core" ,rust-tokio-core-0.1)
("rust-url" ,rust-url-2)
("rust-webpki" ,rust-webpki-0.21))
#:cargo-development-inputs
(("rust-ctrlc" ,rust-ctrlc-3)
("rust-elf" ,rust-elf-0.0.10)
("rust-env-logger" ,rust-env-logger-0.6))))
(home-page "https://github.com/kpcyrd/boxxy-rs")
(synopsis "Linkable sandbox explorer")
(description
"This library provides an interactive shell that can be linked into a
program to verify sandboxing measures are adequate.")
(license license:lgpl3)))
(define-public rust-bresenham-0.1
(package
(name "rust-bresenham")
@ -6138,6 +6191,31 @@ system calls. Second, exposing the internal buffer allows the user to work
with data in place, which avoids another copy.")
(license license:gpl3)))
(define-public rust-bufstream-0.1
(package
(name "rust-bufstream")
(version "0.1.4")
(source
(origin
(method url-fetch)
(uri (crate-uri "bufstream" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1j7f52rv73hd1crzrrfb9dr50ccmi3hb1ybd6s5dyg6jmllqkqs0"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-futures" ,rust-futures-0.1)
("rust-tokio-io" ,rust-tokio-io-0.1))))
(home-page "https://github.com/alexcrichton/bufstream")
(synopsis "I/O streams with separate read/write buffers")
(description
"This package provides buffered I/O for streams where each read/write
half is separately buffered.")
(license (list license:expat license:asl2.0))))
(define-public rust-bugreport-0.4
(package
(name "rust-bugreport")
@ -9590,6 +9668,30 @@ It supports signed and private (encrypted + signed) jars.")
("rust-sha2" ,rust-sha2-0.8)
("rust-time" ,rust-time-0.1))))))
(define-public rust-cookie-factory-0.3
(package
(name "rust-cookie-factory")
(version "0.3.2")
(source
(origin
(method url-fetch)
(uri (crate-uri "cookie-factory" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"0sqjmw85ckqhppff6gjwmvjpkii35441a51xx7cv0ih3jy2fjv9r"))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f
#:cargo-development-inputs (("rust-maplit" ,rust-maplit-1))))
(home-page "https://github.com/rust-bakery/cookie-factory")
(synopsis "Combinator-based serialization library")
(description
"This package provides a serialization library with a combinator design
similar to the nom parser combinators library.")
(license license:expat)))
(define-public rust-cookie-store-0.7
(package
(name "rust-cookie-store")
@ -11085,6 +11187,27 @@ number ``crunching``.")
common cryptographic algorithms.")
(license (list license:expat license:asl2.0))))
(define-public rust-rusticata-macros-3
(package
(name "rust-rusticata-macros")
(version "3.2.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "rusticata-macros" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1b91k644rqblbam6rfhhmgcxs0zddldi2h0w93aapv1kqq9fbgpv"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs (("rust-nom" ,rust-nom-6))))
(home-page "https://github.com/rusticata/rusticata-macros")
(synopsis "Helper macros for Rusticata")
(description "Helper macros for Rusticata")
(license (list license:expat license:asl2.0))))
(define-public rust-crypto-mac-0.11
(package
(name "rust-crypto-mac")
@ -13221,6 +13344,33 @@ procedural macros")
procedural macros.")
(license (list license:expat license:asl2.0))))
(define-public rust-dhcp4r-0.2
(package
(name "rust-dhcp4r")
(version "0.2.2")
(source
(origin
(method url-fetch)
(uri (crate-uri "dhcp4r" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"0paq13i9iz5545f5aw8ijxflw20fvb3k8s4m3inr5q19q5rirpbc"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-enum-primitive-derive" ,rust-enum-primitive-derive-0.2)
("rust-nom" ,rust-nom-6)
("rust-num-traits" ,rust-num-traits-0.2)
("rust-time" ,rust-time-0.2))))
(home-page "https://github.com/krolaw/dhcp4r")
(synopsis "IPv4 DHCP library with working server example.")
(description
"This package provides a library for IPv4 DHCP including a working server
example.")
(license license:bsd-3)))
(define-public rust-dialoguer-0.6
(package
(name "rust-dialoguer")
@ -14615,6 +14765,28 @@ signing, and verification in pure Rust.")
@code{Right} is a general purpose sum type with two cases.")
(license (list license:expat license:asl2.0))))
(define-public rust-elf-0.0.10
(package
(name "rust-elf")
(version "0.0.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "elf" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1xcpf7jdmrl7rdmd6009grahvgp3k695h5x4cadrpr70vcaxwha8"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs (("rust-byteorder" ,rust-byteorder-0.5))))
(home-page "https://github.com/cole14/rust-elf/")
(synopsis "Library for parsing ELF files")
(description
"This package provides a pure-Rust library for parsing ELF files.")
(license (list license:expat license:asl2.0))))
(define-public rust-emacs-0.11
(package
(name "rust-emacs")
@ -15107,6 +15279,32 @@ accessor functions on enums.")
instances for enum.")
(license license:expat)))
(define-public rust-enum-primitive-derive-0.2
(package
(name "rust-enum-primitive-derive")
(version "0.2.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "enum-primitive-derive" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"0h1k2izdl5lf2na8xnj7rgwjm8gawxc2p1w8j6ahifvyka7jhljz"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-num-traits" ,rust-num-traits-0.2)
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))))
(home-page "https://gitlab.com/cardoe/enum-primitive-derive")
(synopsis "Reimplementation of enum_primitive using a #[derive] macro")
(description
"This package provides a custom derive using procedural macros to
implement enum_primitive.")
(license license:expat)))
(define-public rust-enum-to-u8-slice-derive-0.1
(package
(name "rust-enum-to-u8-slice-derive")
@ -20471,8 +20669,31 @@ hexadecimal representation.")
(sha256
(base32 "1ajkw40qzn2ygnqjj9w584f6l31wi318258n84pn2hax8la2i8nn"))))))
(define-public rust-hex-literal-0.3
(package
(name "rust-hex-literal")
(version "0.3.3")
(source
(origin
(method url-fetch)
(uri (crate-uri "hex-literal" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"0nzljsyz9rwhh4vi0xs9ya4l5g0ka754wgpy97r1j3v42c75kr11"))))
(build-system cargo-build-system)
(home-page "https://github.com/RustCrypto/utils")
(synopsis
"Convert hexadecimal string to byte array at compile time")
(description
"Procedural macro for converting hexadecimal string to byte array at
compile time.")
(license (list license:asl2.0 license:expat))))
(define-public rust-hex-literal-0.2
(package
(inherit rust-hex-literal-0.3)
(name "rust-hex-literal")
(version "0.2.1")
(source
@ -20484,18 +20705,10 @@ hexadecimal representation.")
(sha256
(base32
"1q36f0qq31ggh4ipcwb7a5g6jmci2010vn2v3qpaz4csxhhf47cn"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-hex-literal-impl" ,rust-hex-literal-impl-0.2)
("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
(home-page "https://github.com/RustCrypto/utils")
(synopsis
"Convert hexadecimal string to byte array at compile time")
(description
"Procedural macro for converting hexadecimal string to byte array at
compile time.")
(license (list license:asl2.0 license:expat))))
("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))))
(define-public rust-hex-literal-0.1
(package
@ -26662,6 +26875,38 @@ based on Rustls and Ring.")
(("rust-sema" ,rust-sema-0.1)
("rust-winit" ,rust-winit-0.19)))))) ; 0.17?
(define-public rust-tls-parser-0.10
(package
(name "rust-tls-parser")
(version "0.10.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "tls-parser" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1spgykvrxlzb059zzz1hzinc4vvkpixw9nd6p94vw3rimar5m68n"))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f ;; requires assets not included in crates.io tarball
#:cargo-inputs
(("rust-cookie-factory" ,rust-cookie-factory-0.3)
("rust-enum-primitive" ,rust-enum-primitive-0.1)
("rust-nom" ,rust-nom-6)
("rust-nom-derive" ,rust-nom-derive-0.7)
("rust-phf" ,rust-phf-0.8)
("rust-phf-codegen" ,rust-phf-codegen-0.8)
("rust-rusticata-macros" ,rust-rusticata-macros-3))
#:cargo-development-inputs
(("rust-hex-literal" ,rust-hex-literal-0.3)
("rust-pretty-assertions" ,rust-pretty-assertions-0.6))))
(home-page "https://github.com/rusticata/tls-parser")
(synopsis "Parser for the TLS protocol")
(description "This package provides a Rust parser for the TLS protocol.")
(license (list license:expat license:asl2.0))))
(define-public rust-twox-hash-1
(package
(name "rust-twox-hash")
@ -28993,6 +29238,34 @@ combinators library.")
;; This is an ancient version and all inputs are optional.
`(#:skip-build? #t))))
(define-public rust-nom-derive-0.7
(package
(name "rust-nom-derive")
(version "0.7.2")
(source
(origin
(method url-fetch)
(uri (crate-uri "nom-derive" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1xwbbkfhr8zrlcknlj75l50rp2b267qm9sd8vphx6gwzyg24n2zz"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))
#:cargo-development-inputs
(("rust-nom" ,rust-nom-6)
("rust-pretty-assertions" ,rust-pretty-assertions-0.7)
("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/rust-bakery/nom-derive")
(synopsis "Custom derive nom parsers from struct")
(description "This package derives custom nom parsers from structs.")
(license (list license:expat license:asl2.0))))
(define-public rust-noop-proc-macro-0.3
(package
(name "rust-noop-proc-macro")
@ -31914,6 +32187,32 @@ in pure Rust.")
("rust-sha-1" ,rust-sha-1-0.8)
("rust-sha2" ,rust-sha2-0.8))))))
(define-public rust-pcap-sys-0.1
(package
(name "rust-pcap-sys")
(version "0.1.3")
(source
(origin
(method url-fetch)
(uri (crate-uri "pcap-sys" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"18w9c8i5zjnazay86219w4789482ya617z35cw433h12wbgjaiqi"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-libc" ,rust-libc-0.2)
("rust-pkg-config" ,rust-pkg-config-0.3)
("rust-winapi" ,rust-winapi-0.3))))
(inputs `(("libpcap" ,libpcap)))
(home-page "https://github.com/jmmk/rustcap")
(synopsis "Low-level bindings to libpcap")
(description "This package provides low-level Rust bindings to the libpcap
library.")
(license license:expat)))
(define-public rust-pcre2-0.2
(package
(name "rust-pcre2")
@ -32959,6 +33258,30 @@ used in Cargo build scripts.")
(license (list license:asl2.0
license:expat))))
(define-public rust-pktparse-0.5
(package
(name "rust-pktparse")
(version "0.5.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "pktparse" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"17a78c29l070mlwjdr3bdph785c9v5rps0if3v0s21w4nwaybhck"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-nom" ,rust-nom-5)
("rust-serde" ,rust-serde-1))))
(home-page "https://github.com/bestouff/pktparse-rs")
(synopsis "Collection of packet parsers")
(description "This package provides a collection of parsers for various
network packet formats.")
(license license:lgpl3)))
(define-public rust-plain-0.2
(package
(name "rust-plain")
@ -34180,27 +34503,26 @@ functions.")
particularly useful for printing structured recursive data like trees.")
(license license:expat)))
(define-public rust-pretty-assertions-0.6
(define-public rust-pretty-assertions-0.7
(package
(name "rust-pretty-assertions")
(version "0.6.1")
(version "0.7.2")
(source
(origin
(method url-fetch)
(uri (crate-uri "pretty_assertions" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"09yl14gnmpygiqrdlsa64lcl4w6ydjl9m8jri6kgam0v9rjf309z"))))
(origin
(method url-fetch)
(uri (crate-uri "pretty_assertions" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"12yris0ni87wvzhj23a5nnz7amskvahhnpikx5snhdyg09y0xaqw"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-ctor" ,rust-ctor-0.1)
("rust-output-vt100" ,rust-output-vt100-0.1)
("rust-ansi-term" ,rust-ansi-term-0.11)
("rust-difference" ,rust-difference-2))))
`(#:cargo-inputs
(("rust-ansi-term" ,rust-ansi-term-0.12)
("rust-ctor" ,rust-ctor-0.1)
("rust-diff" ,rust-diff-0.1)
("rust-output-vt100" ,rust-output-vt100-0.1))))
(home-page "https://github.com/colin-kiegel/rust-pretty-assertions")
(synopsis "Drop-in replacements for assert_eq! and assert_ne!")
(description
@ -34208,6 +34530,28 @@ particularly useful for printing structured recursive data like trees.")
replacements, adding colorful diffs.")
(license (list license:expat license:asl2.0))))
(define-public rust-pretty-assertions-0.6
(package
(inherit rust-pretty-assertions-0.7)
(name "rust-pretty-assertions")
(version "0.6.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "pretty_assertions" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"09yl14gnmpygiqrdlsa64lcl4w6ydjl9m8jri6kgam0v9rjf309z"))))
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-ctor" ,rust-ctor-0.1)
("rust-output-vt100" ,rust-output-vt100-0.1)
("rust-ansi-term" ,rust-ansi-term-0.11)
("rust-difference" ,rust-difference-2))))))
(define-public rust-pretty-assertions-0.4
(package
(inherit rust-pretty-assertions-0.6)
@ -37068,6 +37412,27 @@ owned memory.")
functionality.")
(license license:expat)))
(define-public rust-reduce-0.1
(package
(name "rust-reduce")
(version "0.1.4")
(source
(origin
(method url-fetch)
(uri (crate-uri "reduce" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1mrmicr43hx3s9556zbzg0lys4nmsw0vwznd52imxhcanr3xrlhn"))))
(build-system cargo-build-system)
(home-page "https://github.com/dtolnay/reduce")
(synopsis "Fold an iterator without an initial value")
(description
"This package provides a way to fold an iterator without a separate
initial value.")
(license (list license:expat license:asl2.0))))
(define-public rust-ref-cast-1
(package
(name "rust-ref-cast")
@ -40410,6 +40775,36 @@ sub-processes using a fork-like interface.")
("rust-rustyline-derive" ,rust-rustyline-derive-0.3)
("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-rustyline-5
(package
(inherit rust-rustyline-6)
(name "rust-rustyline")
(version "5.0.6")
(source
(origin
(method url-fetch)
(uri (crate-uri "rustyline" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0dd6hwm3rqj8d17gf38ffs1lh3b8dqw45j5kxnvazmm80abv2g52"))))
(arguments
`(#:cargo-inputs
(("rust-cfg-if" ,rust-cfg-if-0.1)
("rust-dirs" ,rust-dirs-2)
("rust-libc" ,rust-libc-0.2)
("rust-log" ,rust-log-0.4)
("rust-memchr" ,rust-memchr-2)
("rust-nix" ,rust-nix-0.14)
("rust-unicode-segmentation" ,rust-unicode-segmentation-1)
("rust-unicode-width" ,rust-unicode-width-0.1)
("rust-utf8parse" ,rust-utf8parse-0.1)
("rust-winapi" ,rust-winapi-0.3))
#:cargo-development-inputs
(("rust-assert-matches" ,rust-assert-matches-1)
("rust-env-logger" ,rust-env-logger-0.7)
("rust-rustyline-derive" ,rust-rustyline-derive-0.2)
("rust-tempdir" ,rust-tempdir-0.3))))))
(define-public rust-rustyline-derive-0.3
(package
(name "rust-rustyline-derive")
@ -40433,6 +40828,21 @@ sub-processes using a fork-like interface.")
(description "This package provides Rustyline macros implementation in Rust.")
(license license:expat)))
(define-public rust-rustyline-derive-0.2
(package
(inherit rust-rustyline-derive-0.3)
(name "rust-rustyline-derive")
(version "0.2.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "rustyline-derive" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1n3iw9kaq70dw1rvvma0gjwydbj0f2mvvqvrva69f5cl6yv1dnd0"))))))
(define-public rust-ryu-1
(package
(name "rust-ryu")
@ -41246,6 +41656,28 @@ Pwrite traits from the scroll crate.")
proven statistical guarantees.")
(license license:expat)))
(define-public rust-seccomp-sys-0.1
(package
(name "rust-seccomp-sys")
(version "0.1.3")
(source
(origin
(method url-fetch)
(uri (crate-uri "seccomp-sys" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1rkbiq1vd5d3cc4w5ql05pj1vbjqfi7zir02szwfm2khl15zgg75"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
(inputs `(("libseccomp" ,libseccomp)))
(home-page "https://github.com/polachok/seccomp-sys")
(synopsis "Low-level bindings to libseccomp")
(description "This package provides low-level bindings to libseccomp.")
(license license:lgpl2.1)))
(define-public rust-section-testing-0.0
(package
(name "rust-section-testing")
@ -45903,6 +46335,24 @@ struct.")
easier in Rust.")
(license license:expat)))
(define-public rust-strum-0.19
(package
(inherit rust-strum-0.20)
(name "rust-strum")
(version "0.19.5")
(source
(origin
(method url-fetch)
(uri (crate-uri "strum" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1d8i5xwkc2z7z02ibln80z1bmpjhpi9k5ckpljwj0mrvgrm2i6mq"))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f
#:cargo-inputs
(("rust-strum-macros" ,rust-strum-macros-0.19))))))
(define-public rust-strum-0.18
(package
(inherit rust-strum-0.20)
@ -45944,6 +46394,28 @@ easier in Rust.")
"This crate provides helpful macros for working with enums and strings.")
(license license:expat)))
(define-public rust-strum-macros-0.19
(package
(inherit rust-strum-macros-0.20)
(name "rust-strum-macros")
(version "0.19.4")
(source
(origin
(method url-fetch)
(uri (crate-uri "strum_macros" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32 "1mgqs5x3g0d3bmr8dhalgqrzh29dwc90a06fpy0cnich52zb06z6"))))
(arguments
`(#:cargo-inputs
(("rust-heck" ,rust-heck-0.3)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))
#:cargo-development-inputs
(("rust-strum" ,rust-strum-0.19))))))
(define-public rust-strum-macros-0.18
(package
(inherit rust-strum-macros-0.20)
@ -46843,6 +47315,33 @@ system or application with the relevant platform APIs. The library is also
no_std compatible by default, only relying on alloc.")
(license (list license:expat license:asl2.0))))
(define-public rust-syscallz-0.15
(package
(name "rust-syscallz")
(version "0.15.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "syscallz" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"0z5yfgb6086gdvbrm8lm0i745j6d8qw653xxy3mlrzdcjk3j1skz"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-log" ,rust-log-0.4)
("rust-pkg-config" ,rust-pkg-config-0.3)
("rust-seccomp-sys" ,rust-seccomp-sys-0.1)
("rust-strum" ,rust-strum-0.19)
("rust-strum-macros" ,rust-strum-macros-0.19))))
(inputs `(("libseccomp" ,libseccomp)))
(home-page "https://github.com/kpcyrd/syscallz-rs")
(synopsis "Simple seccomp library for rust")
(description "Simple seccomp library for rust")
(license (list license:expat license:asl2.0))))
(define-public rust-sysctl-0.4
(package
(name "rust-sysctl")
@ -55785,10 +56284,14 @@ command-line, uniformly on all platforms")
(origin
(method url-fetch)
(uri (crate-uri "winapi-i686-pc-windows-gnu" version))
(file-name (string-append name "-" version ".crate"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc"))))
"1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc"))
(modules '((guix build utils)))
(snippet
'(begin
(for-each delete-file (find-files "." "\\.a$"))))))
(build-system cargo-build-system)
(home-page "https://github.com/retep998/winapi-rs")
(synopsis "Import libraries for the i686-pc-windows-gnu target")
@ -55829,10 +56332,14 @@ winapi.")
(origin
(method url-fetch)
(uri (crate-uri "winapi-x86_64-pc-windows-gnu" version))
(file-name (string-append name "-" version ".crate"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"))))
"0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"))
(modules '((guix build utils)))
(snippet
'(begin
(for-each delete-file (find-files "." "\\.a$"))))))
(build-system cargo-build-system)
(home-page "https://github.com/retep998/winapi-rs")
(synopsis "Import libraries for the x86_64-pc-windows-gnu target")
@ -55982,7 +56489,8 @@ trust these primitives.")
(base32
"0sdxcyvda4v1v6a0k1j2v1400z3ng323k9a56gxvkq51x21dn801"))))
(arguments
`(#:cargo-inputs
`(#:skip-build? #t
#:cargo-inputs
(("rust-chrono" ,rust-chrono-0.4)
("rust-serde" ,rust-serde-1)
("rust-winapi" ,rust-winapi-0.3))
@ -56973,6 +57481,27 @@ formatters with per-field documentation generated for each structure.
"This crate provides async pipes, channels, mutexes, and more.")
(license (list license:expat license:asl2.0))))
(define-public rust-pledge-0.3
(package
(name "rust-pledge")
(version "0.3.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "pledge" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32 "1rgbnvl97ks25aanxm680687df6li6y8h3f5mvdw3806rwz8xcg2"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
(home-page "https://github.com/i80and/pledge-rs")
(synopsis "Rust binding to OpenBSD's pledge(2) interface")
(description
"This package provides Rust bindings to OpenBSD's pledge(2) interface.")
(license license:expat)))
(define-public rust-ptree-0.3
(package
(name "rust-ptree")

View File

@ -21,6 +21,7 @@
;;; Copyright © 2020 pukkamustard <pukkamustard@posteo.net>
;;; Copyright © 2021 Ellis Kenyő <me@elken.dev>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
;;;
;;; This file is part of GNU Guix.
;;;
@ -46,8 +47,10 @@
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages curl)
#:use-module (gnu packages documentation)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gnupg)
@ -58,6 +61,7 @@
#:use-module (gnu packages libbsd)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages logging)
#:use-module (gnu packages lsof)
#:use-module (gnu packages man)
#:use-module (gnu packages multiprecision)
@ -1386,3 +1390,76 @@ them out. The process will degrade gracefully, so even people without your
encryption password can safely commit changes to the repository's
non-encrypted files.")
(license license:expat)))
(define-public cryfs
(package
(name "cryfs")
(version "0.11.0")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/cryfs/cryfs/releases/download/"
version "/cryfs-" version ".tar.xz"))
(sha256
(base32 "0dxphbj5sssm82rkkdb71algrcki16qlpzlvrjyvvm6b7x7zi0sm"))))
(build-system cmake-build-system)
(arguments
'(#:modules ((guix build cmake-build-system)
(guix build utils)
(srfi srfi-1))
#:configure-flags
;; Note: This also disables checking for security issues.
`("-DCRYFS_UPDATE_CHECKS=OFF"
;; This helps us use some dependencies from Guix instead of conan.
;; crypto++ is still bundled: https://github.com/cryfs/cryfs/issues/369
;; Googletest is also since I wasn't sure how to unbundle that.
,(string-append "-DDEPENDENCY_CONFIG=" (getcwd)
"/cmake-utils/DependenciesFromLocalSystem.cmake"))
#:phases
(modify-phases %standard-phases
(add-before 'configure 'fix-configure
(lambda* (#:key tests? #:allow-other-keys)
;; Remove junk directory that breaks the build
(chdir "..") (delete-file-recursively ".circleci")
;; Install documentation with Guix defaults.
(substitute* "doc/CMakeLists.txt"
(("CONFIGURATIONS Release")
"CONFIGURATIONS Release RelWithDebInfo"))
(when tests?
(substitute* "CMakeLists.txt"
(("option.BUILD_TESTING .build test cases. OFF.")
"option(BUILD_TESTING \"build test cases\" ON)")))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(let ((tests (find-files "." "-test$")))
;; XXX: Disable failing tests. Unfortunately there are a
;; few. Some only fail in the build environment due to
;; FUSE not being available.
(for-each invoke
(lset-difference string-contains
tests
'("cpp-utils-test"
"cryfs-cli-test"
"blobstore-test"
"fspp-test")))))
#t)))))
(native-inputs
`(("python" ,python-wrapper)
("pkg-config" ,pkg-config)))
(inputs
`(("boost" ,boost)
("curl" ,curl)
("fuse" ,fuse)
("range-v3" ,range-v3)
("spdlog" ,spdlog)))
(home-page "https://www.cryfs.org/")
(synopsis "Encrypted FUSE filesystem for the cloud")
(description "CryFS encrypts your files, so you can safely store them anywhere.
It works well together with cloud services like Dropbox, iCloud, OneDrive and
others. CryFS creates an encrypted userspace filesystem that can be mounted
via FUSE without root permissions. It is similar to EncFS, but provides
additional security and privacy measures such as hiding file sizes and directory
structure. However CryFS is not considered stable yet by the developers.")
(license license:lgpl3+)))

View File

@ -2936,18 +2936,20 @@ Database API 2.0T.")
(define-public python-sqlalchemy
(package
(name "python-sqlalchemy")
(version "1.3.20")
(version "1.4.23")
(source
(origin
(method url-fetch)
(uri (pypi-uri "SQLAlchemy" version))
(sha256
(base32 "18b9am7bsqc4nj3d2h5r93i002apczxfvpfpcqbd6f0385zmrwnj"))))
(base32 "10vm8hm8w4yfsab076ak8r4vp5v1jqdi71cky6dhha7mh5l29zvn"))))
(build-system python-build-system)
(native-inputs
`(("python-cython" ,python-cython) ; for C extensions
("python-pytest" ,python-pytest)
("python-mock" ,python-mock))) ; for tests
(propagated-inputs
`(("python-greenlet" ,python-greenlet)))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -3082,13 +3084,13 @@ this library provides functions to facilitate such comparisons.")
(define-public python-alembic
(package
(name "python-alembic")
(version "1.4.3")
(version "1.7.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "alembic" version))
(sha256
(base32 "0if2dgb088clk738p26bwk50735h6jpd2kacdgc5capv2hiz6d2k"))))
(base32 "1ys0a44gh544xpbzz6r5xvz3msim74f9qklyfnw0bhn9vk9n9adf"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@ -3100,6 +3102,7 @@ this library provides functions to facilitate such comparisons.")
("python-pytest-cov" ,python-pytest-cov)))
(propagated-inputs
`(("python-dateutil" ,python-dateutil)
("python-importlib-resources" ,python-importlib-resources) ;Python < 3.9
("python-sqlalchemy" ,python-sqlalchemy)
("python-mako" ,python-mako)
("python-editor" ,python-editor)))
@ -3110,9 +3113,6 @@ this library provides functions to facilitate such comparisons.")
SQLAlchemy Database Toolkit for Python.")
(license license:expat)))
(define-public python2-alembic
(package-with-python2 python-alembic))
(define-public python-pickleshare
(package
(name "python-pickleshare")
@ -3301,20 +3301,31 @@ designed to be easy and intuitive to use.")
(define-public python-sadisplay
(package
(name "python-sadisplay")
(version "0.4.8")
(version "0.4.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "sadisplay" version))
(sha256
(base32
"01d9lxhmgpb68gy8rd6zj6fcwp84n2qq210n1qsk3qbsir79bzh4"))))
"15jxwgla3q4xsp6rw8inqaiy1kdzc8l2cixj8amqcf0ji47icrxg"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(if tests?
(begin
(setenv "PYTHONPATH"
(string-append ".:" (or (getenv "PYTHONPATH")
"")))
(invoke "pytest" "-vv"))
(format #t "test suite not run~%")))))))
(propagated-inputs
`(("python-sqlalchemy" ,python-sqlalchemy)))
(native-inputs
;; For tests.
`(("python-nose" ,python-nose)))
`(("python-pytest" ,python-pytest)))
(home-page "https://bitbucket.org/estin/sadisplay")
(synopsis "SQLAlchemy schema displayer")
(description "This package provides a program to build Entity
@ -3609,13 +3620,13 @@ provides support for parsing, splitting and formatting SQL statements.")
(define-public python-sql
(package
(name "python-sql")
(version "1.0.0")
(version "1.3.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-sql" version))
(sha256
(base32 "05ni936y0ia9xmryl7mlhbj9i80nnvq1bi4zxhb96rv7yvpb3fqb"))))
(base32 "0xnimfzlxj1ddrb5xj3s4gaii278a0gpxrvwmdmrdxgjfdi3lq4x"))))
(build-system python-build-system)
(home-page "https://python-sql.tryton.org/")
(synopsis "Library to write SQL queries in a pythonic way")

View File

@ -34,6 +34,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages databases)
#:use-module (gnu packages check)
#:use-module (gnu packages finance)
#:use-module (gnu packages geo)
#:use-module (gnu packages openldap)
#:use-module (gnu packages python)
@ -183,6 +184,42 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
commands, additional database fields and admin extensions.")
(license license:expat)))
(define-public python-django-localflavor
(package
(name "python-django-localflavor")
(version "3.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-localflavor" version))
(sha256
(base32 "0i1s0ijfd9rv2cp5x174jcyjpwn7fyg7s1wpbvlwm96bpdvs6bxc"))))
(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)
(setenv "PYTHONPATH"
(string-append ".:"
(getenv "PYTHONPATH")))
(invoke "invoke" "test")))))))
(native-inputs
`(("python-coverage" ,python-coverage)
("python-invoke" ,python-invoke)
("python-pytest-django" ,python-pytest-django)
("which" ,which)))
(propagated-inputs
`(("python-django" ,python-django)
("python-stdnum" ,python-stdnum)))
(home-page "https://django-localflavor.readthedocs.io/en/latest/")
(synopsis "Country-specific Django helpers")
(description "Django-LocalFlavor is a collection of assorted pieces of code
that are useful for particular countries or cultures.")
(license license:bsd-3)))
(define-public python-django-simple-math-captcha
(package
(name "python-django-simple-math-captcha")

View File

@ -7,6 +7,7 @@
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Andrew Whatson <whatson@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -25,16 +26,18 @@
(define-module (gnu packages docbook)
#:use-module (gnu packages)
#:use-module (gnu packages bash)
#:use-module (gnu packages compression)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages inkscape)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages perl)
#:use-module (gnu packages python)
#:use-module (gnu packages base)
#:use-module (gnu packages web-browsers)
#:use-module (gnu packages xml)
#:use-module (guix licenses)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module ((guix build utils) #:select (alist-replace))
@ -81,7 +84,7 @@
"DocBook is general purpose XML and SGML document type particularly well
suited to books and papers about computer hardware and software (though it is
by no means limited to these applications.) This package provides XML DTDs.")
(license (x11-style "" "See file headers."))))
(license (license:x11-style "" "See file headers."))))
(define-public docbook-xml
(package
@ -224,7 +227,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(synopsis "DocBook XSL style sheets for document authoring")
(description
"This package provides XSL style sheets for DocBook.")
(license (x11-style "" "See 'COPYING' file."))))
(license (license:x11-style "" "See 'COPYING' file."))))
(define-public docbook-dsssl
(package
@ -265,7 +268,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(home-page "https://docbook.org/")
(synopsis "DSSSL style sheets for DocBook")
(description "This package provides DSSSL style sheets for DocBook.")
(license (non-copyleft "file://README"))))
(license (license:non-copyleft "file://README"))))
;;; Private variable, used as the 'doc' output of the docbook-dsssl package.
(define docbook-dsssl-doc
@ -303,7 +306,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(home-page "https://docbook.org/")
(synopsis "DocBook DSSSL style sheets documentation")
(description "Documentation for the DocBook DSSSL style sheets.")
(license (non-copyleft "file://doc/LEGALNOTICE.htm"))))
(license (license:non-copyleft "file://doc/LEGALNOTICE.htm"))))
(define-public docbook-sgml
(package
@ -345,7 +348,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(home-page "https://docbook.org")
(synopsis "DocBook SGML style sheets for document authoring")
(description "This package provides SGML style sheets for DocBook.")
(license (x11-style "" "See file headers."))))
(license (license:x11-style "" "See file headers."))))
(define-public docbook-sgml-3.1
(package
@ -386,7 +389,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(synopsis "ISO 8879 character entities")
(description "ISO 8879 character entities that are typically used in
the in DocBook SGML DTDs.")
(license (x11-style "" "See file headers."))))
(license (license:x11-style "" "See file headers."))))
(define-public dblatex
(package
@ -466,7 +469,7 @@ to DVI, PostScript or PDF by translating them in pure LaTeX as a first
process. MathML 2.0 markups are supported too. It started as a clone of
DB2LaTeX.")
;; lib/contrib/which is under an X11 license
(license gpl2+)))
(license license:gpl2+)))
;; This is a variant of the 'dblatex' package that is not updated often. It
;; is intended to be used as a native-input at build-time only, e.g. by
@ -562,4 +565,93 @@ more conveniently via the following wrappers:
@item sgmldiff
Detect the differences in markup between two SGML files.
@end table")
(license gpl2+)))
(license license:gpl2+)))
(define-public docbook2x
(package
(name "docbook2x")
(version "0.8.8")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/docbook2x/docbook2x/"
version "/docbook2X-" version ".tar.gz"))
(sha256
(base32
"0ifwzk99rzjws0ixzimbvs83x6cxqk1xzmg84wa1p7bs6rypaxs0"))))
(build-system gnu-build-system)
(inputs
`(("bash-minimal" ,bash-minimal)
("docbook-xml" ,docbook-xml)
("perl" ,perl)
("perl-xml-namespacesupport" ,perl-xml-namespacesupport)
("perl-xml-parser" ,perl-xml-parser)
("perl-xml-sax" ,perl-xml-sax)
("perl-xml-sax-base" ,perl-xml-sax-base)
("texinfo" ,texinfo)
("xsltproc" ,libxslt)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'configure 'patch-sources
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Fix failed substitution in config.pl
(substitute* "perl/config.pl"
(("\\$\\{prefix\\}")
(assoc-ref outputs "out")))
;; Fix a failing test (maybe it worked with old texinfo?)
(substitute* "test/complete-manuals/at1.xml"
(("<bridgehead>")
"<bridgehead renderas=\"sect2\">"))
;; Patch all the tests use DocBook 4.5
(substitute* (find-files "test" "\\.xml$")
(("\"-//OASIS//DTD DocBook XML V4\\..+//EN\"")
"\"-//OASIS//DTD DocBook XML V4.5//EN\"")
(("\"http://www\\.oasis-open\\.org/docbook/xml/4\\..+/docbookx.dtd\"")
"\"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd\""))
;; Set XML catalogs for tests to pass
(setenv "XML_CATALOG_FILES"
(string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/catalog.xml"))))
(add-after 'install 'wrap-programs
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(programs
(map (lambda (p)
(string-append out "/bin/" p))
'("db2x_manxml" "db2x_texixml" "db2x_xsltproc"
"docbook2man" "docbook2texi")))
(perl5lib
(map (lambda (i)
(string-append (assoc-ref inputs i)
"/lib/perl5/site_perl"))
'("perl-xml-namespacesupport"
"perl-xml-parser"
"perl-xml-sax"
"perl-xml-sax-base")))
(xml-catalog-files
(list (string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/catalog.xml"))))
(map (lambda (program)
(wrap-program program
`("PERL5LIB" ":" prefix
,perl5lib)
`("XML_CATALOG_FILES" " " prefix
,xml-catalog-files)))
programs))))
(add-after 'install 'create-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; Create db2x_* symlinks to satisfy some configure scripts
;; which use these names to differentiate from an older
;; docbook2man script provided by docbook-utils.
(map (lambda (prog)
(symlink prog (string-append out "/bin/db2x_" prog)))
'("docbook2man" "docbook2texi"))))))))
(home-page "http://docbook2x.sourceforge.net")
(synopsis "Convert DocBook to man page and Texinfo format")
(description
"docbook2X is a software package that converts DocBook documents into the
traditional Unix man page format and the GNU Texinfo format. Notable features
include table support for man pages, internationalization support, and easy
customization of the output using XSLT.")
(license license:expat)))

View File

@ -477,7 +477,7 @@ following formats:
(define-public cozy
(package
(name "cozy")
(version "1.0.3")
(version "1.1.2")
(source
(origin
(method git-fetch)
@ -486,7 +486,7 @@ following formats:
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0m0xiqpb87pwr3fhy0a4qxg67yjhwchcxj3x2anyy0li4inryxag"))))
(base32 "0hifzzhhf0ww6iar9gswjfndy3i54s6jc41zaazlx4scc7r6fhs0"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@ -495,14 +495,12 @@ following formats:
(add-after 'unpack 'patch-desktop-file
(lambda _
(substitute* "data/com.github.geigi.cozy.desktop"
(("Exec=com.github.geigi.cozy") "Exec=cozy"))
#t))
(("Exec=com.github.geigi.cozy") "Exec=cozy"))))
(add-after 'install 'patch-executable-name
(lambda* (#:key outputs #:allow-other-keys)
(with-directory-excursion
(string-append (assoc-ref outputs "out") "/bin")
(rename-file "com.github.geigi.cozy" "cozy"))
#t))
(rename-file "com.github.geigi.cozy" "cozy"))))
(add-after 'wrap 'wrap-libs
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -521,8 +519,7 @@ following formats:
`("LD_LIBRARY_PATH" ":" prefix (,libmagic-path))
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
`("GUIX_PYTHONPATH" ":" prefix (,python-path ,pylib))))
#t)))))
`("GUIX_PYTHONPATH" ":" prefix (,python-path ,pylib)))))))))
(native-inputs
`(("desktop-file-utils" ,desktop-file-utils)
("gettext" ,gettext-minimal)
@ -540,6 +537,7 @@ following formats:
("gst-plugins-good" ,gst-plugins-good)
("gst-plugins-ugly" ,gst-plugins-ugly)
("gtk+" ,gtk+)
("libdazzle" ,libdazzle)
("libgee" ,libgee)
("libhandy" ,libhandy)
("python-distro" ,python-distro)

View File

@ -1017,6 +1017,66 @@ factoring numbers and simplifying fractions, as well as zapping rocks
floating through space.")
(license license:gpl3+)))
(define-public libeb
(package
(name "libeb")
(version "4.4.3")
(source
(origin
(method url-fetch)
(uri
(string-append "ftp://ftp.sra.co.jp/pub/misc/eb/eb-" version ".tar.bz2"))
(sha256
(base32
"0psbdzirazfnn02hp3gsx7xxss9f1brv4ywp6a15ihvggjki1rxb"))))
(build-system gnu-build-system)
(native-inputs ; Required for building docs
`(("perl" ,perl)))
(inputs
`(("zlib" ,zlib)))
(synopsis "C library for accessing Japanese CD-ROM books")
(description "The EB library is a library for accessing CD-ROM
books, which are a common way to distribute electronic dictionaries in
Japan. It supports the EB, EBG, EBXA, EBXA-C, S-EBXA and EPWING
formats.")
;; FIXME: I cannot find a real home page
(home-page "https://sra.co.jp/")
(license license:bsd-3)))
(define-public qolibri
(package
(name "qolibri")
(version "2.1.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url"https://github.com/ludios/qolibri")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "066y7jcq9vg6hnvn7qxckzhd1qkgfzpzhw69nw5psm43qbaca8lg"))))
(build-system qt-build-system)
(arguments
'(#:tests? #f)) ; no test target
(native-inputs
`(("qttools", qttools)))
(inputs
`(("libeb" ,libeb)
("qtbase" ,qtbase-5)
("qtmultimedia" ,qtmultimedia)
("qtquickcontrols2" ,qtquickcontrols2)
("qtdeclarative" ,qtdeclarative)
("qtwebchannel" ,qtwebchannel)
("qtwebengine" ,qtwebengine)
("zlib" ,zlib)))
(synopsis "EPWING dictionary reader")
(description "qolibri is a dictionary viewer for the EPWING dictionary
format. Most monolingual Japanese dictionaries can only be found in the
EPWING format.")
(home-page "https://github.com/ludios/qolibri")
(license license:gpl2)))
(define-public mdk
(package
(name "mdk")

View File

@ -2117,14 +2117,14 @@ incrementally confined in Isearch manner.")
(define emacs-emms-print-metadata
(package
(name "emacs-emms-print-metadata")
(version "7.6")
(version "7.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"emms-" version ".tar"))
(sha256
(base32 "03cp6mr0kxy41dg4ri5ymbzpkw7bd8zg7hx0a2rb4axiss5qmx7i"))))
(base32 "0n9nx4wgjxkr8nsxcq8svg0x0qkqj7bsd2j0ihy4jzj29xmyxl0h"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("emms-print-metadata")
@ -2770,6 +2770,34 @@ the ability to jump forward and backward to the next bookmark.")
Emacs buffer.")
(license license:gpl3+)))
(define-public emacs-caml
(package
(name "emacs-caml")
(version "4.9")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.nongnu.org/nongnu/caml-"
version ".tar"))
(sha256
(base32
"00ldvz6r10vwwmk6f3az534p0340ywn7knsg2bmvbvh3q51vyl9i"))))
(build-system emacs-build-system)
(home-page "https://github.com/ocaml/caml-mode")
(synopsis "Caml mode for GNU Emacs")
(description
"This package provides a major mode for editing OCaml code in Emacs.
Some of its major features include:
@itemize
@item syntax highlighting (font lock);
@item automatic indentation;
@item querying the type of expressions (using compiler generated annot files);
@item running an OCaml REPL within Emacs;
@item scanning of declarations and placing them in a menu.
@end itemize")
(license license:gpl2+)))
(define-public emacs-caps-lock
(package
(name "emacs-caps-lock")
@ -4911,7 +4939,7 @@ configuration, cache, and other data.")
(define-public emacs-string-inflection
(package
(name "emacs-string-inflection")
(version "1.0.14")
(version "1.0.15")
(source (origin
(method git-fetch)
(uri (git-reference
@ -4920,7 +4948,7 @@ configuration, cache, and other data.")
(file-name (git-file-name name version))
(sha256
(base32
"0g4lm384380q03pdspqzv8rb2gppb77m354r0xzw71340w8xh3hd"))))
"194pd3g9ws72n3wy1b2pxgj3w20p1v8gn47gqg89mym9ps5hfjyv"))))
(build-system emacs-build-system)
(native-inputs
`(("ert-runner" ,emacs-ert-runner)))
@ -5983,14 +6011,14 @@ src blocks.")
(define-public emacs-debbugs
(package
(name "emacs-debbugs")
(version "0.28")
(version "0.29")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/debbugs-"
version ".tar"))
(sha256
(base32 "1qks38hpg3drhxzw66n5yxfq0v6fj9ya7d9dc6x0xwfp6r2x0li0"))))
(base32 "1bn21d9dr9pb3vdak3v07x056xafym89kdpxavjf4avy6bry6s4d"))))
(build-system emacs-build-system)
(arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$")))
(propagated-inputs
@ -6249,7 +6277,7 @@ languages.")
(define-public emacs-irony-mode
(package
(name "emacs-irony-mode")
(version "1.4.0")
(version "1.5.0")
(home-page "https://github.com/Sarcasm/irony-mode")
(source (origin
(method git-fetch)
@ -6259,7 +6287,7 @@ languages.")
(file-name (git-file-name name version))
(sha256
(base32
"0n2nfcq58md1p2xdhq1smh8v7lsyj0ci7ma5xyd6bkg5rvhsh10i"))))
"1ilvfqn7hzrjjy2zrv08dbdnmgksdgsmrdcvx05s8704430ag0pb"))))
(build-system emacs-build-system)
(inputs `(("server" ,emacs-irony-mode-server)))
(arguments `(#:phases
@ -8287,7 +8315,7 @@ list of candidates.")
(define-public emacs-consult-notmuch
(package
(name "emacs-consult-notmuch")
(version "0.4")
(version "0.5")
(source
(origin
(method git-fetch)
@ -8296,11 +8324,11 @@ list of candidates.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0x2lz2df1rjq3vdxvqqnxqxh257hq5iyx1w3yc85w7lmnb59gbvy"))))
(base32 "04ha4mysxvfz6yzbkgrl1mcwic1lwr1xx6gdy5rl6hn1wwnwam4p"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-consult" ,emacs-consult)
("notmuch" ,notmuch)))
("emacs-notmuch" ,emacs-notmuch)))
(home-page "https://codeberg.org/jao/consult-notmuch")
(synopsis "Search and preview Notmuch emails using Consult")
(description
@ -9484,6 +9512,8 @@ queries using counsel.")
`(("emacs-counsel" ,emacs-counsel)
("notmuch" ,notmuch)
("emacs-s" ,emacs-s)))
(propagated-inputs
`(("emacs-notmuch" ,emacs-notmuch)))
(home-page "https://github.com/fuxialexander/counsel-notmuch")
(synopsis "Search emails in Notmuch asynchronously with Ivy")
(description
@ -9903,7 +9933,7 @@ features:
(define-public emacs-typescript-mode
(package
(name "emacs-typescript-mode")
(version "0.3")
(version "0.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -9912,7 +9942,7 @@ features:
(file-name (git-file-name name version))
(sha256
(base32
"002f1xfhq43fjaqliwrgxspryfahpa82va5dw3p8kwil2xwvc6mh"))))
"186bpvqxx87kp3857mq0mzn1ddsvzmpijix810k6bdz8522x7zdw"))))
(build-system emacs-build-system)
(home-page "https://github.com/ananthakumaran/typescript.el")
(synopsis "Emacs major mode for editing Typescript code")
@ -12467,14 +12497,14 @@ extensibility.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~zge/autocrypt")
(url "https://git.sr.ht/~pkal/autocrypt")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0b06xnjkgwjpxl96mdi674pmvdaiwncifi1a30wxhl1dwr7kr084"))))
(build-system emacs-build-system)
(home-page "https://git.sr.ht/~zge/autocrypt")
(home-page "https://git.sr.ht/~pkal/autocrypt")
(synopsis "Autocrypt implementation for Emacs")
(description "@code{emacs-autocrypt} is an implementation of
Autocrypt (@url{https://autocrypt.org/}) for various Emacs MUAs. Autocrypt is
@ -12859,7 +12889,7 @@ type an abbreviation and automatically expand it into function templates.")
(define-public emacs-yasnippet-snippets
(package
(name "emacs-yasnippet-snippets")
(version "0.24")
(version "1.0")
(source
(origin
(method git-fetch)
@ -12868,7 +12898,7 @@ type an abbreviation and automatically expand it into function templates.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0ak0drxlg3m2v4ya5chpgl82rcl7ic2nmnybhpw1qk51mcmv643y"))))
(base32 "0m78jxhjyf4212ig2ncxr6bhhd6yx4c3nc8x4ylamzq21x4fl21r"))))
(build-system emacs-build-system)
(arguments
`(#:include (cons* "^snippets\\/" %default-include)))
@ -13747,6 +13777,28 @@ containing words from the Rime project.")
shuangpin, wubi and cangjie.")
(license license:gpl2+)))
(define-public emacs-pinyinlib
(package
(name "emacs-pinyinlib")
(version "0.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cute-jumper/pinyinlib.el")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1nwj4c3y0kdlkf3jqd2dnibaiazrq6qcj533xk2qw4wmx072yij0"))))
(build-system emacs-build-system)
(home-page "https://github.com/cute-jumper/pinyinlib.el")
(synopsis "Convert first letter of Pinyin to Chinese characters")
(description
"This Emacs library provides functionality for converting the first
letter of Pinyin to Simplified/Traditional Chinese characters.")
(license license:gpl3+)))
(define-public emacs-reverse-im
(package
(name "emacs-reverse-im")
@ -15632,14 +15684,14 @@ let users kill or mark things easily.")
(define-public emacs-csv-mode
(package
(name "emacs-csv-mode")
(version "1.15")
(version "1.16")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"csv-mode-" version ".tar"))
(sha256
(base32 "0pigqhqg5mfza6jdskcr9yvrzdxnd68iyp3vyb8p8wskdacmbiyx"))))
(base32 "1i43b2p31xhrf97xbdi35y550ysp69fasa5gcrhg6iyxw176807p"))))
(build-system emacs-build-system)
(home-page "https://elpa.gnu.org/packages/csv-mode.html")
(synopsis "Major mode for editing comma/char separated values")
@ -15873,7 +15925,7 @@ Features:
(define-public emacs-evil-matchit
(package
(name "emacs-evil-matchit")
(version "2.3.13")
(version "2.4.0")
(source
(origin
(method git-fetch)
@ -15882,7 +15934,7 @@ Features:
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1j1p4z6ps58nbsh55l9h30gxbkrzwzkjpq7zl50q6yfc84z7byzk"))))
(base32 "1ls58wdjhs4q18bj3izflj0bb5fwafyr520y1j9kj29clqn73kxh"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-evil" ,emacs-evil)))
@ -18761,10 +18813,10 @@ notes.")
(license license:gpl3+)))
(define-public emacs-org-reveal
(let ((commit "84039bb499290926511b04749882ecb5eda45a0c"))
(let ((commit "fe9148b670d144124d9697fcf5d0528f19025104"))
(package
(name "emacs-org-reveal")
(version (git-version "20200607" "1" commit))
(version (git-version "20210902" "1" commit))
(source (origin
(method git-fetch)
(uri (git-reference
@ -18773,7 +18825,7 @@ notes.")
(file-name (git-file-name name version))
(sha256
(base32
"1fx3xmnkpfljrdmy0dsyq79k93ky57gcqm1ad9qbzykk7qjvmmi8"))))
"034gkbc03z9jzj7ad34mmqgmvj4f14ap7iixh3zx4wp2ipw5xb7c"))))
(build-system emacs-build-system)
(home-page "https://github.com/yjwen/org-reveal")
(synopsis "Org and Reveal.js powered HTML presentation tool")
@ -23538,7 +23590,7 @@ the standard @code{Dockerfile} file format.")
(define-public emacs-lsp-mode
(package
(name "emacs-lsp-mode")
(version "7.0.1")
(version "8.0.0")
(source
(origin
(method git-fetch)
@ -23547,8 +23599,19 @@ the standard @code{Dockerfile} file format.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1z8zm7qr21hvhl6rnbznv2l9drh1pp5y4zkjrx5ac4x77b8i4aaz"))))
(base32 "1a6jc9sxf9b8fj9h8xlv5k546bkzsy8j5nj19cfama389z0bzcsl"))))
(build-system emacs-build-system)
(arguments
`(#:emacs ,emacs ;need libxml support
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'move-clients-libraries
;; Move all clients libraries at top-level, as is done, e.g., in
;; MELPA.
(lambda _
(for-each (lambda (f)
(install-file f "."))
(find-files "clients/" "\\.el$")))))))
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
("emacs-f" ,emacs-f)
@ -23568,7 +23631,7 @@ Projectile.")
(define-public emacs-lsp-treemacs
(package
(name "emacs-lsp-treemacs")
(version "0.3")
(version "0.4")
(source
(origin
(method git-fetch)
@ -23577,7 +23640,7 @@ Projectile.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1z9cb7i546pbzvxii6lsj31jq8m70xrzscphl5z71vh93sydyhkb"))))
(base32 "05ivqa5900139jzjhwc3nggwznhm8564dz4ydcxym2ddd63571k0"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-lsp-mode" ,emacs-lsp-mode)
@ -23592,7 +23655,7 @@ and implementation of treeview controls using treemacs as a tree renderer.")
(define-public emacs-dap-mode
(package
(name "emacs-dap-mode")
(version "0.6")
(version "0.7")
(source
(origin
(method git-fetch)
@ -23601,7 +23664,7 @@ and implementation of treeview controls using treemacs as a tree renderer.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1d4hdydfk86d4slibigyhwng8wx3vzyap8hp5iv0h7wr6868m4iv"))))
(base32 "1zczmcv8562lachkvcwy6njn7zkgny08iznpmrx821wr8mh52wnn"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-bui" ,emacs-bui)
@ -23830,7 +23893,7 @@ files in Elisp.")
(define-public emacs-lsp-ui
(package
(name "emacs-lsp-ui")
(version "7.0.1")
(version "8.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -23839,7 +23902,7 @@ files in Elisp.")
(file-name (git-file-name name version))
(sha256
(base32
"09dmhhxmfjnzdc5kygwsjf8nwqlnq9rbgrca679s2wy93miqj7vc"))))
"00yirx6qzlb8fv8rd53zaw93nw72z3br40rb16scdqj1v20qsp47"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
@ -23880,7 +23943,7 @@ and code peeking.")
(define-public emacs-lsp-ivy
(package
(name "emacs-lsp-ivy")
(version "0.4")
(version "0.5")
(source
(origin
(method git-fetch)
@ -23889,7 +23952,7 @@ and code peeking.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "08dpn0vcfdwwysijwdpnnj91m69yw0q464i0wmp51zpj3dyd4kb1"))))
(base32 "0nb9ypa8hyx7i38rbywh8hn2i5f9l2l567hvdr9767fk279yr97n"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
@ -23944,7 +24007,7 @@ workspaces with a LSP-compliant server running.")
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-helm" ,emacs-helm)
("notmuch" ,notmuch)))
("emacs-notmuch" ,emacs-notmuch)))
(synopsis "Search emails with Emacs Notmuch and Helm")
(description
"This package can be used to search emails in Emacs, searching result
@ -23967,7 +24030,7 @@ real search.")
"0pmikf1djkr07067nkgmdcxyn7l7ibswx6qlnai8v1v51f9h1g9q"))))
(build-system emacs-build-system)
(propagated-inputs
`(("notmuch" ,notmuch)))
`(("emacs-notmuch" ,emacs-notmuch)))
(home-page "https://git.sr.ht/~tarsius/notmuch-maildir")
(synopsis "Visualize maildirs as a tree")
(description
@ -26592,7 +26655,7 @@ other @code{helm-type-file} sources such as @code{helm-locate}.")
(define-public emacs-telega-server
(package
(name "emacs-telega-server")
(version "0.7.025")
(version "0.7.030")
(source
(origin
(method git-fetch)
@ -26600,25 +26663,24 @@ other @code{helm-type-file} sources such as @code{helm-locate}.")
(url "https://github.com/zevlg/telega.el")
(commit (string-append "v" version))))
(sha256
(base32 "1fdvghwpmja94d65p02j7wa09lwjs3ah1kfb1v17b6l9qd5g80nc"))
(base32 "1g29v5fgkqx43wsvh1npx0g3hj00n37lxgvxjvy85fs4h9226gl9"))
(file-name (git-file-name "emacs-telega" version))
(patches
(search-patches "emacs-telega-path-placeholder.patch"
"emacs-telega-test-env.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
`(#:make-flags
(list (string-append "CC=" ,(cc-for-target))
(string-append "INSTALL_PREFIX="
(assoc-ref %outputs "out") "/bin"))
#:phases
(modify-phases %standard-phases
(add-before 'configure 'enter-subdirectory
(lambda _ (chdir "server") #t))
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* "Makefile"
(("CC=cc") ,(string-append "CC=" (cc-for-target)))
(("^(INSTALL_PREFIX=).*$" _all prefix)
(string-append prefix out "/bin\n")))
(substitute* "run_tests.py"
(("^(TELEGA_SERVER = ).*$" _all prefix)
(string-append prefix
@ -26651,6 +26713,7 @@ service, and connect it with Emacs via inter-process communication.")
emacs-minimal
;; Require wide-int support for 32-bit platform.
emacs-wide-int)
#:include (cons "^etc\\/" %default-include)
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-sources
@ -26677,24 +26740,8 @@ service, and connect it with Emacs via inter-process communication.")
(search-input-file inputs "/bin/telega-server")))
(substitute* "telega-util.el"
(("@TELEGA_SHARE@")
(string-append (assoc-ref outputs "out")
"/share/emacs-telega")))))
(add-after 'install 'install-share-files
(lambda* (#:key outputs #:allow-other-keys)
(define install-plan
'("langs" "sounds" "emojis.alist"
"verified.svg" "telega-logo.svg"))
(define prefix (string-append (assoc-ref outputs "out")
"/share/emacs-telega"))
(with-directory-excursion "etc"
(for-each (lambda (file)
(if (file-is-directory? file)
(let ((dest (string-append prefix "/" file)))
(copy-recursively file dest))
(install-file file prefix)))
install-plan))
#t)))))
(string-append (elpa-directory (assoc-ref outputs "out"))
"/etc"))))))))
(inputs
`(("emacs-telega-server" ,emacs-telega-server)
("ffmpeg" ,ffmpeg)))
@ -28223,6 +28270,15 @@ snippets for Emacs.")
(arguments
`(#:phases
(modify-phases %standard-phases
;; Move the extensions source files to the top level, which is included in
;; the EMACSLOADPATH.
(add-after 'unpack 'move-source-files
(lambda _
(let ((el-files (find-files "./extensions" ".*\\.el$")))
(for-each (lambda (f)
(rename-file f (basename f)))
el-files))
#t))
(add-after 'install 'install-image
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@ -28504,7 +28560,7 @@ rather excellent completion provided by both Bash and Zsh.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~zge/bang")
(url "https://git.sr.ht/~pkal/shell-command-plus")
(commit version)))
(file-name (git-file-name name version))
(sha256

View File

@ -2417,7 +2417,7 @@ comments.")))
("libtheora" ,libtheora)
("libtiff" ,libtiff)
("libxi" ,libxi)
("libxmlplusplus" ,libxmlplusplus)
("libxml++" ,libxml++)
("libxmu" ,libxmu)
("lz4" ,lz4)
("netcdf" ,netcdf)

View File

@ -6215,7 +6215,7 @@ small robot living in the nano world, repair its maker.")
#t))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no tests included
`(#:test-target "run_tests"
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
@ -6227,9 +6227,17 @@ small robot living in the nano world, repair its maker.")
(assoc-ref outputs "out")
"/share/teeworlds/data"
"\"")))
#t))
(add-after 'unpack 'replace-font
(lambda* (#:key inputs #:allow-other-keys)
(delete-file "datasrc/fonts/DejaVuSans.ttf")
(symlink (string-append (assoc-ref inputs "font-dejavu")
"/share/fonts/truetype/DejaVuSans.ttf")
"datasrc/fonts/DejaVuSans.ttf")
#t)))))
(inputs
`(("freetype" ,freetype)
("font-dejavu" ,font-dejavu)
("glu" ,glu)
("json-parser" ,json-parser)
("mesa" ,mesa)
@ -6241,7 +6249,8 @@ small robot living in the nano world, repair its maker.")
("openssl" ,openssl)
("zlib" ,zlib)))
(native-inputs
`(("python" ,python-wrapper)
`(("googletest" ,googletest)
("python" ,python-wrapper)
("pkg-config" ,pkg-config)))
(home-page "https://www.teeworlds.com")
(synopsis "2D retro multiplayer shooter game")
@ -7180,7 +7189,7 @@ elements to achieve a simple goal in the most complex way possible.")
(define-public pioneer
(package
(name "pioneer")
(version "20210203")
(version "20210723")
(source (origin
(method git-fetch)
(uri (git-reference
@ -7189,7 +7198,7 @@ elements to achieve a simple goal in the most complex way possible.")
(file-name (git-file-name name version))
(sha256
(base32
"1zyi1xyghj99hz8fa6dywpscj6flp04fspnlgxbivf3rgmnxflg7"))))
"1hj99jxb9n3r0bkq87p1c24862xa1xyzjyfdyyx88ckszxb05qf3"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -12449,3 +12458,35 @@ wreckage. You're stranded on a desert island and have to survive. In order to
do so you need to explore the island, find food, build a shelter and try to
get attention, so you get found.")
(license license:cc-by4.0))))
(define-public fheroes2
(package
(name "fheroes2")
(version "0.9.7")
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no tests
#:make-flags '("FHEROES2_STRICT_COMPILATION=1"
"RELEASE=1")))
(native-inputs
`(("gettext" ,gettext-minimal)))
(inputs
`(("libpng" ,libpng)
("sdl" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))
("zlib" ,zlib)))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ihhub/fheroes2")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0v3zh8a8yxfikcr5vkmy36c57l4nmwisz13mjavn5f7yrirf86fn"))))
(home-page "https://ihhub.github.io/fheroes2/")
(synopsis "Turn-based strategy game engine")
(description "@code{fheroes2} is an implementation of Heroes of Might and
Magic II (aka HOMM2) game engine. It requires assets and game resources to
play; it will look for them at @file{~/.local/share/fheroes2} folder.")
(license license:gpl2)))

View File

@ -1397,7 +1397,7 @@ to the OSM opening hours specification.")
(define-public josm
(package
(name "josm")
(version "18118")
(version "18193")
(source (origin
(method svn-fetch)
(uri (svn-reference
@ -1406,7 +1406,7 @@ to the OSM opening hours specification.")
(recursive? #f)))
(sha256
(base32
"0109ddpxilm7f57n1kl4nf4lw0lh7jfmhfwf724nzlcz4k23mrs0"))
"162hdck29bkag1d97nisx8v7395pdw00bl7nf0p02hr30fc1fcrh"))
(file-name (string-append name "-" version "-checkout"))
(modules '((guix build utils)))
(snippet

View File

@ -1800,7 +1800,7 @@ either on a local, or remote machine via a number of methods.")
(define-public gnome-commander
(package
(name "gnome-commander")
(version "1.10.3")
(version "1.12.2")
(source
(origin
(method url-fetch)
@ -1808,7 +1808,7 @@ either on a local, or remote machine via a number of methods.")
(version-major+minor version) "/"
"gnome-commander-" version ".tar.xz"))
(sha256
(base32 "0bis36awb73vhkncq8yr0qlnyaxynqkvmyqbg57ijqwd0m8hh4zg"))))
(base32 "0f7l2pkyh3r1qk4hhavl7387l3bq5my3snpdppiavcpnji28dpa5"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("desktop-file-utils" ,desktop-file-utils)
@ -4177,7 +4177,7 @@ engineering.")
(define-public drawing
(package
(name "drawing")
(version "0.8.2")
(version "0.8.3")
(source
(origin
(method git-fetch)
@ -4186,7 +4186,7 @@ engineering.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0lpszd8276rp5chn84rkvwmnflxc3pqlg4cz53gfxkqdb3gn02zz"))))
(base32 "0wz9p47riyy3h8b0sqsb6bx416hc6d1a1wyzlfmsxkrqrkwcjcm8"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@ -4203,8 +4203,7 @@ engineering.")
"/site-packages")))
(wrap-program prog
`("PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH") ,pylib))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
#t))))))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))))))))
(native-inputs
`(("desktop-file-utils" ,desktop-file-utils)
("gettext" ,gettext-minimal)
@ -7999,43 +7998,75 @@ the available networks and allows users to easily switch between them.")
(define-public libxml++
(package
(name "libxml++")
(version "3.0.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"19kik79fmg61nv0by0a5f9wchrcfjwzvih4v2waw01hqflhqvp0r"))))
(version "3.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libxmlplusplus/libxmlplusplus")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0wjz591rjlgbah7dcq8i0yn0zw9d62b7g6r0pppx81ic0cx8n8ga"))))
(build-system gnu-build-system)
;; libxml++-3.0.pc refers to all these.
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-documentation
(lambda* (#:key inputs #:allow-other-keys)
(let ((xmldoc (string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook"))
(xsldoc (string-append (assoc-ref inputs "docbook-xsl")
"/xml/xsl/docbook-xsl-"
,(package-version docbook-xsl))))
(substitute* '("examples/dom_xpath/example.xml"
"docs/manual/libxml++_without_code.xml")
(("http://.*/docbookx\\.dtd")
(string-append xmldoc "/docbookx.dtd")))
(setenv "SGML_CATALOG_FILES"
(string-append xmldoc "/catalog.xml"))
(substitute* "docs/manual/docbook-customisation.xsl"
(("http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl")
(string-append xsldoc "/html/chunk.xsl")))))))))
(propagated-inputs
`(("libxml2" ,libxml2)
("glibmm" ,glibmm-2.64)))
;; libxml++-3.0.pc refers to all these.
`(("glibmm" ,glibmm)
("libxml2" ,libxml2)))
(native-inputs
`(("perl" ,perl)
`(("autoconf" ,autoconf)
("automake" ,automake)
("doxygen" ,doxygen)
("docbook-xml" ,docbook-xml)
("docbook-xsl" ,docbook-xsl)
("graphviz" ,graphviz) ; for dot
("libtool" ,libtool)
("libxslt" ,libxslt)
("mm-common" ,mm-common)
("perl" ,perl)
("pkg-config" ,pkg-config)))
(home-page "http://libxmlplusplus.sourceforge.net/")
(synopsis "C++ wrapper for XML parser library libxml2")
(home-page "https://github.com/libxmlplusplus/libxmlplusplus/")
(synopsis "C++ bindings to the libxml2 XML parser library")
(description
"This package provides a C++ wrapper for the XML parser library
libxml2.")
"This package provides a C++ interface to the libxml2 XML parser
library.")
(license license:lgpl2.1+)))
;; This is the last release providing the 2.6 API, hence the name.
;; This is needed by tascam-gtk
(define-public libxml++-2
(package
(inherit libxml++)
(name "libxml++")
(version "2.40.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"1sb3akryklvh2v6m6dihdnbpf1lkx441v972q9hlz1sq6bfspm2a"))))))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libxmlplusplus/libxmlplusplus")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0gbfi4l88w828gmyc9br11l003ylyi4vigp5d1kfgsn0k4cig3y9"))))))
(define-public gdm
(package
@ -12024,7 +12055,7 @@ integrated profiler via Sysprof, debugging support, and more.")
(define-public komikku
(package
(name "komikku")
(version "0.30.0")
(version "0.31.0")
(source
(origin
(method git-fetch)
@ -12034,7 +12065,7 @@ integrated profiler via Sysprof, debugging support, and more.")
(file-name (git-file-name name version))
(sha256
(base32
"1l6iqxa497fisn64mn2qgia4y6zryfa5pbnd8609flfi9qmgrzn7"))))
"0vldcjq24y4xxg8dzlyhfpqxbqn5g160lz1lmmkp7g9im2zrxh52"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t

View File

@ -692,8 +692,8 @@ from forcing GEXP-PROMISE."
#:system system
#:guile-for-build guile)))
(define %icecat-version "78.13.0-guix0-preview1")
(define %icecat-build-id "20210810000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-version "78.14.0-guix0-preview1")
(define %icecat-build-id "20210907000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@ -715,7 +715,7 @@ from forcing GEXP-PROMISE."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"0v2g5clp9qlsbqfjb6yz614nq8x8c4k1p6m4axyv6g27qbiaky8r"))))
"1ymjlg6p23c510m764pqr4sldrvk0c7g490a29js2cqc2nj2h3ma"))))
(upstream-icecat-base-version "78.7.0") ; maybe older than base-version
;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version))

View File

@ -458,7 +458,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package
(inherit go-1.14)
(name "go")
(version "1.16.7")
(version "1.16.8")
(source
(origin
(method git-fetch)
@ -468,7 +468,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(file-name (git-file-name name version))
(sha256
(base32
"1id6nsavf7gm78bmzsvym135pi2xa0v75ny51xrw93j70clz9w0h"))))
"00zv65v09kr2cljxxqypk980r4b4aqjijhbw4ikppn8km68h831n"))))
(arguments
(substitute-keyword-arguments (package-arguments go-1.14)
((#:tests? _) #t)
@ -613,6 +613,188 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(alist-replace "go" (list gccgo-10) (package-native-inputs go-1.14))
(package-native-inputs go-1.14))))))
(define-public go-1.17
(package
(inherit go-1.16)
(name "go")
(version "1.17.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/golang/go")
(commit (string-append "go" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0wk99lwpzp4qwrksl932lm9vb70nyf4vgb5lxwh7gzjcbhlqj992"))))
(outputs '("out" "tests")) ; 'tests' contains distribution tests.
(arguments
`(#:modules ((ice-9 match)
(guix build gnu-build-system)
(guix build utils))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((output (assoc-ref outputs "out"))
(loader (string-append (assoc-ref inputs "libc")
,(glibc-dynamic-linker))))
(setenv "GOOS" "linux")
(setenv "GO_LDSO" loader)
(setenv "GOROOT" (getcwd))
(setenv "GOROOT_FINAL" (string-append output "/lib/go"))
(setenv "GOGC" "400")
(setenv "GOCACHE" "/tmp/go-cache"))))
(add-after 'unpack 'patch-source
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((net-base (assoc-ref inputs "net-base"))
(tzdata-path (string-append (assoc-ref inputs "tzdata")
"/share/zoneinfo")))
;; XXX: Remove when #49729 is merged?
(for-each make-file-writable (find-files "src"))
;; Having the patch in the 'patches' field of <origin> breaks
;; the 'TestServeContent' test due to the fact that
;; timestamps are reset. Thus, apply it from here.
(invoke "patch" "-p1" "--force" "-i"
(assoc-ref inputs "go-skip-gc-test.patch"))
(invoke "patch" "-p1" "--force" "-i"
(assoc-ref inputs "go-fix-script-tests.patch"))
(substitute* "src/os/os_test.go"
(("/usr/bin") (getcwd))
(("/bin/sh") (which "sh")))
(substitute* "src/cmd/go/testdata/script/cgo_path_space.txt"
(("/bin/sh") (which "sh")))
;; fix shebang for testar script
;; note the target script is generated at build time.
(substitute* "misc/cgo/testcarchive/carchive_test.go"
(("/usr/bin/env bash") (which "bash")))
(substitute* "src/net/lookup_unix.go"
(("/etc/protocols")
(string-append net-base "/etc/protocols")))
(substitute* "src/net/port_unix.go"
(("/etc/services")
(string-append net-base "/etc/services")))
(substitute* "src/time/zoneinfo_unix.go"
(("/usr/share/zoneinfo/") tzdata-path)))))
(add-after 'patch-source 'disable-failing-tests
(lambda _
;; Disable failing tests: these tests attempt to access
;; commands or network resources which are neither available
;; nor necessary for the build to succeed.
(for-each
(match-lambda
((file test)
(let ((regex (string-append "^(func\\s+)(" test "\\()")))
(substitute* file
((regex all before test_name)
(string-append before "Disabled" test_name))))))
'(("src/net/cgo_unix_test.go" "TestCgoLookupPort")
("src/net/cgo_unix_test.go" "TestCgoLookupPortWithCancel")
;; 127.0.0.1 doesn't exist
("src/net/cgo_unix_test.go" "TestCgoLookupPTR")
("src/net/cgo_unix_test.go" "TestCgoLookupPTRWithCancel")
;; /etc/services doesn't exist
("src/net/parse_test.go" "TestReadLine")
;; The user's directory doesn't exist
("src/os/os_test.go" "TestUserHomeDir")))
;; These tests fail on aarch64-linux
(substitute* "src/cmd/dist/test.go"
(("t.registerHostTest\\(\"testsanitizers/msan.*") ""))))
(add-after 'patch-source 'enable-external-linking
(lambda _
;; Invoke GCC to link any archives created with GCC (that is, any
;; packages built using 'cgo'), because Go doesn't know how to
;; handle the runpaths but GCC does. Use substitute* rather than
;; a patch since these files are liable to change often.
;;
;; XXX: Replace with GO_EXTLINK_ENABLED=1 or similar when
;; <https://github.com/golang/go/issues/31544> and/or
;; <https://github.com/golang/go/issues/43525> are resolved.
(substitute* "src/cmd/link/internal/ld/config.go"
(("iscgo && externalobj") "iscgo"))
(substitute* '("src/cmd/nm/nm_cgo_test.go"
"src/cmd/dist/test.go")
(("^func.*?nternalLink\\(\\).*" all)
(string-append all "\n\treturn false\n")))))
(replace 'build
(lambda* (#:key (parallel-build? #t) #:allow-other-keys)
(let* ((njobs (if parallel-build? (parallel-job-count) 1)))
(with-directory-excursion "src"
(setenv "GOMAXPROCS" (number->string njobs))
(invoke "sh" "make.bash" "--no-banner")))))
(replace 'check
(lambda* (#:key target (tests? (not target)) (parallel-tests? #t)
#:allow-other-keys)
(let* ((njobs (if parallel-tests? (parallel-job-count) 1)))
(when tests?
(with-directory-excursion "src"
(setenv "GOMAXPROCS" (number->string njobs))
(invoke "sh" "run.bash" "--no-rebuild"))))))
(add-before 'install 'unpatch-perl-shebangs
(lambda _
;; Avoid inclusion of perl in closure by rewriting references
;; to perl input in sourcecode generators and test scripts
(substitute* (cons "src/net/http/cgi/testdata/test.cgi"
(find-files "src" "\\.pl$"))
(("^#!.*") "#!/usr/bin/env perl\n"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
;; Notably, we do not install archives (180M), which Go will
;; happily recompile quickly (and cache) if needed, almost
;; surely faster than they could be substituted.
;;
;; The main motivation for pre-compiled archives is to use
;; libc-linked `net' or `os' packages without a C compiler,
;; but on Guix a C compiler is necessary to properly link the
;; final binaries anyway. Many build flags also invalidate
;; these pre-compiled archives, so in practice Go often
;; recompiles them anyway.
;;
;; Upstream is also planning to no longer install these
;; archives: <https://github.com/golang/go/issues/47257>
;;
;; When necessary, a custom pre-compiled library package can
;; be created with `#:import-path "std"' and used with
;; `-pkgdir'.
(let* ((out (assoc-ref outputs "out"))
(tests (assoc-ref outputs "tests")))
(for-each
(lambda (file)
(copy-recursively file (string-append out "/lib/go/" file)))
'("lib" "VERSION" "pkg/include" "pkg/tool"))
(for-each
(match-lambda
((file dest output)
;; Copy to output/dest and symlink from output/lib/go/file.
(let ((file* (string-append output "/lib/go/" file))
(dest* (string-append output "/" dest)))
(copy-recursively file dest*)
(mkdir-p (dirname file*))
(symlink (string-append "../../" dest) file*))))
`(("bin" "bin" ,out)
("src" "share/go/src" ,out)
("misc" "share/go/misc" ,out)
("doc" "share/doc/go/doc" ,out)
("api" "share/go/api" ,tests)
("test" "share/go/test" ,tests))))))
(add-after 'install 'install-doc-files
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(for-each
(lambda (file)
(install-file file (string-append out "/share/doc/go")))
'("AUTHORS" "CONTRIBUTORS" "CONTRIBUTING.md" "PATENTS"
"README.md" "SECURITY.md"))))))))
(inputs (alist-delete "gcc:lib" (package-inputs go-1.16)))))
(define-public go go-1.14)
(define-public go-0xacab-org-leap-shapeshifter
@ -1381,6 +1563,12 @@ Go.")
(url "https://github.com/sevlyar/go-daemon")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet
;; XXX: Remove when updating
'(begin
(substitute* "compilation_test.go"
((".*\"darwin/386\".*") ""))))
(sha256
(base32 "1y3gnxaifykcjcbzx91lz9bc93b95w3xj4rjxjbii26pm3j7gqyk"))))
(build-system go-build-system)
@ -1420,7 +1608,9 @@ Go.")
(("/bin/sleep" command)
(string-append
(assoc-ref (or native-inputs inputs) "coreutils")
command))))))))
command)))
(substitute* "src/github.com/keybase/go-ps/process_openbsd.go"
(("^// \\+build ignore") "")))))))
(native-inputs
`(("coreutils" ,coreutils)
("go-github-com-stretchr-testify"
@ -2759,6 +2949,68 @@ developers to use @code{http} methods explicitly and in a way that's consistent
with the HTTP protocol definition.")
(license license:expat)))
(define-public go-cloud-google-com-go-compute-metadata
(package
(name "go-cloud-google-com-go-compute-metadata")
(version "0.81.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/googleapis/google-cloud-go")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"15jgynqb5pbxqbj3a7ii970yn4srsw1dbxzxnhpkfkmplalpgyh3"))))
(build-system go-build-system)
(arguments
'(#:unpack-path "cloud.google.com/go"
#:import-path "cloud.google.com/go/compute/metadata"))
(home-page
"https://pkg.go.dev/cloud.google.com/go/compute/metadata")
(synopsis
"Go wrapper for Google Compute Engine metadata service")
(description
"This package provides access to Google Compute Engine (GCE) metadata and
API service accounts for Go.")
(license license:asl2.0)))
(define-public go-github-com-google-gmail-oauth2-tools-go-sendgmail
(let ((commit "e3229155a4037267ce40f1a3a681f53221aa4d8d")
(revision "0"))
(package
(name "go-github-com-google-gmail-oauth2-tools-go-sendgmail")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/gmail-oauth2-tools")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1cxpkiaajhq1gjsg47r2b5xgck0r63pvkyrkm7af8c8dw7fyn64f"))))
(propagated-inputs
`(("go-golang-org-x-oauth2" ,go-golang-org-x-oauth2)
("go-cloud-google-com-go-compute-metadata"
,go-cloud-google-com-go-compute-metadata)))
(build-system go-build-system)
(arguments
'(#:unpack-path "github.com/google/gmail-oauth2-tools"
#:import-path "github.com/google/gmail-oauth2-tools/go/sendgmail"))
(home-page
"https://github.com/google/gmail-oauth2-tools/tree/master/go/sendgmail")
(synopsis
"Sendmail-compatible tool for using Gmail with @code{git send-email}")
(description
"The @command{sendgmail} command provides a minimal sendmail-compatible
front-end that connects to Gmail using OAuth2. It is specifically designed
for use with @code{git send-email}. The command needs a Gmail API key to
function.")
(license license:asl2.0))))
(define-public go-github-com-google-cadvisor
(let ((commit "2ed7198f77395ee9a172878a0a7ab92ab59a2cfd")
(revision "0"))
@ -4791,7 +5043,8 @@ as conversion to and from @command{net.Addr}.")
(file-name (git-file-name name version))
(sha256
(base32
"10mcnvi5qmn00vpyk6si8gjka7p654wr9hac4zc9w5h3ickhvbdc"))))
"10mcnvi5qmn00vpyk6si8gjka7p654wr9hac4zc9w5h3ickhvbdc"))
(patches (search-patches "go-github-com-urfave-cli-fix-tests.patch"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/urfave/cli"))
@ -4817,7 +5070,10 @@ fast and distributable command line applications in an expressive way.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "08pvn7gyfznni72xrxfh2x6xxa8ykr7l1ka278js8g8qkh71bj8l"))))
(base32 "08pvn7gyfznni72xrxfh2x6xxa8ykr7l1ka278js8g8qkh71bj8l"))
;; XXX: Remove patch when updating.
(patches
(search-patches "go-github-com-urfave-cli-v2-fix-tests.patch"))))
(arguments
'(#:import-path "github.com/urfave/cli/v2"))))

View File

@ -28,6 +28,7 @@
;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@member.fsf.org>
;;; Copyright © 2020 Carlo Holl <carloholl@gmail.com>
;;; Copyright © 2020 Christine Lemmer-Webber <cwebber@dustycloud.org>
;;; Copyright © 2021 Alice BRENON <alice.brenon@ens-lyon.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -9764,7 +9765,7 @@ version = Version [~a] []
("ghc-test-framework-hunit" ,ghc-test-framework-hunit)
("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2)
("ghc-hunit" ,ghc-hunit)))
(home-page "https://johnmacfarlane.net/pandoc")
(home-page "https://pandoc.org")
(synopsis "Types for representing a structured document")
(description
"This module defines the @code{Pandoc} data structure, which is used by

View File

@ -21,6 +21,7 @@
;;; Copyright © 2019 Jacob MacDonald <jaccarmac@gmail.com>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -610,9 +611,14 @@ interactive environment for the functional language Haskell.")
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory))))))
;; Versions newer than ghc defined below (i.e. the compiler
;; haskell-build-system uses) should use ghc-next as their name to
;; ensure ghc (without version specification) and ghc-* packages are
;; always compatible. See https://issues.guix.gnu.org/issue/47335.
(define-public ghc-8.8
(package (inherit ghc-8.6)
(name "ghc")
(name "ghc-next")
(version "8.8.4")
(source
(origin
@ -662,6 +668,60 @@ interactive environment for the functional language Haskell.")
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory))))))
(define-public ghc-8.10
(package
(inherit ghc-8.8)
(name "ghc-next")
(version "8.10.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/ghc/dist/"
version "/ghc-" version "-src.tar.xz"))
(sha256
(base32 "179ws2q0dinl1a39wm9j37xzwm84zfz3c5543vz8v479khigdvp3"))))
(native-inputs
`(("ghc-bootstrap" ,ghc-8.8)
("ghc-testsuite"
,(origin
(method url-fetch)
(uri (string-append
"https://www.haskell.org/ghc/dist/"
version "/ghc-" version "-testsuite.tar.xz"))
(patches (search-patches "ghc-testsuite-dlopen-pie.patch"))
(sha256
(base32
"1zl25gg6bpx5601k8h3cqnns1xfc0nqgwnh8jvn2s65ra3f2g1nz"))))
("git" ,git-minimal) ; invoked during tests
,@(filter (match-lambda
(("ghc-bootstrap" . _) #f)
(("ghc-testsuite" . _) #f)
(_ #t))
(package-native-inputs ghc-8.8))))
(arguments
(substitute-keyword-arguments (package-arguments ghc-8.8)
((#:phases phases '%standard-phases)
`(modify-phases ,phases
(add-after 'unpack-testsuite 'patch-more-shebangs
(lambda* (#:key inputs #:allow-other-keys)
(let ((bash (assoc-ref inputs "bash")))
(substitute* '("testsuite/tests/driver/T8602/T8602.script")
(("/bin/sh")
(string-append bash "/bin/sh"))))))
;; Mark failing tests as broken. Reason for failure is unknown.
(add-after 'skip-more-tests 'skip-even-more-tests
(lambda _
(substitute* '("testsuite/tests/driver/T16521/all.T")
(("extra_files" all) (string-append "[" all))
(("\\]\\), " all)
(string-append all "expect_broken(0)], ")))))))))
(native-search-paths (list (search-path-specification
(variable "GHC_PACKAGE_PATH")
(files (list
(string-append "lib/ghc-" version)))
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory))))))
(define-public ghc-8 ghc-8.6)
(define-public ghc ghc-8)

View File

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2019, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -339,8 +340,9 @@ wrapping notes into KMime::Message objects.")
""))
#t))
(replace 'check
(lambda _
(invoke "dbus-launch" "ctest"))))))
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "dbus-launch" "ctest")))))))
(home-page "https://api.kde.org/kdepim/akonadi/html/index.html")
(synopsis "Akonadi search library")
(description "This package provides a library used to search in the
@ -1014,8 +1016,9 @@ protocol for querying and modifying directory services running over TCP/IP. ")
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "dbus-launch" "ctest" ".")
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "dbus-launch" "ctest" "."))
#t)))))
(home-page "https://kde.org/applications/utilities/org.kde.kleopatra")
(synopsis "Certificate Manager and Unified Crypto GUI")
@ -1104,8 +1107,9 @@ and retrieving certificates from LDAP servers.")
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "dbus-launch" "ctest" ".")
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "dbus-launch" "ctest" "."))
#t)))))
(home-page "https://kontact.kde.org/components/kmail.html")
(synopsis "Full featured graphical email client")
@ -1596,8 +1600,9 @@ application \"Parts\" to be embedded as a Kontact component (or plugin).")
""))
#t))
(replace 'check
(lambda _
(invoke "dbus-launch" "ctest" ".")
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "dbus-launch" "ctest" "."))
#t)))))
(home-page "https://kontact.kde.org/components/korganizer.html")
(synopsis "Organizational assistant, providing calendars and other similar

View File

@ -19,7 +19,7 @@
;;; Copyright © 2016, 2018 Rene Saavedra <pacoon@protonmail.com>
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017, 2018, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2018, 2020, 2021 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com>
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2017, 2019, 2021 Mathieu Othacehe <othacehe@gnu.org>
@ -200,24 +200,24 @@ defconfig. Return the appropriate make target if applicable, otherwise return
;;; Kernel source code deblobbing.
;;;
(define (linux-libre-deblob-scripts version
(define (linux-libre-deblob-scripts version gnu-revision
deblob-hash
deblob-check-hash)
(list (version-major+minor version)
(origin
(method url-fetch)
(uri (string-append "https://linux-libre.fsfla.org"
"/pub/linux-libre/releases/" version "-gnu/"
"/pub/linux-libre/releases/" version "-" gnu-revision "/"
"deblob-" (version-major+minor version)))
(file-name (string-append "linux-libre-deblob-"
version))
version "-" gnu-revision))
(sha256 deblob-hash))
(origin
(method url-fetch)
(uri (string-append "https://linux-libre.fsfla.org"
"/pub/linux-libre/releases/" version "-gnu/"
"/pub/linux-libre/releases/" version "-" gnu-revision "/"
"deblob-check"))
(file-name (string-append "linux-libre-deblob-check-" version))
(file-name (string-append "linux-libre-deblob-check-" version "-" gnu-revision))
(sha256 deblob-check-hash))))
(define* (computed-origin-method gexp-promise hash-algo hash
@ -335,21 +335,21 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;;; Kernel sources.
;;;
(define (linux-libre-urls version)
(define (linux-libre-urls version gnu-revision)
"Return a list of URLs for Linux-Libre VERSION."
(list (string-append
"https://linux-libre.fsfla.org/pub/linux-libre/releases/"
version "-gnu/linux-libre-" version "-gnu.tar.xz")
version "-" gnu-revision "/linux-libre-" version "-" gnu-revision ".tar.xz")
;; XXX: Work around <http://bugs.gnu.org/14851>.
(string-append
"ftp://alpha.gnu.org/gnu/guix/mirror/linux-libre-"
version "-gnu.tar.xz")
version "-" gnu-revision ".tar.xz")
;; Maybe this URL will become valid eventually.
(string-append
"mirror://gnu/linux-libre/" version "-gnu/linux-libre-"
version "-gnu.tar.xz")))
"mirror://gnu/linux-libre/" version "-" gnu-revision "/linux-libre-"
version "-" gnu-revision ".tar.xz")))
(define (%upstream-linux-source version hash)
(origin
@ -361,15 +361,32 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream.
(define-public linux-libre-5.13-version "5.13.13")
(define-public linux-libre-5.14-version "5.14.4")
(define-public linux-libre-5.14-gnu-revision "gnu")
(define deblob-scripts-5.14
(linux-libre-deblob-scripts
linux-libre-5.14-version
linux-libre-5.14-gnu-revision
(base32 "00vv2a51cvw2nx8iazmiy9i4h3jj9gvvpwz9gxp2v1hcmrsxq935")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-5.14-pristine-source
(let ((version linux-libre-5.14-version)
(hash (base32 "1dijf7qsjlqx893c2sxg5jrjdm8v1nv4hicvqlmp1v92s3h7kqj2")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.14)))
(define-public linux-libre-5.13-version "5.13.17")
(define-public linux-libre-5.13-gnu-revision "gnu1")
(define deblob-scripts-5.13
(linux-libre-deblob-scripts
linux-libre-5.13-version
(base32 "0bdqgxpc2vnj6m1nnrw8l5jpdglm0nlvjl6g44xryhy230ds0p9l")
(base32 "153jf5l5x4438zgxwggaky2ahjlfl48j438vhpzks6h77lzc51a5")))
linux-libre-5.13-gnu-revision
(base32 "0hj3w3vh1rj24xgl4v72mr6vaz1qzsnc5xzdfjga1zy84bw8lhkp")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-5.13-pristine-source
(let ((version linux-libre-5.13-version)
(hash (base32 "0d1lr3rivgf9j3bn2a9hpzdf74nq8kybf3rfxxvw68vr1hhd4cam")))
(hash (base32 "06qa3c8wx87l4mh9h8gjcra5k5l6bcirs59s7baxdfjkxlihvrsa")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.13)))
@ -377,80 +394,92 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-5.10-version "5.10.61")
(define-public linux-libre-5.10-version "5.10.65")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
linux-libre-5.10-version
(base32 "16w9r5h8r8j5ckq2brr15xgdq3ksr2pgwcmjx5a7bqry8a60i3m4")
(base32 "0c9x07gplzajm0h5if3fpw2rvfb7psw3yp7i2n6ws7ggq1dvmki2")))
linux-libre-5.10-gnu-revision
(base32 "19d1pdsilq1ycnx1zw3vhf9mwdxbi5nmgzm0g1kj1lkkf1y4i1mv")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "1lci78584c0rg5m5rkylssppnv001pzh4769m9mds4fdqn6f7sl2")))
(hash (base32 "0riyq1gdm18642fpnhpcw8hspcjqzprzhqnygjxabjjvrvdxxlzd")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
(define-public linux-libre-5.4-version "5.4.143")
(define-public linux-libre-5.4-version "5.4.146")
(define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
linux-libre-5.4-version
(base32 "12g1wm7xvjvmjanbgg0ahxm4vs2n5bvicfnnnag4h35vl4q3lggg")
(base32 "1xghbbnaisjd0k1klbyn1p7r6r4x5a1bpmkm56a3gh2zvw4s7mj8")))
linux-libre-5.4-gnu-revision
(base32 "1cdxljvmivdwcy9v9fr5iv0x0d1884pf3876p9nzrly599lz2wnl")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
(hash (base32 "090x087p8hxnc1daf2xwj7vg8hg1jhz5i4andkbhdy550l5nalq9")))
(hash (base32 "1bjkfk24j86akm6df3c5b28viyq363drhssml7rcrl69286f92dk")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.205")
(define-public linux-libre-4.19-version "4.19.206")
(define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
linux-libre-4.19-version
(base32 "1jfcz4lnm44b3xzrkiipvw35kl0vvdvhr2pg7jfwf02f6qbvay18")
(base32 "1jiaw0as1ippkrjdpd52657w5mz9qczg3y2hlra7m9k0xawwiqlf")))
linux-libre-4.19-gnu-revision
(base32 "1hiaagdyfy6b0f9ivdy7zq0cd6akaj6v3c4nzikrgsk12vgc1a1q")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
(hash (base32 "1ii9l44d6jxhyd5qkc5h83ixailma9v7hyl60wi3rskkafqnwv2m")))
(hash (base32 "1h44lvzxd0cngj71bk8qba9dz7jlqj68ir6xjwfafglb81ppgsxp")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
(define-public linux-libre-4.14-version "4.14.245")
(define-public linux-libre-4.14-version "4.14.246")
(define-public linux-libre-4.14-gnu-revision "gnu1")
(define deblob-scripts-4.14
(linux-libre-deblob-scripts
linux-libre-4.14-version
(base32 "07afckszdm4pq008i6ij0pxpw2rpgi5q931nxh6dxcczpicvwbc9")
(base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky")))
linux-libre-4.14-gnu-revision
(base32 "0cnax38650m9sxiwvc1xm5saymlsmx427j3jqpx34df2ah2rnrwf")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
(hash (base32 "085jls7b2rzxlmvp0zsp4l3wi5xdrqlv2qczzwvbhzna1f4n2x0d")))
(hash (base32 "0fpgig84shpas1jc0h4s3aw9brkcq1as84gjbk4bfhc48bpi4mlw")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
(define-public linux-libre-4.9-version "4.9.281")
(define-public linux-libre-4.9-version "4.9.282")
(define-public linux-libre-4.9-gnu-revision "gnu1")
(define deblob-scripts-4.9
(linux-libre-deblob-scripts
linux-libre-4.9-version
(base32 "1w8cb8w1cpcwswc3rxq6vwjafw6yy0igib34rrm93ag5h6inncfv")
(base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2")))
linux-libre-4.9-gnu-revision
(base32 "1n74ddrifnw06hx7ih2sk8jaiqlm1jyyhswyjpxiyhrrcvjcilch")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
(hash (base32 "1dg70jv3bqanmjs31s0x2p7nd5g37bqzjn9rc1y6wvkgm4pwahi6")))
(hash (base32 "059fin4si93ya13xy831w84q496ksxidpd3kyw38918sfy4p6wk7")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
(define-public linux-libre-4.4-version "4.4.282")
(define-public linux-libre-4.4-version "4.4.283")
(define-public linux-libre-4.4-gnu-revision "gnu1")
(define deblob-scripts-4.4
(linux-libre-deblob-scripts
linux-libre-4.4-version
(base32 "1lid4k7g947yi3hcjj0lz0fnssawbph3jsy67vrv57l5imrhv3zs")
(base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf")))
linux-libre-4.4-gnu-revision
(base32 "11397dgj6cdfv6anxrj7jwgvnqvwh5i0ci6c8mb85ry6h4fnfmq4")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.4-pristine-source
(let ((version linux-libre-4.4-version)
(hash (base32 "1rgxznjb6gsi64wk7x2rylyi64y2nx5yiah5gfm40c6l2f7lb9cc")))
(hash (base32 "1d9v4h4cbc4i371lhhwpxbmg88gna6xyi2ahfvv0clz60802y982")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.4)))
@ -483,6 +512,14 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(patches (append (origin-patches source)
patches))))
(define-public linux-libre-5.14-source
(source-with-patches linux-libre-5.14-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch
;; Pinebook Pro patch to fix LCD display
(search-patch
"linux-libre-arm64-generic-pinebook-lcd.patch"))))
(define-public linux-libre-5.13-source
(source-with-patches linux-libre-5.13-pristine-source
(list %boot-logo-patch
@ -530,14 +567,14 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;;; Kernel headers.
;;;
(define (make-linux-libre-headers version hash-string)
(make-linux-libre-headers* version
(define (make-linux-libre-headers version gnu-revision hash-string)
(make-linux-libre-headers* version gnu-revision
(origin
(method url-fetch)
(uri (linux-libre-urls version))
(uri (linux-libre-urls version gnu-revision))
(sha256 (base32 hash-string)))))
(define (make-linux-libre-headers* version source)
(define (make-linux-libre-headers* version gnu-revision source)
(package
(name "linux-libre-headers")
(version version)
@ -601,38 +638,50 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(description "Headers of the Linux-Libre kernel.")
(license license:gpl2)))
(define-public linux-libre-headers-5.14
(make-linux-libre-headers* linux-libre-5.14-version
linux-libre-5.14-gnu-revision
linux-libre-5.14-source))
(define-public linux-libre-headers-5.13
(make-linux-libre-headers* linux-libre-5.13-version
linux-libre-5.13-gnu-revision
linux-libre-5.13-source))
(define-public linux-libre-headers-5.10
(make-linux-libre-headers* linux-libre-5.10-version
linux-libre-5.10-gnu-revision
linux-libre-5.10-source))
(define-public linux-libre-headers-5.4
(make-linux-libre-headers* linux-libre-5.4-version
linux-libre-5.4-gnu-revision
linux-libre-5.4-source))
(define-public linux-libre-headers-4.19
(make-linux-libre-headers* linux-libre-4.19-version
linux-libre-4.19-gnu-revision
linux-libre-4.19-source))
(define-public linux-libre-headers-4.14
(make-linux-libre-headers* linux-libre-4.14-version
linux-libre-4.14-gnu-revision
linux-libre-4.14-source))
(define-public linux-libre-headers-4.9
(make-linux-libre-headers* linux-libre-4.9-version
linux-libre-4.9-gnu-revision
linux-libre-4.9-source))
(define-public linux-libre-headers-4.4
(make-linux-libre-headers* linux-libre-4.4-version
linux-libre-4.4-gnu-revision
linux-libre-4.4-source))
;; The following package is used in the early bootstrap, and thus must be kept
;; stable and with minimal build requirements.
(define-public linux-libre-headers-5.10.35
(make-linux-libre-headers "5.10.35"
(make-linux-libre-headers "5.10.35" "gnu"
"0q2rnchad55d49f3rajrkazz0fcjv1irwrdb1hwjnl01fzm2gjk3"))
(define-public linux-libre-headers linux-libre-headers-5.10.35)
@ -734,7 +783,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
;;; Kernel package utilities.
;;;
(define* (make-linux-libre version hash-string supported-systems
(define* (make-linux-libre version gnu-revision hash-string supported-systems
#:key
(extra-version #f)
;; A function that takes an arch and a variant.
@ -743,10 +792,10 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
(defconfig "defconfig")
(extra-options %default-extra-linux-options)
(patches (list %boot-logo-patch)))
(make-linux-libre* version
(make-linux-libre* version gnu-revision
(origin
(method url-fetch)
(uri (linux-libre-urls version))
(uri (linux-libre-urls version gnu-revision))
(sha256 (base32 hash-string))
(patches patches))
supported-systems
@ -755,7 +804,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
#:defconfig defconfig
#:extra-options extra-options))
(define* (make-linux-libre* version source supported-systems
(define* (make-linux-libre* version gnu-revision source supported-systems
#:key
(extra-version #f)
;; A function that takes an arch and a variant.
@ -900,49 +949,64 @@ It has been modified to remove all non-free binary blobs.")
;;; Generic kernel packages.
;;;
(define-public linux-libre-5.14
(make-linux-libre* linux-libre-5.14-version
linux-libre-5.14-gnu-revision
linux-libre-5.14-source
'("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-5.13
(make-linux-libre* linux-libre-5.13-version
linux-libre-5.13-gnu-revision
linux-libre-5.13-source
'("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-version linux-libre-5.13-version)
(define-public linux-libre-gnu-revision linux-libre-5.13-gnu-revision)
(define-public linux-libre-pristine-source linux-libre-5.13-pristine-source)
(define-public linux-libre-source linux-libre-5.13-source)
(define-public linux-libre linux-libre-5.13)
(define-public linux-libre-5.10
(make-linux-libre* linux-libre-5.10-version
linux-libre-5.10-gnu-revision
linux-libre-5.10-source
'("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-5.4
(make-linux-libre* linux-libre-5.4-version
linux-libre-5.4-gnu-revision
linux-libre-5.4-source
'("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-4.19
(make-linux-libre* linux-libre-4.19-version
linux-libre-4.19-gnu-revision
linux-libre-4.19-source
'("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-4.14
(make-linux-libre* linux-libre-4.14-version
linux-libre-4.14-gnu-revision
linux-libre-4.14-source
'("x86_64-linux" "i686-linux" "armhf-linux")
#:configuration-file kernel-config))
(define-public linux-libre-4.9
(make-linux-libre* linux-libre-4.9-version
linux-libre-4.9-gnu-revision
linux-libre-4.9-source
'("x86_64-linux" "i686-linux")
#:configuration-file kernel-config))
(define-public linux-libre-4.4
(make-linux-libre* linux-libre-4.4-version
linux-libre-4.4-gnu-revision
linux-libre-4.4-source
'("x86_64-linux" "i686-linux")
#:configuration-file kernel-config
@ -958,6 +1022,7 @@ It has been modified to remove all non-free binary blobs.")
;; Reference: https://jxself.org/linux-libre/
(define-public linux-libre-lts-version linux-libre-5.10-version)
(define-public linux-libre-lts-gnu-revision linux-libre-5.10-gnu-revision)
(define-public linux-libre-lts-pristine-source linux-libre-5.10-pristine-source)
(define-public linux-libre-lts-source linux-libre-5.10-source)
(define-public linux-libre-lts linux-libre-5.10)
@ -969,6 +1034,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm-generic
(make-linux-libre* linux-libre-version
linux-libre-gnu-revision
linux-libre-source
'("armhf-linux")
#:defconfig "multi_v7_defconfig"
@ -984,6 +1050,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm-generic-5.10
(make-linux-libre* linux-libre-5.10-version
linux-libre-5.10-gnu-revision
linux-libre-5.10-source
'("armhf-linux")
#:defconfig "multi_v7_defconfig"
@ -996,6 +1063,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm-generic-5.4
(make-linux-libre* linux-libre-5.4-version
linux-libre-5.4-gnu-revision
linux-libre-5.4-source
'("armhf-linux")
#:defconfig "multi_v7_defconfig"
@ -1008,6 +1076,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm-generic-4.19
(make-linux-libre* linux-libre-4.19-version
linux-libre-4.19-gnu-revision
linux-libre-4.19-source
'("armhf-linux")
#:defconfig "multi_v7_defconfig"
@ -1015,6 +1084,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm-generic-4.14
(make-linux-libre* linux-libre-4.14-version
linux-libre-4.14-gnu-revision
linux-libre-4.14-source
'("armhf-linux")
#:defconfig "multi_v7_defconfig"
@ -1022,6 +1092,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm-omap2plus
(make-linux-libre* linux-libre-version
linux-libre-gnu-revision
linux-libre-source
'("armhf-linux")
#:defconfig "omap2plus_defconfig"
@ -1029,6 +1100,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm-omap2plus-4.19
(make-linux-libre* linux-libre-4.19-version
linux-libre-4.19-gnu-revision
linux-libre-4.19-source
'("armhf-linux")
#:defconfig "omap2plus_defconfig"
@ -1036,6 +1108,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm-omap2plus-4.14
(make-linux-libre* linux-libre-4.14-version
linux-libre-4.14-gnu-revision
linux-libre-4.14-source
'("armhf-linux")
#:defconfig "omap2plus_defconfig"
@ -1043,6 +1116,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm64-generic
(make-linux-libre* linux-libre-version
linux-libre-gnu-revision
linux-libre-source
'("aarch64-linux")
#:defconfig "defconfig"
@ -1068,6 +1142,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm64-generic-5.10
(make-linux-libre* linux-libre-5.10-version
linux-libre-5.10-gnu-revision
linux-libre-5.10-source
'("aarch64-linux")
#:defconfig "defconfig"
@ -1093,6 +1168,7 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-arm64-generic-5.4
(make-linux-libre* linux-libre-5.4-version
linux-libre-5.4-gnu-revision
linux-libre-5.4-source
'("aarch64-linux")
#:defconfig "defconfig"
@ -1105,12 +1181,14 @@ It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-riscv64-generic
(make-linux-libre* linux-libre-version
linux-libre-gnu-revision
linux-libre-source
'("riscv64-linux")
#:extra-version "riscv64-generic"))
(define-public linux-libre-mips64el-fuloong2e
(make-linux-libre* linux-libre-version
linux-libre-gnu-revision
linux-libre-source
'("mips64el-linux")
#:defconfig "fuloong2e_defconfig"
@ -1124,6 +1202,7 @@ It has been modified to remove all non-free binary blobs.")
(let ((base-linux-libre
(make-linux-libre*
linux-libre-5.13-version
linux-libre-5.13-gnu-revision
linux-libre-5.13-source
'("x86_64-linux" "i686-linux" "armhf-linux"
"aarch64-linux" "riscv64-linux")
@ -1510,6 +1589,43 @@ allows some more serious things like adding streaming capabilities to an
application by hooking GStreamer into the loopback device.")
(license license:gpl2+)))
(define-public xpadneo
(package
(name "xpadneo")
(version "0.9.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/atar-axis/xpadneo")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0xr0zx134s56h4ij6c3fh8ki0h58h61minbfxcl3sgpgxkh14ism"))))
(build-system linux-module-build-system)
(arguments
`(#:tests? #f ; no `check' target
#:source-directory "hid-xpadneo/src"
#:phases
(modify-phases %standard-phases
(add-after 'install 'post-install
(lambda* (#:key outputs #:allow-other-keys #:rest args)
(let ((out (assoc-ref outputs "out")))
(copy-recursively "hid-xpadneo/etc-modprobe.d"
(string-append out "/etc/modprobe.d"))
;; udev-service-type takes its rules from /lib rather than
;; /etc, so copy it there instead
(copy-recursively "hid-xpadneo/etc-udev-rules.d"
(string-append out "/lib/udev/rules.d"))))))))
(home-page "https://atar-axis.github.io/xpadneo/")
(synopsis "Xbox One Wireless Controller driver")
(description
"This package provides a driver for the XBox One S Wireless controller
and some newer models when connected via bluetooth. In addition to the kernel
module provided itself, it also contains a modprobe configuration and udev
rules, which need to be installed separately.")
(license license:gpl3+)))
;;;
;;; Pluggable authentication modules (PAM).
@ -2084,6 +2200,38 @@ slabtop, tload, top, vmstat, w, watch and sysctl.")
"Tools for working with USB devices, such as lsusb.")
(license license:gpl2+)))
(define-public usbip-utils
(package
(name "usbip-utils")
(version (package-version linux-libre))
(source (package-source linux-libre))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static")
#:phases (modify-phases %standard-phases
(add-after 'unpack 'enter-subdirectory
(lambda _
(chdir "tools/usb/usbip")
#t)))))
(native-inputs
`(("automake" ,automake)
("autoreconf" ,autoconf)
("libtool" ,libtool)))
(inputs `(("eudev" ,eudev)))
(home-page (package-home-page linux-libre))
(synopsis "Utilities for sharing USB devices over IP networks")
(description
"The USB/IP protocol enables to pass USB device from a server to
a client over the network. The server is a machine which shares an
USB device and the client is a machine which uses USB device provided by
a server over the network. The USB device may be either physical device
connected to a server or software entity created on a server using USB
gadget subsystem. The usbip-utils are userspace tools to used to handle
connection and management on both side. The client needs the @file{vhci-hcd}
Linux kernel module and the server needs the @file{usbip_host} Linux kernel
module.")
(license license:gpl2)))
(define-public e2fsprogs
(package
(name "e2fsprogs")
@ -5326,7 +5474,7 @@ and copy/paste text in the console and in xterm.")
(define-public btrfs-progs
(package
(name "btrfs-progs")
(version "5.13.1")
(version "5.14")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/kernel/"
@ -5334,7 +5482,7 @@ and copy/paste text in the console and in xterm.")
"btrfs-progs-v" version ".tar.xz"))
(sha256
(base32
"16gkyhvvpqpq0skpavkvnmglbld7p331bnpiqn2z9flgwq0mlzix"))))
"0mwxhwws6scjjpfws5xp7988wwwfa46jp5y3kn6jjmjpxiqm85da"))))
(build-system gnu-build-system)
(outputs '("out"
"static")) ; static versions of the binaries in "out"

View File

@ -18,6 +18,7 @@
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 Lars-Dominik Braun <lars@6xq.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -877,6 +878,43 @@ of programming tools as well as libraries with equivalent functionality.")
(define-public clang clang-9)
(define-public clang-toolchain clang-toolchain-9)
(define-public llvm-for-rocm
(package
;; Actually based on LLVM 13 as of v4.3, but llvm-12 works just fine.
(inherit llvm-12)
(name "llvm-for-rocm")
(version "4.3.0") ;this must match '%rocm-version'
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/RadeonOpenCompute/llvm-project.git")
(commit (string-append "rocm-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0p75nr1qpmy6crymdax5hm40wkimman4lnglz4x5cnbiqindya7s"))
(patches
(search-patches "llvm-roc-4.2.0-add_Object.patch"
"llvm-roc-3.0.0-add_libraries.patch"
"llvm-roc-4.0.0-remove-isystem-usr-include.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments llvm-12)
((#:phases phases '%standard-phases)
`(modify-phases ,phases
(add-after 'unpack 'chdir
(lambda _
(chdir "llvm")))))
((#:configure-flags flags)
''("-DLLVM_ENABLE_PROJECTS=llvm;clang;lld"
"-DLLVM_TARGETS_TO_BUILD=AMDGPU;X86"
"-DCMAKE_SKIP_BUILD_RPATH=FALSE"
"-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE"
"-DBUILD_SHARED_LIBS:BOOL=TRUE"
"-DLLVM_VERSION_SUFFIX="))))
(properties `((hidden? . #t)
,@(package-properties llvm-12)))))
(define-public lld
(package
(name "lld")

View File

@ -32,7 +32,7 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Justus Winter <justus@sequoia-pgp.org>
;;; Copyright © 2020 Eric Brown <ecbrown@ericcbrown.com>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020, 2021 Alexey Abramov <levenson@mmer.org>
;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
@ -168,6 +168,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system guile)
#:use-module (guix build-system emacs)
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
@ -261,18 +262,16 @@ example, modify the message headers or body, or encrypt or sign the message.")
(define-public mailutils
(package
(name "mailutils")
(version "3.10")
(version "3.13")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/mailutils/mailutils-"
version ".tar.xz"))
(sha256
(base32
"17smrxjdgbbzbzakik30vj46q4iib85ksqhb82jr4vjp57akszh9"))
"1iwl82d6aa2acsdxbqh1s5xx44sg83b4yxqik408m1s9rcfrf86r"))
(patches
;; Fixes https://issues.guix.gnu.org/43088.
(search-patches "mailutils-fix-uninitialized-variable.patch"
"mailutils-variable-lookup.patch"))))
(search-patches "mailutils-variable-lookup.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -296,8 +295,9 @@ example, modify the message headers or body, or encrypt or sign the message.")
;; The 'pipeact.at' tests generate a shell script; make
;; sure it uses the right shell.
(substitute* '("sieve/tests/testsuite"
"mh/tests/testsuite")
(("#! /bin/sh")
"mh/tests/testsuite"
"libmailutils/tests/lock.at")
(("#! ?/bin/sh")
(string-append "#!" (which "sh"))))
(substitute* "mh/tests/testsuite"
@ -329,8 +329,9 @@ example, modify the message headers or body, or encrypt or sign the message.")
(format port "Path: ~a/Mail-for-tests~%"
(getcwd))))
#t)))
;; TODO: Add `--with-sql'.
(substitute* "imap4d/tests/testclient.c"
(("\"/bin/sh\"")
(string-append "\"" (which "sh") "\""))))))
#:configure-flags
(list "--sysconfdir=/etc"
@ -342,16 +343,20 @@ example, modify the message headers or body, or encrypt or sign the message.")
(package-inputs this-package))
(("guile" guile)
(version-major+minor
(package-version guile))))))
#:parallel-tests? #f))
(package-version guile))))))))
(native-inputs
`(("perl" ,perl) ;for 'gylwrap'
;; Regeneration of the build system is triggered by touching the
;; 'libmailutils/tests/lock.at' file.
`(("autoconf" ,autoconf)
("automake" ,automake)
("gettext" ,gettext-minimal)
("libtool" ,libtool)
("m4" ,m4)
("perl" ,perl) ;for 'gylwrap'
("texinfo" ,texinfo)
("dejagnu" ,dejagnu)))
(inputs
`(("m4" ,m4)
("guile" ,guile-3.0)
`(("guile" ,guile-3.0)
("gsasl" ,gsasl)
("gnutls" ,gnutls)
("ncurses" ,ncurses)
@ -359,7 +364,6 @@ example, modify the message headers or body, or encrypt or sign the message.")
("linux-pam" ,linux-pam)
("libltdl" ,libltdl)
("gdbm" ,gdbm)
;; Required for SEARCH CHARSET.
("libiconv" ,libiconv)
("libunistring" ,libunistring)))
@ -370,7 +374,24 @@ example, modify the message headers or body, or encrypt or sign the message.")
processing electronic mail. It contains both utilities and server daemons
and all operate in a protocol-agnostic way. The underlying libraries are
also available, simplifying the addition of mail capabilities to new
software.")
software. GNU Mailutils provides the following commands:
@itemize @command
@item dotlock
@item decodemail
@item frm
@item from
@item guimb
@item mail
@item mailutils
@item mailutils-config
@item messages
@item mimeview
@item movemail
@item popauth
@item putmail
@item readmsg
@item sieve
@end itemize")
(license
;; Libraries are under LGPLv3+, and programs under GPLv3+.
(list license:gpl3+ license:lgpl3+))))
@ -1342,31 +1363,18 @@ invoking @command{notifymuch} from the post-new hook.")
"1myylb19hj5nb1vriqng252vfjwwkgbi3gxj93pi2q1fzyw7w2lf"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
((guix build emacs-build-system) #:prefix emacs:)
(guix build utils))
#:imported-modules (,@%gnu-build-system-modules
(guix build emacs-build-system)
(guix build emacs-utils))
#:make-flags
`(#:make-flags
(list "V=1" ; verbose test output
"NOTMUCH_TEST_TIMEOUT=1h") ; don't fail on slow machines
#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-notmuch-lib.el
(lambda _
(substitute* "emacs/notmuch-lib.el"
(("/bin/sh") (which "sh")))))
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(setenv "CC" "gcc")
(setenv "CC" ,(cc-for-target))
(setenv "CONFIG_SHELL" (which "sh"))
(let* ((out (assoc-ref outputs "out"))
(elisp (emacs:elpa-directory out)))
(let* ((out (assoc-ref outputs "out")))
(invoke "./configure"
(string-append "--prefix=" out)
(string-append "--emacslispdir=" elisp)
(string-append "--emacsetcdir=" elisp)))))
"--without-emacs"))))
(add-before 'check 'disable-failing-tests
;; FIXME: Investigate why these tests are failing,
;; and try removing this for notmuch versions > 0.31.
@ -1375,21 +1383,20 @@ invoking @command{notifymuch} from the post-new hook.")
(("\\$NOTMUCH_GMIME_X509_CERT_VALIDITY") "0"))))
(add-before 'check 'prepare-test-environment
(lambda _
(setenv "TEST_CC" "gcc")
(setenv "TEST_CC" ,(cc-for-target))
;; Patch various inline shell invocations.
(substitute* (find-files "test" "\\.sh$")
(("/bin/sh") (which "sh")))))
(add-after 'install 'make-autoloads
(assoc-ref emacs:%standard-phases 'make-autoloads)))))
(("/bin/sh") (which "sh"))))))))
(native-inputs
`(("bash-completion" ,bash-completion)
("emacs" ,emacs-no-x) ; -minimal lacks libxml, needed for some tests
("pkg-config" ,pkg-config)
("python" ,python)
("python-docutils" ,python-docutils)
("sphinx" ,python-sphinx)
("texinfo" ,texinfo)
;; The following are required for tests only.
("emacs" ,emacs-no-x) ; -minimal lacks libxml, needed for some tests
("which" ,which)
("dtach" ,dtach)
("gnupg" ,gnupg)
@ -1408,6 +1415,32 @@ invoking @command{notifymuch} from the post-new hook.")
ing, and tagging large collections of email messages.")
(license license:gpl3+)))
(define-public emacs-notmuch
(package
(inherit notmuch)
(name "emacs-notmuch")
(build-system emacs-build-system)
(native-inputs '())
(inputs
`(("notmuch" ,notmuch)))
(arguments
`(#:exclude (cons* "make-deps.el" "rstdoc.el" %default-exclude)
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "emacs")))
(add-after 'chdir 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((notmuch (assoc-ref inputs "notmuch")))
(substitute* "notmuch-lib.el"
(("\"notmuch\"")
(string-append "\"" notmuch "/bin/notmuch\"")))))))))
(synopsis "Run Notmuch within Emacs")
(description
"This package provides an Emacs-based interface to the Notmuch mail
system.")))
(define-public notmuch-addrlookup-c
(package
(name "notmuch-addrlookup-c")

View File

@ -255,6 +255,10 @@ the traditional flat-text whatis databases.")
"\n"))))))))
(native-inputs `(("perl" ,perl))) ;used to run tests
(inputs `(("zlib" ,zlib)))
(native-search-paths
(list (search-path-specification
(variable "MANPATH")
(files '("share/man")))))
(synopsis "Tools for BSD mdoc and man pages")
(description
"mandoc is a suite of tools compiling mdoc, the roff macro language of

View File

@ -6430,7 +6430,7 @@ management via the GIMPS project's Primenet server.")
(define-public nauty
(package
(name "nauty")
(version "2.7r2")
(version "2.7r3")
(source
(origin
(method url-fetch)
@ -6438,7 +6438,7 @@ management via the GIMPS project's Primenet server.")
"https://pallini.di.uniroma1.it/"
"nauty" (string-join (string-split version #\.) "") ".tar.gz"))
(sha256
(base32 "0s57rq7kk3rrwgrjygpwjvq9bbwq4wjbpcvgbz191jhwv8bnrhb9"))))
(base32 "1hl81gpf3xjf809w04jczvilq1ixy9ch1qrax8a7lgx52svna1jg"))))
(build-system gnu-build-system)
(outputs '("out" "lib"))
(arguments

View File

@ -154,8 +154,8 @@ in different ways.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/minetest/minetest_game")
(commit version)))
(url "https://github.com/minetest/minetest_game")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
@ -172,8 +172,8 @@ in different ways.")
"/share/minetest/games/minetest_game")))
(mkdir-p install-dir)
(copy-recursively
(assoc-ref %build-inputs "source")
install-dir)
(assoc-ref %build-inputs "source")
install-dir)
#t))))
(synopsis "Main game data for the Minetest game engine")
(description
@ -304,37 +304,37 @@ and a variety of other stuff.")
;; The release on ContentDB does not have its own version number.
(let ((commit "db5879706d04d3480bc4863ce0c03fa73e5f10c7")
(revision "0"))
(package
(name "minetest-mesecons")
(version (git-version "1.2.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/minetest-mods/mesecons")
(commit commit)))
(sha256
(base32 "04m9s9l3frw1lgki41hgvjsw2zkrvfv0sy750b6j12arzb3lv645"))
(file-name (git-file-name name version))))
(build-system minetest-mod-build-system)
(home-page "https://mesecons.net")
(synopsis
"Digital circuitry for Minetest, including wires, buttons and lights")
(description
"Mesecons is a mod for Minetest implementing various items related
(package
(name "minetest-mesecons")
(version (git-version "1.2.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/minetest-mods/mesecons")
(commit commit)))
(sha256
(base32 "04m9s9l3frw1lgki41hgvjsw2zkrvfv0sy750b6j12arzb3lv645"))
(file-name (git-file-name name version))))
(build-system minetest-mod-build-system)
(home-page "https://mesecons.net")
(synopsis
"Digital circuitry for Minetest, including wires, buttons and lights")
(description
"Mesecons is a mod for Minetest implementing various items related
to digital circuitry, such as wires, buttons, lights and programmable
controllers. Among other things, there are also pistons, solar panels,
pressure plates and note blocks.
Mesecons has a similar goal to Redstone in Minecraft, but works in its own way,
with different rules and mechanics.")
;; LGPL for code, CC-BY-SA for textures.
;; The README.md and COPYING.txt disagree about the "+" in license:lgpl3+.
;; For now, assume README.md is correct. Upstream has been asked to
;; correct the inconsistency:
;; <https://github.com/minetest-mods/mesecons/issues/575>.
(license (list license:lgpl3+ license:cc-by-sa3.0))
(properties `((upstream-name . "Jeija/mesecons"))))))
;; LGPL for code, CC-BY-SA for textures.
;; The README.md and COPYING.txt disagree about the "+" in license:lgpl3+.
;; For now, assume README.md is correct. Upstream has been asked to
;; correct the inconsistency:
;; <https://github.com/minetest-mods/mesecons/issues/575>.
(license (list license:lgpl3+ license:cc-by-sa3.0))
(properties `((upstream-name . "Jeija/mesecons"))))))
(define-public minetest-mineclone
(package
@ -624,3 +624,70 @@ track of important locations.")
license:cc-by4.0 license:cc-by-sa3.0 license:public-domain
license:cc0 license:fdl1.2+))
(properties `((upstream-name . "RealBadAngel/unified_inventory")))))
(define-public minetest-advtrains
(package
(name "minetest-advtrains")
(version "2.3.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.bananach.space/advtrains.git")
(commit (string-append "release-" version))))
(sha256
(base32 "1ijqlchh269jpvmgmdmdvy3nsnk0bszkvvcqk6vaysvxam695ggw"))
(file-name (git-file-name name version))))
(build-system minetest-mod-build-system)
(home-page "http://advtrains.de/")
(synopsis "Adds good-looking, realistic trains with realistic rails")
(description
"This mod features realistic trains and various equipment for railways,
with a focus on automated train operation. This package contains no actual
trains, please use @code{minetest-basic-trains}.
Main features:
@itemize
@item
almost-realistic tracks with actual curves and switches;
@item
railway signals, controllable by various means;
@item
ATC: simple, command-like automatic train control;
@item
LuaATC: Powerful Lua-scripted automatic train operation (requires some
programming knowledge);
@item
an interlocking system, featuring track sections, routes and automatic
stopping before signals.
@end itemize")
(license (list license:cc-by-sa3.0 license:agpl3+))
(properties `((upstream-name . "orwell/advtrains")))))
(define-public minetest-basic-trains
(package
(name "minetest-basic-trains")
(version "1.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "http://git.bananach.space/basic_trains.git/")
(commit
"d44c410f7c2a7202ee68b66fc50febae89e0c5dc")))
(sha256
(base32
"0vvzndj48kgdz2bfgivfm217sbmc2lmxpp2mispcy7byn4i26prx"))
(file-name (git-file-name name version))))
(build-system minetest-mod-build-system)
(propagated-inputs
`(("minetest-advtrains" ,minetest-advtrains)))
(home-page
"http://advtrains.de/wiki/doku.php?id=usage:trains:basic_trains")
(synopsis "Collection of basic trains for the Advanced Trains mod")
(description
"This modpack contains the trains which were the ``default'' trains in
advtrains up to version 2.2.1.")
(license (list license:cc-by-sa3.0 license:agpl3+))
(properties `((upstream-name . "orwell/basic_trains")))))

View File

@ -1885,7 +1885,7 @@ complete studio.")
`(("liblo" ,liblo)
("gtkmm" ,gtkmm)
("alsa-lib" ,alsa-lib)
("libxmlplusplus" ,libxmlplusplus-2.6)))
("libxml++" ,libxml++-2)))
(native-inputs
`(("glib:bin" ,glib "bin")
("pkg-config" ,pkg-config)))
@ -5006,7 +5006,7 @@ studio.")
(define-public gsequencer
(package
(name "gsequencer")
(version "3.8.13")
(version "3.10.18")
(source
(origin
(method git-fetch)
@ -5015,7 +5015,7 @@ studio.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1gwy7fhbxgrd5n6afq1hnxc6p873wsh4qs63yhkkdfzyl7s412z4"))))
(base32 "126kbvdkxy82mmkl19qhp9k6iz5xclar06chbj7lf580x96c899c"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:phases

View File

@ -24,7 +24,7 @@
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2018 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2018, 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2018, 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2018, 2020, 2021 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019, 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Vasile Dumitrascu <va511e@yahoo.com>
@ -45,6 +45,7 @@
;;; Copyright © 2021 Justin Veilleux <terramorpha@cock.li>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Milkey Mouse <milkeymouse@meme.institute>
;;;
;;; This file is part of GNU Guix.
;;;
@ -386,6 +387,30 @@ supported, including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://.")
;; Others.
license:gpl2+)))))
(define-public slurm-monitor
(package
(name "slurm-monitor")
(version "0.4.3")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/mattthias/slurm")
(commit (string-append "upstream/" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n6pgrcs8gwrcq5fch1q3yk3jipjwrf21s9a13fbjrl903g5zzv9"))))
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ;no tests
(inputs `(("ncurses" ,ncurses)))
(synopsis "Network load monitor")
(description
"Slurm is a network load monitor. It shows real-time traffic statistics
from any network device in any of three ASCII graph formats.")
(home-page "https://github.com/mattthias/slurm")
(license license:gpl2)))
(define-public srt
(package
(name "srt")
@ -3509,6 +3534,39 @@ A very simple IM client working over the DHT.
protocol daemons for BGP, IS-IS, LDP, OSPF, PIM, and RIP. ")
(license license:gpl2+)))
(define-public bird
(package
(name "bird")
(version "2.0.8")
(source (origin
(method url-fetch)
(uri (string-append "ftp://bird.network.cz/pub/bird/bird-"
version ".tar.gz"))
(sha256
(base32
"1xp7f0im1v8pqqx3xqyfkd1nsxk8vnbqgrdrwnwhg8r5xs1xxlhr"))))
(inputs
`(("libssh" ,libssh)
("readline" ,readline)))
(native-inputs
`(("bison" ,bison)
("flex" ,flex)))
(arguments
`(#:configure-flags '("--localstatedir=/var" "--enable-ipv6")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'dont-create-sysconfdir
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile.in"
((" \\$\\(DESTDIR)/\\$\\(runstatedir)") "")))))))
(build-system gnu-build-system)
(home-page "http://bird.network.cz")
(synopsis "Internet Routing Daemon")
(description "BIRD is an Internet routing daemon with full support for all
the major routing protocols. It allows redistribution between protocols with a
powerful route filtering syntax and an easy-to-use configuration interface.")
(license license:gpl2+)))
(define-public iwd
(package
(name "iwd")

View File

@ -0,0 +1,28 @@
Backported from upstream PR: https://github.com/urfave/cli/pull/1299
---
diff --git a/app_test.go b/app_test.go
index 33024ff..6b3aaa3 100644
--- a/app_test.go
+++ b/app_test.go
@@ -513,18 +513,18 @@ func TestApp_RunAsSubcommandParseFlags(t *testing.T) {
func TestApp_RunAsSubCommandIncorrectUsage(t *testing.T) {
a := App{
Flags: []Flag{
- StringFlag{Name: "--foo"},
+ StringFlag{Name: "foo"},
},
Writer: bytes.NewBufferString(""),
}
set := flag.NewFlagSet("", flag.ContinueOnError)
- _ = set.Parse([]string{"", "---foo"})
+ _ = set.Parse([]string{"", "-bar"})
c := &Context{flagSet: set}
err := a.RunAsSubcommand(c)
- expect(t, err, errors.New("bad flag syntax: ---foo"))
+ expect(t, err.Error(), "flag provided but not defined: -bar")
}
func TestApp_CommandWithFlagBeforeTerminator(t *testing.T) {

View File

@ -0,0 +1,37 @@
From upstream PR: https://github.com/urfave/cli/pull/1299
From: William Wilson <william.wilson@canonical.com>
Date: Tue, 31 Aug 2021 14:19:17 -0500
Subject: Make test case compatible with Go 1.17
As of Go 1.17, the go flag package will panic if given a syntactically invalid
flag. This causes TestApp_RunAsSubCommandIncorrectUsage to panic and therefore
fail. See https://golang.org/doc/go1.17#flag for more information.
---
diff --git a/app_test.go b/app_test.go
index 7c38f6048..76e211d68 100644
--- a/app_test.go
+++ b/app_test.go
@@ -476,18 +476,18 @@ func TestApp_RunAsSubCommandIncorrectUsage(t *testing.T) {
a := App{
Name: "cmd",
Flags: []Flag{
- &StringFlag{Name: "--foo"},
+ &StringFlag{Name: "foo"},
},
Writer: bytes.NewBufferString(""),
}
set := flag.NewFlagSet("", flag.ContinueOnError)
- _ = set.Parse([]string{"", "---foo"})
+ _ = set.Parse([]string{"", "-bar"})
c := &Context{flagSet: set}
err := a.RunAsSubcommand(c)
- expect(t, err, errors.New("bad flag syntax: ---foo"))
+ expect(t, err.Error(), "flag provided but not defined: -bar")
}
func TestApp_CommandWithFlagBeforeTerminator(t *testing.T) {

View File

@ -1,26 +0,0 @@
From 5ca6382fe8adb5bc436a6d873c8b86c69d5abfd1 Mon Sep 17 00:00:00 2001
From: Sergey Poznyakoff <gray@gnu.org>
Date: Sun, 13 Sep 2020 14:43:46 +0300
Subject: [PATCH] Fix uninitialized variable in readmsg
* readmsg/readmsg.c (main): Initialize weedc.
---
readmsg/readmsg.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/readmsg/readmsg.c b/readmsg/readmsg.c
index 9f305bb9c..3a9f420db 100644
--- a/readmsg/readmsg.c
+++ b/readmsg/readmsg.c
@@ -466,7 +466,7 @@ main (int argc, char **argv)
mu_mailbox_t mbox = NULL;
struct mu_wordsplit ws;
char **weedv;
- int weedc;
+ int weedc = 0;
int unix_header = 0;
/* Native Language Support */
--
2.28.0

View File

@ -0,0 +1,28 @@
From fb1a6ab205fd63a46669a463931af473e2ac0c87 Mon Sep 17 00:00:00 2001
From: Matthew Flatt <mflatt@racket-lang.org>
Date: Sat, 21 Aug 2021 15:29:59 -0600
Subject: [PATCH] setup/variant: recognize starter executables
Related to #3969
(cherry picked from commit 1629887071fe3cc8fe8af0a7aa0d3912509cb058)
---
racket/collects/setup/variant.rkt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/racket/collects/setup/variant.rkt b/racket/collects/setup/variant.rkt
index 81da6f5701..b23131e481 100644
--- a/racket/collects/setup/variant.rkt
+++ b/racket/collects/setup/variant.rkt
@@ -25,7 +25,7 @@
(and (file-exists? f)
(with-input-from-file f
(lambda ()
- (define m (regexp-match #rx#"bINARy tYPe:..(.)"
+ (define m (regexp-match #rx#"bINARy tYPe:e?..(.)"
(current-input-port)))
(cond
[(not m) '3m]
--
2.30.2

View File

@ -298,6 +298,13 @@ GiB).")
(invoke "py.test" "-v" "-k"
;; TODO: Those tests fail, why?
"not test_classify_change_actions")))
(add-after 'install 'copy-styles
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((styles "/share/gtksourceview-3.0/styles"))
(copy-recursively
(string-append (assoc-ref inputs "gtksourceview") styles)
(string-append (assoc-ref outputs "out") styles))
#t)))
(add-after 'wrap 'glib-or-gtk-wrap
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
(add-after 'wrap 'wrap-typelib

View File

@ -1944,7 +1944,7 @@ and writing of @code{.ini}-style configuration files.")
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Const-Fast")
(synopsis "Facility for creating read-only scalars, arrays, and hashes")
(description "This package provides prodecures to create read-only
(description "This package provides procedures to create read-only
scalars, arrays, and hashes.")
(license (package-license perl))))

View File

@ -43,6 +43,7 @@
;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 Pradana Aumars <paumars@courrier.dev>
;;;
;;; This file is part of GNU Guix.
;;;
@ -370,13 +371,13 @@ WSGI. This package includes libraries for implementing ASGI servers.")
(define-public python-aws-sam-translator
(package
(name "python-aws-sam-translator")
(version "1.36.0")
(version "1.38.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "aws-sam-translator" version))
(sha256
(base32
"115mcbb4r205c1hln199llqrvvbijfqz075rwx991l99jc6rj6zs"))))
"1djwlsjpbh13m4biglimrm9lq7hmla0k29giay7k3cjsrylxvjhf"))))
(build-system python-build-system)
(arguments
`(;; XXX: Tests are not distributed with the PyPI archive, and would
@ -470,7 +471,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.51.0")
(version "0.54.1")
(home-page "https://github.com/aws-cloudformation/cfn-python-lint")
(source (origin
(method git-fetch)
@ -480,7 +481,7 @@ emit information from within their applications to the AWS X-Ray service.")
(file-name (git-file-name name version))
(sha256
(base32
"1027s243sik25c6sqw6gla7k7vl3jdicrik5zdsa8pafxh2baja4"))))
"161mzzlpbi85q43kwzrj39qb32l6wg6xhnbbd4z860yrfbymsn87"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -493,7 +494,7 @@ emit information from within their applications to the AWS X-Ray service.")
"test/unit/module/maintenance/test_update_documentation.py")
(delete-file
"test/unit/module/maintenance/test_update_resource_specs.py")
(invoke "python" "-m" "unittest" "discover"
(invoke "python" "-m" "unittest" "discover" "-v"
"-s" "test")))))))
(native-inputs
`(("python-pydot" ,python-pydot)
@ -3516,13 +3517,13 @@ applications.")
(define-public python-flask-sqlalchemy
(package
(name "python-flask-sqlalchemy")
(version "2.4.4")
(version "2.5.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "Flask-SQLAlchemy" version))
(sha256
(base32
"1rgsj49gnx361hnb3vn6c1h17497qh22yc3r70l1r6w0mw71bixz"))))
"04jrx4sjrz1b20j38qk4qin975xwz30krzq59rfv3b3w7ss49nib"))))
(build-system python-build-system)
(propagated-inputs
`(("python-flask" ,python-flask)
@ -4115,28 +4116,37 @@ addon modules.")
(define-public python-wtforms
(package
(name "python-wtforms")
(version "2.1")
(version "2.3.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "WTForms" version ".zip"))
(uri (pypi-uri "WTForms" version))
(sha256
(base32
"0vyl26y9cg409cfyj8rhqxazsdnd0jipgjw06civhrd53yyi1pzz"))))
"17427m7p9nn9byzva697dkykykwcp2br3bxvi8vciywlmkh5s6c1"))))
(build-system python-build-system)
(arguments
'(#:phases
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-django-test
;; Don't fail the tests when the inputs for the optional tests cannot be found.
(add-after 'unpack 'delete-bundled-test
(lambda _
(substitute*
"tests/runtests.py"
(("'ext_django.tests', 'ext_sqlalchemy', 'ext_dateutil', 'locale_babel'") "")
(("sys.stderr.write(\"### Disabled test '%s', dependency not found\n\" % name)") ""))
#t)))))
;; Delete test copied from a third party package that fails
;; with newer SQLAlchemy. This can be removed for 3.0.
;; See <https://github.com/wtforms/wtforms/issues/696>.
(delete-file "tests/ext_sqlalchemy.py")))
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "python" "setup.py" "compile_catalog")
(invoke "python" "tests/runtests.py")))))))
(native-inputs
`(("unzip" ,unzip)))
`(("python-dateutil" ,python-dateutil)
("python-sqlalchemy" ,python-sqlalchemy)))
(propagated-inputs
`(("python-babel" ,python-babel)
("python-email-validator" ,python-email-validator)
("python-markupsafe" ,python-markupsafe)))
(home-page "http://wtforms.simplecodes.com/")
(synopsis
"Form validation and rendering library for Python web development")
@ -4146,9 +4156,6 @@ for Python web development. It is very similar to the web form API
available in Django, but is a standalone package.")
(license license:bsd-3)))
(define-public python2-wtforms
(package-with-python2 python-wtforms))
(define-public python-paste
(package
(name "python-paste")
@ -6203,3 +6210,25 @@ your code non-blocking and speedy.")
"This project provides a client library in Python that makes it easy to
communicate with Microsoft Azure Storage services.")
(license license:expat)))
(define-public python-w3lib
(package
(name "python-w3lib")
(version "1.22.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "w3lib" version))
(sha256
(base32
"1pv02lvvmgz2qb61vz1jkjc04fgm4hpfvaj5zm4i3mjp64hd1mha"))))
(build-system python-build-system)
(native-inputs
`(("python-six" ,python-six)))
(home-page "https://github.com/scrapy/w3lib")
(synopsis "Python library of web-related functions")
(description
"This is a Python library of web-related functions, such as: remove comments,
or tags from HTML snippets, extract base url from HTML snippets, translate entites
on HTML strings, among other things.")
(license license:bsd-3)))

View File

@ -108,6 +108,8 @@
;;; Copyright © 2021 Franck Pérignon <franck.perignon@univ-grenoble-alpes.fr>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 Simon Streit <simon@netpanic.org>
;;; Copyright © 2021 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
;;; Copyright © 2021 Pradana Aumars <paumars@courrier.dev>
;;;
;;; This file is part of GNU Guix.
;;;
@ -7052,13 +7054,13 @@ PNG, PostScript, PDF, and SVG file output.")
(define-public python-decorator
(package
(name "python-decorator")
(version "4.4.2")
(version "5.0.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "decorator" version))
(sha256
(base32 "1rxzhk5zwiggk45hl53zydvy70lk654kg0nc1p54090p402jz9p3"))))
(base32 "1mcy64hllgm938v8k1x2a4g0q9swsnrfnsvhz59kr28a6ajgpv3j"))))
(build-system python-build-system)
(home-page "https://pypi.org/project/decorator/")
(synopsis "Python module to simplify usage of decorators")
@ -15961,20 +15963,17 @@ Python to manipulate OpenDocument 1.2 files.")
(define-public python-natsort
(package
(name "python-natsort")
(version "7.0.1")
(version "7.1.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "natsort" version))
(sha256
(base32
"1ksqfai72dbcfbwx43pxl658j59mx2rvqypjy1fk0ax2qd6lccx6"))))
"00y49bfsi7rrsd1s42gc2w95a6arl9ipdsx2493hr0v54fj07ih0"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'set-cachedir
;; Tests require write access to $HOME by default
(lambda _ (setenv "PYTHON_EGG_CACHE" "/tmp") #t))
(replace 'check
(lambda _
(invoke "pytest" "-v"))))))
@ -15996,23 +15995,7 @@ on a list such as @code{[@code{a20}, @code{a9}, @code{a1}, @code{a4},
identifies numbers and sorts them separately from strings. It can also sort
version numbers, real numbers, mixed types and more, and comes with a shell
command @command{natsort} that exposes this functionality in the command line.")
(license license:expat)
(properties `((python2-variant . ,(delay python2-natsort))))))
;; Natsort 6.x are the last versions with support for Python 2.
(define-public python2-natsort
(let ((base (package-with-python2 (strip-python2-variant python-natsort))))
(package (inherit base)
(version "6.2.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "natsort" version))
(sha256
(base32
"1mc9hbh6fv76xyz13frm7dgi05cf74f9j5wvcyjiy5234gylz565"))))
(native-inputs
`(("python2-pathlib" ,python2-pathlib)
,@(package-native-inputs base))))))
(license license:expat)))
(define-public glances
(package
@ -17917,14 +17900,14 @@ information.")
(define-public python-relatorio
(package
(name "python-relatorio")
(version "0.8.0")
(version "0.10.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "relatorio" version))
(sha256
(base32
"1na6hlhz1awi1hbjg1gyclq0khz42iz90wvdjw7mmj655788bpxx"))))
"09nhrz80dfm60nssbvjgz4czzy4yzfa8gxczcdlzbgcnnvm914vb"))))
(build-system python-build-system)
(propagated-inputs
`(("python-lxml" ,python-lxml)
@ -22356,6 +22339,28 @@ processes may share the same data.")
format.")
(license license:expat)))
(define-public python-crontab
(package
(name "python-crontab")
(version "2.5.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri name version))
(sha256
(base32 "0cccrqc10r8781ba81x8r2frs3pl2m4hkm599k5358ak0xr7xgjb"))))
(build-system python-build-system)
(arguments
;; Comptability tests fail so they are disabled.
`(#:tests? #f))
(inputs
`(("python-dateutil" ,python-dateutil)))
(home-page "https://gitlab.com/doctormo/python-crontab/")
(synopsis "Module for reading and writing crontab files")
(description "This Python module can read, write crontab files, and
access the system cron automatically and simply using a direct API.")
(license license:lgpl3+)))
(define-public python-pylzma
(package
(name "python-pylzma")

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2018, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2018, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2021 Philip McGrath <philip@philipmcgrath.com>
@ -138,18 +138,23 @@
(sha256
"061bhiyjlvazph0dj9i3i3x2q5z53rp8h5cjwg3frjimkr45lncn")
(file-name (git-file-name name version))
(patches (search-patches "racket-minimal-sh-via-rktio.patch"))
(patches (search-patches "racket-minimal-sh-via-rktio.patch"
;; Remove the following in version 8.3:
"racket-minimal-backport-1629887.patch"))
(modules '((guix build utils)))
(snippet
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
;; unbundle Chez submodules
;; Unbundle Chez submodules.
(with-directory-excursion "racket/src/ChezScheme"
#$(origin-snippet (package-source chez-scheme)))
;; unbundle libffi
(for-each
delete-file-recursively
'("racket/src/bc/foreign/libffi")))))))
;; Remove bundled libraries (copied from 'chez-scheme').
(for-each delete-file-recursively
'("stex"
"nanopass"
"lz4"
"zlib")))
;; Unbundle libffi.
(delete-file-recursively "racket/src/bc/foreign/libffi"))))))
(inputs
`(;; common to all racket-minimal variants:
("openssl" ,openssl)
@ -212,6 +217,7 @@
"/lib"))
'("openssl"
"sqlite"))))
(build-stamp . "")
(catalogs
. (,(string-append
"https://download.racket-lang.org/releases/"

View File

@ -1,4 +1,4 @@
;;;
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021 Lars-Dominik Braun <lars@6xq.net>
;;;
;;; This program is free software; you can redistribute it and/or modify it
@ -56,41 +56,6 @@
tasks needed for the ROCM software stack.")
(license license:ncsa)))
(define-public llvm-for-rocm
(hidden-package
(package
;; Actually based on LLVM 13 as of v4.3, but llvm-12 works just fine.
(inherit llvm-12)
(name "llvm-for-rocm")
(version %rocm-version)
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/RadeonOpenCompute/llvm-project.git")
(commit (string-append "rocm-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0p75nr1qpmy6crymdax5hm40wkimman4lnglz4x5cnbiqindya7s"))
(patches
(search-patches "llvm-roc-4.2.0-add_Object.patch"
"llvm-roc-3.0.0-add_libraries.patch"
"llvm-roc-4.0.0-remove-isystem-usr-include.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments llvm-12)
((#:phases phases '%standard-phases)
`(modify-phases ,phases
(add-after 'unpack 'chdir
(lambda _
(chdir "llvm")))))
((#:configure-flags flags)
''("-DLLVM_ENABLE_PROJECTS=llvm;clang;lld"
"-DLLVM_TARGETS_TO_BUILD=AMDGPU;X86"
"-DCMAKE_SKIP_BUILD_RPATH=FALSE"
"-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE"
"-DBUILD_SHARED_LIBS:BOOL=TRUE"
"-DLLVM_VERSION_SUFFIX=")))))))
(define-public rocm-device-libs
(package
(name "rocm-device-libs")

View File

@ -34,6 +34,7 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages compression)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
@ -42,6 +43,7 @@
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gtk)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages linux)
#:use-module (gnu packages ssh)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config)
@ -644,6 +646,60 @@ gitignore rules.")
(base32
"13jzbmjz1bmmfr0i80hw6ar484mgabx3hbpb2ynhk0ddqi0yr58m"))))))
(define-public sniffglue
(package
(name "sniffglue")
(version "0.12.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "sniffglue" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1q1kwkw1hq38qgvc6j4b5l9m85a6lpn1jls4bm27c5kha9cg8l24"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-ansi-term" ,rust-ansi-term-0.12)
("rust-anyhow" ,rust-anyhow-1)
("rust-atty" ,rust-atty-0.2)
("rust-base64" ,rust-base64-0.13)
("rust-dhcp4r" ,rust-dhcp4r-0.2)
("rust-dirs-next" ,rust-dirs-next-2)
("rust-dns-parser" ,rust-dns-parser-0.8)
("rust-env-logger" ,rust-env-logger-0.8)
("rust-libc" ,rust-libc-0.2)
("rust-log" ,rust-log-0.4)
("rust-nix" ,rust-nix-0.20)
("rust-nom" ,rust-nom-6)
("rust-num-cpus" ,rust-num-cpus-1)
("rust-pcap-sys" ,rust-pcap-sys-0.1)
("rust-pktparse" ,rust-pktparse-0.5)
("rust-reduce" ,rust-reduce-0.1)
("rust-serde" ,rust-serde-1)
("rust-serde-derive" ,rust-serde-derive-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-sha2" ,rust-sha2-0.9)
("rust-structopt" ,rust-structopt-0.3)
("rust-syscallz" ,rust-syscallz-0.15)
("rust-tls-parser" ,rust-tls-parser-0.10)
("rust-toml" ,rust-toml-0.5)
("rust-users" ,rust-users-0.11))
#:cargo-development-inputs
(("rust-boxxy" ,rust-boxxy-0.11))))
(inputs
`(("libpcap" ,libpcap)
("libseccomp" ,libseccomp)))
(home-page "https://github.com/kpcyrd/sniffglue")
(synopsis "Secure multithreaded packet sniffer")
(description
"This package provides a network sniffer written in Rust. Packets
are parsed concurrently using a thread pool to utilize all cpu cores. A goal
of the project is to be runnable on untrusted networks without crashing.")
(license license:gpl3)))
(define-public tectonic
(package
(name "tectonic")

View File

@ -797,14 +797,14 @@ shell services and remote host selection.")
(define-public python-asyncssh
(package
(name "python-asyncssh")
(version "2.5.0")
(version "2.7.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "asyncssh" version))
(sha256
(base32
"02xpzir9rmw7b7k07m3f912h6jvy9yzan9yn3ckrmqx2ffpy4r8b"))))
"0lnhh2h1mj79j66ni883s9f3xldnbjb10vh80g24b7m003mm524c"))))
(build-system python-build-system)
(propagated-inputs
`(("python-cryptography" ,python-cryptography)

View File

@ -190,7 +190,7 @@ a task.")
(define-public blanket
(package
(name "blanket")
(version "0.3.1")
(version "0.4.1")
(source
(origin
(method git-fetch)
@ -199,7 +199,7 @@ a task.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "13xip9b2p2ai2jchkck71c849s2rlxzfvlbsgpraw9hswi0rk0jg"))))
(base32 "1rk9xxiflj8rf75q56s907xp3jzxc7r88njlmxg07gl6i35mmcmi"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t

View File

@ -8028,6 +8028,9 @@ package, such as @command{natbib} as well).")
(base32
"09l5ymgz48s3hyn776l01g3isk3dnhrj1vdavdw4qq4kfxxpqdn9")
#:trivial? #t))
;; This provides charter.map.
(propagated-inputs
`(("texlive-psnfss" ,texlive-psnfss)))
(home-page "https://www.ctan.org/pkg/charter")
(synopsis "Charter fonts for TeX")
(description "This package provides a copy of the Charter Type-1 fonts
@ -8080,7 +8083,6 @@ Support for use with LaTeX is available in @code{freenfss}, part of
"/doc/man/man1/mtx-watch.1"
"/doc/man/man1/mtx-youless.1"
"/bibtex/bst/context/"
"/context/"

View File

@ -2,6 +2,7 @@
;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -41,15 +42,15 @@
(define-public trytond
(package
(name "trytond")
(version "5.8.2")
(version "6.0.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond" version))
(sha256
(base32 "1h1x0cmmmxvjclbglvvxkv634jw6av5ilymbix1lln5lq0gd39yy"))))
(base32 "1jp5cadqpwkcnml8r1hj6aak5kc8an2d5ai62p96x77nn0dp3ny4"))))
(build-system python-build-system)
(inputs
(propagated-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
@ -62,7 +63,8 @@
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs
`(("python-mock" ,python-mock)))
`(("python-mock" ,python-mock)
("python-pillow" ,python-pillow)))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -85,13 +87,13 @@ and security.")
(define-public tryton
(package
(name "tryton")
(version "5.8.2")
(version "6.0.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "tryton" version))
(sha256
(base32 "0kr5ngmmldgb9a9d5ylkmppy5p8vlf9d8iwv9lnci2fyxg2705wh"))))
(base32 "15cbp2r25pkr7lp4yliqgb6d0n779z70d4gckv56bx5aw4z27f66"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -110,7 +112,7 @@ and security.")
(native-inputs
`(("glib-compile-schemas" ,glib "bin")
("gobject-introspection" ,gobject-introspection)))
(inputs
(propagated-inputs
`(("gdk-pixbuf" ,gdk-pixbuf+svg)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gtk+" ,gtk+)
@ -126,13 +128,13 @@ and security.")
(define-public python-proteus
(package
(name "python-proteus")
(version "5.8.1")
(version "6.0.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "proteus" version))
(sha256
(base32 "03z5ssvjcvxv1p10y7c1y0jah0k3yyc9hlyi7xax98sfqyk13bnw"))))
(base32 "0qr7rir7ysxvy2kyfzp2d2kcw9qzq4vdkddbwswzgddxjpycksdh"))))
(build-system python-build-system)
;; Tests require python-trytond-party which requires python-proteus.
(arguments
@ -170,38 +172,39 @@ the build system."
;;; Tryton modules - please sort alphabetically
;;;
(define-public python-trytond-account
(define %standard-trytond-native-inputs
;; native-inputs required by most of the tryton module for running the test
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-sql" ,python-sql)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(define-public trytond-account
(package
(name "python-trytond-account")
(version "5.8.1")
(name "trytond-account")
(version "6.0.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_account" version))
(sha256
(base32 "16ny67vcnxk9ngcxd56cfixm441vs9jxv3apmb16xsi47yk2xd7w"))))
(base32 "0j1mn8sd5n8rkwgfvcy9kf8s7s3qxvnilnc72i83ac573zj922xc"))))
(build-system python-build-system)
(arguments (tryton-arguments "account"))
(native-inputs
`(("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-dateutil" ,python-dateutil)
("python-simpleeval" ,python-simpleeval)
("python-sql" ,python-sql)
("python-trytond-company"
,python-trytond-company)
("python-trytond-currency"
,python-trytond-currency)
("python-trytond-party" ,python-trytond-party)
("trytond" ,trytond)))
`(("python-simpleeval" ,python-simpleeval)
("trytond" ,trytond)
("trytond-company" ,trytond-company)
("trytond-currency" ,trytond-currency)
("trytond-party" ,trytond-party)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module for accounting")
(description
@ -209,43 +212,30 @@ the build system."
most of accounting needs.")
(license license:gpl3+)))
(define-public python-trytond-account-invoice
(define-public python-trytond-account
(deprecated-package "python-trytond-account" trytond-account))
(define-public trytond-account-invoice
(package
(name "python-trytond-account-invoice")
(version "5.8.1")
(name "trytond-account-invoice")
(version "6.0.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_account_invoice" version))
(sha256
(base32 "0drccambg6855p7ai8654c7f9v85jzwicwpxmagyrr09qz6qzgcz"))))
(base32 "0r8zigb4qmv40kf835x8jd7049nnhk5g7g0aibvfd0y9p28lspnz"))))
(build-system python-build-system)
(arguments (tryton-arguments "account_invoice"))
(native-inputs
`(("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-dateutil" ,python-dateutil)
("python-sql" ,python-sql)
("python-trytond-account"
,python-trytond-account)
("python-trytond-account-product"
,python-trytond-account-product)
("python-trytond-company"
,python-trytond-company)
("python-trytond-currency"
,python-trytond-currency)
("python-trytond-party" ,python-trytond-party)
("python-trytond-product"
,python-trytond-product)
("trytond" ,trytond)))
`(("trytond" ,trytond)
("trytond-account" ,trytond-account)
("trytond-account-product" ,trytond-account-product)
("trytond-company" ,trytond-company)
("trytond-currency" ,trytond-currency)
("trytond-party" ,trytond-party)
("trytond-product" ,trytond-product)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module for invoicing")
(description
@ -253,39 +243,27 @@ most of accounting needs.")
term.")
(license license:gpl3+)))
(define-public python-trytond-account-invoice-stock
(define-public python-trytond-account-invoice
(deprecated-package "python-trytond-account-invoice" trytond-account-invoice))
(define-public trytond-account-invoice-stock
(package
(name "python-trytond-account-invoice-stock")
(version "5.8.1")
(name "trytond-account-invoice-stock")
(version "6.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri
"trytond_account_invoice_stock"
version))
(uri (pypi-uri "trytond_account_invoice_stock" version))
(sha256
(base32 "02m6ikcc38ac41ddzg5xp5l9jz0k6j7j1g2xa62ki4v093yn4z5v"))))
(base32 "1228n6vsx0rdjsy3idvpyssa3n21nhvz9gqaacwa46c0hp2251bp"))))
(build-system python-build-system)
(arguments (tryton-arguments "account_invoice_stock"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-sql" ,python-sql)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-trytond-account-invoice"
,python-trytond-account-invoice)
("python-trytond-product"
,python-trytond-product)
("python-trytond-stock" ,python-trytond-stock)
("trytond" ,trytond)))
`(("trytond" ,trytond)
("trytond-account-invoice" ,trytond-account-invoice)
("trytond-product" ,trytond-product)
("trytond-stock" ,trytond-stock)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module to link stock and invoice")
(description
@ -294,40 +272,29 @@ lines and stock moves. The unit price of the stock move is updated with the
average price of the posted invoice lines that are linked to it.")
(license license:gpl3+)))
(define-public python-trytond-account-product
(define-public python-trytond-account-invoice-stock
(deprecated-package
"python-trytond-account-invoice-stock" trytond-account-invoice-stock))
(define-public trytond-account-product
(package
(name "python-trytond-account-product")
(version "5.8.1")
(name "trytond-account-product")
(version "6.0.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_account_product" version))
(sha256
(base32 "10bpbkkmllbh9lm5ajydmc5nvqm9bbdn9rmm03jqgik23s5kyx2z"))))
(base32 "1z0dn1p22smzb4a9v451224wrpxcw94inl7jxkarc0q088gasn7d"))))
(build-system python-build-system)
(arguments (tryton-arguments "account_product"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-sql" ,python-sql)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-trytond-account"
,python-trytond-account)
("python-trytond-analytic-account"
,python-trytond-analytic-account)
("python-trytond-company"
,python-trytond-company)
("python-trytond-product"
,python-trytond-product)
("trytond" ,trytond)))
`(("trytond" ,trytond)
("trytond-account" ,trytond-account)
("trytond-analytic-account" ,trytond-analytic-account)
("trytond-company" ,trytond-company)
("trytond-product" ,trytond-product)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module to add accounting on product")
(description
@ -335,39 +302,28 @@ average price of the posted invoice lines that are linked to it.")
and category.")
(license license:gpl3+)))
(define-public python-trytond-analytic-account
(define-public python-trytond-account-product
(deprecated-package "python-trytond-account-product" trytond-account-product))
(define-public trytond-analytic-account
(package
(name "python-trytond-analytic-account")
(version "5.8.1")
(name "trytond-analytic-account")
(version "6.0.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_analytic_account" version))
(sha256
(base32 "10rn2rf1ji7d1gxmgca368yvabql1ahklqg7p8sh5bl79vn5qx5x"))))
(base32 "09j9xz41n5hk3j7w63xbw1asd3p00prqvl652qcm9x1nrlmqiw3r"))))
(build-system python-build-system)
(arguments (tryton-arguments "analytic_account"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-sql" ,python-sql)
("python-trytond-account"
,python-trytond-account)
("python-trytond-company"
,python-trytond-company)
("python-trytond-currency"
,python-trytond-currency)
("python-trytond-party" ,python-trytond-party)
("trytond" ,trytond)))
`(("trytond" ,trytond)
("trytond-account" ,trytond-account)
("trytond-company" ,trytond-company)
("trytond-currency" ,trytond-currency)
("trytond-party" ,trytond-party)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module for analytic accounting")
(description
@ -375,35 +331,27 @@ and category.")
required to analyse accounting using multiple different axes.")
(license license:gpl3+)))
(define-public python-trytond-company
(define-public python-trytond-analytic-account
(deprecated-package
"python-trytond-analytic-account" trytond-analytic-account))
(define-public trytond-company
(package
(name "python-trytond-company")
(version "5.8.1")
(name "trytond-company")
(version "6.0.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_company" version))
(sha256
(base32 "1bwy2rkgfw32cwhq5fh3rpy7bx425h44ap10i9kjx5ak86bfnpz9"))))
(base32 "1q4qdyg32dn00pn3pj2yjl3jhxaqpv7a1cv5s5c95cpy5p46p02n"))))
(build-system python-build-system)
(arguments (tryton-arguments "company"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-sql" ,python-sql)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-trytond-currency"
,python-trytond-currency)
("python-trytond-party" ,python-trytond-party)
("trytond" ,trytond)))
`(("trytond" ,trytond)
("trytond-currency" ,trytond-currency)
("trytond-party" ,trytond-party)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module with companies and employees")
(description
@ -411,31 +359,23 @@ required to analyse accounting using multiple different axes.")
company and employee and extend the user model.")
(license license:gpl3+)))
(define-public python-trytond-country
(define-public python-trytond-company
(deprecated-package "python-trytond-company" trytond-company))
(define-public trytond-country
(package
(name "python-trytond-country")
(version "5.8.1")
(name "trytond-country")
(version "6.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_country" version))
(sha256
(base32 "1lkspk5w5pb0gg2h27zb7vwcj993gkm1f84qdxmqlpkc8raqvicj"))))
(base32 "1ksinysac7p0k8avsz8xqzfkmm21s6i93qyrsma5h4y5477cwmw7"))))
(build-system python-build-system)
;; Doctest contains one test that requires internet access.
(arguments (tryton-arguments "country" "--no-doctest"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-sql" ,python-sql)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-pycountry" ,python-pycountry)
("trytond" ,trytond)))
@ -445,31 +385,26 @@ company and employee and extend the user model.")
"This package provides a Tryton module with countries.")
(license license:gpl3+)))
(define-public python-trytond-currency
(define-public python-trytond-country
(deprecated-package "python-trytond-country" trytond-country))
(define-public trytond-currency
(package
(name "python-trytond-currency")
(version "5.8.1")
(name "trytond-currency")
(version "6.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_currency" version))
(sha256
(base32 "0b5p7ibil7nlsv7f31j69rka4xj5za798262algx7xa88a6h7mmx"))))
(base32 "0fs2wvhgvc0l4yzs5m9l8z4lbzazr42hgz0859malhnlp1sya2kq"))))
(build-system python-build-system)
(arguments (tryton-arguments "currency"))
;; Doctest 'scenario_currency_rate_update.rst' fails.
(arguments (tryton-arguments "currency" "--no-doctest"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
`(,@%standard-trytond-native-inputs
("python-forex-python" ,python-forex-python)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-pycountry" ,python-pycountry)
("python-relatorio" ,python-relatorio)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
("python-pycountry" ,python-pycountry)))
(propagated-inputs
`(("python-sql" ,python-sql)
("trytond" ,trytond)))
@ -480,35 +415,27 @@ company and employee and extend the user model.")
currency and rate.")
(license license:gpl3+)))
(define-public python-trytond-party
(define-public python-trytond-currency
(deprecated-package "python-trytond-currency" trytond-currency))
(define-public trytond-party
(package
(name "python-trytond-party")
(version "5.8.1")
(name "trytond-party")
(version "6.0.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_party" version))
(sha256
(base32 "1hapfq7ip99s4qp9xra1m40q4n379p9pmfnz2x4ggd79ss76bghc"))))
(base32 "0aikzpr0ambc98v76dl6xqa42b08dy3b011y33lvxjp5mcha3f7y"))))
(build-system python-build-system)
;; Doctest 'scenario_party_phone_number.rst' fails.
(arguments (tryton-arguments "party" "--no-doctest"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-sql" ,python-sql)
("python-stnum" ,python-stdnum)
("python-trytond-country" ,python-trytond-country)
("trytond" ,trytond)))
`(("python-stdnum" ,python-stdnum)
("trytond" ,trytond)
("trytond-country" ,trytond-country)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module for parties and addresses")
(description
@ -516,35 +443,26 @@ currency and rate.")
addresses.")
(license license:gpl3+)))
(define-public python-trytond-product
(define-public python-trytond-party
(deprecated-package "python-trytond-party" trytond-party))
(define-public trytond-product
(package
(name "python-trytond-product")
(version "5.8.1")
(name "trytond-product")
(version "6.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_product" version))
(sha256
(base32 "0x18ngpjyrdwjwg17bz98jph4jv5gcv0qc0p2kxpam4lqsy34ic2"))))
(base32 "1xvvqxkvzyqy6fn2sj5h3zj0g17igzwx6s18sxkdz72vqz6kpv0l"))))
(build-system python-build-system)
(arguments (tryton-arguments "product"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-sql" ,python-sql)
("python-stdnum" ,python-stdnum)
("python-trytond-company"
,python-trytond-company)
("trytond" ,trytond)))
`(("python-stdnum" ,python-stdnum)
("trytond" ,trytond)
("trytond-company" ,trytond-company)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module with products")
(description
@ -552,85 +470,60 @@ addresses.")
Template and Product.")
(license license:gpl3+)))
(define-public python-trytond-purchase
(define-public python-trytond-product
(deprecated-package "python-trytond-product" trytond-product))
(define-public trytond-purchase
(package
(name "python-trytond-purchase")
(version "5.8.1")
(name "trytond-purchase")
(version "6.0.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_purchase" version))
(sha256
(base32 "0na74zijj46b12gypy9si3las02a96rh5ygl503c7razha61g1b0"))))
(base32 "12drjw30ik3alckn6xrny4814vzi3ysh17wgiawiy9319yahsvay"))))
(build-system python-build-system)
(arguments (tryton-arguments "purchase"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-sql" ,python-sql)
("python-trytond-account"
,python-trytond-account)
("python-trytond-account-invoice"
,python-trytond-account-invoice)
("python-trytond-account-invoice-stock"
,python-trytond-account-invoice-stock)
("python-trytond-account-product"
,python-trytond-account-product)
("python-trytond-company"
,python-trytond-company)
("python-trytond-currency"
,python-trytond-currency)
("python-trytond-party" ,python-trytond-party)
("python-trytond-product"
,python-trytond-product)
("python-trytond-stock" ,python-trytond-stock)
("trytond" ,trytond)))
`(("trytond" ,trytond)
("trytond-account" ,trytond-account)
("trytond-account-invoice" ,trytond-account-invoice)
("trytond-account-invoice-stock" ,trytond-account-invoice-stock)
("trytond-account-product" ,trytond-account-product)
("trytond-company" ,trytond-company)
("trytond-currency" ,trytond-currency)
("trytond-party" ,trytond-party)
("trytond-product" ,trytond-product)
("trytond-stock" ,trytond-stock)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module for purchase")
(description
"This package provides a Tryton module that defines the Purchase model.")
(license license:gpl3+)))
(define-public python-trytond-purchase-request
(define-public python-trytond-purchase
(deprecated-package "python-trytond-purchase" trytond-purchase))
(define-public trytond-purchase-request
(package
(name "python-trytond-purchase-request")
(version "5.8.1")
(name "trytond-purchase-request")
(version "6.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_purchase_request" version))
(sha256
(base32 "1m92snnvgisnv083nml6cz5qgnfdg539rd5bwg3lqrknm7343w16"))))
(base32 "0yhf3lh5b24qpk80r5pbmmswf5757bxa0s7ckl40vf6lkjkccv5i"))))
(build-system python-build-system)
;; Doctest 'scenario_purchase_request.rst' fails.
(arguments (tryton-arguments "purchase_request" "--no-doctest"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-sql" ,python-sql)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-trytond-product"
,python-trytond-product)
("python-trytond-purchase"
,python-trytond-purchase)
("trytond" ,trytond)))
`(("trytond" ,trytond)
("trytond-product" ,trytond-product)
("trytond-purchase" ,trytond-purchase)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module for purchase requests")
(description
@ -639,39 +532,30 @@ Purchase Requests which are central points to collect purchase requests
generated by other process from Tryton.")
(license license:gpl3+)))
(define-public python-trytond-stock
(define-public python-trytond-purchase-request
(deprecated-package
"python-trytond-purchase-request" trytond-purchase-request))
(define-public trytond-stock
(package
(name "python-trytond-stock")
(version "5.8.2")
(name "trytond-stock")
(version "6.0.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_stock" version))
(sha256
(base32 "0yb8kd3alwqkivrlpx0ni4jxv3x14i37lmwism9yi81xwchyrcjk"))))
(base32 "1v6pvkwj6vhjqbz2zn0609kb7kx4g0dsn1xhvax4z2dqigh7ywpx"))))
(build-system python-build-system)
(arguments (tryton-arguments "stock"))
(native-inputs
`(("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-simpleeval" ,python-simpleeval)
("python-sql" ,python-sql)
("python-trytond-company"
,python-trytond-company)
("python-trytond-currency"
,python-trytond-currency)
("python-trytond-party" ,python-trytond-party)
("python-trytond-product"
,python-trytond-product)
("trytond" ,trytond)))
("trytond" ,trytond)
("trytond-company" ,trytond-company)
("trytond-currency" ,trytond-currency)
("trytond-party" ,trytond-party)
("trytond-product" ,trytond-product)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module for stock and inventory")
(description
@ -681,80 +565,62 @@ between these locations, shipments for product arrivals and departures and
inventory to control and update stock levels.")
(license license:gpl3+)))
(define-public python-trytond-stock-lot
(define-public python-trytond-stock
(deprecated-package "python-trytond-stock" trytond-stock))
(define-public trytond-stock-lot
(package
(name "python-trytond-stock-lot")
(version "5.8.2")
(name "trytond-stock-lot")
(version "6.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_stock_lot" version))
(sha256
(base32 "0w2f62cfzm7j8wnw8igmjslpxc1a8s82dkdizyvim5qhjg6mrsym"))))
(base32 "18cwrvnrzjk1wb765gr6hp3plpdpwz1a7cwimjhxi47iw7w5c84g"))))
(build-system python-build-system)
(arguments (tryton-arguments "stock_lot"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-sql" ,python-sql)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-trytond-product"
,python-trytond-product)
("python-trytond-stock" ,python-trytond-stock)
("trytond" ,trytond)))
`(("trytond" ,trytond)
("trytond-product" ,trytond-product)
("trytond-stock" ,trytond-stock)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module for lot of products")
(description
"This package provides a Tryton module that defines lot of products.")
(license license:gpl3+)))
(define-public python-trytond-stock-supply
(define-public python-trytond-stock-lot
(deprecated-package "python-trytond-stock-lot" trytond-stock-lot))
(define-public trytond-stock-supply
(package
(name "python-trytond-stock-supply")
(version "5.8.1")
(name "trytond-stock-supply")
(version "6.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trytond_stock_supply" version))
(sha256
(base32 "01cgpxlznldrba79a3xmj4d0csyfc3ccgs66c490j8v8rdnqpbww"))))
(base32 "1p5l3yjjy6l25kk9xnhbl691l3v8gfg9fhc87jc6qszhxlqxk730"))))
(build-system python-build-system)
(arguments (tryton-arguments "stock_supply"))
(native-inputs
`(("python-dateutil" ,python-dateutil)
("python-genshi" ,python-genshi)
("python-lxml" ,python-lxml)
("python-magic" ,python-magic)
("python-passlib" ,python-passlib)
("python-polib" ,python-polib)
("python-proteus" ,python-proteus)
("python-relatorio" ,python-relatorio)
("python-werkzeug" ,python-werkzeug)
("python-wrapt" ,python-wrapt)))
(native-inputs `(,@%standard-trytond-native-inputs))
(propagated-inputs
`(("python-sql" ,python-sql)
("python-trytond-account"
,python-trytond-account)
("python-trytond-party" ,python-trytond-party)
("python-trytond-product"
,python-trytond-product)
("python-trytond-purchase"
,python-trytond-purchase)
("python-trytond-purchase-request"
,python-trytond-purchase-request)
("python-trytond-stock" ,python-trytond-stock)
("trytond" ,trytond)))
`(("trytond" ,trytond)
("trytond-account" ,trytond-account)
("trytond-party" ,trytond-party)
("trytond-product" ,trytond-product)
("trytond-purchase" ,trytond-purchase)
("trytond-purchase-request" ,trytond-purchase-request)
("trytond-stock" ,trytond-stock)))
(home-page "https://www.tryton.org/")
(synopsis "Tryton module for stock supply")
(description
"This package provides a Tryton module that adds automatic supply
mechanisms and introduces the concepts of order point.")
(license license:gpl3+)))
(define-public python-trytond-stock-supply
(deprecated-package "python-trytond-stock-supply" trytond-stock-supply))

View File

@ -1596,7 +1596,7 @@ visualize your public Git repositories on a web interface.")
(define-public pre-commit
(package
(name "pre-commit")
(version "2.14.0")
(version "2.15.0")
(source
(origin
;; No tests in the PyPI tarball.
@ -1606,7 +1606,7 @@ visualize your public Git repositories on a web interface.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0k6a9bmci5j0q0vmnmxxyx99h3i7lks8p7d76byadnxdh117ygqg"))))
(base32 "0hyynhg52qq8rd37cwk2gl1jjy7hpqh74zl2lg89kkdhhx0xfiaj"))))
(build-system python-build-system)
(arguments
`(#:phases

View File

@ -4222,7 +4222,7 @@ tools for styling them, including a built-in real-time video preview.")
(define-public pitivi
;; Pitivi switched to a non-semantic versioning scheme close before 1.0
(let ((latest-semver "0.999.0")
(%version "2021.01.0"))
(%version "2021.05.0"))
(package
(name "pitivi")
(version (string-append latest-semver "-" %version))
@ -4234,7 +4234,7 @@ tools for styling them, including a built-in real-time video preview.")
(commit %version)))
(file-name (git-file-name name version))
(sha256
(base32 "1jics10l16ismi5br6wxi4jxz3dd4p0c0xv8l0l3nvksvda4aafi"))))
(base32 "08x2fs2bak1fbmkvjijgx1dsawispv91bpv5j5gkqbv5dfgf7wah"))))
(build-system meson-build-system)
(inputs
`(("glib" ,glib)
@ -4278,8 +4278,7 @@ tools for styling them, including a built-in real-time video preview.")
;; necessary or optional. Let the user's packages take
;; precedence in case they have e.g. the full gst-plugins-bad.
`("GST_PLUGIN_SYSTEM_PATH" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))
#t)))))
(,(getenv "GST_PLUGIN_SYSTEM_PATH"))))))))))
(home-page "http://www.pitivi.org")
(synopsis "Video editor based on GStreamer Editing Services")
(description "Pitivi is a video editor built upon the GStreamer Editing
@ -4678,7 +4677,7 @@ transitions, and effects and then export your film to many common formats.")
(define-public shotcut
(package
(name "shotcut")
(version "21.06.29")
(version "21.08.29")
(source
(origin
(method git-fetch)
@ -4687,7 +4686,7 @@ transitions, and effects and then export your film to many common formats.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0384iv2129mpalia39x8mn5xlbgx9ip994700jzjjxdqfq23a9qm"))))
(base32 "0lj3ini0fymvcwxk8l1l8ms5519n5n87gdvh0yfhilwp0zqyqkc6"))))
(build-system qt-build-system)
(arguments
`(#:tests? #f ;there are no tests
@ -4753,7 +4752,7 @@ and audio capture, network stream playback, and many more.")
(define-public dav1d
(package
(name "dav1d")
(version "0.9.1")
(version "0.9.2")
(source
(origin
(method git-fetch)
@ -4762,7 +4761,7 @@ and audio capture, network stream playback, and many more.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "15ngaqyjbwkj0rd9mvxaqf3i9vzsnlrqgr50cnxxjqnpf7xdmslj"))))
(base32 "0bkps488h9s15ylvkm4fmfywgrpbw570glawpnv6khpq9n223dzl"))))
(build-system meson-build-system)
(native-inputs `(("nasm" ,nasm)))
(home-page "https://code.videolan.org/videolan/dav1d")

View File

@ -978,6 +978,34 @@ asynchronous adapters (including tmux, screen, and a headless mode), and when
the job completes, errors will be loaded and parsed automatically.")
(license license:vim)))
(define-public vim-gemini-vim
;; No releases have been tagged.
(let ((commit "f300c54174fc0db8fb68f1bc04307b58612e9630")
(revision "1"))
(package
(name "vim-gemini-vim")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~torresjrjr/gemini.vim")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "05ffhhfahjqwxyrqmsinsahrs15wknzl2qbj8mznyv319mn2civ2"))))
(build-system copy-build-system)
(arguments
`(#:install-plan
'(("ftdetect" "share/vim/vimfiles/")
("syntax" "share/vim/vimfiles/"))))
(home-page "https://git.sr.ht/~torresjrjr/gemini.vim")
(synopsis "Vim syntax highlighting plugin for Gemini")
(description "This Vim plugin provides a Vim syntax highlighting plugin
for Gemini Text, the text/gemini media type, as defined in the Gemini protocol
specification.")
(license license:gpl3))))
(define-public vim-eunuch
(let ((commit "33e875b31c8b811a0a47908884a5e2339106bbe8")
(revision "1"))
@ -1005,3 +1033,35 @@ the job completes, errors will be loaded and parsed automatically.")
This package includes commands such as @code{SudoWrite} and @code{SudoEdit} and
help working on Vim buffers and the files they reference with one command.")
(license license:vim))))
(define-public vim-slime
;; No tagged releases.
(let ((commit "a522fed677e50175f52efc5848cc35209af33216")
(revision "1"))
(package
(name "vim-slime")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jpalardy/vim-slime")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0k4b629jn6xlxyjxdl3cgm06v9dmx967rqnslv5m82c9kscwpyh4"))))
(build-system copy-build-system)
(arguments
`(#:install-plan
'(("autoload" "share/vim/vimfiles/")
("doc" "share/vim/vimfiles/")
("ftplugin" "share/vim/vimfiles/")
("plugin" "share/vim/vimfiles/"))))
(home-page "https://technotales.wordpress.com/2007/10/03/like-slime-for-vim/")
(synopsis "Vim plugin to give you some slime")
(description "SLIME is an Emacs plugin to turn Emacs into a Lisp IDE. You
can type text in a file, send it to a live REPL, and avoid having to reload all
your code every time you make a change. @code{Vim-slime} is an attempt at
getting some of these features into Vim. It works with any REPL and isn't tied
to Lisp.")
(license license:expat))))

View File

@ -371,6 +371,7 @@ server and embedded PowerPC, and S390 guests.")
(package
(inherit qemu)
(name "qemu-minimal")
(outputs '("out" "doc"))
(synopsis
"Machine emulator and virtualizer (without GUI) for the host architecture")
(arguments
@ -406,11 +407,16 @@ server and embedded PowerPC, and S390 guests.")
"--target-list=riscv32-softmmu,riscv64-softmmu")
(else ; An empty list actually builds all the targets.
'()))))
`(cons ,target-list-arg ,configure-flags)))))
`(cons ,target-list-arg ,configure-flags)))
((#:phases phases)
`(modify-phases ,phases
(delete 'configure-user-static)
(delete 'build-user-static)
(delete 'install-user-static)))))
;; Remove dependencies on optional libraries, notably GUI libraries.
(native-inputs (fold alist-delete (package-native-inputs qemu)
'("gettext")))
'("gettext" "glib:static" "pcre:static" "zlib:static")))
(inputs (fold alist-delete (package-inputs qemu)
'("libusb" "mesa" "sdl2" "spice" "virglrenderer" "gtk+"
"usbredir" "libdrm" "libepoxy" "pulseaudio" "vde2"
@ -970,7 +976,8 @@ all common programming languages. Vala bindings are also provided.")
"0qz4l7mlhq7hx53q606qgvkyzyr01glsw290v8ppzvxn1fydlrci"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
`(("pkg-config" ,pkg-config)
("docbook2x" ,docbook2x)))
(inputs
`(("gnutls" ,gnutls)
("libcap" ,libcap)

View File

@ -19,6 +19,7 @@
;;; Copyright © 2021 Benoit Joly <benoit@benoitj.ca>
;;; Copyright © 2021 Alexander Krotov <krotov@iitp.ru>
;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2021 Christopher Howard <christopher@librehacker.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -903,3 +904,31 @@ interface.")
(synopsis "Gemini client with a terminal interface")
(description "Telescope is a w3m-like browser for Gemini.")
(license license:x11)))
(define-public av-98
(package
(name "av-98")
(version "1.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "AV-98" version))
(sha256
(base32
"02fjnc2rvm010gb3i07p8r4xlhrmnv1wca1qymfjcymr7vm68h0i"))))
(build-system python-build-system)
(home-page "https://tildegit.org/solderpunk/AV-98/")
(synopsis "Command line Gemini client")
(description "AV-98 is an experimental client for the Gemini protocol.
Features include
@itemize
@item TOFU or CA server certificate validation;
@item Extensive client certificate support if an openssl binary is available;
@item Ability to specify external handler programs for different MIME types;
@item Gopher proxy support;
@item Advanced navigation tools like tour and mark (as per VF-1);
@item Bookmarks;
@item IPv6 support;
@item Support for any character encoding recognised by Python.
@end itemize")
(license license:bsd-2)))

View File

@ -19,7 +19,7 @@
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017, 2018, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2018, 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Petter <petter@mykolab.ch>
;;; Copyright © 2017, 2021 Pierre Langlois <pierre.langlois@gmx.com>
@ -6012,16 +6012,17 @@ deployments.")
(package
(name "varnish")
(home-page "https://varnish-cache.org/")
(version "6.5.1")
(version "7.0.0")
(source (origin
(method url-fetch)
(uri (string-append home-page "_downloads/varnish-" version ".tgz"))
(sha256
(base32
"1dfdswri6lkfk6kml3szvffm91y49pajgqy1k5y26llqixl4r5hi"))))
"11z0pa618lh925ih67wmp1gqk7i46l486j4spjy71g1n3w5mqylc"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")
(string-append "CC=" ,(cc-for-target))
;; Use absolute path of GCC so it's found at runtime.
(string-append "PTHREAD_CC="
(assoc-ref %build-inputs "gcc")
@ -6030,23 +6031,26 @@ deployments.")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'use-absolute-file-names
(lambda _
(substitute* '("bin/varnishtest/vtc_varnish.c"
"bin/varnishtest/vtc_process.c"
"bin/varnishd/mgt/mgt_vcc.c"
"bin/varnishtest/tests/u00014.vtc")
(("/bin/sh") (which "sh")))
(substitute* "bin/varnishd/mgt/mgt_shmem.c"
(("rm -rf") (string-append (which "rm") " -rf")))
(substitute* "bin/varnishtest/vtc_main.c"
(("/bin/rm") (which "rm")))
#t))
(lambda* (#:key inputs #:allow-other-keys)
(let* ((bash (assoc-ref inputs "bash-minimal"))
(sh (string-append bash "/bin/sh"))
(coreutils (assoc-ref inputs "coreutils"))
(rm (string-append coreutils "/bin/rm")))
(substitute* '("bin/varnishtest/vtc_varnish.c"
"bin/varnishtest/vtc_process.c"
"bin/varnishtest/vtc_haproxy.c"
"bin/varnishtest/tests/u00014.vtc"
"bin/varnishd/mgt/mgt_vcc.c")
(("/bin/sh") sh))
(substitute* "bin/varnishd/mgt/mgt_shmem.c"
(("rm -rf") (string-append rm " -rf")))
(substitute* "bin/varnishtest/vtc_main.c"
(("/bin/rm") rm)))))
(add-before 'install 'patch-Makefile
(lambda _
(substitute* "Makefile"
;; Do not create /var/varnish during install.
(("^install-data-am: install-data-local") "install-data-am: "))
#t))
(("^install-data-am: install-data-local") "install-data-am: "))))
(add-after 'install 'wrap-varnishd
;; Varnish uses GCC to compile VCL, so wrap it with required GCC
;; environment variables to avoid propagating them to profiles.
@ -6059,17 +6063,18 @@ deployments.")
;; Add binutils to PATH so gcc finds the 'as' executable.
`("PATH" ":" prefix (,PATH))
;; Make sure 'crti.o' et.al is found.
`("LIBRARY_PATH" ":" prefix (,LIBRARY_PATH)))
#t))))))
`("LIBRARY_PATH" ":" prefix (,LIBRARY_PATH)))))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("python-sphinx" ,python-sphinx)
("rst2man" ,python-docutils)))
(inputs
`(("jemalloc" ,jemalloc)
`(("bash-minimal" ,bash-minimal)
("coreutils" ,coreutils)
("jemalloc" ,jemalloc)
("ncurses" ,ncurses)
("pcre" ,pcre)
("python" ,python-wrapper)
("pcre2" ,pcre2)
("python" ,python)
("readline" ,readline)))
(synopsis "Web application accelerator")
(description
@ -6086,14 +6091,14 @@ configuration language.")
(package
(name "varnish-modules")
(home-page "https://github.com/varnish/varnish-modules")
(version "0.17.1")
(version "0.19.0")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1mzkad9r4rpm1fi7j7skwrsyzzbwcapfnlvvl1ls3rng2djcqb5j"))))
"0qq5g6bbd1a1ml1wk8jj9z39a899jzqbf7aizr3pvyz0f4kz8mis"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -6631,7 +6636,7 @@ file links.")
(define-public castor
(package
(name "castor")
(version "0.8.16")
(version "0.8.18")
(source
(origin
(method git-fetch)
@ -6640,7 +6645,7 @@ file links.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0rwg1w7srjwa23mkypl8zk6674nhph4xsc6nc01f6g5k959szylr"))))
(base32 "1l72r6a917ymc9pn8dllbal1xdczfai376nvqkiys5fm4j4s3zmj"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs

View File

@ -123,7 +123,7 @@ code. Agate was previously known as journalism.")))
(define-public python-agate-sql
(wireservice-package
(name "python-agate-sql")
(version "0.5.4")
(version "0.5.7")
(source (origin
(method git-fetch)
(uri (git-reference
@ -132,7 +132,7 @@ code. Agate was previously known as journalism.")))
(file-name (git-file-name name version))
(sha256
(base32
"16q0b211n5b1qmhzkfl2jr56lda0rvyh5j1wzw26h2n4pm4wxlx2"))))
"1q6ywm0wzkkwcwk0884k0lycf8k7pzwz94rzb1y5ssm8b1gl0i62"))))
(native-inputs
`(("python-nose" ,python-nose)
("python-sphinx" ,python-sphinx)

View File

@ -45,6 +45,7 @@
;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021 qblade <qblade@protonmail.com>
;;; Copyright © 2021 lasnesne <lasnesne@lagunposprasihopre.org>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -384,14 +385,14 @@ from many programming languages.")
(define-public i3lock
(package
(name "i3lock")
(version "2.11.1")
(version "2.13")
(source (origin
(method url-fetch)
(uri (string-append "https://i3wm.org/i3lock/i3lock-"
version ".tar.bz2"))
(sha256
(base32
"015dn534m7cxjvqdncpvaq9p8b2r4w5hp1yanbdy2abmhbcc7a7j"))))
"02szjsaz7rqrdkd0r2nwgwa85c4hwfrcskxw7ryk695kmjcfhzv3"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -411,6 +412,43 @@ from many programming languages.")
Despite the name it should work with any X11 window manager.")
(license license:bsd-3)))
(define-public i3lock-blur
(package
(name "i3lock-blur")
(version "2.10")
(source (origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/karulont/i3lock-blur")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1bd5nrlga5g1sz1f64gnc3dqy8yfrr4q1ss59krymbpxa1hhf55c"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("automake" ,automake)
("autoconf" ,autoconf)))
(inputs
`(("cairo" ,cairo)
("mesa" ,mesa)
("libev" ,libev)
("linux-pam" ,linux-pam)
("libxcb" ,libxcb)
("libxkbcommon" ,libxkbcommon)
("xcb-util" ,xcb-util)
("xcb-util-image" ,xcb-util-image)
("xcb-util-xrm" ,xcb-util-xrm)))
(home-page "https://github.com/karulont/i3lock-blur")
(synopsis "Lightweight screen locker with transparent blurring background")
(description
"Simple X11 screen locker with transparent blurring background developed
alongside the i3 project. Despite the name it should work with any X11 window
manager.")
(license license:expat)))
(define-public i3blocks
(package
(name "i3blocks")
@ -641,6 +679,7 @@ Features include:
(inputs
`(("imagemagick" ,imagemagick)
("wmctrl" ,wmctrl)
("i3lock" ,i3lock)
("gawk" ,gawk)))
(home-page "https://github.com/meskarune/i3lock-fancy")
(synopsis "Screen locker with screenshot function")

View File

@ -3035,3 +3035,31 @@ System. This includes such features as MouseKeys, AccessX, StickyKeys,
BounceKeys, and SlowKeys. It includes a graphical program to help with
MouseKeys-acceleration management.")
(license license:bsd-3)))
(define-public wlsunset
(package
(name "wlsunset")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~kennylevinsen/wlsunset/")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0hhsddh3rs066rbsjksr8kcwg8lvglbvs67dq0r5wx5c1xcwb51w"))))
(build-system meson-build-system)
(inputs
`(("wayland" ,wayland)
("wayland-protocols" ,wayland-protocols)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(synopsis "Day/night gamma adjustments for Wayland compositors")
(home-page "https://sr.ht/~kennylevinsen/wlsunset/")
(description
"wlunset adjusts gamma based on day-night cycles on Wayland compositors
that support @samp{wlr-gamma-control-unstable-v1}. It is also known as a blue
light filter or night light.")
(license license:expat)))

View File

@ -15,6 +15,7 @@
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2021 André A. Gomes <andremegafone@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -780,7 +781,7 @@ like appearance, display, keyboard and mouse settings.")
(define-public thunar
(package
(name "thunar")
(version "4.16.8")
(version "4.16.8") ;stable version = even minor
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -796,6 +797,7 @@ like appearance, display, keyboard and mouse settings.")
(inputs
`(("exo" ,exo)
("gobject-introspection" ,gobject-introspection)
("gvfs" ,gvfs)
("libexif" ,libexif)
("libgudev" ,libgudev)
("libnotify" ,libnotify)

View File

@ -295,81 +295,6 @@ formulas and hyperlinks to multiple worksheets in an Excel 2007+ XLSX file.")
(license (list license:bsd-2
license:public-domain)))) ; third_party/md5
;; This is the latest stable release.
(define-public libxmlplusplus
(package
(name "libxmlplusplus")
(version "3.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libxmlplusplus/libxmlplusplus")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0wjz591rjlgbah7dcq8i0yn0zw9d62b7g6r0pppx81ic0cx8n8ga"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-documentation
(lambda* (#:key inputs #:allow-other-keys)
(let ((xmldoc (string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook"))
(xsldoc (string-append (assoc-ref inputs "docbook-xsl")
"/xml/xsl/docbook-xsl-"
,(package-version docbook-xsl))))
(substitute* '("examples/dom_xpath/example.xml"
"docs/manual/libxml++_without_code.xml")
(("http://.*/docbookx\\.dtd")
(string-append xmldoc "/docbookx.dtd")))
(setenv "SGML_CATALOG_FILES"
(string-append xmldoc "/catalog.xml"))
(substitute* "docs/manual/docbook-customisation.xsl"
(("http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl")
(string-append xsldoc "/html/chunk.xsl"))))
#t)))))
(propagated-inputs
`(("libxml2" ,libxml2)))
(inputs
`(("glibmm" ,glibmm-2.64)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("doxygen" ,doxygen)
("docbook-xml" ,docbook-xml)
("docbook-xsl" ,docbook-xsl)
("graphviz" ,graphviz) ; for dot
("libtool" ,libtool)
("libxslt" ,libxslt)
("mm-common" ,mm-common)
("perl" ,perl)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/libxmlplusplus/libxmlplusplus/")
(synopsis "C++ bindings for libxml2")
(description
"libxml++ (a.k.a. libxmlplusplus) provides a C++ interface to XML files.
It uses libxml2 to access the XML files.")
(license license:lgpl2.1+)))
;; This is the last release providing the 2.6 API, hence the name.
;; This is needed by tascam-gtk
(define-public libxmlplusplus-2.6
(package
(inherit libxmlplusplus)
(name "libxmlplusplus")
(version "2.40.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libxmlplusplus/libxmlplusplus")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0gbfi4l88w828gmyc9br11l003ylyi4vigp5d1kfgsn0k4cig3y9"))))))
(define-public python-libxml2
(package/inherit libxml2
(name "python-libxml2")

View File

@ -969,7 +969,12 @@ fi\n")))
;; Some programs (e.g., GLib) look at /etc/timezone to find the
;; name of the current timezone. For details, see
;; https://lists.gnu.org/archive/html/guix-devel/2019-07/msg00166.html
("timezone" ,(plain-file "timezone" (operating-system-timezone os)))
;; Some programs expect a terminating newline.
("timezone" ,(plain-file "timezone"
(string-append
(string-trim-both
(operating-system-timezone os))
"\n")))
("localtime" ,(file-append tzdata "/share/zoneinfo/"
(operating-system-timezone os)))
,@(if sudoers

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2014, 2021 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -16,7 +16,8 @@
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (guix))
(define-module (guix)
#:re-export-and-replace (define-public)) ;from (guix packages)
;; The composite module that re-exports everything from the public modules.

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2014, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;;
;;; This file is part of GNU Guix.
;;;
@ -32,27 +33,28 @@
(define (bytevector->base16-string bv)
"Return the hexadecimal representation of BV's contents."
(define len
(bytevector-length bv))
(let-syntax ((base16-chars (lambda (s)
(syntax-case s ()
(_
(let ((v (list->vector
(unfold (cut > <> 255)
(lambda (n)
(format #f "~2,'0x" n))
1+
0))))
v))))))
(define chars base16-chars)
(let loop ((i len)
(r '()))
(if (zero? i)
(string-concatenate r)
(let ((i (- i 1)))
(loop i
(cons (vector-ref chars (bytevector-u8-ref bv i)) r)))))))
(define len (bytevector-length bv))
(define utf8 (make-bytevector (* len 2)))
(let-syntax ((base16-octet-pairs
(lambda (s)
(syntax-case s ()
(_
(string->utf8
(string-concatenate
(unfold (cut > <> 255)
(lambda (n)
(format #f "~2,'0x" n))
1+
0))))))))
(define octet-pairs base16-octet-pairs)
(let loop ((i 0))
(when (< i len)
(bytevector-u16-native-set!
utf8 (* 2 i)
(bytevector-u16-native-ref octet-pairs
(* 2 (bytevector-u8-ref bv i))))
(loop (+ i 1))))
(utf8->string utf8)))
(define base16-string->bytevector
(let ((chars->value (fold (lambda (i r)

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2015, 2017, 2021 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -42,6 +42,19 @@
;;;
;;; Code:
(define-syntax bit-field
(lambda (s)
;; This inline version of 'bit-field' assumes that START and END are
;; literals and pre-computes the mask. In an ideal world, using 'define'
;; or 'define-inlinable' would be enough, but as of 3.0.7, peval doesn't
;; expand calls to 'expt' (and 'bit-field' is a subr.)
(syntax-case s ()
((_ n start end)
(let* ((s (syntax->datum #'start))
(e (syntax->datum #'end))
(mask (- (expt 2 (- e s)) 1)))
#`(logand (ash n (- start)) #,mask))))))
(define bytevector-quintet-ref
(let* ((ref bytevector-u8-ref)
(ref+ (lambda (bv offset)

View File

@ -61,6 +61,17 @@
#:allow-other-keys
#:rest arguments)
"Return a bag for NAME."
;; Flags that put dune into reproducible build mode.
(define dune-release-flags
(if (version>=? (package-version dune) "2.5.0")
;; For dune >= 2.5.0 this is just --release.
''("--release")
;; --release does not exist before 2.5.0. Replace with flags compatible
;; with our old ocaml4.07-dune (1.11.3)
''("--root" "." "--ignore-promoted-rules" "--no-config"
"--profile" "release")))
(define private-keywords
'(#:target #:dune #:findlib #:ocaml #:inputs #:native-inputs))
@ -80,7 +91,9 @@
(build-inputs `(("dune" ,dune)
,@(bag-build-inputs base)))
(build dune-build)
(arguments (strip-keyword-arguments private-keywords arguments))))))
(arguments (append
`(#:dune-release-flags ,dune-release-flags)
(strip-keyword-arguments private-keywords arguments)))))))
(define* (dune-build name inputs
#:key
@ -91,7 +104,7 @@
(out-of-source? #t)
(jbuild? #f)
(package #f)
(profile "release")
(dune-release-flags ''())
(tests? #t)
(test-flags ''())
(test-target "test")
@ -131,7 +144,7 @@ provides a 'setup.ml' file as its build system."
#:out-of-source? #$out-of-source?
#:jbuild? #$jbuild?
#:package #$package
#:profile #$profile
#:dune-release-flags #$dune-release-flags
#:tests? #$tests?
#:test-target #$test-target
#:install-target #$install-target

View File

@ -3,6 +3,7 @@
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -30,6 +31,7 @@
#:use-module (guix packages)
#:use-module (ice-9 match)
#:use-module (ice-9 regex)
#:use-module (srfi srfi-1)
#:export (%go-build-system-modules
go-build
go-build-system
@ -81,6 +83,24 @@ present) if a pseudo-version pattern is not recognized."
commit hash and its date rather than a proper release tag."
(regexp-exec %go-pseudo-version-rx version))
(define (go-target target)
;; Parse the nix-system equivalent of the target and set the
;; target for compilation accordingly.
(match (string-split (gnu-triplet->nix-system target) #\-)
((arch os)
(list (match arch
("aarch64" "arm64")
("armhf" "arm")
("powerpc64le" "ppc64le")
("powerpc64" "ppc64")
("i686" "386")
("x86_64" "amd64")
("mips64el" "mips64le")
(_ arch))
(match os
((or "mingw32" "cygwin") "windows")
(_ os))))))
(define %go-build-system-modules
;; Build-side modules imported and used by default.
`((guix build go-build-system)
@ -101,22 +121,37 @@ commit hash and its date rather than a proper release tag."
(define private-keywords
'(#:target #:go #:inputs #:native-inputs))
(and (not target) ;XXX: no cross-compilation
(bag
(name name)
(system system)
(host-inputs `(,@(if source
`(("source" ,source))
'())
,@inputs
(bag
(name name)
(system system)
(target target)
(build-inputs `(,@(if source
`(("source" ,source))
'())
,@`(("go" ,go))
,@native-inputs
,@(if target '() inputs)
,@(if target
;; Use the standard cross inputs of
;; 'gnu-build-system'.
(standard-cross-packages target 'host)
'())
;; Keep the standard inputs of 'gnu-build-system'.
,@(standard-packages)))
(host-inputs (if target inputs '()))
;; Keep the standard inputs of 'gnu-build-system'.
,@(standard-packages)))
(build-inputs `(("go" ,go)
,@native-inputs))
(outputs outputs)
(build go-build)
(arguments (strip-keyword-arguments private-keywords arguments)))))
;; The cross-libc is really a target package, but for bootstrapping
;; reasons, we can't put it in 'host-inputs'. Namely, 'cross-gcc' is a
;; native package, so it would end up using a "native" variant of
;; 'cross-libc' (built with 'gnu-build'), whereas all the other packages
;; would use a target variant (built with 'gnu-cross-build'.)
(target-inputs (if target
(standard-cross-packages target 'target)
'()))
(outputs outputs)
(build (if target go-cross-build go-build))
(arguments (strip-keyword-arguments private-keywords arguments))))
(define* (go-build name inputs
#:key
@ -131,6 +166,8 @@ commit hash and its date rather than a proper release tag."
(tests? #t)
(allow-go-reference? #f)
(system (%current-system))
(goarch (first (go-target (%current-system))))
(goos (last (go-target (%current-system))))
(guile #f)
(imported-modules %go-build-system-modules)
(modules '((guix build go-build-system)
@ -145,6 +182,8 @@ commit hash and its date rather than a proper release tag."
#:system #$system
#:phases #$phases
#:outputs #$(outputs->gexp outputs)
#:goarch #$goarch
#:goos #$goos
#:search-paths '#$(sexp->gexp
(map search-path-specification->sexp
search-paths))
@ -162,6 +201,98 @@ commit hash and its date rather than a proper release tag."
#:system system
#:guile-for-build guile)))
(define* (go-cross-build store name
#:key
target native-drvs target-drvs
(phases '(@ (guix build go-build-system)
%standard-phases))
(outputs '("out"))
(search-paths '())
(native-search-paths '())
(install-source? #t)
(import-path "")
(unpack-path "")
(build-flags ''())
(tests? #f) ; nothing can be done
(allow-go-reference? #f)
(system (%current-system))
(goarch (first (go-target target)))
(goos (last (go-target target)))
(guile #f)
(imported-modules %go-build-system-modules)
(modules '((guix build go-build-system)
(guix build union)
(guix build utils))))
"Cross-build NAME using GO, where TARGET is a GNU triplet and with INPUTS."
(define builder
`(begin
(use-modules ,@modules)
(let ()
(define %build-host-inputs
',(map (match-lambda
((name (? derivation? drv) sub ...)
`(,name . ,(apply derivation->output-path drv sub)))
((name path)
`(,name . ,path)))
native-drvs))
(define %build-target-inputs
',(map (match-lambda
((name (? derivation? drv) sub ...)
`(,name . ,(apply derivation->output-path drv sub)))
((name (? package? pkg) sub ...)
(let ((drv (package-cross-derivation store pkg
target system)))
`(,name . ,(apply derivation->output-path drv sub))))
((name path)
`(,name . ,path)))
target-drvs))
(go-build #:name ,name
#:source ,(match (assoc-ref native-drvs "source")
(((? derivation? source))
(derivation->output-path source))
((source)
source)
(source
source))
#:system ,system
#:phases ,phases
#:outputs %outputs
#:target ,target
#:goarch ,goarch
#:goos ,goos
#:inputs %build-target-inputs
#:native-inputs %build-host-inputs
#:search-paths ',(map search-path-specification->sexp
search-paths)
#:native-search-paths ',(map
search-path-specification->sexp
native-search-paths)
#:install-source? ,install-source?
#:import-path ,import-path
#:unpack-path ,unpack-path
#:build-flags ,build-flags
#:tests? ,tests?
#:allow-go-reference? ,allow-go-reference?
#:inputs %build-inputs))))
(define guile-for-build
(match guile
((? package?)
(package-derivation store guile system #:graft? #f))
(#f ; the default
(let* ((distro (resolve-interface '(gnu packages commencement)))
(guile (module-ref distro 'guile-final)))
(package-derivation store guile system #:graft? #f)))))
(build-expression->derivation store name builder
#:system system
#:inputs (append native-drvs target-drvs)
#:outputs outputs
#:modules imported-modules
#:guile-for-build guile-for-build))
(define go-build-system
(build-system
(name 'go)

View File

@ -159,6 +159,7 @@
(outputs '("out"))
(make-flags ''())
(system (%current-system))
(source-directory ".")
(guile #f)
(substitutable? #t)
(imported-modules
@ -172,6 +173,7 @@
(use-modules #$@(sexp->gexp modules))
(linux-module-build #:name #$name
#:source #+source
#:source-directory #$source-directory
#:search-paths '#$(sexp->gexp
(map search-path-specification->sexp
search-paths))

View File

@ -747,15 +747,20 @@ otherwise simply ignore them."
content-addressed-mirrors))
(define disarchive-uris
(append-map (match-lambda
((? string? mirror)
(map (match-lambda
((hash-algo . hash)
(string->uri
(string-append mirror
(symbol->string hash-algo) "/"
(bytevector->base16-string hash)))))
hashes)))
(append-map (lambda (mirror)
(let ((make-url (match mirror
((? string?)
(lambda (hash-algo hash)
(string-append
mirror
(symbol->string hash-algo) "/"
(bytevector->base16-string hash))))
((? procedure?)
mirror))))
(map (match-lambda
((hash-algo . hash)
(string->uri (make-url hash-algo hash))))
hashes)))
disarchive-mirrors))
;; Make this unbuffered so 'progress-report/file' works as expected. 'line

View File

@ -32,23 +32,26 @@
;; Code:
(define* (build #:key (build-flags '()) (jbuild? #f)
(use-make? #f) (package #f)
(profile "release") #:allow-other-keys)
(use-make? #f) (package #f) (dune-release-flags '())
#:allow-other-keys)
"Build the given package."
(let ((program (if jbuild? "jbuilder" "dune")))
(apply invoke program "build" "@install"
(append (if package (list "-p" package) '())
`("--profile" ,profile)
(append (if package (list "-p" package)
dune-release-flags)
build-flags)))
#t)
(define* (check #:key (test-flags '()) (test-target "test") tests?
(jbuild? #f) (package #f) #:allow-other-keys)
(jbuild? #f) (package #f) (dune-release-flags '())
#:allow-other-keys)
"Test the given package."
(when tests?
(let ((program (if jbuild? "jbuilder" "dune")))
(apply invoke program "runtest" test-target
(append (if package (list "-p" package) '()) test-flags))))
(append (if package (list "-p" package)
dune-release-flags)
test-flags))))
#t)
(define* (install #:key outputs (install-target "install") (jbuild? #f)

View File

@ -4,7 +4,7 @@
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -131,7 +131,7 @@
;;
;; Code:
(define* (setup-go-environment #:key inputs outputs #:allow-other-keys)
(define* (setup-go-environment #:key inputs outputs goos goarch #:allow-other-keys)
"Prepare a Go build environment for INPUTS and OUTPUTS. Build a file system
union of INPUTS. Export GOPATH, which helps the compiler find the source code
of the package being built and its dependencies, and GOBIN, which determines
@ -149,6 +149,22 @@ dependencies, so it should be self-contained."
;; GOPATH behavior.
(setenv "GO111MODULE" "off")
(setenv "GOBIN" (string-append (assoc-ref outputs "out") "/bin"))
;; Make sure we're building for the correct architecture and OS targets
;; that Guix targets.
(setenv "GOARCH" goarch)
(setenv "GOOS" goos)
(match goarch
("arm"
(setenv "GOARM" "7"))
((or "mips" "mipsel")
(setenv "GOMIPS" "hardfloat"))
((or "mips64" "mips64le")
(setenv "GOMIPS64" "hardfloat"))
((or "ppc64" "ppc64le")
(setenv "GOPPC64" "power8"))
(_ #t))
(let ((tmpdir (tmpnam)))
(match (go-inputs inputs)
(((names . directories) ...)

View File

@ -49,16 +49,17 @@
; TODO: kernel ".config".
#t)
(define* (build #:key inputs make-flags #:allow-other-keys)
(define* (build #:key inputs make-flags (source-directory ".") #:allow-other-keys)
(apply invoke "make" "-C"
(string-append (assoc-ref inputs "linux-module-builder")
"/lib/modules/build")
(string-append "M=" (getcwd))
(string-append "M=" (getcwd) "/" source-directory)
(or make-flags '())))
;; This block was copied from make-linux-libre--only took the "modules_install"
;; part.
(define* (install #:key make-flags inputs native-inputs outputs
(define* (install #:key make-flags (source-directory ".")
inputs native-inputs outputs
#:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(moddir (string-append out "/lib/modules")))
@ -67,7 +68,7 @@
(apply invoke "make" "-C"
(string-append (assoc-ref inputs "linux-module-builder")
"/lib/modules/build")
(string-append "M=" (getcwd))
(string-append "M=" (getcwd) "/" source-directory)
;; Disable depmod because the Guix system's module directory
;; is an union of potentially multiple packages. It is not
;; possible to use depmod to usefully calculate a dependency

View File

@ -369,7 +369,7 @@
;; procedure that takes a file name, an algorithm (symbol) and a hash
;; (bytevector), and returns a URL or #f.
'(begin
(use-modules (guix base32))
(use-modules (guix base16) (guix base32))
(define (guix-publish host)
(lambda (file algo hash)
@ -379,12 +379,6 @@
file "/" (symbol->string algo) "/"
(bytevector->nix-base32-string hash))))
;; XXX: (guix base16) appeared in March 2017 (and thus 0.13.0) so old
;; installations of the daemon might lack it. Thus, load it lazily to
;; avoid gratuitous errors. See <https://bugs.gnu.org/33542>.
(module-autoload! (current-module)
'(guix base16) '(bytevector->base16-string))
(list (guix-publish "ci.guix.gnu.org")
(lambda (file algo hash)
;; 'tarballs.nixos.org' supports several algorithms.
@ -406,6 +400,8 @@
(object->string %content-addressed-mirrors)))
(define %disarchive-mirrors
;; TODO: Eventually turn into a procedure that takes a hash algorithm
;; (symbol) and hash (bytevector).
'("https://disarchive.ngyro.com/"))
(define %disarchive-mirror-file

View File

@ -2,6 +2,7 @@
;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2021 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -223,15 +224,29 @@ corresponding Git object."
(object-lookup-prefix repository (string->oid commit) len)
(object-lookup repository (string->oid commit)))))
(('tag-or-commit . str)
(if (or (> (string-length str) 40)
(not (string-every char-set:hex-digit str)))
(resolve `(tag . ,str)) ;definitely a tag
(catch 'git-error
(lambda ()
(resolve `(tag . ,str)))
(lambda _
;; There's no such tag, so it must be a commit ID.
(resolve `(commit . ,str))))))
(cond ((and (string-contains str "-g")
(match (string-split str #\-)
((version ... revision g+commit)
(if (and (> (string-length g+commit) 4)
(string-every char-set:digit revision)
(string-every char-set:hex-digit
(string-drop g+commit 1)))
;; Looks like a 'git describe' style ID, like
;; v1.3.0-7-gaa34d4d28d.
(string-drop g+commit 1)
#f))
(_ #f)))
=> (lambda (commit) (resolve `(commit . ,commit))))
((or (> (string-length str) 40)
(not (string-every char-set:hex-digit str)))
(resolve `(tag . ,str))) ;definitely a tag
(else
(catch 'git-error
(lambda ()
(resolve `(tag . ,str)))
(lambda _
;; There's no such tag, so it must be a commit ID.
(resolve `(commit . ,str)))))))
(('tag . tag)
(let ((oid (reference-name->oid repository
(string-append "refs/tags/" tag))))

View File

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -399,14 +400,20 @@ matching a string against the created regexp."
(define (is-or s) (string=? s "||"))
(define (is-id s port)
(define (is-id s port loc)
(let ((cabal-reserved-words
'("if" "else" "library" "flag" "executable" "test-suite" "custom-setup"
"source-repository" "benchmark" "common"))
(spaces (read-while (cut char-set-contains? char-set:blank <>) port))
(c (peek-char port)))
(unread-string spaces port)
(and (every (cut string-ci<> s <>) cabal-reserved-words)
;; Sometimes the name of an identifier is the same as one of the reserved
;; words, which would normally lead to an error, see
;; <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25138>. Unless the word
;; is at the beginning of a line (excluding whitespace), treat is as just
;; another identifier instead of a reserved word.
(and (or (not (= (source-location-column loc) (current-indentation)))
(every (cut string-ci<> s <>) cabal-reserved-words))
(and (not (char=? (last (string->list s)) #\:))
(not (char=? #\: c))))))
@ -568,7 +575,7 @@ LOC is the current port location."
((is-none w) (lex-none loc))
((is-and w) (lex-and loc))
((is-or w) (lex-or loc))
((is-id w port) (lex-id w loc))
((is-id w port loc) (lex-id w loc))
(else (unread-string w port) #f))))
(define (lex-line port loc)

View File

@ -4,6 +4,7 @@
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -80,6 +81,7 @@ NAMES (strings)."
(let ((elpa-archives
'((gnu . "https://elpa.gnu.org/packages")
(gnu/http . "http://elpa.gnu.org/packages") ;for testing
(nongnu . "https://elpa.nongnu.org/nongnu")
(melpa-stable . "https://stable.melpa.org/packages")
(melpa . "https://melpa.org/packages"))))
(assq-ref elpa-archives repo)))
@ -257,7 +259,7 @@ RECIPE."
((assoc-ref recipe #:commit)
=> (lambda (commit) (cons 'commit commit)))
(else
'(branch . "master"))))
'())))
(let-values (((directory commit) (download-git-repository url ref)))
`(origin

View File

@ -485,9 +485,12 @@ build a package."
(match (select (html->sxml meta-data #:strict? #t))
(() #f) ;nothing selected
((('content content-text) ..1)
(find (lambda (meta)
(string-prefix? (module-meta-import-prefix meta) module-path))
(map go-import->module-meta content-text))))))
(or
(find (lambda (meta)
(string-prefix? (module-meta-import-prefix meta) module-path))
(map go-import->module-meta content-text))
;; Fallback to the first meta if no import prefixes match.
(go-import->module-meta (first content-text)))))))
(define (module-meta-data-repo-url meta-data goproxy)
"Return the URL where the fetcher which will be used can download the

View File

@ -1594,7 +1594,11 @@ Disarchive entry refers to non-existent SWH directory '~a'")
#:field 'source)))))))
((? content?)
'())))
'()))))
'()))
(_
(list (make-warning package
(G_ "unsupported source type")
#:field 'source)))))
(match-lambda*
(('swh-error url method response)
(response->warning url method response))

View File

@ -56,6 +56,7 @@
%current-target-system
search-path-specification) ;for convenience
#:re-export-and-replace (delete) ;used as syntactic keyword
#:replace ((define-public* . define-public))
#:export (content-hash
content-hash?
content-hash-algorithm
@ -103,6 +104,7 @@
package-supported-systems
package-properties
package-location
package-definition-location
hidden-package
hidden-package?
package-superseded
@ -388,6 +390,60 @@ not already the case."
inputs)
(else (map add-input-label inputs))))
(define-syntax current-location-vector
(lambda (s)
"Like 'current-source-location' but expand to a literal vector with
one-indexed line numbers."
;; Storing a literal vector in .go files is more efficient than storing an
;; alist: less initialization code, fewer relocations, etc.
(syntax-case s ()
((_)
(match (syntax-source s)
(#f #f)
(properties
(let ((file (assq-ref properties 'filename))
(line (assq-ref properties 'line))
(column (assq-ref properties 'column)))
(and file line column
#`#(#,file #,(+ 1 line) #,column)))))))))
(define-inlinable (sanitize-location loc)
;; Convert LOC to a vector or to #f.
(cond ((vector? loc) loc)
((not loc) loc)
(else (vector (location-file loc)
(location-line loc)
(location-column loc)))))
(define-syntax-parameter current-definition-location
;; Location of the encompassing 'define-public'.
(const #f))
(define-syntax define-public*
(lambda (s)
"Like 'define-public' but set 'current-definition-location' for the
lexical scope of its body."
(define location
(match (syntax-source s)
(#f #f)
(properties
(let ((line (assq-ref properties 'line))
(column (assq-ref properties 'column)))
;; Don't repeat the file name since it's redundant with 'location'.
;; Encode the whole thing so that it fits in a fixnum on 32-bit
;; platforms, which leaves us 29 bits: 7 bits for COLUMN (which is
;; almost always zero), and 22 bits for LINE.
(and line column
(logior (ash (logand #x7f column) 22)
(logand (- (expt 2 22) 1) (+ 1 line))))))))
(syntax-case s ()
((_ prototype body ...)
#`(define-public prototype
(syntax-parameterize ((current-definition-location
(lambda (s) #,location)))
body ...))))))
;; A package.
(define-record-type* <package>
package make-package
@ -434,10 +490,12 @@ not already the case."
(properties package-properties (default '())) ; alist for anything else
(location package-location
(default (and=> (current-source-location)
source-properties->location))
(innate)))
(location package-location-vector
(default (current-location-vector))
(innate) (sanitize sanitize-location))
(definition-location package-definition-location-code
(default (current-definition-location))
(innate)))
(define (add-input-label input)
"Add an input label to INPUT."
@ -473,6 +531,25 @@ not already the case."
package)
16)))))
(define (package-location package)
"Return the source code location of PACKAGE as a <location> record, or #f if
it is not known."
(match (package-location-vector package)
(#f #f)
(#(file line column) (location file line column))))
(define (package-definition-location package)
"Like 'package-location', but return the location of the definition
itself--i.e., that of the enclosing 'define-public' form, if any, or #f."
(match (package-definition-location-code package)
(#f #f)
(code
(let ((column (bit-extract code 22 29))
(line (bit-extract code 0 21)))
(match (package-location-vector package)
(#f #f)
(#(file _ _) (location file line column)))))))
(define-syntax-rule (package/inherit p overrides ...)
"Like (package (inherit P) OVERRIDES ...), except that the same
transformation is done to the package P's replacement, if any. P must be a bare

View File

@ -3,6 +3,8 @@
;;; Copyright © 2014 David Thompson <davet@gnu.org>
;;; Copyright © 2018 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -117,7 +119,8 @@ Run IMPORTER with ARGS.\n"))
(if (member importer importers)
(let ((print (lambda (expr)
(pretty-print expr (newline-rewriting-port
(current-output-port))))))
(current-output-port))
#:max-expr-width 80))))
(match (apply (resolve-importer importer) args)
((and expr (or ('package _ ...)
('let _ ...)
@ -130,4 +133,9 @@ Run IMPORTER with ARGS.\n"))
expressions))
(x
(leave (G_ "'~a' import failed~%") importer))))
(leave (G_ "~a: invalid importer~%") importer)))))
(let ((hint (string-closest importer importers #:threshold 3)))
(report-error (G_ "~a: invalid importer~%") importer)
(when hint
(display-hint
(format #f (G_ "Did you mean @code{~a}?~%") hint)))
(exit 1))))))

View File

@ -9,6 +9,7 @@
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1152,6 +1153,13 @@ Some ACTIONS support additional ARGS.\n"))
;;; Entry point.
;;;
(define actions '("build" "container" "vm" "vm-image" "image" "disk-image"
"reconfigure" "init"
"extension-graph" "shepherd-graph"
"list-generations" "describe"
"delete-generations" "roll-back"
"switch-generation" "search" "docker-image"))
(define (process-action action args opts)
"Process ACTION, a sub-command, with the arguments are listed in ARGS.
ACTION must be one of the sub-commands that takes an operating system
@ -1335,17 +1343,18 @@ argument list and OPTS is the option alist."
(define (parse-sub-command arg result)
;; Parse sub-command ARG and augment RESULT accordingly.
(if (assoc-ref result 'action)
(alist-cons 'argument arg result)
(let ((action (string->symbol arg)))
(case action
((build container vm vm-image image disk-image reconfigure init
extension-graph shepherd-graph
list-generations describe
delete-generations roll-back
switch-generation search docker-image)
(alist-cons 'action action result))
(else (leave (G_ "~a: unknown action~%") action))))))
(cond ((assoc-ref result 'action)
(alist-cons 'argument arg result))
((member arg actions)
(let ((action (string->symbol arg)))
(alist-cons 'action action result)))
(else
(let ((hint (string-closest arg actions #:threshold 3)))
(report-error (G_ "~a: unknown action~%") arg)
(when hint
(display-hint
(format #f (G_ "Did you mean @code{~a}?~%") hint)))
(exit 1)))))
(define (match-pair car)
;; Return a procedure that matches a pair with CAR.

View File

@ -1355,14 +1355,16 @@ on the build output of a previous derivation."
(unresolved things continue)
(continue #t)))
(define (map/accumulate-builds store proc lst)
(define* (map/accumulate-builds store proc lst
#:key (cutoff 30))
"Apply PROC over each element of LST, accumulating 'build-things' calls and
coalescing them into a single call."
(define accumulation-cutoff
;; Threshold above which we stop accumulating unresolved nodes to avoid
;; pessimal behavior where we keep stumbling upon the same .drv build
;; requests with many incoming edges. See <https://bugs.gnu.org/49439>.
30)
coalescing them into a single call.
CUTOFF is the threshold above which we stop accumulating unresolved nodes."
;; The CUTOFF parameter helps avoid pessimal behavior where we keep
;; stumbling upon the same .drv build requests with many incoming edges.
;; See <https://bugs.gnu.org/49439>.
(define-values (result rest)
(let loop ((lst lst)
@ -1373,7 +1375,7 @@ coalescing them into a single call."
(match (with-build-handler build-accumulator
(proc head))
((? unresolved? obj)
(if (> unresolved accumulation-cutoff)
(if (>= unresolved cutoff)
(values (reverse (cons obj result)) tail)
(loop tail (cons obj result) (+ 1 unresolved))))
(obj
@ -1390,17 +1392,20 @@ coalescing them into a single call."
;; REST is necessarily empty.
result)
(to-build
;; We've accumulated things TO-BUILD. Actually build them and resume the
;; corresponding continuations.
;; We've accumulated things TO-BUILD; build them.
(build-things store (delete-duplicates to-build))
(map/accumulate-builds store
(lambda (obj)
(if (unresolved? obj)
;; Pass #f because 'build-things' is now
;; unnecessary.
((unresolved-continuation obj) #f)
obj))
(append result rest)))))
;; Resume the continuations corresponding to TO-BUILD, and then process
;; REST.
(append (map/accumulate-builds store
(lambda (obj)
(if (unresolved? obj)
;; Pass #f because 'build-things' is now
;; unnecessary.
((unresolved-continuation obj) #f)
obj))
result #:cutoff cutoff)
(map/accumulate-builds store proc rest #:cutoff cutoff)))))
(define build-things
(let ((build (operation (build-things (string-list things)

View File

@ -104,10 +104,9 @@
vault-reply?
vault-reply-id
vault-reply-fetch-url
vault-reply-object-id
vault-reply-object-type
vault-reply-progress-message
vault-reply-status
vault-reply-swhid
query-vault
request-cooking
vault-fetch
@ -391,10 +390,9 @@ FALSE-IF-404? is true, return #f upon 404 responses."
json->vault-reply
(id vault-reply-id)
(fetch-url vault-reply-fetch-url "fetch_url")
(object-id vault-reply-object-id "obj_id")
(object-type vault-reply-object-type "obj_type" string->symbol)
(progress-message vault-reply-progress-message "progress_message")
(status vault-reply-status "status" string->symbol))
(status vault-reply-status "status" string->symbol)
(swhid vault-reply-swhid))
;;;
@ -540,35 +538,57 @@ directory entries; if it has type 'file, return its <content> object."
(path "/api/1/origin/save" type "url" url)
json->save-reply)
(define-query (query-vault id kind)
"Ask the availability of object ID and KIND to the vault, where KIND is
'directory or 'revision. Return #f if it could not be found, or a
<vault-reply> on success."
;; <https://docs.softwareheritage.org/devel/swh-vault/api.html#vault-api-ref>
;; There's a single format supported for directories and revisions and for
;; now, the "/format" bit of the URL *must* be omitted.
(path "/api/1/vault" (symbol->string kind) id)
json->vault-reply)
(define* (vault-url id kind #:optional (archive-type 'flat))
"Return the vault query/cooking URL for ID and KIND. Normally, ID is an
SWHID and KIND is #f; the deprecated convention is to set ID to a raw
directory or revision ID and KIND to 'revision or 'directory."
;; Note: /api/1/vault/directory/ID was deprecated in favor of
;; /api/1/vault/flat/SWHID; this procedure "converts" automatically.
(let ((id (match kind
('directory (string-append "swh:1:dir:" id))
('revision (string-append "swh:1:rev:" id))
(#f id))))
(swh-url "/api/1/vault" (symbol->string archive-type) id)))
(define (request-cooking id kind)
"Request the cooking of object ID and KIND (one of 'directory or 'revision)
to the vault. Return a <vault-reply>."
(call (swh-url "/api/1/vault" (symbol->string kind) id)
(define* (query-vault id #:optional kind #:key (archive-type 'flat))
"Ask the availability of object ID (an SWHID) to the vault. Return #f if it
could not be found, or a <vault-reply> on success. ARCHIVE-TYPE can be 'flat
for a tarball containing a directory, or 'git-bare for a tarball containing a
bare Git repository corresponding to a revision.
Passing KIND (one of 'directory or 'revision) together with a raw revision or
directory identifier is deprecated."
(call (vault-url id kind archive-type)
json->vault-reply))
(define* (request-cooking id #:optional kind #:key (archive-type 'flat))
"Request the cooking of object ID, an SWHID. Return a <vault-reply>.
ARCHIVE-TYPE can be 'flat for a tarball containing a directory, or 'git-bare
for a tarball containing a bare Git repository corresponding to a revision.
Passing KIND (one of 'directory or 'revision) together with a raw revision or
directory identifier is deprecated."
(call (vault-url id kind archive-type)
json->vault-reply
http-post*))
(define* (vault-fetch id kind
#:key (log-port (current-error-port)))
"Return an input port from which a bundle of the object with the given ID
and KIND (one of 'directory or 'revision) can be retrieved, or #f if the
object could not be found.
(define* (vault-fetch id
#:optional kind
#:key
(archive-type 'flat)
(log-port (current-error-port)))
"Return an input port from which a bundle of the object with the given ID,
an SWHID, or #f if the object could not be found.
For a directory, the returned stream is a gzip-compressed tarball. For a
revision, it is a gzip-compressed stream for 'git fast-import'."
(let loop ((reply (query-vault id kind)))
ARCHIVE-TYPE can be 'flat for a tarball containing a directory, or 'git-bare
for a tarball containing a bare Git repository corresponding to a revision."
(let loop ((reply (query-vault id kind
#:archive-type archive-type)))
(match reply
(#f
(and=> (request-cooking id kind) loop))
(and=> (request-cooking id kind
#:archive-type archive-type)
loop))
(_
(match (vault-reply-status reply)
('done
@ -588,7 +608,8 @@ revision, it is a gzip-compressed stream for 'git fast-import'."
(format log-port "SWH vault: failure: ~a~%"
(vault-reply-progress-message reply))
(format log-port "SWH vault: retrying...~%")
(loop (request-cooking id kind)))
(loop (request-cooking id kind
#:archive-type archive-type)))
((and (or 'new 'pending) status)
;; Wait until the bundle shows up.
(let ((message (vault-reply-progress-message reply)))
@ -603,7 +624,8 @@ requested bundle cooking, waiting for completion...~%"))
;; requests per hour per IP address.)
(sleep (if (eq? status 'new) 60 30))
(loop (query-vault id kind)))))))))
(loop (query-vault id kind
#:archive-type archive-type)))))))))
;;;
@ -675,4 +697,7 @@ wait until it becomes available, which could take several minutes."
(swh-download-directory (revision-directory revision) output
#:log-port log-port))
(#f
(format log-port
"SWH: revision ~s originating from ~a could not be found~%"
reference url)
#f)))

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2021 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -270,6 +271,25 @@ strings like \"guile-next=stable-3.0\" meaning that packages are built using
(rewrite obj)
obj))))
(define (commit->version-string commit)
"Return a string suitable for use in the 'version' field of a package based
on the given COMMIT."
(cond ((and (> (string-length commit) 1)
(string-prefix? "v" commit)
(char-set-contains? char-set:digit
(string-ref commit 1)))
;; Probably a tag like "v1.0" or a 'git describe' identifier.
(string-drop commit 1))
((not (string-every char-set:hex-digit commit))
;; Pass through tags and 'git describe' style IDs directly.
commit)
(else
(string-append "git."
(if (< (string-length commit) 7)
commit
(string-take commit 7))))))
(define (transform-package-source-commit replacement-specs)
"Return a procedure that, when passed a package, replaces its direct
dependencies according to REPLACEMENT-SPECS. REPLACEMENT-SPECS is a list of
@ -278,15 +298,7 @@ strings like \"guile-next=cabba9e\" meaning that packages are built using
(define (replace old url commit)
(package
(inherit old)
(version (if (and (> (string-length commit) 1)
(string-prefix? "v" commit)
(char-set-contains? char-set:digit
(string-ref commit 1)))
(string-drop commit 1) ;looks like a tag like "v1.0"
(string-append "git."
(if (< (string-length commit) 7)
commit
(string-take commit 7)))))
(version (commit->version-string commit))
(source (git-checkout (url url) (commit commit)
(recursive? #t)))))

View File

@ -312,8 +312,6 @@ executable cabal
mtl >= 2.0 && < 3
")
;; Fails: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25138
(test-expect-fail 1)
(test-assert "hackage->guix-package test flag executable"
(eval-test-with-cabal test-cabal-flag-executable match-ghc-foo))

View File

@ -241,6 +241,17 @@
(eq? item new)))
(null? (manifest-transaction-remove tx)))))))
(test-assert "package-definition-location"
(let ((location (package-location hello))
(definition (package-definition-location hello)))
;; Check for the usual layout of (define-public hello (package ...)).
(and (string=? (location-file location)
(location-file definition))
(= 0 (location-column definition))
(= 2 (location-column location))
(= (location-line definition)
(- (location-line location) 1)))))
(test-assert "package-field-location"
(let ()
(define (goto port line column)

View File

@ -454,6 +454,42 @@
(derivation->output-path drv)))
(list d1 d2)))))
(test-equal "map/accumulate-builds cutoff" ;https://issues.guix.gnu.org/50264
(iota 20)
;; Make sure that, when the cutoff is reached, 'map/accumulate-builds' still
;; returns the right result and calls the build handler by batches.
(let* ((b (add-text-to-store %store "build" "echo $foo > $out" '()))
(s (add-to-store %store "bash" #t "sha256"
(search-bootstrap-binary "bash"
(%current-system))))
(d (map (lambda (i)
(derivation %store (string-append "the-thing-"
(number->string i))
s `("-e" ,b)
#:env-vars `(("foo" . ,(random-text)))
#:sources (list b s)
#:properties `((n . ,i))))
(iota 20)))
(calls '()))
(define lst
(with-build-handler (lambda (continue store things mode)
(set! calls (cons things calls))
(continue #f))
(map/accumulate-builds %store
(lambda (d)
(build-derivations %store (list d))
(assq-ref (derivation-properties d) 'n))
d
#:cutoff 7)))
(match (reverse calls)
(((batch1 ...) (batch2 ...) (batch3 ...))
(and (equal? (map derivation-file-name (take d 8)) batch1)
(equal? (map derivation-file-name (take (drop d 8) 8)) batch2)
(equal? (map derivation-file-name (drop d 16)) batch3)
lst)))))
(test-assert "mapm/accumulate-builds"
(let* ((d1 (run-with-store %store
(gexp->derivation "foo" #~(mkdir #$output))))

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2021 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -235,6 +236,26 @@
(string=? (package-name dep2) "chbouib")
(package-source dep2))))))))
(test-equal "options->transformation, with-commit, version transformation"
'("1.0" "1.0-rc1-2-gabc123" "git.abc123")
(map (lambda (commit)
(let* ((p (dummy-package "guix.scm"
(inputs `(("foo" ,(dummy-package "chbouib"
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://example.org")
(commit "cabba9e")))
(sha256 #f)))))))))
(t (options->transformation
`((with-commit . ,(string-append "chbouib=" commit))))))
(let ((new (t p)))
(and (not (eq? new p))
(match (package-inputs new)
((("foo" dep1))
(package-version dep1)))))))
'("v1.0" "1.0-rc1-2-gabc123" "abc123")))
(test-equal "options->transformation, with-git-url"
(let ((source (git-checkout (url "https://example.org")
(recursive? #t))))