Merge branch 'master' into gnome-team

This commit is contained in:
Liliana Marie Prikler 2023-06-08 15:33:29 +02:00
commit 909788c0ae
No known key found for this signature in database
GPG key ID: 442A84B8C70E2F87
75 changed files with 2738 additions and 711 deletions

View file

@ -70,7 +70,8 @@
(eval . (put 'guard 'scheme-indent-function 1))
(eval . (put 'lambda* 'scheme-indent-function 1))
(eval . (put 'substitute* 'scheme-indent-function 1))
(eval . (put 'match-record 'scheme-indent-function 2))
(eval . (put 'match-record 'scheme-indent-function 3))
(eval . (put 'match-record-lambda 'scheme-indent-function 2))
;; TODO: Contribute these to Emacs' scheme-mode.
(eval . (put 'let-keywords 'scheme-indent-function 3))

View file

@ -141,6 +141,7 @@ MODULES = \
guix/platforms/riscv.scm \
guix/platforms/x86.scm \
guix/build-system.scm \
guix/build-system/agda.scm \
guix/build-system/android-ndk.scm \
guix/build-system/ant.scm \
guix/build-system/cargo.scm \
@ -196,6 +197,7 @@ MODULES = \
guix/diagnostics.scm \
guix/ui.scm \
guix/status.scm \
guix/build/agda-build-system.scm \
guix/build/android-ndk-build-system.scm \
guix/build/ant-build-system.scm \
guix/build/download.scm \

View file

@ -844,12 +844,12 @@ another, more sophisticated package (slightly modified from the source):
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (gnu packages ssh)
#:use-module (gnu packages web)
#:use-module (gnu packages compression)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages compression)
#:use-module (gnu packages tls))
#:use-module (gnu packages ssh)
#:use-module (gnu packages tls)
#:use-module (gnu packages web))
(define-public my-libgit2
(let ((commit "e98d0a37c93574d2c6107bf7f31140b548c6a7bf")
@ -886,9 +886,11 @@ another, more sophisticated package (slightly modified from the source):
(("/bin/rm") (which "rm")))))
;; Run checks more verbosely.
(replace 'check
(lambda _ (invoke "./libgit2_clar" "-v" "-Q")))
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "./libgit2_clar" "-v" "-Q"))))
(add-after 'unpack 'make-files-writable-for-tests
(lambda _ (for-each make-file-writable (find-files "." ".*")))))))
(lambda _ (for-each make-file-writable (find-files ".")))))))
(inputs
(list libssh2 http-parser python-wrapper))
(native-inputs
@ -2147,7 +2149,10 @@ be made setuid-root so it can authenticate users, and it needs a PAM service. Th
can be achieved by adding the following service to your @file{config.scm}:
@lisp
(screen-locker-service slock)
(service screen-locker-services-type
(screen-locker-configuration
(name "slock")
(program (file-append slock "/bin/slock"))))
@end lisp
If you manually lock your screen, e.g. by directly calling slock when you want to lock

View file

@ -97,7 +97,7 @@ Copyright @copyright{} 2021 Hui Lu@*
Copyright @copyright{} 2021 pukkamustard@*
Copyright @copyright{} 2021 Alice Brenon@*
Copyright @copyright{} 2021, 2022 Josselin Poiret@*
Copyright @copyright{} 2021 muradm@*
Copyright @copyright{} 2021, 2023 muradm@*
Copyright @copyright{} 2021, 2022 Andrew Tropin@*
Copyright @copyright{} 2021 Sarah Morgensen@*
Copyright @copyright{} 2022 Remco van 't Veer@*
@ -442,6 +442,7 @@ Home Services
* Guix: Guix Home Services. Services for Guix.
* Fonts: Fonts Home Services. Services for managing User's fonts.
* Sound: Sound Home Services. Dealing with audio.
* Mail: Mail Home Services. Services for managing mail.
* Messaging: Messaging Home Services. Services for managing messaging.
* Media: Media Home Services. Services for managing media.
@ -4660,7 +4661,7 @@ pull} ensures that the code it downloads is @emph{authentic} by
verifying that commits are signed by Guix developers.
Specifically, @command{guix pull} downloads code from the @dfn{channels}
(@pxref{Channels}) specified by one of the followings, in this order:
(@pxref{Channels}) specified by one of the following, in this order:
@enumerate
@item
@ -8963,6 +8964,27 @@ of @code{gnu-build-system}, and differ mainly in the set of inputs
implicitly added to the build process, and in the list of phases
executed. Some of these build systems are listed below.
@defvar agda-build-system
This variable is exported by @code{(guix build-system agda)}. It
implements a build procedure for Agda libraries.
It adds @code{agda} to the set of inputs. A different Agda can be
specified with the @code{#:agda} key.
The @code{#:plan} key is a list of cons cells @code{(@var{regexp}
. @var{parameters})}, where @var{regexp} is a regexp that should match
the @code{.agda} files to build, and @var{parameters} is an optional
list of parameters that will be passed to @code{agda} when type-checking
it.
When the library uses Haskell to generate a file containing all imports,
the convenience @code{#:gnu-and-haskell?} can be set to @code{#t} to add
@code{ghc} and the standard inputs of @code{gnu-build-system} to the
input list. You will still need to manually add a phase or tweak the
@code{'build} phase, as in the definition of @code{agda-stdlib}.
@end defvar
@defvar ant-build-system
This variable is exported by @code{(guix build-system ant)}. It
implements the build procedure for Java packages that can be built with
@ -12454,7 +12476,7 @@ shows build events only, and higher levels print build logs.
@end deffn
@deffn {REPL command} run-in-store @var{exp}
Run @var{exp}, a monadic expresssion, through the store monad.
Run @var{exp}, a monadic expression, through the store monad.
@xref{The Store Monad}, for more information.
@end deffn
@ -19419,7 +19441,7 @@ Extra environment variables to set on login.
@item @code{xdg-env?} (default: @code{#t})
If true @code{XDG_RUNTIME_DIR} and @code{XDG_SESSION_TYPE} will be set
before starting command. One should note that, @code{extra-env} variables
are set right after mentioned variables, so that they can be overriden.
are set right after mentioned variables, so that they can be overridden.
@end table
@end deftp
@ -22530,37 +22552,63 @@ Usually the X server is started by a login manager.
@defvar screen-locker-service-type
Type for a service that adds a package for a screen locker or screen
saver to the set of setuid programs and add a PAM entry for it. The
saver to the set of setuid programs and/or add a PAM entry for it. The
value for this service is a @code{<screen-locker-configuration>} object.
While the default behavior is to setup both a setuid program and PAM
entry, these two methods are redundant. Screen locker programs may not
execute when PAM is configured and @code{setuid} is set on their
executable. In this case, @code{using-setuid?} can be set to @code{#f}.
For example, to make XlockMore usable:
@lisp
(service screen-locker-service-type
(screen-locker-configuration
"xlock" (file-append xlockmore "/bin/xlock") #f))
(name "xlock")
(program (file-append xlockmore "/bin/xlock"))))
@end lisp
makes the good ol' XlockMore usable.
For example, swaylock fails to execute when compiled with PAM support
and setuid enabled. One can thus disable setuid:
@lisp
(service screen-locker-service-type
(screen-locker-configuration
(name "swaylock")
(program (file-append xlockmore "/bin/xlock"))
(using-pam? #t)
(using-setuid? #f)))
@end lisp
@end defvar
@deftp {Data Type} screen-locker-configuration
Data type representing the configuration of
@code{screen-locker-service-type}.
Available @code{screen-locker-configuration} fields are:
@table @asis
@item @code{name} (type: string)
Name of the screen locker.
@item @code{program} (type: gexp)
@item @code{program} (type: file-like)
Path to the executable for the screen locker as a G-Expression.
@item @code{allow-empty-password?} (type: boolean)
@item @code{allow-empty-password?} (default: @code{#f}) (type: boolean)
Whether to allow empty passwords.
@item @code{using-pam?} (default: @code{#t}) (type: boolean)
Whether to setup PAM entry.
@item @code{using-setuid?} (default: @code{#t}) (type: boolean)
Whether to setup program as setuid binary.
@end table
@end deftp
@node Printing Services
@subsection Printing Services
@ -34015,7 +34063,7 @@ syslog daemon or @code{%unset-value} to omit this directive from the
configuration file.
@item @code{log-level} (type: maybe-string)
Supress any messages below this threshold. Available values:
Suppress any messages below this threshold. Available values:
@code{notice}, @code{info}, @code{verbose}, @code{warning} and
@code{error}.
@ -39108,7 +39156,7 @@ UID (integer) or user name (string) for the user owner of the program,
defaults to root.
@item @code{group} (default: @code{0})
GID (integer) goup name (string) for the group owner of the program,
GID (integer) group name (string) for the group owner of the program,
defaults to root.
@end table
@ -42470,7 +42518,7 @@ following format:
Each nested list contains two values: a subdirectory and file-like
object. After building a home environment @file{~/.guix-home/files}
will be populated with apropiate content and all nested directories will
will be populated with appropriate content and all nested directories will
be created accordingly, however, those files won't go any further until
some other service will do it. By default a
@code{home-symlink-manager-service-type}, which creates necessary
@ -42482,7 +42530,7 @@ read-only home. Feel free to experiment and share your results.
@end defvar
@defvar home-xdg-configuration-files-service-type
The service is very similiar to @code{home-files-service-type} (and
The service is very similar to @code{home-files-service-type} (and
actually extends it), but used for defining files, which will go to
@file{~/.guix-home/files/.config}, which will be symlinked to
@file{$XDG_CONFIG_DIR} by @code{home-symlink-manager-service-type} (for
@ -43706,7 +43754,7 @@ The @uref{https://znc.in, ZNC bouncer} can be run as a daemon to manage
your IRC presence. With the @code{(gnu home services messaging)} service, you
can configure ZNC to run upon login.
You will have to provide a @file{~/.znc/configs/znc.conf} seperately.
You will have to provide a @file{~/.znc/configs/znc.conf} separately.
Here is an example of a service and its configuration that you could add
to the @code{services} field of your @code{home-environment}:
@ -44366,7 +44414,7 @@ which is the default, means that the image size will be inferred based
on the image content.
@item @code{operating-system}
The image's @code{operating-system} record that is instanciated.
The image's @code{operating-system} record that is instantiated.
@item @code{partition-table-type} (default: @code{'mbr})
The image partition table type as a symbol. Possible values are
@ -45283,7 +45331,7 @@ space-separated hexadecimal digits (nibbles) from a file, possibly
including comments, and emits on standard output the bytes corresponding
to those hexadecimal numbers. The source code of this initial hex0
program is a file called
@c XXX TODO: udpate to savannah url, once accepted there
@c XXX TODO: update to savannah url, once accepted there
@url{https://github.com/oriansj/bootstrap-seeds/blob/master/POSIX/x86/hex0_x86.hex0,@file{hex0_x86.hex0}}
and is written in the @code{hex0} language.
@ -45308,7 +45356,7 @@ The bootstrap then continues: @code{hex0} builds @code{hex1} and then on
to @code{M0}, @code{hex2}, @code{M1}, @code{mescc-tools} and finally
@code{M2-Planet}. Then, using @code{mescc-tools}, @code{M2-Planet} we
build Mes (@pxref{Top, GNU Mes Reference Manual,, mes, GNU Mes}, a
Scheme interpreter and C compiler in Scheme). Frome here on starts
Scheme interpreter and C compiler in Scheme). From here on starts
the more traditional @code{C}-based bootstrap of the GNU System.
Another step that Guix has taken is to replace the shell and all its

View file

@ -885,6 +885,10 @@ dist_patch_DATA = \
%D%/packages/patches/aegisub-icu59-include-unistr.patch \
%D%/packages/patches/aegisub-boost68.patch \
%D%/packages/patches/aegisub-make43.patch \
%D%/packages/patches/agda-categories-remove-incompatible-flags.patch \
%D%/packages/patches/agda-categories-use-find.patch \
%D%/packages/patches/agda-libdirs-env-variable.patch \
%D%/packages/patches/agda-stdlib-use-runhaskell.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/agg-2.5-gcc8.patch \
%D%/packages/patches/akonadi-paths.patch \
@ -1033,6 +1037,7 @@ dist_patch_DATA = \
%D%/packages/patches/curl-use-ssl-cert-env.patch \
%D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvs-CVE-2017-12836.patch \
%D%/packages/patches/d-feet-drop-unused-meson-argument.patch \
%D%/packages/patches/date-output-pkg-config-files.patch \
%D%/packages/patches/datefudge-gettimeofday.patch \
%D%/packages/patches/dbacl-include-locale.h.patch \
@ -1750,6 +1755,8 @@ dist_patch_DATA = \
%D%/packages/patches/procmail-ambiguous-getline-debian.patch \
%D%/packages/patches/procmail-CVE-2014-3618.patch \
%D%/packages/patches/procmail-CVE-2017-16844.patch \
%D%/packages/patches/proj-7-initialize-memory.patch \
%D%/packages/patches/proot-add-clone3.patch \
%D%/packages/patches/protobuf-fix-build-on-32bit.patch \
%D%/packages/patches/psm-arch.patch \
%D%/packages/patches/psm-disable-memory-stats.patch \
@ -1889,6 +1896,7 @@ dist_patch_DATA = \
%D%/packages/patches/sbcl-clml-fix-types.patch \
%D%/packages/patches/sbcl-eazy-gnuplot-skip-path-check.patch \
%D%/packages/patches/sbcl-png-fix-sbcl-compatibility.patch \
%D%/packages/patches/sbcl-riscv-Make-contribs-build-again.patch \
%D%/packages/patches/scalapack-gcc-10-compilation.patch \
%D%/packages/patches/scheme48-tests.patch \
%D%/packages/patches/scons-test-environment.patch \

View file

@ -9,7 +9,7 @@
;;; Copyright © 2016, 2017, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
@ -2603,24 +2603,20 @@ characters can be replaced as well, as can UTF-8 characters.")
(define-public tree
(package
(name "tree")
(version "2.1.0")
(version "2.1.1")
(source (origin
(method url-fetch)
(uri (string-append
"https://mama.indstate.edu/users/ice/tree/src/tree-"
version ".tgz"))
(sha256
(base32 "1xmbxgx72w7ddjlqsx1yys076hp3h7ll968bhdmdrc7jpwswaq01"))))
(base32 "1mchmdkq77d4c2mx7xmarccbk46a3sm2aqslarjwgxrs81gxbhyk"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ; No configure script.
(add-after 'unpack 'fix-manpage-version
(lambda _
(substitute* "doc/tree.1"
(("Tree 2\\.0\\.0") (string-append "Tree " #$version))))))
(delete 'configure)) ; No configure script.
#:tests? #f ; No check target.
#:make-flags
#~(list (string-append "PREFIX=" #$output)

View file

@ -5,6 +5,7 @@
;;; Copyright © 2018, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 John Soo <jsoo1@asu.edu>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -22,9 +23,15 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages agda)
#:use-module (gnu packages)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages python)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages texinfo)
#:use-module (guix build-system agda)
#:use-module (guix build-system emacs)
#:use-module (guix build-system gnu)
#:use-module (guix build-system haskell)
@ -37,15 +44,18 @@
(define-public agda
(package
(name "agda")
(version "2.6.2.2")
(version "2.6.3")
(source
(origin
(method url-fetch)
(uri (hackage-uri "Agda" version))
(method git-fetch)
(uri (git-reference
(url "https://github.com/agda/agda.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0yjjbhc593ylrm4mq4j01nkdvh7xqsg5in30wxj4y53vf5hkggp5"))))
(base32 "1s7zd01i8pmvi90ywx497kc07z50nah7h0fc2dn6jzb132k5sh1q"))
(patches (search-patches "agda-libdirs-env-variable.patch"))))
(build-system haskell-build-system)
(properties '((upstream-name . "Agda")))
(inputs
(list ghc-aeson
ghc-alex
@ -68,7 +78,14 @@
ghc-strict
ghc-unordered-containers
ghc-uri-encode
ghc-vector-hashtables
ghc-zlib))
(native-inputs
(list python
python-sphinx
python-sphinx-rtd-theme
texinfo
imagemagick))
(arguments
(list #:modules `((guix build haskell-build-system)
(guix build utils)
@ -85,7 +102,22 @@
(let ((agda-compiler (string-append #$output "/bin/agda")))
(for-each (cut invoke agda-compiler <>)
(find-files (string-append #$output "/share")
"\\.agda$"))))))))
"\\.agda$")))))
(add-after 'agda-compile 'install-info
(lambda _
(with-directory-excursion "doc/user-manual"
(invoke "sphinx-build" "-b" "texinfo"
"." "_build_texinfo")
(with-directory-excursion "_build_texinfo"
(setenv "infodir" (string-append #$output
"/share/info"))
(invoke "make" "install-info"))))))))
(search-paths
(list (search-path-specification
(variable "AGDA_LIBDIRS")
(files (list "lib/agda")))))
(native-search-paths
search-paths)
(home-page "https://wiki.portal.chalmers.se/agda/")
(synopsis
"Dependently typed functional programming language and proof assistant")
@ -106,53 +138,50 @@ such as Coq, Epigram and NuPRL.")
(define-public emacs-agda2-mode
(package
(inherit agda)
(name "emacs-agda2-mode")
(version (package-version agda))
(source (package-source agda))
(build-system emacs-build-system)
(inputs '())
(arguments
`(#:phases
(modify-phases %standard-phases
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'enter-elisp-dir
(lambda _ (chdir "src/data/emacs-mode") #t)))))
(lambda _ (chdir "src/data/emacs-mode"))))))
(home-page "https://agda.readthedocs.io/en/latest/tools/emacs-mode.html")
(synopsis "Emacs mode for Agda")
(description "This Emacs mode enables interactive development with
Agda. It also aids the input of Unicode characters.")))
Agda. It also aids the input of Unicode characters.")
(license (package-license agda))))
(define-public agda-ial
(let ((revision "1")
;; There hasn't been a release in a long time, and the last one
;; doesn't build with Agda 2.6.
(commit "ded30c410d5d40142249686572aa1acd1b2f8cc7"))
(package
(name "agda-ial")
(version "1.5.0")
(home-page "https://github.com/cedille/ial")
(version (git-version "1.5.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference (url home-page)
(commit (string-append "v" version))))
(uri (git-reference (url "https://github.com/cedille/ial")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0dlis6v6nzbscf713cmwlx8h9n2gxghci8y21qak3hp18gkxdp0g"))))
(build-system gnu-build-system)
(inputs
(list agda))
"0xn6zvp1wnm0i84pz1rfbzfmayd15ch4i5s11ycd88d22pxd55dc"))))
(build-system agda-build-system)
(arguments
`(#:parallel-build? #f
(list
#:gnu-and-haskell? #t
#:phases
(modify-phases %standard-phases
(delete 'configure)
#~(modify-phases %standard-phases
(add-before 'build 'patch-dependencies
(lambda _ (patch-shebang "find-deps.sh") #t))
(delete 'check)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(include (string-append out "/include/agda/ial")))
(for-each (lambda (file)
(make-file-writable file)
(install-file file include))
(find-files "." "\\.agdai?(-lib)?$"))
#t))))))
(lambda _ (patch-shebang "find-deps.sh")))
(replace 'build
(lambda _
(invoke "make"))))))
(home-page "https://github.com/cedille/ial")
(synopsis "The Iowa Agda Library")
(description
"The goal is to provide a concrete library focused on verification
@ -160,4 +189,133 @@ examples, as opposed to mathematics. The library has a good number
of theorems for booleans, natural numbers, and lists. It also has
trees, tries, vectors, and rudimentary IO. A number of good ideas
come from Agda's standard library.")
(license license:expat))))
(define-public agda-stdlib
(package
(name "agda-stdlib")
(version "1.7.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/agda/agda-stdlib")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"065hf24xjpciwdrvk4isslgcgi01q0k93ql0y1sjqqvy5ryg5xmy"))))
(build-system agda-build-system)
(arguments
(list
#:plan '(("^\\./README.agda$" "-i."))
#:gnu-and-haskell? #t
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'generate-everything
(lambda* (#:key inputs native-inputs #:allow-other-keys)
(invoke
(search-input-file (or native-inputs inputs) "/bin/runhaskell")
"GenerateEverything.hs"))))))
(native-inputs (list ghc-filemanip))
(synopsis "The Agda Standard Library")
(description
"The standard library aims to contain all the tools needed to write
both programs and proofs easily. While we always try and write efficient
code, we prioritize ease of proof over type-checking and normalization
performance. If computational performance is important to you, then perhaps
try agda-prelude instead.")
(home-page "https://wiki.portal.chalmers.se/agda/pmwiki.php")
(license license:expat)))
(define-public agda-categories
(package
(name "agda-categories")
(version "0.1.7.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/agda/agda-categories.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0xwgm2mfl2pxipsv31bin8p14y1yhd9n27lv3clvsxd4z9yc034m"))
(patches (search-patches "agda-categories-remove-incompatible-flags.patch"
"agda-categories-use-find.patch"))))
(build-system agda-build-system)
(arguments
(list
#:gnu-and-haskell? #t
#:phases
#~(modify-phases %standard-phases
(replace 'build
(lambda _
(invoke "make"))))))
(propagated-inputs
(list agda-stdlib))
(synopsis "New Categories library for Agda")
(description "A new Categories library for Agda")
(home-page "https://github.com/agda/agda-categories")
(license license:expat)))
(define-public agda-cubical
;; Upstream's HEAD follows the latest Agda release, but they don't release
;; until a newer Agda release comes up, so their releases are always one
;; version late.
(let* ((revision "1")
(commit "814d54b08b360b8e80828065f54b80e3a98a0092"))
(package
(name "agda-cubical")
(version (git-version "0.4" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/agda/cubical.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0d25gb1qzpx539k62qjsjq4xmzp34qk7n3hmd9y6v8slhrrxw312"))))
(build-system agda-build-system)
(arguments
(list
#:gnu-and-haskell? #t
#:phases
#~(modify-phases %standard-phases
(replace 'build
(lambda _
(invoke "make"))))))
(synopsis "Standard library for Cubical Agda")
(description "A standard library for Cubical Agda, comparable to
agda-stdlib but using cubical methods.")
(home-page "https://github.com/agda/cubical")
(license license:expat))))
(define-public agda-1lab
;; Upstream doesn't do releases (yet). Use a commit that builds with 2.6.3,
;; since they use Agda HEAD.
(let* ((revision "1")
(commit "47ca1d23640a6f49a3abe3c2fe27738bcc10c9c6"))
(package
(name "agda-1lab")
(version (git-version "0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/plt-amy/1lab.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0j7mp6c0xd0849skdxzncklkxynxnyfrbpcjv4qp5p1xfn0dnfqx"))))
(build-system agda-build-system)
(arguments
(list #:plan '(("src/index\\.lagda\\.md$"))))
(synopsis "Reference resource for mathematics done in Homotopy Type Theory")
(description "A formalised, cross-linked reference resource for
mathematics done in Homotopy Type Theory. Unlike the HoTT book, the 1lab is
not a linear resource: Concepts are presented as a directed graph, with
links indicating dependencies.")
(home-page "https://1lab.dev")
(license license:agpl3))))

View file

@ -10313,17 +10313,18 @@ fitting of some classes of graphical Markov models.")
(define-public r-ggpicrust2
(package
(name "r-ggpicrust2")
(version "1.6.5")
(version "1.7.0")
(source (origin
(method url-fetch)
(uri (cran-uri "ggpicrust2" version))
(sha256
(base32
"02ais1y3z85vykxd9975gz33s80d1nhivly6a07y98dbmlzjyr6a"))))
"0rw2nrmnniff5hb56r21rk0mphba74fppxsa5ps2xamg1a63qfyw"))))
(properties `((upstream-name . "ggpicrust2")))
(build-system r-build-system)
(propagated-inputs (list r-aldex2
r-aplot
r-circlize
r-deseq2
r-dplyr
r-edger
@ -10341,6 +10342,7 @@ fitting of some classes of graphical Markov models.")
r-summarizedexperiment
r-tibble
r-tidyr))
(native-inputs (list r-knitr))
(home-page "https://github.com/cafferychen777/ggpicrust2")
(synopsis "Make PICRUSt2 output analysis and visualization easier")
(description

View file

@ -1337,6 +1337,75 @@ pretty, publication-quality figures for next-generation sequencing
experiments.")
(license license:expat)))
(define-public python-bulkvis
(let ((commit "00a82a90c7e748a34af896e779d27e78a2c82b5e")
(revision "2"))
(package
(name "python-bulkvis")
(version (git-version "2.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/LooseLab/bulkVis")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"02blai158xyyqcg0ljzkmfa6ci05m4awrl4njvp9nwfp717xq8n0"))
(modules '((guix build utils)))
(snippet
'(substitute* '("requirements.txt"
"setup.py")
(("tqdm~=4.46.1") "tqdm")
(("tornado~=6.0.4") "tornado")
(("pandas~=1.0.5") "pandas")
(("h5py~=2.10.0") "h5py")
;; See below for com
(("bokeh~=2.1.0") "bokeh")))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f ;There are no tests
#:phases
'(modify-phases %standard-phases
;; See https://github.com/LooseLab/bulkvis/issues/58
(add-after 'unpack 'bokeh-compatibility
(lambda _
(substitute* "bulkvis/bulkvis.py"
(("import importlib" m)
(string-append m "
from bokeh.command.subcommand import Argument
from bokeh.util.dataclasses import entries\n"))
(("( *)_parser.add_argument" m indent)
(string-append
(string-join (list "if isinstance(opts, Argument):\n"
" opts = dict(entries(opts))\n")
indent 'prefix)
m))))))))
(propagated-inputs (list python-bokeh
python-dill
python-h5py
python-joblib
python-matplotlib
python-numpy
python-pandas
python-plotly
python-readpaf
python-scikit-learn
python-scikit-image
python-scipy
python-seaborn
python-tornado-6
python-tqdm
python-umap-learn))
(native-inputs (list python-pytest))
(home-page "https://github.com/LooseLab/bulkVis")
(synopsis "Interactive visualization of bulk RNA-seq data")
(description
"This is a Python package for the interactive visualization of bulk
RNA-seq data. It provides a range of plotting functions and interactive tools
to explore and analyze bulk RNA-seq data.")
(license license:expat))))
(define-public python-cell2cell
(package
(name "python-cell2cell")
@ -1480,6 +1549,69 @@ from high-throughput single-cell RNA sequencing (scRNA-seq) data.")
and sequence consensus.")
(license license:expat)))
(define-public python-decoupler-py
;; This latest commit fixes a bug in test_omnip.py.
(let ((commit "b84c524ec4a9280a56c0db963e2c7b010316ce8f")
(revision "1"))
(package
(name "python-decoupler-py")
(version (git-version "1.3.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/saezlab/decoupler-py")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0d74yr5jqc52vcxaca84kxqw7m5rbazpmvnrcp2y4xxrj6yr1sfc"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
'(list "-k"
;; These tests require internet access
(string-append "not test_get_resource"
" and not test_show_resources"
" and not test_get_dorothea"
" and not test_get_progeny"
;; XXX This one fails because the "texts" list
;; is empty, so there are no texts to adjust.
;; It is not clear whether this a compatibility
;; problem with our adjusttext package.
" and not test_plot_volcano"))
#:phases
'(modify-phases %standard-phases
(add-before 'check 'set-home
;; Some tests require a home directory to be set.
(lambda _ (setenv "HOME" "/tmp")))
;; Numba needs a writable dir to cache functions.
(add-before 'build 'set-numba-cache-dir
(lambda _ (setenv "NUMBA_CACHE_DIR" "/tmp"))))))
(propagated-inputs (list python-adjusttext
python-anndata
python-ipython
python-matplotlib
python-nbsphinx
python-numba
python-numpy
python-numpydoc
python-omnipath
python-scanpy
python-scikit-learn
python-scipy
python-skranger
python-tqdm
python-typing-extensions))
(native-inputs (list python-pytest))
(home-page "https://github.com/saezlab/decoupler-py")
(synopsis
"Framework for modeling, analyzing and interpreting single-cell RNA-seq data")
(description
"This package provides different statistical methods to extract
biological activities from omics data within a unified framework.")
(license license:gpl3+))))
(define-public python-demuxem
(package
(name "python-demuxem")
@ -1998,6 +2130,25 @@ alignments and perform the following operations:
")
(license license:expat)))
(define-public python-readpaf
(package
(name "python-readpaf")
(version "0.0.10")
(source (origin
(method url-fetch)
(uri (pypi-uri "readpaf" version))
(sha256
(base32
"15m6ffks4zwpp1ycwk6n02py6mw2yh7qr0vhpc178b91gldr97ia"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-pandas))
(home-page "https://github.com/alexomics/read-paf")
(synopsis "Minimap2 PAF file reader")
(description
"This is a fast parser for minimap2 PAF (Pairwise mApping Format)
files.")
(license license:expat)))
(define-public bioperl-minimal
(package
(name "bioperl-minimal")

View file

@ -7,7 +7,7 @@
;;; Copyright © 2015, 2016, 2017, 2018, 2020, 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
@ -2687,12 +2687,8 @@ to their original, binary CD format.")
(build-system cmake-build-system)
(arguments
(list #:configure-flags
#~(list "-DLIBDEFLATE_BUILD_STATIC_LIB=NO")
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "../source/scripts/run_tests.sh"))))))
#~(list "-DLIBDEFLATE_BUILD_STATIC_LIB=NO"
"-DLIBDEFLATE_BUILD_TESTS=YES")))
(inputs
(list zlib))
(home-page "https://github.com/ebiggers/libdeflate")

View file

@ -40,7 +40,7 @@
(package
(name "conky")
(home-page "https://github.com/brndnmtthws/conky")
(version "1.12.2")
(version "1.19.2")
(source
(origin
(method git-fetch)
@ -49,7 +49,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1grxapl4q37fzk2rsijwz2rrl0aj520y8daki6bg48jb9vjd39n7"))))
(base32 "196wqr477fch1152cqmf11ckwrgkk2wmhl56ms6jk19hfs83d980"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags

View file

@ -25,7 +25,7 @@
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 Disseminate Dissent <disseminatedissent@protonmail.com>
;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; Copyright © 2022 Attila Lendvai <attila@lendvai.name>
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
@ -821,7 +821,7 @@ tools:
;; header
(package
(name "cpp-httplib")
(version "0.8.8")
(version "0.12.5")
(source
(origin
(method git-fetch)
@ -829,16 +829,19 @@ tools:
(url "https://github.com/yhirose/cpp-httplib")
(commit (string-append "v" version))))
(sha256
(base32 "0c0gyfbvm34bgrqy9fhfxw1f8nb9zhf063j7xq91k892flb7qm1c"))
(base32 "1m1p6h1dsxg4kg5zziffb6xl8zgjbkw7gmgmmlnrhpl3bswam87n"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
'("-DBUILD_SHARED_LIBS=ON"
"-DHTTPLIB_TEST=ON"
"-DHTTPLIB_COMPILE=ON"
"-DHTTPLIB_REQUIRE_BROTLI=ON"
"-DHTTPLIB_REQUIRE_OPENSSL=ON"
"-DHTTPLIB_REQUIRE_ZLIB=ON")
#:make-flags
'(,(string-append "CXX=" (cxx-for-target)))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-network-tests
@ -850,21 +853,19 @@ tools:
(string-append "(DISABLED_" test))))
;; There are tests requiring network access, disable them
'("AbsoluteRedirectTest" "BaseAuthTest" "CancelTest"
"ConnectionErrorTest"
"ChunkedEncodingTest" "ChunkedEncodingTest"
"ClientDefaultHeadersTest"
"DecodeWithChunkedEncoding" "DefaultHeadersTest"
"DigestAuthTest" "HttpsToHttpRedirectTest"
"HostnameToIPConversionTest"
"RangeTest" "RedirectTest" "RelativeRedirectTest"
"SSLClientTest" "SendAPI" "TooManyRedirectTest" "UrlWithSpace"
"YahooRedirectTest" "YahooRedirectTest"))))
(replace 'check
(lambda* (#:key source tests? #:allow-other-keys)
;; openssl genrsa wants to write a file in the git checkout
(when tests?
(with-directory-excursion "../source/test"
(invoke "make"))))))))
"SSLClientTest" "SendAPI"
"SpecifyServerIPAddressTest"
"TooManyRedirectTest" "UrlWithSpace"
"YahooRedirectTest" "YahooRedirectTest")))))))
(native-inputs
;; required to build shared lib
(list python))
(list googletest python))
(inputs
(list brotli openssl zlib))
(home-page "https://github.com/yhirose/cpp-httplib")

View file

@ -1927,13 +1927,13 @@ Prism-look is achieved with @code{theme_prism()} and
(define-public r-ggrastr
(package
(name "r-ggrastr")
(version "1.0.1")
(version "1.0.2")
(source (origin
(method url-fetch)
(uri (cran-uri "ggrastr" version))
(sha256
(base32
"07sx5wlawfyb0zy5am2q1ajhkdym5r9ih47p57l8bv4dlc7ykml2"))))
"1l90mlb6bqq98ifmlbs5481vch9inmzdnvnz192adklrr9nl09yb"))))
(properties `((upstream-name . "ggrastr")))
(build-system r-build-system)
(propagated-inputs (list r-cairo r-ggbeeswarm r-ggplot2 r-png r-ragg))
@ -6203,13 +6203,13 @@ most popular ones.")
(define-public r-sp
(package
(name "r-sp")
(version "1.6-0")
(version "1.6-1")
(source
(origin
(method url-fetch)
(uri (cran-uri "sp" version))
(sha256
(base32 "1npwz49qmlqz46jrwlmv4929hb3wv3whxzj1bplyipp7h2z7z5zm"))))
(base32 "09d3jhk7iwjfhzyq0cwws1p5gspj9nxww5x7xvngh8hr9gan5wkn"))))
(build-system r-build-system)
(propagated-inputs
(list r-lattice))
@ -7784,14 +7784,14 @@ or between integer vectors representing generic sequences.")
(define-public r-ucminf
(package
(name "r-ucminf")
(version "1.1-4.3")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "ucminf" version))
(sha256
(base32
"1vjrbavj909wlsyb82dq3rybk0nqay6vl81f2qiqrm12ks9pw3js"))))
"1x3d3l500kyqamzfjpz4qc38d6d3sha9av3rpxz0m4dhms28zpas"))))
(build-system r-build-system)
(native-inputs (list gfortran))
(home-page "https://cran.r-project.org/web/packages/ucminf/")
@ -10804,15 +10804,17 @@ methods.")
(define-public r-catdap
(package
(name "r-catdap")
(version "1.3.5")
(version "1.3.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "catdap" version))
(sha256
(base32
"0fyhl69z2lznymvpzxra9qvcg85ggzkfjy68c6mzdmf1ja44d2k5"))))
"0z84bx808hy70bkzdda9l42ljh9i9pz07isxq756axi7nr0ky6p9"))))
(build-system r-build-system)
(propagated-inputs
(list r-rcolorbrewer))
(native-inputs
(list gfortran))
(home-page "https://cran.r-project.org/web/packages/catdap/")
@ -11023,14 +11025,14 @@ simple method for converting between file types.")
(define-public r-maptools
(package
(name "r-maptools")
(version "1.1-6")
(version "1.1-7")
(source
(origin
(method url-fetch)
(uri (cran-uri "maptools" version))
(sha256
(base32
"024kyq81gwpl7shil63nng1z6pgqcwy6j6wj44gj7ch3vd9dz9fn"))))
"0m576fzaaqbz1pqjv585841k93xnmx844kpsjzivmpfyvhbmw81v"))))
(build-system r-build-system)
(propagated-inputs
(list r-foreign r-lattice r-sp))
@ -12769,14 +12771,14 @@ contains or can be specified by the user.")
(define-public r-biasedurn
(package
(name "r-biasedurn")
(version "2.0.9")
(version "2.0.10")
(source
(origin
(method url-fetch)
(uri (cran-uri "BiasedUrn" version))
(sha256
(base32
"02bb81x1hfvhm6qlcvp88bdpm1fhqak9cjbqz1r7fhg2qfxjpims"))))
"0jv0zvz1zs34h12zdgn3lqmn7hfkk2z6fkwbd9mlyddf34rkvfqv"))))
(properties `((upstream-name . "BiasedUrn")))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/BiasedUrn/")
@ -15318,14 +15320,14 @@ ROPE percentage and pd).")
(define-public r-performance
(package
(name "r-performance")
(version "0.10.3")
(version "0.10.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "performance" version))
(sha256
(base32
"1l4sr6cgg8rkgs5w98a36n79b1lbg241p60grsnz12hskppa1a6q"))))
"0ddwfkrzwbj1bykvifzrb11hs5kh2a6ykr3ac1hi7cqpqikymfna"))))
(build-system r-build-system)
(propagated-inputs
(list r-bayestestr r-datawizard r-insight))
@ -18188,14 +18190,14 @@ library.")
(define-public r-ontologyindex
(package
(name "r-ontologyindex")
(version "2.10")
(version "2.11")
(source
(origin
(method url-fetch)
(uri (cran-uri "ontologyIndex" version))
(sha256
(base32
"0hisb9scxyyqkxhxhvgsgwix54pkq0zma3xq3ywczyazvzcxd5f9"))))
"17ndvqvb74b980gpb3hpg9bd68bb5f52k9s1i2kd1f9cdrdjvw97"))))
(properties `((upstream-name . "ontologyIndex")))
(build-system r-build-system)
(native-inputs
@ -18576,14 +18578,14 @@ packages.")
(define-public r-assertive-code
(package
(name "r-assertive-code")
(version "0.0-3")
(version "0.0-4")
(source
(origin
(method url-fetch)
(uri (cran-uri "assertive.code" version))
(sha256
(base32
"1qhbp668zfvhqs8avkhg9amp4zyazz6dsy4fc6kpdmw3sv8yi07g"))))
"11qkhbjyxw0njzhcszyc2452518yrn3jr5l4n9jnzq10xms090ig"))))
(properties
`((upstream-name . "assertive.code")))
(build-system r-build-system)
@ -25192,14 +25194,18 @@ effect size.")
(define-public r-rgdal
(package
(name "r-rgdal")
(version "1.6-6")
(version "1.6-7")
(source
(origin
(method url-fetch)
(uri (cran-uri "rgdal" version))
(sha256
(base32 "16irhw858771bc8ikshxk3ddpd7ymwgqmhnac4g7f160vymdfhnp"))))
(properties `((upstream-name . "rgdal")))
(base32 "0cxfmm7niixw3dnbqm7a00603dyqjrphajqx0q5vjpdhmpyysp2m"))))
(properties
`((upstream-name . "rgdal")
(updater-extra-inputs . ("gdal" "proj"))
;; These are only needed for Windows
(updater-ignored-inputs . ("curl" "openssl" "openssh" "pcre2"))))
(build-system r-build-system)
(inputs
(list gdal proj zlib))
@ -27915,21 +27921,58 @@ it may be seen by an animal with less acute vision.")
classification and regression models.")
(license license:gpl2+)))
(define-public r-caretensemble
(package
(name "r-caretensemble")
(version "2.0.2")
(source (origin
(method url-fetch)
(uri (cran-uri "caretEnsemble" version))
(sha256
(base32
"0kagw1ilfz1yy1q0ysmkp3f13k08hiq84xk7d0xp5p7d5dsg7z6q"))))
(properties `((upstream-name . "caretEnsemble")))
(build-system r-build-system)
(propagated-inputs (list r-caret
r-data-table
r-digest
r-ggplot2
r-gridextra
r-lattice
r-pbapply
r-plyr))
(native-inputs (list r-knitr))
(home-page "https://github.com/zachmayer/caretEnsemble")
(synopsis "Ensembles of caret models")
(description
"This is a framework for fitting multiple caret models. It uses the same
re-sampling strategy as well as creating ensembles of such models. Use
@code{caretList} to fit multiple models and then use @code{caretEnsemble} to
combine them greedily or @code{caretStack} to combine them using a caret
model.")
(license license:expat)))
(define-public r-adabag
(package
(name "r-adabag")
(version "4.3")
(version "5.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "adabag" version))
(sha256
(base32
"1v4cl50wbv834cpbwkkhaq5wf8s746fp8xkjrwvyw912x6b2zmik"))))
"03nnqgia61pavic9l6av0hh81wilxlkrx3g244ypar1fv9ppan7c"))))
(properties `((upstream-name . "adabag")))
(build-system r-build-system)
(propagated-inputs
(list r-caret r-doparallel r-foreach r-rpart))
(list r-caret
r-consrank
r-doparallel
r-dplyr
r-foreach
r-rpart
r-tidyr))
(home-page "https://cran.r-project.org/web/packages/adabag/")
(synopsis "Multiclass AdaBoost.M1, SAMME and Bagging")
(description
@ -29527,14 +29570,14 @@ least squares.")
(define-public r-regsem
(package
(name "r-regsem")
(version "1.9.3")
(version "1.9.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "regsem" version))
(sha256
(base32
"0vpizmdml55naxmhy9nfcm9ylhy15p9na7l0c6z3rvk29ck3g3sw"))))
"0lvsy7byrhiizyhwnwr22v8g36735nb0liyzl1nzk0py9rjbv4kk"))))
(properties `((upstream-name . "regsem")))
(build-system r-build-system)
(propagated-inputs
@ -29554,14 +29597,14 @@ perform @dfn{exploratory mediation} (XMed).")
(define-public r-stanheaders
(package
(name "r-stanheaders")
(version "2.26.25")
(version "2.26.26")
(source
(origin
(method url-fetch)
(uri (cran-uri "StanHeaders" version))
(sha256
(base32
"1xds719xga7144mxirjnqxmcv1ncj5fb5z247blm4dkbn9q2vg4k"))))
"1jr5sflqhg70jkgz3x0q9nrk2xjzm1l4zmyc7j89m755b209sq4k"))))
(properties `((upstream-name . "StanHeaders")))
(build-system r-build-system)
(inputs (list pandoc))
@ -31265,14 +31308,14 @@ here.")
(define-public r-projpred
(package
(name "r-projpred")
(version "2.5.0")
(version "2.6.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "projpred" version))
(sha256
(base32
"0faf0hq5kvibqyzgqqz2sdqms8g3vvxy6calpm6d2wzmbczi5v5n"))))
"1nkil537n43sz0ajkcyr0i38hb852qgcdxlgnirqkl0w98ax2hac"))))
(properties `((upstream-name . "projpred")))
(build-system r-build-system)
(propagated-inputs
@ -31290,7 +31333,7 @@ here.")
r-rcpp
r-rcpparmadillo
r-rstantools
r-ucminf))
r-scales))
(native-inputs (list r-knitr r-rmarkdown))
(home-page "https://mc-stan.org/projpred/")
(synopsis "Projection predictive feature selection")
@ -31702,14 +31745,14 @@ designed to be distributed and efficient with the following goals:
(define-public r-shapforxgboost
(package
(name "r-shapforxgboost")
(version "0.1.1")
(version "0.1.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "SHAPforxgboost" version))
(sha256
(base32
"106nsf02b1w3yshb55lwnyw1rl1a60162v2wk8znjz3b4ln3mqj5"))))
"0b3h6py80a0dmb8f8j4h7a7d0k6ld8l0qr24r8pxxy7dbqbyxh5x"))))
(properties
`((upstream-name . "SHAPforxgboost")))
(build-system r-build-system)
@ -31900,6 +31943,33 @@ a Huber regression warm start. Confidence intervals for regression
coefficients are constructed using multiplier bootstrap.")
(license license:gpl3)))
(define-public r-consrank
(package
(name "r-consrank")
(version "2.1.3")
(source (origin
(method url-fetch)
(uri (cran-uri "ConsRank" version))
(sha256
(base32
"0v1dr7zj2fpgncymakv5qszdrlqzvc5zxfyc3yrsj09gbm0gvyby"))))
(properties `((upstream-name . "ConsRank")))
(build-system r-build-system)
(propagated-inputs (list r-gtools r-proxy r-rgl r-rlist r-tidyr))
(home-page "https://www.r-project.org/")
(synopsis
"Compute median rankings according to Kemeny's axiomatic approach")
(description
"This package lets you compute the median ranking according to Kemeny's
axiomatic approach. Rankings can or cannot contain ties, rankings can be both
complete or incomplete. The package contains both branch-and-bound algorithms
and heuristic solutions recently proposed. The searching space of the
solution can either be restricted to the universe of the permutations or
unrestricted to all possible ties. The package also provides some useful
utilities for deal with preference rankings, including both element-weight
Kemeny distance and correlation coefficient.")
(license license:gpl3)))
(define-public r-fastshap
(package
(name "r-fastshap")
@ -33395,13 +33465,13 @@ observations.")
(define-public r-scico
(package
(name "r-scico")
(version "1.3.1")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "scico" version))
(sha256
(base32 "1f2czfhzdpi5dqjbxvbrrcnxjpylc5zzghj70ihlh2agq3n9hw5g"))))
(base32 "1zcsqmsr9vjs4krz8vmq4z59wh6x25g9ca6yxb0wlq58nmws77k6"))))
(properties `((upstream-name . "scico")))
(build-system r-build-system)
(propagated-inputs (list r-scales))
@ -36953,14 +37023,14 @@ the @code{raster} package that is suitable for extracting raster values using
(define-public r-stringfish
(package
(name "r-stringfish")
(version "0.15.7")
(version "0.15.8")
(source
(origin
(method url-fetch)
(uri (cran-uri "stringfish" version))
(sha256
(base32
"0ddpsi7z0kzqgbq9y646pk9afclq0r7ak22zsdh0i93ni0x71c9l"))))
"16w3i3d7jw2s1hzxr3mngrh7yjxvhswqdlpjw5g4z25i84lixcnz"))))
(properties `((upstream-name . "stringfish")))
(build-system r-build-system)
(propagated-inputs

View file

@ -4677,13 +4677,11 @@ algorithm implementations.")
(delete 'build) ; XXX the build is performed again during the install phase
(add-after 'unpack 'enter-source-directory
(lambda _ (chdir "python")))
(add-after 'unpack 'make-git-checkout-writable
(lambda _
(for-each make-file-writable (find-files "."))))
(add-before 'install 'set-PYARROW_WITH_PARQUET
(add-before 'install 'set-pyarrow-build-options
(lambda _
(setenv "PYARROW_BUNDLE_ARROW_CPP_HEADERS" "0")
(setenv "PYARROW_WITH_PARQUET" "1"))))))
(setenv "PYARROW_WITH_PARQUET" "1")
(setenv "PYARROW_WITH_DATASET" "1"))))))
(propagated-inputs
(list (list apache-arrow "lib")
(list apache-arrow "include")

View file

@ -2,7 +2,7 @@
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018-2023 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net>
@ -150,7 +150,7 @@ of categories with some of the activities available in that category.
(define-public gcompris-qt
(package
(name "gcompris-qt")
(version "2.3")
(version "3.2")
(source
(origin
(method url-fetch)
@ -158,7 +158,7 @@ of categories with some of the activities available in that category.
"mirror://kde/stable/gcompris/qt/src/gcompris-qt-"
version ".tar.xz"))
(sha256
(base32 "0qncknaaf168anh4cjp7dqz6qzgx948kvgr32j2vga8mjakqn1aj"))))
(base32 "06yisr5qd2ri8qgpmlri0yic45fdfcdjn12anp17f6kvv83lk2js"))))
(build-system qt-build-system)
(arguments
`(#:phases
@ -183,13 +183,13 @@ of categories with some of the activities available in that category.
(list openssl
python-wrapper
qtbase-5
qtcharts
qtdeclarative-5
qtgraphicaleffects
qtmultimedia-5
qtquickcontrols-5
qtquickcontrols2-5
qtsensors
qtsvg-5
qtxmlpatterns))
qtsvg-5))
(home-page "https://gcompris.net/index-en.html")
(synopsis "Educational games for small children")
(description

View file

@ -30,6 +30,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
@ -99,7 +100,7 @@ information.")
(define-public sbsigntools
(package
(name "sbsigntools")
(version "0.9.4")
(version "0.9.5")
(source
(origin
(method git-fetch)
@ -110,34 +111,32 @@ information.")
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "1y76wy65y6k10mjl2dm5hb5ms475alr4s080xzj8y833x01xvf3m"))))
(base32 "060n6w0dx1mrilhdv482ncckanqz6pdv53piimiki0bm15d2fcp4"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-more-shebangs
(lambda* (#:key inputs #:allow-other-keys)
(lambda* (#:key inputs native-inputs #:allow-other-keys)
(substitute* "lib/ccan.git/tools/create-ccan-tree"
(("#!/bin/bash")
(string-append "#!"
(assoc-ref inputs "bash")
"/bin/bash")))
#t))
(search-input-file (or native-inputs inputs)
"/bin/bash"))))))
(add-after 'unpack 'patch
(lambda* (#:key inputs outputs #:allow-other-keys)
(lambda _
(substitute* '("configure.ac"
"tests/Makefile.am")
(("/usr/include/efi")
(string-append (assoc-ref inputs "gnu-efi")
(string-append #$(this-package-input "gnu-efi")
"/include/efi"))
(("/usr/lib/gnuefi")
(string-append (assoc-ref inputs "gnu-efi")
"/lib")))
#t))
(string-append #$(this-package-input "gnu-efi")
"/lib")))))
(add-after 'unpack 'setenv
(lambda _
(setenv "CC" "gcc")
#t)))))
(setenv "CC" #$(cc-for-target)))))))
(native-inputs
(list autoconf
automake
@ -146,9 +145,9 @@ information.")
pkg-config
util-linux)) ; getopt
(inputs
`(("gnu-efi" ,gnu-efi)
("libuuid" ,util-linux "lib")
("openssl" ,openssl)))
(list gnu-efi
`(,util-linux "lib") ; libuuid
openssl))
(synopsis "EFI signing tools")
(description "This package provides tools for signing EFI binaries.")
(home-page "https://git.kernel.org/pub/scm/linux/kernel/git/jejb/sbsigntools.git/")

View file

@ -36463,8 +36463,8 @@ headlines, keywords, tables and source blocks.")
(license license:gpl3+)))) ; License is in pyimport.el
(define-public emacs-straight-el
(let ((commit "f21103d97d180fba0b6e2e86ebb0b6269219ef2c")
(revision "1"))
(let ((commit "039e5c9a9b5c00749602afb41341e9e77ba09429")
(revision "2"))
(package
(name "emacs-straight-el")
(version (git-version "0" revision commit))
@ -36477,7 +36477,7 @@ headlines, keywords, tables and source blocks.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1dqhb7kx4hr3cm4gj6qdk9aav05vc016y4nks2dj1sy88wia6wsv"))))
(base32 "05avzakgkwzrj1pxa1pkcv96knqq4mnkv2cszn4cs4kmvr2mchxm"))))
(build-system emacs-build-system)
(arguments
(list

View file

@ -69,6 +69,7 @@
#:use-module (gnu packages readline)
#:use-module (gnu packages swig)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xorg)
#:use-module (srfi srfi-1))
@ -511,7 +512,7 @@ languages are C and C++.")
(define-public libjaylink
(package
(name "libjaylink")
(version "0.2.0")
(version "0.3.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -520,7 +521,7 @@ languages are C and C++.")
(file-name (git-file-name name version))
(sha256
(base32
"0ndyfh51hiqyv2yscpj6qd091w7myxxjid3a6rx8f6k233vy826q"))))
"1wps72ir2kwdr7dphx4vp6cy0d46dm3nkwbk0mpryn9la09l7lm1"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake libtool pkg-config))
@ -535,7 +536,7 @@ SEGGER J-Link and compatible devices.")
(define-public jimtcl
(package
(name "jimtcl")
(version "0.80")
(version "0.82")
(source (origin
(method git-fetch)
(uri (git-reference
@ -544,23 +545,22 @@ SEGGER J-Link and compatible devices.")
(file-name (git-file-name name version))
(sha256
(base32
"06rn60cx9sapc175vxvan87b8j5rkhh5gvvz7343xznzwlr0wcgk"))))
"01nxqzn41797ypph1vpwjfh3zqgks0l8ihh6932b4kb83apy6f08"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(list #:phases
#~(modify-phases %standard-phases
(replace 'configure
;; This package doesn't use autoconf.
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(lambda _
(invoke "./configure"
(string-append "--prefix=" out)))))
(string-append "--prefix=" #$output))))
(add-before 'check 'delete-failing-tests
(lambda _
;; XXX All but 1 TTY tests fail (Inappropriate ioctl for device).
(delete-file "tests/tty.test")
#t))
)))
;; XXX All but 1 SSL tests fail (tries connecting to Google
;; servers).
(delete-file "tests/ssl.test"))))))
(inputs (list openssl))
(native-inputs
;; For tests.
(list inetutils)) ; for hostname
@ -573,7 +573,7 @@ language.")
(define-public openocd
(package
(name "openocd")
(version "0.11.0")
(version "0.12.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -582,7 +582,7 @@ language.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0qi4sixwvw1i7c64sy221fsjs82qf3asmdk86g74ds2jjm3f8pzp"))))
"09wb11zlmrw6rx1bql3kafgi3ilzp9mhvb6j6rql216by06csing"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf
@ -592,10 +592,10 @@ language.")
pkg-config
texinfo))
(inputs
(list hidapi jimtcl libftdi libjaylink libusb-compat))
(list hidapi jimtcl libftdi libjaylink openssl))
(arguments
'(#:configure-flags
(append (list "LIBS=-lutil"
(append (list "LIBS=-lutil -lcrypto -lssl"
"--disable-werror"
"--enable-sysfsgpio"
"--disable-internal-jimtcl"

View file

@ -4,7 +4,7 @@
;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
@ -43,15 +43,15 @@
(define-public fltk
(package
(name "fltk")
(version "1.3.6")
(version "1.3.8")
(source
(origin
(method url-fetch)
(uri (string-append "http://fltk.org/pub/fltk/"
(uri (string-append "https://www.fltk.org/pub/fltk/"
(first (string-split version #\-))
"/fltk-" version "-source.tar.gz"))
(sha256
(base32 "1arp1niiz3qxm8iacpmilwpc5rinsm6hsk4a6fsxfywvkvppbb4s"))))
(base32 "1gyisjwjbdsax4kbdm3hpijp2f0qgh1wk7wgad87l3pb0wmi1hgk"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))

View file

@ -19,7 +19,7 @@
;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2017, 2018, 2019, 2020, 2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 20172023 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
;;; Copyright © 2018 Charlie Ritter <chewzerita@posteo.net>
;;; Copyright © 2018 Gabriel Hondet <gabrielhondet@gmail.com>
@ -2845,18 +2845,7 @@ optimized for using musical symbols inline with regular text.")
(file-name (string-append name "-" version ".zip"))
(sha256
(base32 "1j8iv2dl695zrabs2knb7jsky8mjis29a2ddpna4by8mlvqrf0ml"))))
(outputs '("out" "woff2"))
(build-system font-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'install-woff2
(lambda* (#:key outputs #:allow-other-keys)
(let ((dest (string-append (assoc-ref outputs "woff2")
"/share/fonts/woff2")))
(for-each (lambda (file)
(install-file file dest))
(find-files "." "\\.woff2$"))))))))
(home-page "https://practicaltypography.com/charter.html")
(synopsis "Charter fonts in OpenType and TrueType formats")
(description "Charter was designed by Matthew Carter in 1987 and was

View file

@ -738,7 +738,9 @@ lets developers use the functionality of Proj in their own software.")
version ".tar.gz"))
(sha256
(base32
"050apzdn0isxpsblys1shrl9ccli5vd32kgswlgx1imrbwpg915k"))))
"050apzdn0isxpsblys1shrl9ccli5vd32kgswlgx1imrbwpg915k"))
(patches
(search-patches "proj-7-initialize-memory.patch"))))
(arguments
`(#:configure-flags '("-DUSE_EXTERNAL_GTEST=ON")
#:phases

View file

@ -524,7 +524,10 @@ be used when cross-compiling."
"/_giscanner"))))
#~()))))
(native-inputs
`(("glib" ,glib "bin")
`(,@(if (%current-target-system)
`(("python" ,python))
'())
("glib" ,glib "bin")
("pkg-config" ,pkg-config)
("bison" ,bison)
("flex" ,flex)))

View file

@ -76,6 +76,7 @@
;;; Copyright © 2023 Kaelyn Takata <kaelyn.alexi@protonmail.com>
;;; Copyright © 2023 Juliana Sims <juli@incana.org>
;;; Copyright © 2023 Dominik Delgado Steuter <d@delgado.nrw>
;;; Copyright © 2023 Zhu Zihao <all_but_last@163.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2701,7 +2702,7 @@ on the GNOME Desktop with a single simple application.")
"/share/backgrounds/gnome"))
;; Do not reference fonts, that may not exist.
(("'Source Code Pro 10'") "'Monospace 11'")))))))
(inputs (list glib gnome-backgrounds))
(inputs (list glib gnome-backgrounds gobject-introspection))
(native-inputs (list gettext-minimal
`(,glib "bin") ;glib-compile-schemas, etc.
gobject-introspection
@ -7199,7 +7200,9 @@ principles are simplicity and standards compliance.")
name "-" version ".tar.xz"))
(sha256
(base32
"1jqw5ndpgyb0zxh0g21ai1911lfrm56vz18xbccfqm4sk95wwcw7"))))
"1jqw5ndpgyb0zxh0g21ai1911lfrm56vz18xbccfqm4sk95wwcw7"))
(patches
(search-patches "d-feet-drop-unused-meson-argument.patch"))))
(build-system meson-build-system)
(arguments
(list

View file

@ -518,9 +518,9 @@ variable defined below. It requires guile-json to be installed."
;; XXXX: Workaround 'snippet' limitations.
(define computed-origin-method (@@ (guix packages) computed-origin-method))
(define %icecat-base-version "102.11.0")
(define %icecat-base-version "102.12.0")
(define %icecat-version (string-append %icecat-base-version "-guix0-preview1"))
(define %icecat-build-id "20230509000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-build-id "20230606000000") ;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'
@ -540,12 +540,12 @@ variable defined below. It requires guile-json to be installed."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"0cyfij00i9m1pwwyfhiq2qasbfr2ykdwziqykj8878kyjvkj1wg7"))))
"189irpd8xkwh3qixbbcmn5jblx7jz80rilcq8ihaawpmdh76safp"))))
;; The upstream-icecat-base-version may be older than the
;; %icecat-base-version.
(upstream-icecat-base-version "102.11.0")
(gnuzilla-commit "5a1894fc966840dc242110ec0459471c637a4675")
(upstream-icecat-base-version "102.12.0")
(gnuzilla-commit "b2d463b0e331795eebe3ee62f2c58c1bd05b9899")
(gnuzilla-source
(origin
(method git-fetch)
@ -557,7 +557,7 @@ variable defined below. It requires guile-json to be installed."
(string-take gnuzilla-commit 8)))
(sha256
(base32
"1816lm4cl45l1zbc043827rfnzzzxckhxk16gvj3a8kyg7fxvv3v"))))
"0db03i3xmapdr0xyb9yg6cl66kyxavnl22hhhnf85ffnlfrcdx2r"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.

View file

@ -3843,7 +3843,7 @@ debugging code.")
(define-public guile-png
(package
(name "guile-png")
(version "0.4.1")
(version "0.5.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3852,7 +3852,7 @@ debugging code.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1vkhv0dip0na6d9g478i587n5y6046vn5rsjmfnbibi9yx4rkrf8"))))
"0dnahq05mwxzbsqb0qjkyysylc54qr8l5839zyc4sanl2syzhvwk"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings

View file

@ -31,6 +31,7 @@
;;; Copyright © 20212023 Alice BRENON <alice.brenon@ens-lyon.fr>
;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -8602,6 +8603,26 @@ of functions that implement regular expression pattern matching using the same
syntax and semantics as Perl 5.")
(license license:bsd-3)))
(define-public ghc-peano
(package
(name "ghc-peano")
(version "0.1.0.1")
(source (origin
(method url-fetch)
(uri (hackage-uri "peano" version))
(sha256
(base32
"0yzcxrl41dacvx2wkyxjj7hgvz56l4qb59r4h9rmaqd7jcwx5z9i"))))
(build-system haskell-build-system)
(arguments
`(#:cabal-revision ("3"
"0wl22dnz6ld300cg6id3lw991bp8kdfi8h0nbv37vn79i1zdcj5n")))
(home-page "http://hackage.haskell.org/package/peano")
(synopsis "Peano numbers")
(description "Provides an efficient Haskell implementation of Peano
numbers")
(license license:bsd-3)))
(define-public ghc-persistent
(package
(name "ghc-persistent")
@ -13308,6 +13329,27 @@ the vector; then you can execute the builder to actually produce the
vector.")
(license license:expat)))
(define-public ghc-vector-hashtables
(package
(name "ghc-vector-hashtables")
(version "0.1.1.2")
(source (origin
(method url-fetch)
(uri (hackage-uri "vector-hashtables" version))
(sha256
(base32
"0hrjvy9qg1m5g3w91zxy4syqmp8jk7ajjbxbzkhy282dwfigkyd2"))))
(build-system haskell-build-system)
(inputs (list ghc-primitive ghc-vector ghc-hashable))
(native-inputs (list ghc-hspec ghc-quickcheck ghc-quickcheck-instances
hspec-discover))
(home-page "https://github.com/klapaucius/vector-hashtables#readme")
(synopsis "Efficient vector-based mutable hashtables implementation")
(description
"This package provides efficient vector-based hashtable implementation
similar to .NET Generic Dictionary implementation (at the time of 2015).")
(license license:bsd-3)))
(define-public ghc-vector-th-unbox
(package
(name "ghc-vector-th-unbox")

View file

@ -571,9 +571,27 @@ official designation is ISO/IEC 29199-2). This library is an implementation of t
(sha256
(base32 "06f6d08xvmsiki4mc1qs985gsjqmsxx793a93b72y25q84wbg9x9"))))
(build-system gnu-build-system)
(inputs (list libjpeg-turbo))
(arguments
'(#:tests? #f)) ; no tests
`(#:tests? #f ; no tests
,@(if (and (target-riscv64?)
(%current-target-system))
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'update-config-scripts
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(for-each (lambda (file)
(install-file
(search-input-file
(or native-inputs inputs)
(string-append "/bin/" file)) "./tools"))
'("config.guess" "config.sub"))))))
'())))
(inputs (list libjpeg-turbo))
(native-inputs
(if (and (target-riscv64?)
(%current-target-system))
(list config)
'()))
(synopsis "Optimize JPEG images")
(description
"jpegoptim provides lossless optimization (based on optimizing
@ -595,6 +613,25 @@ maximum quality factor.")
(base32
"1hjm8lwap7bjyyxsyi94fh5817xzqhk4kb5y0b7mb6675xw10prk"))))
(build-system gnu-build-system)
(arguments
(if (and (target-riscv64?)
(%current-target-system))
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'update-config-scripts
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(for-each (lambda (file)
(install-file
(search-input-file
(or native-inputs inputs)
(string-append "/bin/" file)) "."))
'("config.guess" "config.sub"))))) )
'()))
(native-inputs
(if (and (target-riscv64?)
(%current-target-system))
(list config)
'()))
(inputs
(list libpng jasper))
(home-page "https://icns.sourceforge.io/")
@ -2105,7 +2142,7 @@ losslessly translates between SNG and PNG.")
(define-public blurhash
(package
(name "blurhash")
(version "0.0.1")
(version "0.2.0")
(source
(origin
(method git-fetch)
@ -2114,10 +2151,10 @@ losslessly translates between SNG and PNG.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0jy2iigarskwfhskyladbb6l92x1fb3i3vz4bvcks0za4w5hfxk5"))))
(base32 "0hx15fspava43z47kv17ivxv56g03fb2zf45dl07v3shickqxw0x"))))
(build-system meson-build-system)
(native-inputs
(list cmake doctest))
(list doctest pkg-config))
(home-page "https://github.com/Nheko-Reborn/blurhash")
(synopsis "C++ blurhash encoder/decoder")
(description "Simple encoder and decoder for blurhashes. Contains a

View file

@ -40,6 +40,7 @@
#:use-module (gnu packages acl)
#:use-module (gnu packages admin)
#:use-module (gnu packages aidc)
#:use-module (gnu packages aspell)
#:use-module (gnu packages attr)
#:use-module (gnu packages avahi)
#:use-module (gnu packages base)
@ -1450,7 +1451,8 @@ system.")
(native-inputs
(list extra-cmake-modules pkg-config qttools-5))
(inputs
(list hunspell
(list aspell
hunspell
;; TODO: hspell (for Hebrew), Voikko (for Finish)
qtdeclarative-5
qtbase-5))

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2019-2021, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017, 2018 Mark Meyer <mark@ofosos.org>
@ -516,15 +516,16 @@ the functionality of the KDE resource and network access abstractions.")
(define-public kirigami-addons
(package
(name "kirigami-addons")
(version "0.3")
(version "0.8.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://invent.kde.org/libraries/kirigami-addons/-/archive/v"
version "/kirigami-addons-v" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://invent.kde.org/libraries/kirigami-addons")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1zr8dpc7bzw6g3y0jaxsr2lqlxqwlcphchpk8iah6g1f3n9fq73r"))))
"1bi6sc1fpycxj1ydd08gkbw1x1pi2ab6p9bk4175hm0mb0rykdir"))))
(build-system qt-build-system)
(arguments
(list #:tests? #f)) ; failing test

View file

@ -183,14 +183,7 @@ After installation, the system administrator should generate keys using
(base32
"0f4dblav859p5hn7b2jdj1akw6d8p32as6bj6zym19kghh3s51zx"))
(patches
(search-patches "heimdal-CVE-2022-45142.patch"))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "configure"
(("User=.*$") "User=Guix\n")
(("Host=.*$") "Host=GNU")
(("Date=.*$") "Date=2022\n"))))))
(search-patches "heimdal-CVE-2022-45142.patch"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -221,9 +214,20 @@ After installation, the system administrator should generate keys using
"/libexec/heimdal")))
#~()))
#:phases (modify-phases %standard-phases
;; Skip the appl folder as obsolete per message from Brian May <brian@linuxpenguins.xyz>
;; <MDAEMON-F202305111940.AA401569md5001000003030@sequoia-grove.ad.secure-endpoints.com>
(add-after 'unpack 'drop-obsolete-executables
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("Makefile.am")
(("appl") ""))))
(add-before 'configure 'pre-configure
(lambda* (#:key inputs #:allow-other-keys)
(invoke (search-input-file inputs "bin/autoreconf") "--install" "--force")
(substitute* "configure"
;; Reproducible build date, etc.
(("User=.*$") "User=Guix\n")
(("Host=.*$") "Host=GNU\n")
(("Date=.*$") "Date=2022\n")
;; The e2fsprogs input is included for libcom_err,
;; let's use it even if cross-compiling.
(("test \"\\$\\{krb_cv_com_err\\}\" = \"yes\"")
@ -232,15 +236,6 @@ After installation, the system administrator should generate keys using
;; which confuses heimdal.
(("ac_cv_prog_COMPILE_ET=\\$\\{with_cross_tools\\}compile_et")
"ac_cv_PROG_COMPILE_ET=compile_et"))
(substitute* '("appl/afsutil/pagsh.c" "appl/su/su.c")
(("/bin/sh")
(search-input-file inputs "bin/sh"))
;; Use the cross-compiled bash instead of the
;; native bash (XXX shouldn't _PATH_BSHELL point
;; to a cross-compiled bash?).
(("_PATH_BSHELL")
(string-append
"\"" (search-input-file inputs "bin/sh") "\"")))
(substitute* '("tools/Makefile.in")
(("/bin/sh") (which "sh")))))
(add-before 'check 'pre-check
@ -255,12 +250,17 @@ After installation, the system administrator should generate keys using
(format #t "#!~a~%exit 1~%" (which "sh")))))))
;; Tests fail when run in parallel.
#:parallel-tests? #f))
(native-inputs (list bison
(native-inputs (list autoconf
automake
bison
e2fsprogs ;for 'compile_et'
flex
libtool
texinfo
unzip ;for tests
pkg-config
perl
perl-json
python))
(inputs (list readline
bash-minimal

View file

@ -485,7 +485,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream.
(define-public linux-libre-6.3-version "6.3.5")
(define-public linux-libre-6.3-version "6.3.6")
(define-public linux-libre-6.3-gnu-revision "gnu")
(define deblob-scripts-6.3
(linux-libre-deblob-scripts
@ -495,7 +495,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0la20slh52jm4cg4v2liphhqqx4808gm6pfqcxiawj13a4ps9ygk")))
(define-public linux-libre-6.3-pristine-source
(let ((version linux-libre-6.3-version)
(hash (base32 "0pl2zypsmrnna69850jadccffxwg9xdfkldg0sv8m44b7n64gkgm")))
(hash (base32 "1vr418rf0zd16fq4vaxda1w2ccng2n9l0ysakmgz9xqbz86iysks")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.3)))
@ -503,7 +503,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-6.1-version "6.1.31")
(define-public linux-libre-6.1-version "6.1.32")
(define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1
(linux-libre-deblob-scripts
@ -513,12 +513,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1yv15mb278wlrn8gb2yjm0mczirzixy668h221vcpbz416ibxx1m")))
(define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version)
(hash (base32 "1hbkw290kmf1dj8a255ik1gk5fk458c88m348dwrc3lrl6xifsg8")))
(hash (base32 "0v0saai735jzaj3dbpgp6sbdi95n3lmv78pbg1xy9fd2kfhbg23w")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.1)))
(define-public linux-libre-5.15-version "5.15.114")
(define-public linux-libre-5.15-version "5.15.115")
(define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15
(linux-libre-deblob-scripts
@ -528,12 +528,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "00n8c7ghfs36bvz0yjw6w9daf5zcgj94kxxn27bfyfm274rkddmz")))
(define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version)
(hash (base32 "1lkpa9wv1qj90qdzzi71qf5dyy7mi95fixx3ymdp6xwz45fym0g9")))
(hash (base32 "050j9z0wg5glgxwbmzfq4l8lv8y7g3nc2rz8342yjdcjfxh6h1qv")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.181")
(define-public linux-libre-5.10-version "5.10.182")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
@ -543,12 +543,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "12jhak2bw1jy2jk70vrm66kjvh0cd6c8f2qiy2bk40rq7bf62mr6")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "1rx43dkxspris9529vl11blzhvsxnpaqr6yb3fy089az7yvwxrmc")))
(hash (base32 "1xp9bxk2vyw29bq3z854ly4cj94z8i52yl5hq4a3l3j6564wb3ny")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
(define-public linux-libre-5.4-version "5.4.244")
(define-public linux-libre-5.4-version "5.4.245")
(define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
@ -558,7 +558,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "070j069sj6spy2wkzfzm1d5jd7pffm0s1m917wblc8d3x8pbgvf8")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
(hash (base32 "06x20aq7bv86ghv2sdsz3q2rmqh8h389x5zksr53fyzdjl72ixch")))
(hash (base32 "195ixy9l18mhwvzj7v63fkyifb9mysq950afxh6ixlpvg0c8h1wn")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
@ -8159,7 +8159,7 @@ Text-based output formats: CSV, XML, Netfilter's LOG, Netfilter's conntrack
(define-public proot
(package
(name "proot")
(version "5.3.0")
(version "5.4.0")
(source
(origin
(method git-fetch)
@ -8168,7 +8168,10 @@ Text-based output formats: CSV, XML, Netfilter's LOG, Netfilter's conntrack
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1r1ga3xbwq5kx4i8ihj1p6nmgaa14lfkwxzpsbdcmfh1jimpbmzk"))))
(base32 "186qsg4yvisqjgf8w5jxhnlig7x341vpqwcgp8as3r59qmqkpmk7"))
;; Waiting for upstream inclusion at
;; https://github.com/proot-me/proot/pull/355
(patches (search-patches "proot-add-clone3.patch"))))
(build-system gnu-build-system)
;; Many architectures are not supported (see:
;; https://github.com/proot-me/proot/blob/master/src/arch.h#L51).

View file

@ -4978,7 +4978,7 @@ is a library for creating graphical user interfaces.")
(define-public sbcl-cl-webkit
(package
(name "sbcl-cl-webkit")
(version "3.5.7")
(version "3.5.9")
(source
(origin
(method git-fetch)
@ -4988,7 +4988,7 @@ is a library for creating graphical user interfaces.")
(file-name (git-file-name "cl-webkit" version))
(sha256
(base32
"0aqkqcs0n5wkgjx3lb513fvm7f2jw3d5daisc9mw1bmbbcqh2sba"))))
"00h61p5mrvvbycp703isy0wvgqlfb7k0cidw4vg75y7s29m3k6k0"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("cffi" ,sbcl-cffi)
@ -21176,9 +21176,10 @@ window it creates as just another output for your graphics, analogous to how
(sbcl-package->cl-source-package sbcl-cepl))
(define-public sbcl-stmx
;; No release for years and recent commits contain fixes for revent SBCL versions.
(let ((commit "a7bb44082cd53ee968965adff03d4351750711a1")
(revision "1"))
;; No release for years and recent commits contain fixes for recent SBCL
;; versions.
(let ((commit "f71e742a50b85e3abc0af9bb5f02802f218a1705")
(revision "2"))
(package
(name "sbcl-stmx")
(version (git-version "2.0.5" revision commit))
@ -21190,11 +21191,22 @@ window it creates as just another output for your graphics, analogous to how
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1hfmh4vj271jdilir97qs6nqbi5nmn5alyls0w3d3xxqwi6ffqjs"))))
(base32 "0q739mlw3s3z5kclzccz4r64ag38ks11fmd38109qwjv5knn69jv"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-alexandria sbcl-bordeaux-threads sbcl-log4cl
sbcl-closer-mop sbcl-trivial-garbage))
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-build
(lambda _
(substitute* "asm/transaction.lisp"
(("\\(ftype \\(function \\(\\) fixnum\\) transaction-begin\\)")
"(ftype (function () (unsigned-byte 32)) transaction-begin)")
(("\\(values fixnum &optional\\)")
"(unsigned-byte 32)")))))))
(home-page "https://stmx.org/")
(synopsis "High performance Transactional Memory for Common Lisp")
(description

View file

@ -23,6 +23,7 @@
;;; Copyright © 2022 Joeke de Graaf <joeke@posteo.net>
;;; Copyright © 2021, 2022 jgart <jgart@dismail.de>
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -57,6 +58,7 @@
#:use-module (guix build-system haskell)
#:use-module (guix build-system trivial)
#:use-module (gnu packages admin)
#:use-module (gnu packages algebra)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bdw-gc)
@ -83,6 +85,7 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages notcurses)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages perl)
#:use-module (gnu packages readline)
@ -93,7 +96,8 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xorg)
#:use-module (ice-9 match))
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
(define-public cl-asdf
(package
@ -428,20 +432,22 @@ an interpreter, a compiler, a debugger, and much more.")
(define-public sbcl
(package
(name "sbcl")
(version "2.3.2")
(version "2.3.5")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-"
version "-source.tar.bz2"))
(sha256
(base32 "1ahyrc3p9cf7y5zbgzvb9yxa8a480ccis4ksijlajck3z8n1dk24"))
(base32 "11ji5n65l31249r0v7hm0wc0yk2ila0y746nj36xn1cxrwh0gjc9"))
(modules '((guix build utils)))
;; backport from upstream.
(patches (search-patches "sbcl-riscv-Make-contribs-build-again.patch"))
(snippet
'(begin
;; Don't force ARMv5.
(substitute* "src/runtime/Config.arm-linux"
(("-march=armv5") ""))))))
(("-march=armv5t") ""))))))
(build-system gnu-build-system)
(outputs '("out" "doc"))
(native-inputs
@ -987,7 +993,7 @@ the HTML documentation of TXR.")
(define-public txr
(package
(name "txr")
(version "286")
(version "287")
(source
(origin
(method git-fetch)
@ -996,7 +1002,7 @@ the HTML documentation of TXR.")
(commit (string-append "txr-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0c5prq9ans4qv8dgfn85555by9rb22p276g21w4mns0rqhjd0ij8"))))
(base32 "0bwa40l5c0dnpcpfbysqbv8ch58sycbb31dnskmhr387jlv938dl"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
@ -1478,3 +1484,129 @@ includes a compiler as well as an interpreter.")
license:expat ;; cii/LICENSE
license:gpl2+ ;; nana/gdb/test.c and others under nana/
license:bsd-3)))) ;; bench/*
(define-public s7-bootstrap
;; Need s7-bootstrap to build libc_s7.so (for the REPL) and run tests
(let ((commit "a5b4bb49f8bcd7c33ae2366065fc8c254b734460") ;no releases
(revision "0"))
(hidden-package
(package
(name "s7-bootstrap")
(version (git-version "23.3" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://cm-gitlab.stanford.edu/bil/s7.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"03n1axdlypzmbgzrhlwfqwa1xiw36hi25j2hwc7vw77mz90cd9f8"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no tests in bootstrap
#:phases #~(modify-phases %standard-phases
(delete 'configure) ;no configure
(replace 'build
(lambda _
;; using build commands from s7 home page
(display "[BUILD] repl\n")
(invoke #$(cc-for-target) "s7.c" "-o" "repl"
"-I." "-O2" "-g"
"-DWITH_MAIN"
(string-append
"-DS7_LOAD_PATH=\""
#$output "/share/s7/scm\"")
"-ldl" "-lm"
"-Wl,-export-dynamic")
(display "[BUILD] nrepl\n")
(invoke #$(cc-for-target) "s7.c" "-o" "nrepl"
"-I." "-O2" "-g"
"-DWITH_MAIN" "-DWITH_NOTCURSES"
(string-append
"-DS7_LOAD_PATH=\""
#$output "/share/s7/scm\"")
"-ldl" "-lm" "-lnotcurses-core"
"-Wl,-export-dynamic")
(display "[BUILD] libarb_s7.so\n")
(invoke #$(cc-for-target) "libarb_s7.c"
"-I." "-O2" "-g"
"-shared" "-o" "libarb_s7.so"
"-larb" "-lflint" "-lmpc" "-fPIC")
(display "[BUILD] libnotcurses_s7.so\n")
(invoke #$(cc-for-target) "notcurses_s7.c"
"-I." "-O2" "-g"
"-shared" "-o" "libnotcurses_s7.so"
"-lnotcurses-core" "-fPIC")
;; Need s7.o and ffitest for tests
(display "[BUILD] s7.o\n")
(invoke #$(cc-for-target) "-c" "s7.c" "-o"
"s7.o" "-I." "-O2" "-ldl" "-lm")
(display "[BUILD] ffitest\n")
(invoke #$(cc-for-target) "-o" "ffitest"
"ffitest.c" "-g2" "s7.o" "-lm" "-I."
"-ldl" "-Wl,-export-dynamic")))
(add-before 'check 'install-scm
;; scm files need to be installed before testing
(lambda _
(for-each (lambda (x)
(install-file
x (string-append
#$output "/share/s7/scm/")))
(find-files "." "\\.scm"))))
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin"))
(share (string-append #$output
"/share/s7/"))
(doc (string-append #$output
"/share/doc/s7/"))
(lib (string-append #$output "/lib"))
(inc (string-append #$output "/include/")))
(install-file "repl" bin)
(install-file "nrepl" bin)
(install-file "ffitest" bin)
(install-file "libarb_s7.so" lib)
(install-file "libnotcurses_s7.so" lib)
(install-file "s7.c" share)
(install-file "s7.h" inc)
(install-file "s7.html" doc)))))))
(inputs (list arb flint mpc notcurses))
(home-page "https://ccrma.stanford.edu/software/snd/snd/s7.html")
(synopsis "Scheme interpreter intended as an extension language")
(description
"s7 is a Scheme interpreter intended as an extension language for
other applications. It exists as just two files, @code{s7.c} and @code{s7.h},
that may be copied into the source tree of another application. There are no
libraries, no run-time init files, and no configuration scripts. It can also
be built as a stand-alone REPL interpreter.")
(license license:bsd-0)))))
(define-public s7
(package
(inherit s7-bootstrap)
(name "s7")
(arguments
(substitute-keyword-arguments (package-arguments s7-bootstrap)
((#:tests? _) #t)
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'patch
(lambda _
(substitute* "s7.c"
(("libc_s7.so")
(string-append #$output "/lib/libc_s7.so")))))
(add-after 'build 'build-full
(lambda _
(invoke "repl" "./libc.scm")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "repl" "./s7test.scm"))))
(add-after 'install 'install-full
(lambda _
(install-file "libc_s7.so"
(string-append #$output "/lib/"))
(delete-file (string-append #$output "/bin/ffitest"))))))))
(native-inputs (list s7-bootstrap))
(properties (alist-delete 'hidden? (package-properties s7-bootstrap)))))

View file

@ -727,6 +727,112 @@ depend on language-specific pre- or post-processing.")
unsupervised text tokenizer.")
(license license:asl2.0)))
(define-public python-spacy-legacy
(package
(name "python-spacy-legacy")
(version "3.0.12")
(source (origin
(method url-fetch)
(uri (pypi-uri "spacy-legacy" version))
(sha256
(base32
"0x57aw1qgjrzgapsv1cwymqlck2anqm1bisvryhpq7bfkc66wzdk"))))
(build-system pyproject-build-system)
;; This package depends on spacy, which depends on this package.
(arguments (list #:tests? #false))
(native-inputs (list python-pytest))
(home-page "https://spacy.io")
(synopsis "Legacy registered functions for spaCy backwards compatibility")
(description
"This package contains legacy registered functions for spaCy backwards
compatibility.")
(license license:expat)))
(define-public python-spacy-loggers
(package
(name "python-spacy-loggers")
(version "1.0.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "spacy-loggers" version))
(sha256
(base32
"0a5zjfxd0mci7pwda24ihg55whalpmjby4bvpgar2013f6zq7yg6"))))
(build-system pyproject-build-system)
;; This package depends on spacy, which depends on this package.
(arguments (list #:tests? #false))
(native-inputs (list python-pytest))
(home-page "https://github.com/explosion/spacy-loggers")
(synopsis "Logging utilities for SpaCy")
(description "This package provides logging utilities for the SpaCy
natural language processing framework.")
(license license:expat)))
(define-public python-spacy
(package
(name "python-spacy")
(version "3.5.3")
(source (origin
(method url-fetch)
(uri (pypi-uri "spacy" version))
(sha256
(base32
"13141hc966d8nxbnlwj01vhndgq0rq4nmii3qkb3hrap45kiv5rm"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
'(list "-k"
(string-append
;; We don't do that around here.
"not test_download_compatibility"
;; This needs to download a model.
" and not test_validate_compatibility_table"
;; This tries to run the application with typer, which fails
;; with an unspecified error, possibly because the build
;; container doesn't have /bin/sh.
" and not test_project_assets"))
#:phases
'(modify-phases %standard-phases
(add-after 'build 'build-ext
(lambda _
(invoke "python" "setup.py" "build_ext" "--inplace"
"-j" (number->string (parallel-job-count))))))))
(propagated-inputs (list python-catalogue
python-cymem
python-jinja2
python-langcodes
python-murmurhash
python-numpy
python-packaging
python-pathy
python-preshed
python-pydantic
python-requests
python-setuptools
python-smart-open
python-spacy-legacy
python-spacy-loggers
python-srsly
python-thinc
python-tqdm
python-typer
python-typing-extensions
python-wasabi))
(native-inputs
(list python-cython python-pytest python-mock))
(home-page "https://spacy.io")
(synopsis "Natural Language Processing (NLP) in Python")
(description
"SpaCy is a library for advanced Natural Language Processing in Python
and Cython. It comes with pretrained pipelines and currently supports
tokenization and training for 70+ languages. It features state-of-the-art
speed and neural network models for tagging, parsing, named entity
recognition, text classification and more, multi-task learning with pretrained
transformers like BERT, as well as a production-ready training system and easy
model packaging, deployment and workflow management.")
(license license:expat)))
(define-public shogun
(package
(name "shogun")
@ -1276,6 +1382,46 @@ computing environments.")
data analysis.")
(license license:bsd-3)))
(define-public python-thinc
(package
(name "python-thinc")
(version "8.1.10")
(source (origin
(method url-fetch)
(uri (pypi-uri "thinc" version))
(sha256
(base32
"14drmwa2sh8fqszv1fm2jl4lky1j5yrbkjv89bl49q07vbblhjkc"))))
(build-system pyproject-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'build 'build-ext
(lambda _
(invoke "python" "setup.py" "build_ext" "--inplace"
"-j" (number->string (parallel-job-count))))))))
(propagated-inputs (list python-blis-for-thinc
python-catalogue
python-confection
python-contextvars
python-cymem
python-dataclasses
python-murmurhash
python-numpy
python-packaging
python-preshed
python-pydantic
python-srsly
python-typing-extensions
python-wasabi))
(native-inputs (list python-cython python-mock python-pytest))
(home-page "https://github.com/explosion/thinc")
(synopsis "Functional take on deep learning")
(description
"This package provides a functional take on deep learning, compatible
with your favorite libraries.")
(license license:expat)))
(define-public python-threadpoolctl
(package
(name "python-threadpoolctl")

View file

@ -188,6 +188,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system trivial)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match))
@ -4039,16 +4040,20 @@ servers. The 4rev1 and 4 versions of IMAP are supported.")
(define-public urlscan
(package
(name "urlscan")
(version "0.9.10")
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "urlscan" version))
(sha256
(base32 "1ir6dxifkd8hv048p65jyz4wyg6ll002fzvbmajpdnvs6mvkj1md"))))
(build-system python-build-system)
(base32 "0rxqdrss34rgnfmbn8ab976dchjbz72wp4ywqrdib119a5xnhqzh"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f)) ; No tests.
(propagated-inputs
(list python-urwid))
(native-inputs
(list python-hatch-vcs python-hatchling))
(home-page "https://github.com/firecat53/urlscan")
(synopsis "View/select the URLs in an email message or file")
(description

View file

@ -96,6 +96,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system ocaml)
#:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system ruby)
#:use-module (gnu packages algebra)
@ -1314,13 +1315,12 @@ computations.")
#:phases
(modify-phases %standard-phases
;; This is inspired by two of Debian's patches.
(add-before 'configure 'add-more-aarch64-support
(add-before 'configure 'add-more-architecture-support
(lambda _
(substitute* '("mfhdf/ncgen/ncgen.l"
"mfhdf/ncgen/ncgenyy.c"
"mfhdf/libsrc/netcdf.h.in")
(("AIX5L64") "__aarch64__"))
#t))
(("AIX5L64") "__aarch64__ || ( __riscv && __riscv_xlen == 64)"))))
(add-before 'configure 'patchbuild
(lambda _
(substitute*
@ -4682,35 +4682,32 @@ library.")
(define-public blis
(package
(name "blis")
(version "0.8.1")
(version "0.9.0")
(home-page "https://github.com/flame/blis")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(sha256
(base32
"05ifil6jj9424sr8kmircl8k4bmxnl3y12a79vwj1kxxva5gz50g"))
"14v2awhxma6nzas42hq97702672f2njrskqhsv9kl23hvrvci8fm"))
(file-name (git-file-name "blis" version))))
(native-inputs
(list python perl))
(build-system gnu-build-system)
(arguments
`(#:modules
((guix build gnu-build-system)
(list
#:modules
'((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1))
#:test-target "test"
#:phases
(modify-phases %standard-phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs
target
system
(configure-flags '())
(lambda* (#:key outputs target system (configure-flags '())
#:allow-other-keys)
;; This is a home-made 'configure' script.
(let* ((out (assoc-ref outputs "out"))
;; Guix-specific support for choosing the configuration
(let* (;; Guix-specific support for choosing the configuration
;; via #:configure-flags: see below for details.
(config-flag-prefix "--blis-config=")
(maybe-config-flag (find
@ -4748,7 +4745,7 @@ library.")
(else
"generic")))
(configure-args
`("-p" ,out
`("-p" ,#$output
"-d" "opt"
"--disable-static"
"--enable-shared"
@ -4759,13 +4756,11 @@ library.")
(format #t "configure args: ~s~%" configure-args)
(apply invoke
"./configure"
configure-args)
#t)))
configure-args))))
(add-before 'check 'show-test-output
(lambda _
;; By default "make check" is silent. Make it verbose.
(system "tail -F output.testsuite &")
#t)))))
(system "tail -F output.testsuite &"))))))
(synopsis "High-performance basic linear algebra (BLAS) routines")
(description
"BLIS is a portable software framework for instantiating high-performance
@ -4779,6 +4774,47 @@ access to BLIS implementations via traditional BLAS routine calls.")
(define ignorance blis)
;; It is unfortunate that we cannot just link with the existing blis package.
(define-public python-blis
(package
(name "python-blis")
(version "0.9.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "blis" version))
(sha256
(base32
"0vrnzk9jx7fcl56q6zpa4w4mxkr4iknxs42fngn9g78zh1kc9skw"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
'(modify-phases %standard-phases
(add-after 'build 'build-ext
(lambda _
(invoke "python" "setup.py" "build_ext" "--inplace"
"-j" (number->string (parallel-job-count))))))))
(propagated-inputs (list python-numpy))
(native-inputs (list python-cython python-pytest))
(home-page "https://github.com/explosion/cython-blis")
(synopsis "Blis as a self-contained C-extension for Python")
(description
"This package provides the Blis BLAS-like linear algebra library, as a
self-contained C-extension for Python.")
(license license:bsd-3)))
(define-public python-blis-for-thinc
(package
(inherit python-blis)
(name "python-blis")
(version "0.7.8")
(source (origin
(method url-fetch)
(uri (pypi-uri "blis" version))
(sha256
(base32
"0mvcif9g69424bk8xiflacxzpvz802ns791v2r8a6fij0sxl3mgp"))))))
(define-public openlibm
(package
(name "openlibm")

View file

@ -39,6 +39,7 @@
;;; Copyright © 2022 Giovanni Biscuolo <g@xelera.eu>
;;; Copyright © 2023 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -3085,7 +3086,13 @@ designed for experienced users.")
(file-name (git-file-name name version))
(sha256
(base32
"0da1ki1v252avy27j6d7snnc0gyq0xa9fypm3qdmxhw2w79d6q36"))))
"0da1ki1v252avy27j6d7snnc0gyq0xa9fypm3qdmxhw2w79d6q36"))
(modules '((guix build utils)))
(snippet
'(begin
;; TODO: This is fixed upstream in later versions
(substitute* "zulip/tests/test_default_arguments.py"
(("optional arguments:") "options:"))))))
(build-system python-build-system)
(arguments
`(#:phases

View file

@ -118,7 +118,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
(define-public mpd
(package
(name "mpd")
(version "0.23.12")
(version "0.23.13")
(source (origin
(method url-fetch)
(uri
@ -127,12 +127,13 @@ interfacing MPD in the C, C++ & Objective C languages.")
"/mpd-" version ".tar.xz"))
(sha256
(base32
"1rq2hyfvwwri3sivab747csza2i096y7m8563rl5mhpchhiadz5p"))))
"06fmy68lfrsi5y03l53dnwcynqhwh5f5vhdpbsr8lzmvzgk02sx9"))))
(build-system meson-build-system)
(arguments
(list
#:configure-flags #~(list "-Ddocumentation=enabled"
"-Dsystemd=enabled")
"-Dsystemd=enabled"
"-Dtest=true")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'enable-elogind
@ -145,7 +146,15 @@ interfacing MPD in the C, C++ & Objective C languages.")
(("systemd_dep = declare_dependency" all)
(string-append "_" all)))
(substitute* "meson.build"
(("systemd_dep,") "systemd_dep, _systemd_dep,")))))))
(("systemd_dep,") "systemd_dep, _systemd_dep,"))))
(add-after 'install 'split-package
(lambda _
;; The HTML manual accounts for over 40% of the disk
;; space used by the package.
(let* ((old (string-append #$output "/share/doc"))
(new (string-append #$output:doc "/share/doc")))
(mkdir-p (dirname new))
(rename-file old new)))))))
(inputs (append
(if (target-linux?) (list liburing) '())
(list ao
@ -182,7 +191,13 @@ interfacing MPD in the C, C++ & Objective C languages.")
yajl
zlib
zziplib)))
(native-inputs (list cmake pkg-config python-sphinx))
(native-inputs (list pkg-config python-sphinx googletest
;; See test/meson.build for information about these
;; additional dependencies.
;;
;; Used when zziplib feature is enabled.
zip))
(outputs (list "out" "doc"))
;; Missing optional inputs:
;; libcdio_paranoia
;; libmms

View file

@ -3215,7 +3215,7 @@ capabilities, custom envelopes, effects, etc.")
(define-public yoshimi
(package
(name "yoshimi")
(version "2.2.2.1")
(version "2.3.0")
(source
(origin
(method url-fetch)
@ -3223,7 +3223,7 @@ capabilities, custom envelopes, effects, etc.")
(version-major+minor version)
"/yoshimi-" version ".tar.bz2"))
(sha256
(base32 "1axrbk1qwsiq77g5957db744481zb2v158psnk2w530wxhls2442"))))
(base32 "0rkwz545bipanyl8kcp6rgdqppiad7s0j409a4n8dd97maislsa0"))))
(build-system cmake-build-system)
(arguments
(list

View file

@ -59,6 +59,7 @@
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -3097,7 +3098,10 @@ The filters can be aggregated and exported in the most common formats.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "07kwika1zdq62s5p5z94xznm77dxjxdg8k0hrg7wygz50151nzmx"))))
(base32 "07kwika1zdq62s5p5z94xznm77dxjxdg8k0hrg7wygz50151nzmx"))
(modules '((guix build utils)))
(snippet '(begin (substitute* '("Makefile")
(("-march=native") ""))))))
(build-system gnu-build-system)
(arguments
(list
@ -3126,6 +3130,7 @@ The filters can be aggregated and exported in the most common formats.")
libpcap
openssl
perl))
(properties '((tunable? . #t)))
(home-page "https://github.com/vanhauser-thc/thc-ipv6")
(synopsis "IPv6 security research toolkit")
(description "The THC IPv6 Toolkit provides command-line tools and a library

View file

@ -5,6 +5,7 @@
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2022 (unmatched parenthesis <paren@disroot.org>
;;; Copyright © 2022 Trevor Richards <trev@trevdev.ca>
;;; Copyright © 2023 Gruruya <greytest@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -36,14 +37,14 @@
(define-public nim
(package
(name "nim")
(version "1.6.6")
(version "1.6.12")
(source
(origin
(method url-fetch)
(uri (string-append "https://nim-lang.org/download/"
name "-" version ".tar.xz"))
(sha256
(base32 "0lm4450ig8k4l3rzxv6kcqji5l1lzicsw76ckwxm0q9qdz713cb7"))))
(base32 "1hjd9dxhqzn2ifr988li8q7v6kxpxlcqbdllfd6lsq3knw50pvxc"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; TODO: Investigate tests failures.
@ -55,6 +56,7 @@
(let ((out (assoc-ref outputs "out")))
(substitute* "install.sh"
(("/usr/local") out)
(("/lib/nim") "/lib")
(("/opt/nimble") (string-append out "/share/nimble"))
(("configdir=/etc/nim")
(string-append "configdir=" out "/etc/nim"))))))
@ -102,7 +104,7 @@
"lib/pure/osproc.nim"
"lib/pure/strscans.nim")
(("/bin/sh") sh))
(substitute* (find-files "c_code" "stdlib_osproc\\.nim\\.c")
(substitute* (find-files "c_code" "@m\\.\\.@slib@spure@sosproc\\.nim\\.c")
(("\"/bin/sh\", 7") (format #f "~s, ~s" sh (string-length sh)))))))
(replace 'build
(lambda* (#:key (parallel-build? #t) #:allow-other-keys)

View file

@ -1,5 +1,6 @@
;;; Copyright © 2021 Blake Shaw <blake@nonconstructivism.com>
;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -35,7 +36,7 @@
(define-public notcurses
(package
(name "notcurses")
(version "3.0.8")
(version "3.0.9")
(source
(origin
(method url-fetch)
@ -48,7 +49,7 @@
"+dfsg.1.orig.tar.xz"))
(file-name (string-append name "-" version ".tar.xz"))
(sha256
(base32 "1nz32nqh7fn4i06hvl8ndkm0z4g08a6wzhilvv8ggx2hc5axsz89"))))
(base32 "1sj2m7sil2i3yw73z15947kypsp0rnapwpwanwzam15lbicc8c3y"))))
(build-system cmake-build-system)
(arguments
`(#:make-flags
@ -59,6 +60,10 @@
"-DUSE_COVERAGE=off"
;; Do not build HTML documentation
"-DUSE_DOXYGEN=off"
;; Unfortunately this disables the manpages.
,@(if (supported-package? pandoc)
'()
'("-DUSE_PANDOC=off"))
;; Don't include mouse support
"-DUSE_GPM=off"
;; Use FFmpeg for multimedia support
@ -66,9 +71,12 @@
;; Follow the Debian Free Software Guidelines, omitting nonfree content.
"-DDFSG_BUILD=ON")))
(native-inputs
(list pkg-config
pandoc
doctest))
(append
(list pkg-config)
(if (supported-package? pandoc)
(list pandoc)
'())
(list doctest)))
(inputs
(list ffmpeg
libdeflate

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017, 2020, 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017, 2020, 2021, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Muriithi Frederick Muriuki <fredmanglis@gmail.com>
;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
@ -120,6 +120,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system guile)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system ruby)
#:use-module (guix build-system trivial)
@ -917,7 +918,34 @@ transactions from C or Python.")
(sha256
(base32
"1vyk0g0gci4z9psisb8h50zi3j1nwfdg1jw3j76cxv0brln0v3fw"))))
(build-system python-build-system)
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; These tests require a network connection
'(append (map (lambda (file)
(string-append "--ignore=binstar_client/" file))
(list "tests/test_upload.py"
"tests/test_authorizations.py"
"tests/test_login.py"
"tests/test_whoami.py"
"utils/notebook/tests/test_data_uri.py"
"utils/notebook/tests/test_base.py"
"utils/notebook/tests/test_downloader.py"
"inspect_package/tests/test_conda.py"))
;; get_conda_root returns None
(list "-k"
"not test_conda_root \
and not test_conda_root_outside_root_environment"))
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'python3.10-compatibility
(lambda _
(substitute* "binstar_client/utils/config.py"
(("collections.Mapping") "collections.abc.Mapping"))))
;; This is needed for some tests.
(add-before 'check 'set-HOME
(lambda _ (setenv "HOME" "/tmp"))))))
(propagated-inputs
(list python-clyent python-nbformat python-pyyaml python-requests))
(native-inputs
@ -926,27 +954,8 @@ transactions from C or Python.")
python-freezegun
python-mock
python-pillow
python-pytest
python-pytz))
(arguments
`(#:phases
(modify-phases %standard-phases
;; This is needed for some tests.
(add-before 'check 'set-up-home
(lambda* _ (setenv "HOME" "/tmp") #t))
(add-before 'check 'remove-network-tests
(lambda* _
;; Remove tests requiring a network connection
(let ((network-tests '("tests/test_upload.py"
"tests/test_authorizations.py"
"tests/test_login.py"
"tests/test_whoami.py"
"utils/notebook/tests/test_data_uri.py"
"utils/notebook/tests/test_base.py"
"utils/notebook/tests/test_downloader.py"
"inspect_package/tests/test_conda.py")))
(with-directory-excursion "binstar_client"
(for-each delete-file network-tests)))
#t)))))
(home-page "https://github.com/Anaconda-Platform/anaconda-client")
(synopsis "Anaconda Cloud command line client library")
(description
@ -1384,8 +1393,8 @@ environments.")
"0k9zkdyyzir3fvlbcfcqy17k28b51i20rpbjwlx2i1mwd2pw9cxc")))))))
(define-public guix-build-coordinator
(let ((commit "99981dc3270d79ae0b83f94386e26cc75a7162b3")
(revision "84"))
(let ((commit "c44d485bba42034804beb47afc23005c4e73ea96")
(revision "85"))
(package
(name "guix-build-coordinator")
(version (git-version "0" revision commit))
@ -1396,7 +1405,7 @@ environments.")
(commit commit)))
(sha256
(base32
"047qqqhpcg5rrzgpp2qlijn6rhlm2ipqhqr1yj1lrnx12dld2kqk"))
"1y69yrmmifdp55l5c5b8iiq0llwpggxmq6a4233cdll3bhfxaicl"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Steve Sprang <scs@stevesprang.com>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015 Aljosha Papsch <misc@rpapsch.de>
;;; Copyright © 2016 Christine Lemmer-Webber <cwebber@dustycloud.org>
;;; Copyright © 2016 Jessica Tallon <tsyesika@tsyesika.se>
@ -142,7 +142,7 @@ human.")
(define-public keepassxc
(package
(name "keepassxc")
(version "2.7.4")
(version "2.7.5")
(source
(origin
(method url-fetch)
@ -150,7 +150,7 @@ human.")
"/releases/download/" version "/keepassxc-"
version "-src.tar.xz"))
(sha256
(base32 "1knywp38byq0jq9vdyp1ykha9prh09k1y5srwwkr6f503nb5402n"))))
(base32 "03002fncllr658mgl5s6an5wnh0a333qnkxad6aw85hqj004iqpd"))))
(build-system cmake-build-system)
(arguments
(list

View file

@ -0,0 +1,31 @@
From 3d73d59617281c6ae9c19032eae381ff77fd2e65 Mon Sep 17 00:00:00 2001
Message-Id: <3d73d59617281c6ae9c19032eae381ff77fd2e65.1682841188.git.dev@jpoiret.xyz>
From: Josselin Poiret <dev@jpoiret.xyz>
Date: Sun, 30 Apr 2023 09:51:12 +0200
Subject: [PATCH] Remove stdlib-incompatible flags
From: Josselin Poiret <dev@jpoiret.xyz>
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 68846579..ba5923a2 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
.PHONY: test Everything.agda clean
-OTHEROPTS = --auto-inline -Werror
+OTHEROPTS =
RTSARGS = +RTS -M6G -A128M -RTS ${OTHEROPTS}
base-commit: 20397e93a60ed1439ed57ee76ae377c66a5eb8d9
prerequisite-patch-id: da10df58fa86d08b31174a01db7b9a02377aba55
prerequisite-patch-id: 508dabd923ba9ac1ee4d8dab6697432b4bd8ba18
--
2.39.2

View file

@ -0,0 +1,31 @@
From 53922aedd81d5111d9007b41235aa12eaa2a863d Mon Sep 17 00:00:00 2001
Message-Id: <53922aedd81d5111d9007b41235aa12eaa2a863d.1682840933.git.dev@jpoiret.xyz>
From: Josselin Poiret <dev@jpoiret.xyz>
Date: Sun, 30 Apr 2023 09:48:21 +0200
Subject: [PATCH] Use find instead of git ls-tree in Makefile
From: Josselin Poiret <dev@jpoiret.xyz>
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 158802d1..68846579 100644
--- a/Makefile
+++ b/Makefile
@@ -11,7 +11,7 @@ html: Everything.agda
agda ${RTSARGS} --html -i. Everything.agda
Everything.agda:
- git ls-tree --full-tree -r --name-only HEAD | grep '^src/[^\.]*.agda' | sed -e 's|^src/[/]*|import |' -e 's|/|.|g' -e 's/.agda//' -e '/import Everything/d' | LC_COLLATE='C' sort > Everything.agda
+ find src -iname '*.agda' | sed -e 's|^src/[/]*|import |' -e 's|/|.|g' -e 's/.agda//' -e '/import Everything/d' | LC_COLLATE='C' sort > Everything.agda
clean:
find . -name '*.agdai' -exec rm \{\} \;
base-commit: 20397e93a60ed1439ed57ee76ae377c66a5eb8d9
prerequisite-patch-id: da10df58fa86d08b31174a01db7b9a02377aba55
--
2.39.2

View file

@ -0,0 +1,49 @@
From 457bc7438a4f0801dbf332fa2369248bddf5da0c Mon Sep 17 00:00:00 2001
Message-Id: <457bc7438a4f0801dbf332fa2369248bddf5da0c.1678309546.git.dev@jpoiret.xyz>
From: Josselin Poiret <dev@jpoiret.xyz>
Date: Wed, 8 Mar 2023 18:31:52 +0100
Subject: [PATCH] Add environment variable for library directories
AGDA_LIBDIRS is a new environment colon-separated variable for site libraries.
Agda will look for .agda-lib files directly inside direct descendants of these.
---
src/full/Agda/Interaction/Library.hs | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/src/full/Agda/Interaction/Library.hs b/src/full/Agda/Interaction/Library.hs
index 09c1f2a82..774cc3e74 100644
--- a/src/full/Agda/Interaction/Library.hs
+++ b/src/full/Agda/Interaction/Library.hs
@@ -323,13 +323,25 @@ getInstalledLibraries overrideLibFile = mkLibM [] $ do
raiseErrors' [ LibrariesFileNotFound theOverrideLibFile ]
return []
Right file -> do
- if not (lfExists file) then return [] else do
+ siteLibDirs <- liftIO $ fromMaybe [] . fmap splitAtColon . lookup "AGDA_LIBDIRS" <$> getEnvironment
+ siteLibs <- liftIO $ concat <$> mapM findSiteLibs siteLibDirs
+ if not (lfExists file) then parseLibFiles Nothing $ nubOn snd ((0,) <$> siteLibs) else do
ls <- liftIO $ stripCommentLines <$> UTF8.readFile (lfPath file)
files <- liftIO $ sequence [ (i, ) <$> expandEnvironmentVariables s | (i, s) <- ls ]
- parseLibFiles (Just file) $ nubOn snd files
+ parseLibFiles (Just file) $ nubOn snd (files ++ fmap (0,) siteLibs)
`catchIO` \ e -> do
raiseErrors' [ ReadError e "Failed to read installed libraries." ]
return []
+ where splitAtColon :: String -> [String]
+ splitAtColon "" = []
+ splitAtColon str = case break (==':') str of
+ (a, _:b) -> a : splitAtColon b
+ (a, "") -> [a]
+ findSiteLibs :: String -> IO [String]
+ findSiteLibs dir = do
+ subDirs <- filterM doesDirectoryExist =<< map (dir </>) <$> listDirectory dir
+ subFiles <- mapM (\dir -> map (dir </>) <$> listDirectory dir) subDirs
+ return $ concatMap (filter (List.isSuffixOf ".agda-lib")) subFiles
-- | Parse the given library files.
--
base-commit: 183534bc41af5a53daf685122997dc98883f2be2
--
2.39.1

View file

@ -0,0 +1,28 @@
From 3dc3c0856906d25bb697a4480a8457a69637cd51 Mon Sep 17 00:00:00 2001
Message-Id: <3dc3c0856906d25bb697a4480a8457a69637cd51.1682798848.git.dev@jpoiret.xyz>
From: Josselin Poiret <dev@jpoiret.xyz>
Date: Sat, 29 Apr 2023 22:06:55 +0200
Subject: [PATCH] Makefile: use runhaskell instead of cabal
From: Josselin Poiret <dev@jpoiret.xyz>
---
GNUmakefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/GNUmakefile b/GNUmakefile
index c5d886e03..f3cb2a1e7 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -21,7 +21,7 @@ Everything.agda:
# command `cabal install` is needed by cabal-install <= 2.4.*. I did
# not found any problem running both commands with different versions
# of cabal-install. See Issue #1001.
- cabal run GenerateEverything
+ runhaskell GenerateEverything
.PHONY: listings
listings: Everything.agda
--
2.39.2

View file

@ -0,0 +1,36 @@
From 05465d486afdba116dbc22fc22c1e6573aea4f22 Mon Sep 17 00:00:00 2001
From: Jan Beich <jbeich@FreeBSD.org>
Date: Mon, 24 Jan 2022 12:11:57 +0000
Subject: [PATCH] meson: drop unused argument for i18n.merge_file()
Ignored in Meson < 0.60.0, deprecated since 0.60.1 and fatal since 0.61.0.
data/meson.build:15:0: ERROR: Function does not take positional arguments.
data/meson.build:27:0: ERROR: Function does not take positional arguments.
---
data/meson.build | 2 --
1 file changed, 2 deletions(-)
diff --git a/data/meson.build b/data/meson.build
index 026bd80..3b03b94 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -13,7 +13,6 @@ desktop_in = configure_file(
)
i18n.merge_file(
- desktop,
type: 'desktop',
input: desktop_in,
output: '@BASENAME@',
@@ -25,7 +24,6 @@ i18n.merge_file(
appdata = df_namespace + '.appdata.xml'
i18n.merge_file(
- appdata,
input: appdata + '.in',
output: '@BASENAME@',
po_dir: po_dir,
--
GitLab

View file

@ -21,7 +21,7 @@ Author: Francesco Paolo Lovergine <frankie@debian.org>
#define DFMT_PC 0x4441
#define DFMT_APPLE 0x1111
#define DFMT_APPLE_INTEL 0x4441
@@ -75,6 +77,12 @@
@@ -75,6 +77,13 @@
#define DFMT_IA64 0x4441
#define DFMT_LINUX64 0x4441
#define DFMT_POWERPC64 0x1111
@ -31,10 +31,11 @@ Author: Francesco Paolo Lovergine <frankie@debian.org>
+#define DFMT_X86_64 0x4441
+#define DFMT_SH 0x4441
+#define DFMT_SHEB 0x1111
+#define DFMT_RISCV64 0x4441
/* I/O library constants */
#define UNIXUNBUFIO 1
@@ -288,7 +296,7 @@ typedef int hdf_pint_t;
@@ -288,7 +297,7 @@ typedef int hdf_pint_t;
#endif /* IBM6000 */
@ -43,7 +44,7 @@ Author: Francesco Paolo Lovergine <frankie@debian.org>
#ifndef HP9000
#define HP9000
@@ -347,6 +355,10 @@ typedef int hdf_pint_t;
@@ -347,6 +356,10 @@ typedef int hdf_pint_t;
/* what each does */
#define JMEMSYS MEM_ANSI
@ -54,7 +55,7 @@ Author: Francesco Paolo Lovergine <frankie@debian.org>
#endif /* HP9000 */
@@ -666,6 +678,410 @@ typedef int hdf_pint_t;
@@ -670,6 +683,462 @@ typedef int hdf_pint_t;
#endif /* !(defined(__APPLE__)) */
/*-----------------------------------------------------*/
@ -461,11 +462,63 @@ Author: Francesco Paolo Lovergine <frankie@debian.org>
+#define INCLUDES_ARE_ANSI
+
+#endif /* Linux/aarch64 */
+
+#if defined (__linux__) && defined (__riscv) && (__riscv_xlen == 64)
+
+#ifdef GOT_MACHINE
+If you get an error on this line more than one machine type has been defined.
+Please check your Makefile.
+#endif
+#define GOT_MACHINE 1
+
+#include <fcntl.h>
+#include <sys/types.h> /* for unbuffered file I/O */
+#include <sys/stat.h>
+#include <unistd.h>
+#include <ctype.h> /* for character macros */
+
+#define DF_MT DFMT_RISCV64
+
+typedef void VOID;
+typedef void * VOIDP;
+typedef char * _fcd;
+typedef char char8;
+typedef unsigned char uchar8;
+typedef signed char int8;
+typedef unsigned char uint8;
+typedef short int int16;
+typedef unsigned short int uint16;
+typedef int int32;
+typedef unsigned int uint32;
+typedef int intn;
+typedef unsigned int uintn;
+typedef float float32;
+typedef double float64;
+typedef int intf; /* size of INTEGERs in Fortran compiler */
+typedef long hdf_pint_t; /* an integer the same size as a pointer */
+#define FNAME_POST_UNDERSCORE
+#define _fcdtocp(desc) (desc)
+#define FILELIB UNIXBUFIO
+
+#ifndef BIG_LONGS
+#define BIG_LONGS
+#endif
+
+/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
+
+/* Determine the memory manager we are going to use. Valid values are: */
+/* MEM_DOS, MEM_ANSI, MEM_NAME, MEM_NOBS. See the JPEG docs for details on */
+/* what each does */
+#define JMEMSYS MEM_ANSI
+#define HAVE_STDC
+#define INCLUDES_ARE_ANSI
+
+#endif /* Linux/riscv64 */
+
#if defined(NEXT) || defined(NeXT)
#ifndef NEXT
@@ -928,7 +1344,11 @@ Please check your Makefile.
@@ -932,7 +1401,11 @@ Please check your Makefile.
#include <sys/file.h> /* for unbuffered i/o stuff */
#include <sys/stat.h>
@ -478,7 +531,7 @@ Author: Francesco Paolo Lovergine <frankie@debian.org>
typedef void VOID;
typedef void *VOIDP;
typedef char *_fcd;
@@ -952,6 +1372,11 @@ typedef long hdf_pint_t;
@@ -956,6 +1429,11 @@ typedef long hdf_pint_t;
#define _fcdtocp(desc) (desc)
#define FILELIB UNIXBUFIO
@ -490,7 +543,7 @@ Author: Francesco Paolo Lovergine <frankie@debian.org>
/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
/* Determine the memory manager we are going to use. Valid values are: */
@@ -1097,6 +1522,8 @@ typedef long hdf_pint_t;
@@ -1101,6 +1579,8 @@ typedef long hdf_pint_t;
#define _fcdtocp(desc) (desc)
#define FILELIB UNIXBUFIO
@ -499,7 +552,7 @@ Author: Francesco Paolo Lovergine <frankie@debian.org>
/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
/* Determine the memory manager we are going to use. Valid values are: */
@@ -1111,6 +1538,66 @@ typedef long hdf_pint_t;
@@ -1115,6 +1595,66 @@ typedef long hdf_pint_t;
#endif /* IA64 */
@ -573,7 +626,7 @@ Author: Francesco Paolo Lovergine <frankie@debian.org>
/*****************************************************************************/
/* Generally Big-Endian machines */
-#if !defined(INTEL86) && !defined(MIPSEL) && !defined(DEC_ALPHA) && !defined(I860) && !defined(SUN386) && !(defined(__ia64) && !(defined(hpux) || defined(__hpux))) && !defined(__x86_64__)
+#if !defined(INTEL86) && !defined(MIPSEL) && !defined(DEC_ALPHA) && !defined(I860) && !defined(SUN386) && !(defined(__ia64) && !(defined(hpux) || defined(__hpux))) && !defined(__x86_64__) && !(defined(__powerpc__) && defined(__LITTLE_ENDIAN__)) && !defined(__aarch64__) && !defined(__ARM_EABI__)
+#if !defined(INTEL86) && !defined(MIPSEL) && !defined(DEC_ALPHA) && !defined(I860) && !defined(SUN386) && !(defined(__ia64) && !(defined(hpux) || defined(__hpux))) && !defined(__x86_64__) && !(defined(__powerpc__) && defined(__LITTLE_ENDIAN__)) && !defined(__aarch64__) && !defined(__ARM_EABI__) && !defined(__riscv)
# define UI8_IN DFKnb1b /* Unsigned Integer, 8 bits */
# define UI8_OUT DFKnb1b
# define SI16_IN DFKnb2b /* S = Signed */

View file

@ -0,0 +1,98 @@
From 6f1a3c4648bf06862dca0b3725cbb3b7ee0284e3 Mon Sep 17 00:00:00 2001
From: Even Rouault <even.rouault@spatialys.com>
Date: Sat, 6 Mar 2021 22:12:27 +0100
Subject: [PATCH] =?UTF-8?q?gie=5Fself=5Ftests:=20fix=20use=20of=20uninitia?=
=?UTF-8?q?lized=20memory=20(fixes=C2=A0#2557)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
test/unit/gie_self_tests.cpp | 39 ++++++++++++++++++++++--------------
1 file changed, 24 insertions(+), 15 deletions(-)
diff --git a/test/unit/gie_self_tests.cpp b/test/unit/gie_self_tests.cpp
index 4244766ebf..92f1c758dc 100644
--- a/test/unit/gie_self_tests.cpp
+++ b/test/unit/gie_self_tests.cpp
@@ -268,8 +268,10 @@ TEST_F(gieTest, proj_create_crs_to_crs) {
ASSERT_TRUE(P != nullptr);
PJ_COORD a, b;
- a.xy.x = 700000.0;
- a.xy.y = 6000000.0;
+ a.xyzt.x = 700000.0;
+ a.xyzt.y = 6000000.0;
+ a.xyzt.z = 0;
+ a.xyzt.t = HUGE_VAL;
b.xy.x = 307788.8761171057;
b.xy.y = 5999669.3036037628;
@@ -306,8 +308,10 @@ TEST_F(gieTest, proj_create_crs_to_crs_EPSG_4326) {
PJ_COORD a, b;
// Lat, long degrees
- a.xy.x = 0.0;
- a.xy.y = 3.0;
+ a.xyzt.x = 0.0;
+ a.xyzt.y = 3.0;
+ a.xyzt.z = 0;
+ a.xyzt.t = HUGE_VAL;
b.xy.x = 500000.0;
b.xy.y = 0.0;
@@ -328,8 +332,10 @@ TEST_F(gieTest, proj_create_crs_to_crs_proj_longlat) {
PJ_COORD a, b;
// Long, lat degrees
- a.xy.x = 3.0;
- a.xy.y = 0;
+ a.xyzt.x = 3.0;
+ a.xyzt.y = 0;
+ a.xyzt.z = 0;
+ a.xyzt.t = HUGE_VAL;
b.xy.x = 500000.0;
b.xy.y = 0.0;
@@ -718,9 +724,10 @@ TEST(gie, proj_create_crs_to_crs_PULKOVO42_ETRS89) {
proj_destroy(target_crs);
// Romania
- c.xyz.x = 45; // Lat
- c.xyz.y = 25; // Long
- c.xyz.z = 0;
+ c.xyzt.x = 45; // Lat
+ c.xyzt.y = 25; // Long
+ c.xyzt.z = 0;
+ c.xyzt.t = HUGE_VAL;
c = proj_trans(P, PJ_FWD, c);
EXPECT_NEAR(c.xy.x, 44.999701238, 1e-9);
EXPECT_NEAR(c.xy.y, 24.998474948, 1e-9);
@@ -740,9 +747,10 @@ TEST(gie, proj_create_crs_to_crs_PULKOVO42_ETRS89) {
EXPECT_NEAR(c.xy.x, 45, 1e-8);
EXPECT_NEAR(c.xy.y, 25, 1e-8);
- c.xyz.x = 45; // Lat
- c.xyz.y = 25; // Long
- c.xyz.z = 0;
+ c.xyzt.x = 45; // Lat
+ c.xyzt.y = 25; // Long
+ c.xyzt.z = 0;
+ c.xyzt.t = HUGE_VAL;
proj_trans_generic(P, PJ_FWD, &(c.xyz.x), sizeof(double), 1, &(c.xyz.y),
sizeof(double), 1, &(c.xyz.z), sizeof(double), 1,
nullptr, 0, 0);
@@ -783,9 +791,10 @@ TEST(gie, proj_create_crs_to_crs_outside_area_of_use) {
EXPECT_EQ(P->fwd, nullptr);
// Test point outside area of use of both candidate coordinate operations
- c.xyz.x = 58; // Lat in deg
- c.xyz.y = 5; // Long in deg
- c.xyz.z = 0;
+ c.xyzt.x = 58; // Lat in deg
+ c.xyzt.y = 5; // Long in deg
+ c.xyzt.z = 0;
+ c.xyzt.t = HUGE_VAL;
c = proj_trans(P, PJ_FWD, c);
EXPECT_NEAR(c.xy.x, 64.44444444444444, 1e-9); // Lat in grad
EXPECT_NEAR(c.xy.y, 2.958634259259258, 1e-9); // Long in grad

View file

@ -0,0 +1,114 @@
From 4699a580ca1aeecd35742494eb0259ee962e89a8 Mon Sep 17 00:00:00 2001
Message-Id: <4699a580ca1aeecd35742494eb0259ee962e89a8.1685735399.git.dev@jpoiret.xyz>
From: Josselin Poiret <dev@jpoiret.xyz>
Date: Fri, 2 Jun 2023 21:42:31 +0200
Subject: [PATCH] Add clone3.
From: Josselin Poiret <dev@jpoiret.xyz>
---
src/syscall/sysnums-arm.h | 1 +
src/syscall/sysnums-arm64.h | 1 +
src/syscall/sysnums-i386.h | 1 +
src/syscall/sysnums-sh4.h | 1 +
src/syscall/sysnums-x32.h | 1 +
src/syscall/sysnums-x86_64.h | 1 +
src/syscall/sysnums.list | 1 +
src/tracee/tracee.c | 4 ++++
8 files changed, 11 insertions(+)
diff --git a/src/syscall/sysnums-arm.h b/src/syscall/sysnums-arm.h
index dfd512f..306e2b1 100644
--- a/src/syscall/sysnums-arm.h
+++ b/src/syscall/sysnums-arm.h
@@ -341,4 +341,5 @@ static const Sysnum sysnums_arm[] = {
[ 382 ] = PR_renameat2,
[ 397 ] = PR_statx,
[ 412 ] = PR_utimensat_time64,
+ [ 435 ] = PR_clone3,
};
diff --git a/src/syscall/sysnums-arm64.h b/src/syscall/sysnums-arm64.h
index dfb9889..65ccc4e 100644
--- a/src/syscall/sysnums-arm64.h
+++ b/src/syscall/sysnums-arm64.h
@@ -264,4 +264,5 @@ static const Sysnum sysnums_arm64[] = {
[ 275 ] = PR_sched_getattr,
[ 276 ] = PR_renameat2,
[ 291 ] = PR_statx,
+ [ 435 ] = PR_clone3,
};
diff --git a/src/syscall/sysnums-i386.h b/src/syscall/sysnums-i386.h
index 3bbb70e..0f3daf2 100644
--- a/src/syscall/sysnums-i386.h
+++ b/src/syscall/sysnums-i386.h
@@ -353,4 +353,5 @@ static const Sysnum sysnums_i386[] = {
[ 353 ] = PR_renameat2,
[ 383 ] = PR_statx,
[ 412 ] = PR_utimensat_time64,
+ [ 435 ] = PR_clone3,
};
diff --git a/src/syscall/sysnums-sh4.h b/src/syscall/sysnums-sh4.h
index 1d3758c..09acca6 100644
--- a/src/syscall/sysnums-sh4.h
+++ b/src/syscall/sysnums-sh4.h
@@ -344,4 +344,5 @@ static const Sysnum sysnums_sh4[] = {
[ 369 ] = PR_sched_setattr,
[ 370 ] = PR_sched_getattr,
[ 371 ] = PR_renameat2,
+ [ 435 ] = PR_clone3,
};
diff --git a/src/syscall/sysnums-x32.h b/src/syscall/sysnums-x32.h
index 448c699..a9fdb48 100644
--- a/src/syscall/sysnums-x32.h
+++ b/src/syscall/sysnums-x32.h
@@ -277,6 +277,7 @@ static const Sysnum sysnums_x32[] = {
[ 315 ] = PR_sched_getattr,
[ 316 ] = PR_renameat2,
[ 332 ] = PR_statx,
+ [ 435 ] = PR_clone3,
[ 439 ] = PR_faccessat2,
[ 512 ] = PR_rt_sigaction,
[ 513 ] = PR_rt_sigreturn,
diff --git a/src/syscall/sysnums-x86_64.h b/src/syscall/sysnums-x86_64.h
index 92229f8..9840b4a 100644
--- a/src/syscall/sysnums-x86_64.h
+++ b/src/syscall/sysnums-x86_64.h
@@ -319,5 +319,6 @@ static const Sysnum sysnums_x86_64[] = {
[ 315 ] = PR_sched_getattr,
[ 316 ] = PR_renameat2,
[ 332 ] = PR_statx,
+ [ 435 ] = PR_clone3,
[ 439 ] = PR_faccessat2,
};
diff --git a/src/syscall/sysnums.list b/src/syscall/sysnums.list
index 1d6e666..2b6c9b2 100644
--- a/src/syscall/sysnums.list
+++ b/src/syscall/sysnums.list
@@ -38,6 +38,7 @@ SYSNUM(clock_gettime)
SYSNUM(clock_nanosleep)
SYSNUM(clock_settime)
SYSNUM(clone)
+SYSNUM(clone3)
SYSNUM(close)
SYSNUM(connect)
SYSNUM(creat)
diff --git a/src/tracee/tracee.c b/src/tracee/tracee.c
index 58ab7df..9b16f6a 100644
--- a/src/tracee/tracee.c
+++ b/src/tracee/tracee.c
@@ -403,6 +403,10 @@ int new_child(Tracee *parent, word_t clone_flags)
status = fetch_regs(parent);
if (status >= 0 && get_sysnum(parent, CURRENT) == PR_clone)
clone_flags = peek_reg(parent, CURRENT, SYSARG_1);
+ else if (status >= 0 && get_sysnum(parent, CURRENT) == PR_clone3)
+ // Look at the first word of the clone_args structure, which
+ // contains the usual clone flags.
+ clone_flags = peek_word(parent, peek_reg(parent, CURRENT, SYSARG_1));
/* Get the pid of the parent's new child. */
status = ptrace(PTRACE_GETEVENTMSG, parent->pid, NULL, &pid);
base-commit: bd5a5f63d72f8210d8cee76195eb9f0749e5bd70
--
2.40.1

View file

@ -0,0 +1,71 @@
From 8704f528f227f587d0e06dfd2f807aeca7a69a71 Mon Sep 17 00:00:00 2001
From: Charles Zhang <charleszhang99@yahoo.com>
Date: Thu, 1 Jun 2023 16:39:26 +0200
Subject: [PATCH] riscv: Make contribs build again.
The issue was that the LINKAGE_TEMP_REG being NL3 was a C argument
register, so of course that caused clashing on C call-out, causing
problems with run-program. Going back to NL7 didn't work either
because it wasn't getting saved before entry into the trampoline. The
code here used to have NL7 before the trampoline code was gutted and
then restored, so I'm wondering how this ever worked before, because
it definitely did. Pick LIP as the TEMP_REG now because not only does
it get saved, it's also the least likely thing to get disturbed by
clobbering.
Fixes #lp2002930.
Also remove assembly routine printing because it doesn't need to be
part of the build script (unlike the other files in output/ which
can't trivially be recovered from a built image), and because not all
disassembler printers have been written on riscv yet.
---
NEWS | 3 +++
make-target-2-load.lisp | 4 ----
src/runtime/riscv-arch.c | 2 +-
3 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/NEWS b/NEWS
index 17537ff92..5c0f7777b 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,8 @@
;;;; -*- coding: utf-8; fill-column: 78 -*-
+changes relative to sbcl-2.3.5:
+ * bug fix: riscv can build contribs again.
+
changes in sbcl-2.3.5 relative to sbcl-2.3.4:
* enhancement: Unicode support has been updated to support version 15.0.0 of
the Unicode standard, including addition of characters and their collation
diff --git a/make-target-2-load.lisp b/make-target-2-load.lisp
index 885ebda74..b9a1a1e36 100644
--- a/make-target-2-load.lisp
+++ b/make-target-2-load.lisp
@@ -6,10 +6,6 @@
(defvar *compile-files-p* nil)
(load (merge-pathnames "src/cold/warm.lisp" *load-pathname*))
-(with-open-file (stream "output/asm-routines.txt" :direction :output
- :if-does-not-exist :create :if-exists :supersede)
- (sb-c:dis sb-fasl:*assembler-routines* stream))
-
;; sb-xref-for-internals is actively harmful to tree-shaking.
;; Remove some symbols to make the hide-packages test pass.
#+sb-xref-for-internals
diff --git a/src/runtime/riscv-arch.c b/src/runtime/riscv-arch.c
index 6c1994829..062623899 100644
--- a/src/runtime/riscv-arch.c
+++ b/src/runtime/riscv-arch.c
@@ -159,7 +159,7 @@ arch_install_interrupt_handlers(void)
* Linkage entry size is 8 or 20, because we need 2 instructions for the 32-bit case and we need 3 instructions and an 8 byte address in the 64-bit case.
*/
-#define LINKAGE_TEMP_REG reg_NL3
+#define LINKAGE_TEMP_REG reg_LIP // Lisp needs to save before entry.
void arch_write_linkage_table_entry(int index, void *target_addr, int datap)
{
--
2.40.1

View file

@ -824,14 +824,14 @@ and based on PDF specification 1.7.")
(define-public mupdf
(package
(name "mupdf")
(version "1.22.0")
(version "1.22.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://mupdf.com/downloads/archive/"
"mupdf-" version "-source.tar.lz"))
(sha256
(base32 "0ghwam1c1izks1n2zq2pr8z67nvrx4njk5rla86b75l4pw58mmxy"))
(base32 "1px73qnazjvmbwf1fab8ad8j1dmiddg1mjb7zg7h9i1vp4bh7c1k"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-1)))

View file

@ -156,12 +156,14 @@
(define-module (gnu packages python-xyz)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages adns)
#:use-module (gnu packages aidc)
#:use-module (gnu packages algebra)
#:use-module (gnu packages attr)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bdw-gc)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
@ -177,28 +179,28 @@
#:use-module (gnu packages documentation)
#:use-module (gnu packages enchant)
#:use-module (gnu packages file)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gdb)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gdb)
#:use-module (gnu packages geo)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gsasl)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages inkscape)
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages inkscape)
#:use-module (gnu packages java)
#:use-module (gnu packages jupyter)
#:use-module (gnu packages kerberos)
@ -214,10 +216,10 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages monitoring)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages networking)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages node)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages node)
#:use-module (gnu packages openstack)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pdf)
@ -236,14 +238,15 @@
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages regex)
#:use-module (gnu packages sdl)
#:use-module (gnu packages scanner)
#:use-module (gnu packages sdl)
#:use-module (gnu packages search)
#:use-module (gnu packages serialization)
#:use-module (gnu packages shells)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages ssh)
#:use-module (gnu packages swig)
#:use-module (gnu packages tcl)
#:use-module (gnu packages terminals)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
@ -254,24 +257,20 @@
#:use-module (gnu packages video)
#:use-module (gnu packages web)
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages base)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages tcl)
#:use-module (gnu packages bdw-gc)
#:use-module (gnu packages serialization)
#:use-module (gnu packages xorg)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix hg-download)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cargo)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix hg-download)
#:use-module (guix git-download)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
@ -1342,15 +1341,10 @@ threads.")
(sha256
(base32
"0bwkvjpjfyi9dgszzad9aww2vc00w3bczjnbifi92cp7wch2l923"))))
(build-system python-build-system)
(build-system pyproject-build-system)
(native-inputs
(list python-setuptools-scm python-tornado python-typeguard
(list python-setuptools-scm python-tornado-6 python-typeguard
python-pytest))
(arguments
(list #:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda _ (invoke "pytest" "-vv"))))))
(home-page "https://github.com/jd/tenacity")
(synopsis "Retrying library for python")
(description "Tenacity is a general-purpose python library to simplify the
@ -2693,48 +2687,32 @@ class.")
(define-public python-can
(package
(name "python-can")
(version "4.0.0")
(version "4.2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-can" version))
(sha256
(base32
"0pcbdgdw94lc2sxd56w6wdsshrs9dd5d3wp0x4sfd0drzx32inar"))))
(build-system python-build-system)
"1w5sdzxivpd3pw4pypwnjlksvfimdb93qnlddbrh5f13flhsgg8g"))))
(build-system pyproject-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'relax-version-requirements
(lambda _
(substitute* "setup.py"
(("mock~=2\\.0") "mock")
(("coverage<5") "coverage")
(("pytest~=4\\.6") "pytest")
(("pytest-timeout~=1\\.3") "pytest-timeout")
(("pytest-cov.*") "pytest-cov\n")
(("hypothesis~=4\\.56") "hypothesis"))))
(add-after 'unpack 'fix-broken-tests
;; The tests try to run two scripts it expects should be
;; in PATH, but they aren't at this time (see:
;; https://github.com/hardbyte/python-can/issues/805).
(lambda _
(substitute* "test/test_scripts.py"
(("\"can_logger\\.py --help\"") "")
(("\"can_player\\.py --help\"") ""))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv" "test"
;; Disable tests which require specific CAN
;; drivers we have no package for in Guix.
(list
#:test-flags
#~(list
;; TODO: Check if it could be packed:
;; https://github.com/projectgus/python-canalystii
;;
;; Disable tests which require specific CAN drivers we have no
;; package for in Guix.
"--ignore" "test/test_interface_canalystii.py"
;; These tests fail with "OSError: [Errno 19]
;; No such device".
"-k" "not BasicTestUdpMulticastBusIPv")))))))
;; These tests fail with "OSError: [Errno 19] No such device".
"-k" "not BasicTestUdpMulticastBusIPv")))
(propagated-inputs
(list python-msgpack python-typing-extensions python-wrapt))
(native-inputs
(list python-codecov
(list ;; python-canalystii ; Not packed yet
python-codecov
python-coverage
python-future
python-hypothesis
@ -4419,6 +4397,58 @@ with sensible defaults out of the box.")
clickgen is using @code{anicursorgen} and @code{xcursorgen} under the hood.")
(license license:expat)))
(define-public python-clickhouse-connect
(package
(name "python-clickhouse-connect")
(version "0.6.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ClickHouse/clickhouse-connect")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1s0lk7xdq8f351cmpbp6jidqi5zdazrdba7w7fxph0w8sd74amry"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; All these tests require docker-compose
'(list "--ignore-glob=tests/integration_tests/*")
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'patch-pyproject
(lambda _
;; Our version of pytest is confused by this field.
(substitute* "pyproject.toml"
(("^env_files.*") ""))))
(add-before 'check 'build-extensions
(lambda _
;; Cython extensions have to be built before running the tests.
(invoke "python" "setup.py" "build_ext" "--inplace"))))))
(propagated-inputs
(list python-arrow
python-certifi
python-lz4
python-numpy
python-orjson
python-pandas
python-pytz
python-sqlalchemy
python-urllib3
python-zstandard))
(native-inputs
(list python-cython
python-pytest))
(home-page "https://github.com/ClickHouse/clickhouse-connect")
(synopsis
"ClickHouse database core driver for Python, Pandas, and Superset")
(description
"This package provides a high performance core database driver for
connecting ClickHouse to Python, Pandas, and Superset.")
(license license:asl2.0)))
(define-public python-cligj
(package
(name "python-cligj")
@ -9411,6 +9441,28 @@ all the newest features of the standard @code{pathlib} can be used also on
older Python versions.")
(license license:expat)))
(define-public python-pathy
(package
(name "python-pathy")
(version "0.10.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "pathy" version))
(sha256
(base32
"12v196q3rai33cfzrmb9pqfqv7ailngssjdrzdf8gzym9hdygmjc"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-dataclasses python-smart-open python-typer))
(native-inputs (list python-mock python-pytest))
(home-page "https://github.com/justindujardin/pathy")
(synopsis "Path interface for local and cloud bucket storage")
(description "Pathy is a python package (with type annotations) for
working with Cloud Bucket storage providers using a @code{pathlib} interface.
It provides @code{pathlib.Path} subclasses for local and cloud bucket
storage.")
(license license:asl2.0)))
(define-public python-importlib-resources
(package
(name "python-importlib-resources")
@ -10305,6 +10357,36 @@ you're careful. The @code{backcall} package provides a way of specifying the
callback signature using a prototype function.")
(license license:bsd-3)))
(define-public python-pubmed-parser
(package
(name "python-pubmed-parser")
(version "0.3.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/titipata/pubmed_parser")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"195cmjjg7xdwjj5455h78q7jnxnccia07a19xwndhlkxv7vk9v60"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-lxml
python-numpy
python-requests
python-six
python-unidecode))
(native-inputs
(list python-pytest
python-pytest-cov))
(home-page "https://github.com/titipata/pubmed_parser")
(synopsis "Parser for Pubmed Open-Access Subset and MEDLINE XML repository")
(description
"This package provides a Python parser for Pubmed Open-Access Subset and
MEDLINE XML repository.")
(license license:expat)))
(define-public python-pure-eval
(package
(name "python-pure-eval")
@ -15351,6 +15433,27 @@ provide an easy to use, pythonic and comprehensive Python interface to dialog.
This allows one to make simple text-mode user interfaces on Unix-like systems")
(license license:lgpl2.1)))
(define-public python-confection
(package
(name "python-confection")
(version "0.0.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "confection" version))
(sha256
(base32
"1ksfn10zhnpkcj3y0c3xs4dznvc062bk62x4c3ig0dd6bn4gbpdi"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-pydantic python-srsly
python-typing-extensions))
(native-inputs (list python-pytest))
(home-page "https://github.com/explosion/confection")
(synopsis "Config system for Python")
(description "Confection is a lightweight library that offers a
configuration system letting you conveniently describe arbitrary trees of
objects.")
(license license:expat)))
(define-public python-configobj
(package
(name "python-configobj")
@ -16408,7 +16511,7 @@ enhancements to optimization and data fitting problems.")
python-packaging
python-pillow
python-pyyaml
python-tornado
python-tornado-6
python-typing-extensions))
(native-inputs
(list python-beautifulsoup4
@ -17235,19 +17338,23 @@ checking library.")
(define-public python-codespell
(package
(name "python-codespell")
(version "2.1.0")
(version "2.2.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "codespell" version))
(sha256
(base32 "1r9y714cz8m894rxp7pyvicr1lw2iid24vz6fxbl5wzy8ibgxlqr"))))
(build-system python-build-system)
(base32 "0fp8ihlj8q23qdfryj5pq8srl85vn8k8p6gq3zg9qz957i3j0ihb"))))
(build-system pyproject-build-system)
(inputs
(list python-chardet))
(native-inputs
(list python-check-manifest python-flake8 python-pytest
python-pytest-cov python-pytest-dependency))
(list python-flake8
python-pygments
python-pytest
python-pytest-cov
python-pytest-dependency
python-tomli))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -20481,6 +20588,59 @@ from the header, as well as section details and data available.")
Mustache templating language renderer.")
(license license:expat)))
(define-public python-duckdb
(package
(name "python-duckdb")
(version "0.8.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "duckdb" version))
(sha256
(base32
"13y1gs565q51li5fi9m7fpf0sqns8frsaii6v95acwjhmdds73f6"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
'(list "--ignore=tests/slow/test_h2oai_arrow.py"
;; Don't install anything, thank you.
"-k" "not test_install_non_existent_extension")
#:phases
#~(modify-phases %standard-phases
;; Tests need this
(add-before 'check 'set-HOME
(lambda _ (setenv "HOME" "/tmp")))
(add-before 'build 'set-version
(lambda _
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version)
(substitute* "setup.py"
(("\"setuptools_scm<7.0.0\",") ""))))
;; Later versions of pybind replace "_" with "const_name".
(add-after 'unpack 'pybind-compatibility
(lambda _
(with-directory-excursion "src/include/duckdb_python"
(substitute* '("python_objects.hpp"
"pyfilesystem.hpp"
"pybind11/conversions/pyconnection_default.hpp")
(("const_name") "_"))))))))
(native-inputs
(list pybind11
python-fsspec
python-google-cloud-storage
python-mypy
python-numpy
python-pandas
python-psutil
python-pyarrow
python-pytest
python-pytest-runner
python-setuptools-scm))
(home-page "https://www.duckdb.org")
(synopsis "DuckDB embedded database")
(description "DuckDB is an in-process SQL OLAP database management
system.")
(license license:expat)))
(define-public python-dulwich
(package
(name "python-dulwich")
@ -26647,32 +26807,29 @@ the syntactic logic to configure and launch jobs in an execution environment.")
(define-public python-flit
(package
(name "python-flit")
(version "3.5.1")
(version "3.8.0") ;same as python-flit-core
(source
(origin
(method url-fetch)
(uri (pypi-uri "flit" version))
(sha256
(base32 "04152qj46sqbnlrj7ch9p7svjrrlpzbk0qr39g2yr0s4f5vp6frf"))))
(build-system python-build-system)
(base32 "0dz9sp2zlhkmk6sm5gapbbb30f7xq3n3jn5zxx5pkp25ppsaiwnh"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; These tests fail when FLIT_NO_NETWORK is set
'(list "-k" "not test_invalid_classifier \
and not test_install_requires \
and not test_install_requires_extra \
and not test_validate_classifiers_private")
#:phases
#~(modify-phases %standard-phases
;; XXX: PEP 517 manual build copied from python-isort.
(replace 'build
(lambda _
(invoke "python" "-m" "build" "--wheel" "--no-isolation" ".")))
(replace 'check
(add-before 'check 'pre-check
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(setenv "HOME" "/tmp")
(setenv "FLIT_NO_NETWORK" "1"))))
(replace 'install
(lambda _
(let ((whl (car (find-files "dist" "\\.whl$"))))
(invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl)))))))
(setenv "FLIT_NO_NETWORK" "1")))))))
(propagated-inputs
(list python-pypa-build
python-tomli-w
@ -31767,6 +31924,40 @@ uses the parsed regular expression, so you get a much more accurate result
than trying to just split strings.")
(license license:asl2.0)))
(define-public python-srsly
(package
(name "python-srsly")
(version "2.4.6")
(source (origin
(method url-fetch)
(uri (pypi-uri "srsly" version))
(sha256
(base32
"0vsafkvk4g0p5m0dqrczqvlyza837i20xxmb24rrqk5s78r1zd27"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'build-extensions
(lambda _
;; Cython extensions have to be built before running the tests.
(invoke "python" "setup.py" "build_ext" "--inplace"))))))
(propagated-inputs (list python-catalogue))
(native-inputs
(list python-cython
python-pytest
python-pytest-timeout
python-mock
python-numpy
python-psutil))
(home-page "https://github.com/explosion/srsly")
(synopsis "Serialization utilities for Python")
(description "This package bundles some of the best Python serialization
libraries into one standalone package, with a high-level API that makes it
easy to write code that's correct across platforms and Pythons.")
(license license:expat)))
(define-public python-pyperf
(package
(name "python-pyperf")

View file

@ -2866,14 +2866,16 @@ certain criterion, e.g., it contains a certain regular file.")
(define-public r-rmarkdown
(package
(name "r-rmarkdown")
(version "2.21")
(version "2.22")
(source
(origin
(method url-fetch)
(uri (cran-uri "rmarkdown" version))
(sha256
(base32 "0a5czn18clfnw0a9nd5v98ah4h47i32423s6jdf126ni4aj20ny2"))))
(properties `((upstream-name . "rmarkdown")))
(base32 "1f47ccph09ilqlr0bnyrxkadja4ddp4klvb933aws3rya0cmaqy6"))))
(properties
`((upstream-name . "rmarkdown")
(updater-extra-propagated-inputs . ("pandoc"))))
(build-system r-build-system)
(propagated-inputs
(list r-bslib
@ -4172,13 +4174,13 @@ vignettes.")
(define-public r-mvtnorm
(package
(name "r-mvtnorm")
(version "1.1-3")
(version "1.2-0")
(source (origin
(method url-fetch)
(uri (cran-uri "mvtnorm" version))
(sha256
(base32
"0j14q2bkc14v35s5k03sw44zsssrd2qjljlwzj014qxs74hk0kpz"))))
"1q1bmsvd10iz003xlsd40dj5bhmy2069p88ydf9f4gj56mysnlpm"))))
(build-system r-build-system)
(native-inputs
(list gfortran))
@ -4191,13 +4193,13 @@ t-probabilities, quantiles, random deviates and densities.")
(define-public r-matrixstats
(package
(name "r-matrixstats")
(version "0.63.0")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (cran-uri "matrixStats" version))
(sha256
(base32
"0pqz6mn5l7inh464yj45i6rf8ycab0zdvvjczwsv0bkl442bc060"))))
"0vxd7g1fm4x0f72bs1xfik1d4yklvpjdyg1hpx86pl8fwr86i1wl"))))
(properties `((upstream-name . "matrixStats")))
(build-system r-build-system)
(arguments
@ -4505,14 +4507,14 @@ data behind them) can be viewed and modified in a web browser.")
(define-public r-biased-urn
(package
(name "r-biased-urn")
(version "2.0.9")
(version "2.0.10")
(source
(origin
(method url-fetch)
(uri (cran-uri "BiasedUrn" version))
(sha256
(base32
"02bb81x1hfvhm6qlcvp88bdpm1fhqak9cjbqz1r7fhg2qfxjpims"))))
"0jv0zvz1zs34h12zdgn3lqmn7hfkk2z6fkwbd9mlyddf34rkvfqv"))))
(properties `((upstream-name . "BiasedUrn")))
(build-system r-build-system)
(home-page "https://www.agner.org/random/")

View file

@ -3475,37 +3475,6 @@ and JACK.")
(home-page "https://obsproject.com")
(license license:gpl2+)))
(define-public obs-spectralizer
(package
(name "obs-spectralizer")
(version "1.3.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/univrsal/spectralizer")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
;; Remove bundled Windows DLLs.
(snippet '(delete-file-recursively "fftw3"))
(modules '((guix build utils)))
(sha256
(base32
"0q75cnyqydpvfda51zm9gxqj3wqr99ad0lxzjhw0ld67qvj1ag6i"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f
#:configure-flags
(list "-DGLOBAL_INSTALLATION=ON" "-DUSE_CMAKE_LIBDIR=ON")))
(inputs (list obs fftw))
(home-page "https://github.com/univrsal/spectralizer")
(synopsis "OBS plugin for audio visualization")
(description "This OBS plugins allows you to vizualize MPD and internal
OBS audio sources.")
(license license:gpl2)))
(define-public obs-websocket
(package
(name "obs-websocket")

View file

@ -20,7 +20,7 @@
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2022 Josselin Poiret <josselin.poiret@protonmail.ch>
;;; Copyright © 2022 Lu hui <luhux76@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Jean-Pierre De Jesus DIAZ <me@jeandudey.tech>
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
;;;
@ -678,32 +678,28 @@ the user specifically asks to proxy, so the @dfn{VPN} interface no longer
(define-public openconnect
(package
(name "openconnect")
(version "9.01")
(version "9.12")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ftp.infradead.org/pub/openconnect/"
"openconnect-" version ".tar.gz"))
(sha256
(base32 "1iz4j00031a5ircrx30lkiwf58yl9kc827m4ssck4yg963wgmmxk"))))
(base32 "0gj1nba1pygvcjasqdakxxnx94dwx3l4hzj0dvipbzjdmbixrgm2"))))
(build-system gnu-build-system)
(propagated-inputs
(list libxml2 gnutls zlib))
(inputs
(list lz4 vpnc-scripts))
(native-inputs
`(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(arguments
`(#:configure-flags
`(,(string-append "--with-vpnc-script="
(assoc-ref %build-inputs "vpnc-scripts")
"/etc/vpnc/vpnc-script"))))
(list #:configure-flags
#~(list (string-append "--with-vpnc-script="
(search-input-file %build-inputs
"etc/vpnc/vpnc-script")))))
(native-inputs (list gettext-minimal pkg-config))
(inputs (list lz4 vpnc-scripts))
(propagated-inputs (list libxml2 gnutls zlib))
(synopsis "Client for Cisco VPN")
(description
"OpenConnect is a client for Cisco's AnyConnect SSL VPN, which is
supported by the ASA5500 Series, by IOS 12.4(9)T or later on Cisco SR500,
870, 880, 1800, 2800, 3800, 7200 Series and Cisco 7301 Routers,
and probably others.")
supported by the ASA5500 Series, by IOS 12.4(9)T or later on Cisco SR500, 870,
880, 1800, 2800, 3800, 7200 Series and Cisco 7301 Routers, and probably
others.")
(license license:lgpl2.1)
(home-page "https://www.infradead.org/openconnect/")))

View file

@ -724,7 +724,7 @@ is fully configurable and extensible in Common Lisp.")
(define-public lagrange
(package
(name "lagrange")
(version "1.15.9")
(version "1.16.3")
(source
(origin
(method url-fetch)
@ -732,7 +732,7 @@ is fully configurable and extensible in Common Lisp.")
(string-append "https://git.skyjake.fi/skyjake/lagrange/releases/"
"download/v" version "/lagrange-" version ".tar.gz"))
(sha256
(base32 "19pn5nnlskyj7w61s9vg5c0vb0hpdyalj3m8znvs4lgw3463ijs3"))
(base32 "1kmhxacka0rixxv1r5vqjhxmdxll73b5w5ja18m1qpbk2sk00bg8"))
(modules '((guix build utils)))
(snippet
'(begin

View file

@ -112,6 +112,7 @@
libsecret
libsm
libtiff
libxtst ;for wxUIActionSimulator
mesa
pcre2
sdl2

View file

@ -41,7 +41,7 @@
;;; Copyright © 2020 Gabriel Arazas <foo.dogsquared@gmail.com>
;;; Copyright © 2020 James Smith <jsubuntuxp@disroot.org>
;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
;;; Copyright © 2020, 2021 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2020, 2021, 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021, 2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
@ -768,7 +768,28 @@ and Matrox.")
(base32
"1q700h9dqcm3zl6c3gj0qxxjcx6ibw2c51wjijydhwdcm26v5mqm"))))
(build-system gnu-build-system)
(arguments '(#:configure-flags '("--disable-static")))
(arguments
`(#:configure-flags
'("--disable-static")
,@(if (and (target-riscv64?)
(%current-target-system))
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'update-config-scripts
(lambda* (#:key inputs native-inputs #:allow-other-keys)
;; Replace outdated config.guess and config.sub.
(for-each (lambda (file)
(install-file
(search-input-file
(or native-inputs inputs)
(string-append "/bin/" file)) "./config-aux"))
'("config.guess" "config.sub"))))))
'())))
(native-inputs
(if (and (target-riscv64?)
(%current-target-system))
(list config)
'()))
(home-page "https://bitmath.org/code/mtdev/")
(synopsis "Multitouch protocol translation library")
(description "Mtdev is a stand-alone library which transforms all

View file

@ -185,7 +185,7 @@ storage system.")
(define-public libxfce4ui
(package
(name "libxfce4ui")
(version "4.18.3")
(version "4.18.4")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -193,7 +193,7 @@ storage system.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1g8a067xbazgh0qc25nc7k1zc6aqmznhh4vy5wnn3aykxrpa98xg"))))
"0k6b8al8cy2w5zi8iywkzjsz2cgiz9r8ir2dflzxw9kdgiwzxvl7"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -398,7 +398,7 @@ management D-Bus specification.")
(define-public xfce4-panel
(package
(name "xfce4-panel")
(version "4.18.3")
(version "4.18.4")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -406,7 +406,7 @@ management D-Bus specification.")
name "-" version ".tar.bz2"))
(sha256
(base32
"06sy6vjydx1p8rx8z94ya6szvmvyarijl5x0pm5ij4cqbihviq2a"))
"0m7vmk7rc2sjfqba0flgnw77kn1j222xqs7r86bpg8sf1614yc1j"))
(patches (search-patches "xfce4-panel-plugins.patch"))))
(build-system gnu-build-system)
(arguments
@ -498,7 +498,7 @@ matching them against regular expressions.")
(define-public xfce4-pulseaudio-plugin
(package
(name "xfce4-pulseaudio-plugin")
(version "0.4.6")
(version "0.4.7")
(source
(origin
(method url-fetch)
@ -507,7 +507,7 @@ matching them against regular expressions.")
(version-major+minor version) "/"
"xfce4-pulseaudio-plugin-" version ".tar.bz2"))
(sha256
(base32 "05k02ilvffddgbp6in9wpjvg6vzlcxxw09nmj29hzba44klc04bf"))))
(base32 "0b4fjvrrah0b97cbv8ds7r6cwnj392ya2r7703ixf724f43hkpah"))))
(build-system gnu-build-system)
(native-inputs
(list intltool pkg-config dbus-glib dbus))
@ -630,7 +630,7 @@ your system in categories, so you can quickly find and launch them.")
(define-public xfce4-session
(package
(name "xfce4-session")
(version "4.18.2")
(version "4.18.3")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -638,7 +638,7 @@ your system in categories, so you can quickly find and launch them.")
"xfce4-session-" version ".tar.bz2"))
(sha256
(base32
"12pbppyhg0jdwswwk59fffh2n5ckpfvwc999zkg1l2f2skl7zzq1"))
"1v4lfgz7az8iqp01a1ww8sxxjfmr676bijhrhw4r6r7cjvh96brq"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1222,7 +1222,7 @@ system resources, while still being visually appealing and user friendly.")
(define-public xfce4-power-manager
(package
(name "xfce4-power-manager")
(version "4.18.1")
(version "4.18.2")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -1230,7 +1230,7 @@ system resources, while still being visually appealing and user friendly.")
"xfce4-power-manager-" version ".tar.bz2"))
(sha256
(base32
"00zz9bhzsf2vww8mym9c093sz7va5716qb6kvdvn6ldp9h6b223b"))))
"0kfzvhb1hnr16fcplm7bdpp4fcxr3irzq3w4q0lpbc5n6kaqyq71"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config intltool))
@ -1453,7 +1453,7 @@ of data to either CD/DVD/BD.")
(define-public xfce4-screenshooter
(package
(name "xfce4-screenshooter")
(version "1.10.3")
(version "1.10.4")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/apps/"
@ -1463,7 +1463,7 @@ of data to either CD/DVD/BD.")
version ".tar.bz2"))
(sha256
(base32
"061qixpz8krvpixs6ickl9ha5m0pb078rdd5fjifrkxy8yc1am54"))))
"1534h1a3a8b9pl20zpccaifrlsrbsihdcdjndn9nmqalgrl9kwd2"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config intltool
@ -1482,7 +1482,7 @@ A plugin for the Xfce panel is also available.")
(define-public xfce4-screensaver
(package
(name "xfce4-screensaver")
(version "4.18.1")
(version "4.18.2")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/apps/"
@ -1492,7 +1492,7 @@ A plugin for the Xfce panel is also available.")
version ".tar.bz2"))
(sha256
(base32
"0p2an3g5jlhmr60if319cfgkqacziym52csj7dfwq64assmyhcdp"))))
"161bdsvkbknaf9fpz4b1r4amnm72hzfmx9c6krg2396k2k2d5z74"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View file

@ -34,6 +34,7 @@
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 qblade <qblade@protonmail.com>
;;; Copyright © 2021 Lu Hui <luhux76@gmail.com>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -4493,13 +4494,30 @@ cannot be adequately worked around on the client side of the wire.")
"012jpyj7xfm653a9jcfqbzxyywdmwb2b5wr1dwylx14f3f54jma6"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static")))
`(#:configure-flags '("--disable-static")
,@(if (and (target-riscv64?)
(%current-target-system))
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'update-config
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(for-each (lambda (file)
(install-file
(search-input-file
(or native-inputs inputs)
(string-append "/bin/" file)) "."))
'("config.guess" "config.sub"))))))
'())))
(propagated-inputs
(list libxi xorgproto))
(inputs
(list libx11))
(native-inputs
(list pkg-config))
(append (if (and (target-riscv64?)
(%current-target-system))
(list config)
'())
(list pkg-config)))
(home-page "https://www.x.org/wiki/")
(synopsis "Xorg library for Xtest and Record extensions")
(description
@ -5620,11 +5638,29 @@ The XCB util-renderutil module provides the following library:
"0gra7hfyxajic4mjd63cpqvd20si53j1q3rbdlkqkahfciwq3gr8"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static")))
`(#:configure-flags '("--disable-static")
,@(if (and (target-riscv64?)
(%current-target-system))
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'update-config-scripts
(lambda* (#:key inputs native-inputs #:allow-other-keys)
;; Replace outdated config.guess and config.sub.
(for-each (lambda (file)
(install-file
(search-input-file
(or native-inputs inputs)
(string-append "/bin/" file)) "."))
'("config.guess" "config.sub"))))))
'())))
(propagated-inputs
(list libxcb))
(native-inputs
(list m4 pkg-config))
(append (if (and (target-riscv64?)
(%current-target-system))
(list config)
'())
(list m4 pkg-config)))
(home-page "https://cgit.freedesktop.org/xcb/util-wm/")
(synopsis "Client and window-manager helpers for ICCCM and EWMH")
(description

View file

@ -51,6 +51,7 @@
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (srfi srfi-71)
#:use-module (ice-9 vlist)
#:use-module (ice-9 match)
#:autoload (ice-9 pretty-print) (pretty-print)
@ -297,35 +298,67 @@ singleton service type NAME, of which the returned service is an instance."
(description "This is a simple service."))))
(service type value)))
(define (%delete-service kind services)
(let loop ((found #f)
(return '())
(services services))
(match services
('()
(if found
(values return found)
(raise (formatted-message
(G_ "modify-services: service '~a' not found in service list")
(service-type-name kind)))))
((service . rest)
(if (eq? (service-kind service) kind)
(loop service return rest)
(loop found (cons service return) rest))))))
(define-syntax %apply-clauses
(define-syntax clause-alist
(syntax-rules (=> delete)
((_ ((delete kind) . rest) services)
(%apply-clauses rest (%delete-service kind services)))
((_ ((kind param => exp ...) . rest) services)
(call-with-values (lambda () (%delete-service kind services))
(lambda (svcs found)
(let ((param (service-value found)))
(cons (service (service-kind found)
(begin exp ...))
(%apply-clauses rest svcs))))))
((_ () services)
services)))
"Build an alist of clauses. Each element has the form (KIND PROC LOC)
where PROC is the service transformation procedure to apply for KIND, and LOC
is the source location information."
((_ (delete kind) rest ...)
(cons (list kind
(lambda (service)
#f)
(current-source-location))
(clause-alist rest ...)))
((_ (kind param => exp ...) rest ...)
(cons (list kind
(lambda (svc)
(let ((param (service-value svc)))
(service (service-kind svc)
(begin exp ...))))
(current-source-location))
(clause-alist rest ...)))
((_)
'())))
(define (apply-clauses clauses services)
"Apply CLAUSES, an alist as returned by 'clause-alist', to SERVICES, a list
of services. Use each clause at most once; raise an error if a clause was not
used."
(let loop ((services services)
(clauses clauses)
(result '()))
(match services
(()
(match clauses
(() ;all clauses fired, good
(reverse result))
(((kind _ properties) _ ...) ;one or more clauses didn't match
(raise (make-compound-condition
(condition
(&error-location
(location (source-properties->location properties))))
(formatted-message
(G_ "modify-services: service '~a' not found in service list")
(service-type-name kind)))))))
((head . tail)
(let ((service clauses
(fold2 (lambda (clause service remainder)
(if service
(match clause
((kind proc properties)
(if (eq? kind (service-kind service))
(values (proc service) remainder)
(values service
(cons clause remainder)))))
(values #f (cons clause remainder))))
head
'()
clauses)))
(loop tail
(reverse clauses)
(if service
(cons service result)
result)))))))
(define-syntax modify-services
(syntax-rules ()
@ -358,11 +391,9 @@ Consider this example:
It changes the configuration of the GUIX-SERVICE-TYPE instance, and that of
all the MINGETTY-SERVICE-TYPE instances, and it deletes instances of the
UDEV-SERVICE-TYPE.
This is a shorthand for (filter-map (lambda (svc) ...) %base-services)."
((_ services . clauses)
(%apply-clauses clauses services))))
UDEV-SERVICE-TYPE."
((_ services clauses ...)
(apply-clauses (clause-alist clauses ...) services))))
;;;

View file

@ -1839,10 +1839,12 @@ applications needing access to be root.")
;; Screen lockers are a pretty useful thing and these are small.
(service screen-locker-service-type
(screen-locker-configuration
"slock" (file-append slock "/bin/slock") #f))
(name "slock")
(program (file-append slock "/bin/slock"))))
(service screen-locker-service-type
(screen-locker-configuration
"xlock" (file-append xlockmore "/bin/xlock") #f))
(name "xlock")
(program (file-append xlockmore "/bin/xlock"))))
;; Add udev rules for MTP devices so that non-root users can access
;; them.

View file

@ -13,6 +13,7 @@
;;; Copyright © 2021 Josselin Poiret <josselin.poiret@protonmail.ch>
;;; Copyright © 2022 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2023 muradm <mail@muradm.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -112,6 +113,8 @@
screen-locker-configuration-name
screen-locker-configuration-program
screen-locker-configuration-allow-empty-password?
screen-locker-configuration-using-pam?
screen-locker-configuration-using-setuid?
screen-locker-service-type
screen-locker-service ; deprecated
@ -703,30 +706,38 @@ reboot_cmd " shepherd "/sbin/reboot\n"
;;; Screen lockers & co.
;;;
(define-record-type <screen-locker-configuration>
(screen-locker-configuration name program allow-empty-password?)
screen-locker-configuration?
(name screen-locker-configuration-name) ;string
(program screen-locker-configuration-program) ;gexp
(define-configuration/no-serialization screen-locker-configuration
(name
string
"Name of the screen locker.")
(program
file-like
"Path to the executable for the screen locker as a G-Expression.")
(allow-empty-password?
screen-locker-configuration-allow-empty-password?)) ;Boolean
(boolean #f)
"Whether to allow empty passwords.")
(using-pam?
(boolean #t)
"Whether to setup PAM entry.")
(using-setuid?
(boolean #t)
"Whether to setup program as setuid binary."))
(define-deprecated/public-alias
screen-locker
screen-locker-configuration)
(define-deprecated/public-alias
screen-locker?
screen-locker-configuration?)
(define screen-locker-pam-services
(match-lambda
(($ <screen-locker-configuration> name _ empty?)
(define (screen-locker-pam-services config)
(match-record config <screen-locker-configuration>
(name allow-empty-password? using-pam?)
(if using-pam?
(list (unix-pam-service name
#:allow-empty-passwords? empty?)))))
#:allow-empty-passwords?
allow-empty-password?))
'())))
(define screen-locker-setuid-programs
(compose list file-like->setuid-program screen-locker-configuration-program))
(define (screen-locker-setuid-programs config)
(match-record config <screen-locker-configuration>
(name program using-setuid?)
(if using-setuid?
(list (file-like->setuid-program program))
'())))
(define screen-locker-service-type
(service-type (name 'screen-locker)
@ -740,6 +751,9 @@ reboot_cmd " shepherd "/sbin/reboot\n"
the graphical server by making it setuid-root, so it can authenticate users,
and by creating a PAM service for it.")))
(define (screen-locker-generate-doc)
(configuration->documentation 'screen-locker-configuration))
(define-deprecated (screen-locker-service package
#:optional
(program (package-name package))
@ -755,9 +769,10 @@ for it. For example:
makes the good ol' XlockMore usable."
(service screen-locker-service-type
(screen-locker-configuration program
(file-append package "/bin/" program)
allow-empty-passwords?)))
(screen-locker-configuration
(name program)
(program (file-append package "/bin/" program))
(allow-empty-password? allow-empty-passwords?))))
;;;

123
guix/build-system/agda.scm Normal file
View file

@ -0,0 +1,123 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;;
;;; 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/>.
(define-module (guix build-system agda)
#:use-module (guix build-system)
#:use-module (guix build-system gnu)
#:use-module (guix build-system haskell)
#:use-module (guix gexp)
#:use-module (guix monads)
#:use-module (guix packages)
#:use-module (guix search-paths)
#:use-module (guix store)
#:use-module (guix utils)
#:export (default-agda
%agda-build-system-modules
agda-build-system))
(define (default-agda)
;; Lazily resolve the binding to avoid a circular dependency.
(let ((agda (resolve-interface '(gnu packages agda))))
(module-ref agda 'agda)))
(define %agda-build-system-modules
`((guix build agda-build-system)
,@%gnu-build-system-modules))
(define %default-modules
'((guix build agda-build-system)
(guix build utils)))
(define* (lower name
#:key source inputs native-inputs outputs system target
(agda (default-agda))
gnu-and-haskell?
#:allow-other-keys
#:rest arguments)
"Return a bag for NAME."
(define private-keywords
'(#:target #:agda #:gnu-and-haskell? #:inputs #:native-inputs))
;; TODO: cross-compilation support
(and (not target)
(bag
(name name)
(system system)
(host-inputs `(,@(if source
`(("source" ,source))
'())
,@inputs))
(build-inputs `(("agda" ,agda)
,@(if gnu-and-haskell?
(cons*
(list "ghc" (default-haskell))
(standard-packages))
'())
,(assoc "locales" (standard-packages))
,@native-inputs))
(outputs outputs)
(build agda-build)
(arguments (strip-keyword-arguments private-keywords arguments)))))
(define* (agda-build name inputs
#:key
source
(phases '%standard-phases)
(outputs '("out"))
(search-paths '())
(unpack-path "")
(build-flags ''())
(tests? #t)
(system (%current-system))
(guile #f)
plan
(extra-files '("^\\./.*\\.agda-lib$"))
(imported-modules %agda-build-system-modules)
(modules %default-modules))
(define builder
(with-imported-modules imported-modules
#~(begin
(use-modules #$@(sexp->gexp modules))
(agda-build #:name #$name
#:source #+source
#:system #$system
#:phases #$phases
#:outputs #$(outputs->gexp outputs)
#:search-paths '#$(sexp->gexp
(map search-path-specification->sexp
search-paths))
#:unpack-path #$unpack-path
#:build-flags #$build-flags
#:tests? #$tests?
#:inputs #$(input-tuples->gexp inputs)
#:plan '#$plan
#:extra-files '#$extra-files))))
(mlet %store-monad ((guile (package->derivation (or guile (default-guile))
system #:graft? #f)))
(gexp->derivation name builder
#:system system
#:guile-for-build guile)))
(define agda-build-system
(build-system
(name 'agda)
(description
"Build system for Agda libraries")
(lower lower)))

View file

@ -33,6 +33,7 @@
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
#:export (hackage-uri
default-haskell
%haskell-build-system-modules
haskell-build

View file

@ -0,0 +1,128 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;;
;;; 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/>.
(define-module (guix build agda-build-system)
#:use-module ((guix build gnu-build-system) #:prefix gnu:)
#:use-module (guix build utils)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (ice-9 ftw)
#:use-module (ice-9 match)
#:export (%standard-phases
agda-build))
(define* (set-locpath #:key inputs native-inputs #:allow-other-keys)
(let ((locales (assoc-ref (or native-inputs inputs) "locales")))
(setenv "GUIX_LOCPATH" (string-append locales "/lib/locale"))))
(define %agda-possible-extensions
(cons
".agda"
(map (cute string-append ".lagda" <>)
'(""
".md"
".org"
".rst"
".tex"))))
(define (pattern-predicate pattern)
(define compiled-rx (make-regexp pattern))
(lambda (file stat)
(regexp-exec compiled-rx file)))
(define* (build #:key plan #:allow-other-keys)
(for-each
(match-lambda
((pattern . options)
(for-each
(lambda (file)
(apply invoke (cons* "agda" file options)))
(let ((files (find-files "." (pattern-predicate pattern))))
(if (null? files)
(raise
(make-compound-condition
(condition
(&message
(message (format #f "Plan pattern `~a' did not match any files"
pattern))))
(condition
(&error))))
files))))
(x
(raise
(make-compound-condition
(condition
(&message
(message (format #f "Malformed plan element `~a'" x))))
(condition
(&error))))))
plan))
(define* (install #:key outputs name extra-files #:allow-other-keys)
(define libdir (string-append (assoc-ref outputs "out") "/lib/agda/" name))
(define agda-version
(car (scandir "./_build/"
(lambda (entry)
(not (member entry '("." "..")))))))
(define agdai-files
(with-directory-excursion
(string-join (list "." "_build" agda-version "agda") "/")
(find-files ".")))
(define (install-source agdai)
(define dir (dirname agdai))
;; Drop .agdai
(define no-ext (string-drop-right agdai 6))
(define source
(match (filter file-exists? (map (cute string-append no-ext <>)
%agda-possible-extensions))
((single) single)
(res (raise
(make-compound-condition
(condition
(&message
(message
(format #f
"Cannot find unique source file for agdai file `~a`, got `~a`"
agdai res))))
(condition
(&error)))))))
(install-file source (string-append libdir "/" dir)))
(for-each install-source agdai-files)
(copy-recursively "_build" (string-append libdir "/_build"))
(for-each
(lambda (pattern)
(for-each
(lambda (file)
(install-file file libdir))
(find-files "." (pattern-predicate pattern))))
extra-files))
(define %standard-phases
(modify-phases gnu:%standard-phases
(add-before 'install-locale 'set-locpath set-locpath)
(delete 'bootstrap)
(delete 'configure)
(replace 'build build)
(delete 'check) ;; No universal checker
(replace 'install install)))
(define* (agda-build #:key inputs (phases %standard-phases)
#:allow-other-keys #:rest args)
"Build the given Agda package, applying all of PHASES in order."
(apply gnu:gnu-build #:inputs inputs #:phases phases args))

View file

@ -252,7 +252,14 @@ could be found at DIRECTORY or one of its ancestors."
('commit commit) ('signer signer)
_ ...)
(make-channel-introduction commit (openpgp-fingerprint signer)))
(x #f)))
(x (raise (condition
(&message
(message (format #f (G_ "channel dependency has an invalid\
introduction field"))))
(&error-location
(location
(source-properties->location
(source-properties x)))))))))
(define (read-channel-metadata port)
"Read from PORT channel metadata in the format expected for the

View file

@ -601,6 +601,7 @@ META."
"Return the list of <upstream-input> corresponding to all the dependencies
of META, a package in REPOSITORY."
(let* ((url (cran-package-source-url meta repository))
(name (assoc-ref meta "Package"))
(source (download-source url
#:method
(cond ((assoc-ref meta 'git) 'git)
@ -608,7 +609,11 @@ of META, a package in REPOSITORY."
(else #f))))
(tarball? (not (or (assoc-ref meta 'git)
(assoc-ref meta 'hg)))))
(sort (append (source->dependencies source tarball?)
(sort (filter
;; Prevent tight cycles.
(lambda (input)
((negate string=?) name (upstream-input-name input)))
(append (source->dependencies source tarball?)
(filter-map (lambda (name)
(and (not (member name invalid-packages))
(upstream-input
@ -618,7 +623,7 @@ of META, a package in REPOSITORY."
(map string-downcase
(listify meta "SystemRequirements")))
(cran-package-propagated-inputs meta)
(vignette-builders meta))
(vignette-builders meta)))
(lambda (input1 input2)
(string<? (upstream-input-downstream-name input1)
(upstream-input-downstream-name input2))))))

View file

@ -319,6 +319,7 @@ expressions and blanks that were read."
('letrec* 2)
('match 2)
('match-record 3)
('match-record-lambda 2)
('when 2)
('unless 2)
('package 1)

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
@ -20,6 +20,7 @@
(define-module (guix records)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-11)
#:use-module (srfi srfi-26)
#:use-module (ice-9 match)
#:use-module (ice-9 rdelim)
@ -30,7 +31,8 @@
alist->record
object->fields
recutils->alist
match-record))
match-record
match-record-lambda))
;;; Commentary:
;;;
@ -105,7 +107,12 @@ error-reporting purposes."
(define-syntax map-fields
(lambda (x)
(syntax-violation 'map-fields "bad use of syntactic keyword" x x)))
(syntax-case x ()
((_ type within)
(syntax-violation (syntax->datum #'within)
"undefined guix record-type"
#'type))
(_ (syntax-violation 'map-fields "bad use of syntactic keyword" x x)))))
(define-syntax-parameter this-record
(lambda (s)
@ -427,6 +434,15 @@ inherited."
(cookie (compute-abi-cookie field-spec)))
(with-syntax (((field-spec* ...)
(map field-spec->srfi-9 field-spec))
((field-type ...)
(map (match-lambda
((? thunked-field?)
(datum->syntax s 'thunked))
((? delayed-field?)
(datum->syntax s 'delayed))
(else
(datum->syntax s 'normal)))
field-spec))
((thunked-field-accessor ...)
(filter-map (lambda (field)
(and (thunked-field? field)
@ -459,8 +475,8 @@ inherited."
"This macro lets us query record type info at
macro-expansion time."
(syntax-case s (map-fields)
((_ map-fields macro)
#'(macro (field ...)))
((_ (map-fields _ _) macro)
#'(macro ((field field-type) ...)))
(id
(identifier? #'id)
#'#,(rtd-identifier #'type)))))
@ -573,30 +589,44 @@ pairs. Stop upon an empty line (after consuming it) or EOF."
;;; Pattern matching.
;;;
(define-syntax lookup-field
(define-syntax lookup-field+wrapper
(lambda (s)
"Look up FIELD in the given list and return an expression that represents
its offset in the record. Raise a syntax violation when the field is not
found."
(syntax-case s ()
((_ field offset ())
(syntax-violation 'lookup-field "unknown record type field"
s #'field))
((_ field offset (head tail ...))
"Look up FIELD in the given list and return both an expression that represents
its offset in the record and a procedure that wraps it to return its \"true\" value
(for instance, FORCE is returned in the case of a delayed field). RECORD is passed
to thunked values. Raise a syntax violation when the field is not found."
(syntax-case s (normal delayed thunked)
((_ record field offset ())
(syntax-violation 'match-record
"unknown record type field"
;; Attach the local source data to the field.
(datum->syntax #f (syntax->datum #'field) #:source s)))
((_ record field offset ((head normal) tail ...))
(free-identifier=? #'field #'head)
#'offset)
((_ field offset (_ tail ...))
#'(lookup-field field (+ 1 offset) (tail ...))))))
#'(values offset identity))
((_ record field offset ((head delayed) tail ...))
(free-identifier=? #'field #'head)
#'(values offset force))
((_ record field offset ((head thunked) tail ...))
(free-identifier=? #'field #'head)
#'(values offset (cut <> record)))
((_ record field offset (_ tail ...))
#'(lookup-field+wrapper record field
(+ 1 offset) (tail ...))))))
(define-syntax match-record-inner
(lambda (s)
(syntax-case s ()
((_ record type ((field variable) rest ...) body ...)
#'(let-syntax ((field-offset (syntax-rules ()
#'(let-syntax ((field-offset+wrapper
(syntax-rules ()
((_ f)
(lookup-field field 0 f)))))
(let* ((offset (type map-fields field-offset))
(variable (struct-ref record offset)))
(lookup-field+wrapper record field 0 f)))))
(let*-values (((offset wrap)
(type (map-fields type match-record)
field-offset+wrapper))
((variable)
(wrap (struct-ref record offset))))
(match-record-inner record type (rest ...) body ...))))
((_ record type (field rest ...) body ...)
;; Redirect to the canonical form above.
@ -608,13 +638,21 @@ found."
(syntax-rules ()
"Bind each FIELD of a RECORD of the given TYPE to it's FIELD name.
The order in which fields appear does not matter. A syntax error is raised if
an unknown field is queried.
The current implementation does not support thunked and delayed fields."
;; TODO support thunked and delayed fields
an unknown field is queried."
((_ record type (fields ...) body ...)
(if (eq? (struct-vtable record) type)
(match-record-inner record type (fields ...) body ...)
(throw 'wrong-type-arg record)))))
(define-syntax match-record-lambda
(syntax-rules ()
"Return a procedure accepting a single record of the given TYPE for which each
FIELD will be bound to its FIELD name within the returned procedure. A syntax error
is raised if an unknown field is queried."
((_ type (field ...) body ...)
(lambda (record)
(if (eq? (struct-vtable record) type)
(match-record-inner record type (field ...) body ...)
(throw 'wrong-type-arg record))))))
;;; records.scm ends here

View file

@ -561,4 +561,58 @@ Description: 1st line,
(make-fresh-user-module)))
(lambda (key . args) key)))
(test-equal "match-record, delayed field"
"foo bar bar foo"
(begin
(define-record-type* <with-delayed> with-delayed make-with-delayed
with-delayed?
(delayed with-delayed-delayed
(delayed)))
(let ((rec (with-delayed
(delayed "foo bar bar foo"))))
(match-record rec <with-delayed> (delayed)
delayed))))
(test-equal "match-record, thunked field"
'("foo" "foobar")
(begin
(define-record-type* <with-thunked> with-thunked make-with-thunked
with-thunked?
(normal with-thunked-normal)
(thunked with-thunked-thunked
(thunked)))
(let ((rec (with-thunked
(normal "foo")
(thunked (string-append (with-thunked-normal this-record)
"bar")))))
(match-record rec <with-thunked> (normal thunked)
(list normal thunked)))))
(test-equal "match-record, ellipsis in body"
#t
(begin
(define-record-type* <foo> foo make-foo foo?
(value foo-value))
(define bar (foo (value '(1 2 3))))
(match-record bar <foo> (value)
(match value
((one two ...)
#t)
(_
#f)))))
(test-equal "match-record-lambda"
'("thing: foo" "thing: bar")
(begin
(define-record-type* <with-text> with-text make-with-text
with-text?
(text with-text-text))
(map (match-record-lambda <with-text> (text)
(string-append "thing: " text))
(list (with-text (text "foo"))
(with-text (text "bar"))))))
(test-end)

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015-2019, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015-2019, 2022, 2023 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -287,7 +287,7 @@
(x x))))
(test-equal "modify-services: do nothing"
'(1 2 3)
'(1 2 3) ;note: service order must be preserved
(let* ((t1 (service-type (name 't1)
(extensions '())
(description "")))
@ -298,12 +298,11 @@
(extensions '())
(description "")))
(services (list (service t1 1) (service t2 2) (service t3 3))))
(sort (map service-value
(modify-services services))
<)))
(map service-value
(modify-services services))))
(test-equal "modify-services: delete service"
'(1)
'(1 4) ;note: service order must be preserved
(let* ((t1 (service-type (name 't1)
(extensions '())
(description "")))
@ -313,12 +312,15 @@
(t3 (service-type (name 't3)
(extensions '())
(description "")))
(services (list (service t1 1) (service t2 2) (service t3 3))))
(sort (map service-value
(t4 (service-type (name 't4)
(extensions '())
(description "")))
(services (list (service t1 1) (service t2 2)
(service t3 3) (service t4 4))))
(map service-value
(modify-services services
(delete t3)
(delete t2)))
<)))
(delete t2)))))
(test-error "modify-services: delete non-existing service"
#t
@ -336,7 +338,7 @@
(delete t3))))
(test-equal "modify-services: change value"
'(2 11 33)
'(11 2 33) ;note: service order must be preserved
(let* ((t1 (service-type (name 't1)
(extensions '())
(description "")))
@ -347,11 +349,10 @@
(extensions '())
(description "")))
(services (list (service t1 1) (service t2 2) (service t3 3))))
(sort (map service-value
(map service-value
(modify-services services
(t1 value => 11)
(t3 value => 33)))
<)))
(t3 value => 33)))))
(test-error "modify-services: change value for non-existing service"
#t